ich beschäftige mich heute mit 2D Übungen, ich bin jetzt gerade dabei eine kleine Übung zu machen, bei der man einen Screen erstellt und eine Figur (Sprite) mit dem Hintergrundbild lädt. Als nächstes hätte ich gerne vor, die Figur zu bewegen, wie genau mache ich es, könnt ihr mir hier bei dem Beispiel helfen?
Code: Alles auswählen
UseJPEGImageDecoder()
;Konstante und Eigenschaften zu Screen
Enumeration
#SPRITE2D
#Boden
EndEnumeration
Global Screenbreite.i = 1024
Global Screenhoehe.i = 768
Global Screenfarbtiefe.i = 32
Global Beenden.i = #False
Global XUrsprung.i = Screenbreite / 2
Global YUsprung.i = Screenhoehe / 2
;EInfache Prozedur zur Fehlerprüfung
Procedure Fehlerbehandlung(Ergebnis.i, Text.s)
If Ergebnis = 0
MessageRequester("Fehler",Text,#PB_MessageRequester_Ok)
End
EndIf
EndProcedure
;Initialisiere Umgebung
Fehlerbehandlung(InitSprite(),"Initsprite() fehlgeschlagen.")
Fehlerbehandlung(InitKeyboard(),"InitKeyboard() fehlgeschlagen.")
Fehlerbehandlung(OpenScreen(Screenbreite,Screenhoehe,Screenfarbtiefe,"2D Spiel",1),"Kann Screen nicht öffnen.")
SetFrameRate(60)
;Lade Sprite
LoadSprite(#Boden, "Boden.jpg")
LoadSprite(#SPRITE2D,"Figur1.jpg")
;Hauptschleife
Repeat
ClearScreen(RGB(0,0,0))
DisplayTransparentSprite(#SPRITE2D, 0, 0)
FlipBuffers()
ExamineKeyboard()
If KeyboardReleased(#PB_Key_Escape)
Beenden = #True
EndIf
Until Beenden = #True
End
Ich hab bisher es noch nicht herausgefunden, wie genau ich die Figur bewege.
Und kann ich mein Hintergrundbild "Boden.jpg" auch in einer Größe vom Screen laden oder muss es immer in 32x32 sein, sodass ich dieses Bild am Ende vermehren muss. Ich vermute mal, dass diese Bewegung mit For und Next abläuft, in dem man immer die Position abzieht und das Bild erneut anzeigt.
Ich würde mich sehr freuen, wenn ihr mir bei meiner Übung helfen könnt oder mir auch Tipps geben könnt mit welchen Codes man hier arbeiten muss.