Ich versuche mich zurzeit an meinem ersten Jump'n'Run... Hab schon das Menue und den SchnickSchnack programmiert und bin jetzt zum 'ernsten' Teil angelangt...

Also mit meinem jetzigen Code kann ich bisher nur laufen...
Es gibt vier Frames... tedright1, tedright2, tedleft1, tedleft2... diese verwende ich zur animation... #TEDL und #TEDR sind Konstanten, die sagen, ob man nach rechts geht oder nach links und dient fuer die Funktion ChangeTedPos() - mehr dazu spaeter... hier erstmal die Mainloop
Code: Alles auswählen
tedpos = #ted_right1
tedx = 50
tedy = 354
Repeat
ExamineKeyboard()
EventID = WindowEvent()
If EventID = #PB_Event_CloseWindow
End
EndIf
If KeyboardPushed(#PB_Key_Right)
tedpos = ChangeTedPos(tedpos, #TEDR)
tedx + 5
ElseIf KeyboardPushed(#PB_Key_Left)
tedpos = ChangeTedPos(tedpos, #TEDL)
tedx - 5
EndIf
DisplaySprite(#back1, 0, 0)
DisplayTransparentSprite(tedpos, tedx, tedy)
FlipBuffers()
Delay(30)
ForEver
Jetzt zur Funktion ChangeTedPos() die bestimmt, welches Frame gemalt werden soll... Sie wird dann in tedpos uebergeben:
Code: Alles auswählen
Procedure ChangeTedPos(tedpos, richtung)
If tedpos = #ted_right1 And richtung = #TEDR
ProcedureReturn #ted_right2
ElseIf tedpos = #ted_right2 And richtung = #TEDR
ProcedureReturn #ted_right1
ElseIf (tedpos = #ted_right1 Or tedpos = #ted_right2) And richtung = #TEDL
ProcedureReturn #ted_left1
EndIf
If tedpos = #ted_left1 And richtung = #TEDL
ProcedureReturn #ted_left2
ElseIf tedpos = #ted_left2 And richtung = #TEDL
ProcedureReturn #ted_left1
ElseIf (tedpos = #ted_left1 Or tedpos = #ted_left2) And richtung = #TEDR
ProcedureReturn #ted_right1
EndIf
EndProcedure
Ich hab schon mehreres versucht, aber es ist irgendwie nichts 'sinnvolles' dabei rausgekommen...
Kann mir jemand helfen?