Hi!
Ich versteh nicht, welcher Code bewirken soll, dass der rechte Fighter verschoben wird. Laut Code passiert das nur, solange die Pfeiltaste VK_DOWN gedrückt ist. Der Fighter wird so auch niemals gleichzeitig springen und sich horizontal bewegen können. Wenn du es schon so machen willst, sollte die MoveFighter Prozedur wissen, welche Tasten gerade gedrückt werden.
Delphi-Quellcode:
If (((State[VK_LEFT ]and 128) <> 0) = True)then MoveFighter (imgFighter1, LeftMove , NoJump );
If ((State[VK_RIGHT] and 128) <> 0) = True then MoveFighter (imgFighter1, RightMove, NoJump );
If ((State[VK_UP ] and 128) <> 0) = True then MoveFighter (imgFighter1, NoMove , Jumphigh );
If ((State[VK_DOWN ] and 128) <> 0) = True then MoveFighter (imgFighter2, LeftMove , NoJump );
Versuch evtl. mal aus deinem Fighter eine Klasse zu machen. Dann ist die Handhabung auch viel einfacher...
Dani H.