Thema: Delphi Kleines Pferdespiel

Einzelnen Beitrag anzeigen

Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Kleines Pferdespiel

  Alt 2. Jan 2010, 15:10
Trotz rotem Kasten hier mal meine Antwort (weil ich mir sooo viel Mühe beim Schreiben gegeben habe ):

OK. Dafür sollte sich eigentlich das Ereignis OnKeyDown deines Formualrs eignen (Die Eigenschaft KeyPreview deiner Form sollte auf true stehen). Da kannst du dann per

if Key = VK_SPACE then TueWas; überprüfen, ob es sich bei der gedrückten Taste um die Leertaste handelt. Hier solltest du dann irgendeine Boolean-Variable auf true setzen, damit du dir merken kannst, ob das Pferd gerade springt, denn soweit ich weiß wird das OnKeyDown-Ereignis mehrere Male aufgerufen, wenn die Taste gedrückt bleibt. Zusätzlich musst du in dem KeyDown-Ereignis also auch noch überprüfen, ob das Pferd gerade nicht springt, also ob die Boolean-Variable false ist. Wenn dies der Fall ist, lässt du das Pferd halt springen. Nach dem Springen-Lassen setzt du die Variable wieder auf false, damit das Pferd erneut springen kann.

Zusammengefasst:

Delphi-Quellcode:
var SpringtGerade : Boolean;

//im OnCreate der Form

SpringtGerade := false;


// beim OnKeyDown:
if (Key = VK_SPACE) and not(SpringtGerade) then PferdSpingenLassen;


// in PferdSpingenLassen

SpringtGerade := true
// Code für das Springen-Lassen
SpringtGerade := false;
mfg

Edit: Ein weiteres Stichwort wäre evtl. noch GetAsyncKeyState.
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat