Thema: Delphi 2D Game

Einzelnen Beitrag anzeigen

dominikkv

Registriert seit: 30. Sep 2006
Ort: Gundelfingen
1.109 Beiträge
 
Delphi 2007 Professional
 
#16

Re: 2D Game

  Alt 2. Mär 2008, 18:17
ok..^^
Du hast eine Konstante Speed, dort kannst du zur Designtime einstellen wie schnell sich dein Image bewegen soll.
Jetzt haben wir einen Timer der sich um das bewegen der Bilder kümmert.
Und zwar kann sich das Bild in X und in Y-Richtung bewegen.
Den jeweiligen Wert um den es sich bewegt speichern wir in SpeedX, SpeedY.
Zuerst müssen wir die beiden Variablen iniziiren (schreibt man das so? ô_0) weil am Anfang ein Zufälliger Wert drinnsteht.
Delphi-Quellcode:
SpeedX := 0;
SpeedY := 0;
Dann schauen wir uns an ob gerade die taste d gedrückt wird:
if GetAsyncKeyState(VkKeyScan('d')) <> 0 then
Zitat von DelphiHilfe:
The GetAsyncKeyState function determines whether a key is up or down at the time the function is called, and whether the key was pressed after a previous call to GetAsyncKeyState.
Zitat von DelphiHilfe:
The VkKeyScan function translates a character to the corresponding virtual-key code and shift state for the current keyboard.
Wenn ja wird SpeedX um den Wert Speed erhöht.
Dann schauen wir uns an ob die Taste a gedrückt ist.
Wenn ja wird SpeedX um Speed wieder erniedrigt.
-> Wenn a und d gedrückt sind ist SpeedX = 0.
Das gleiche machen wir in Y-Richtung.
Und am Schluss bewegen wir das Bild:
Delphi-Quellcode:
shp1.Left := shp1.Left + SpeedX;
shp1.Top := shp1.Top + SpeedY;
(ob das jetzt shp1 oder image1 heißt ist ja egal^^)

für den Rest siehe ein Post über mir^^
Dominik
Wer anderen eine Grube gräbt, hat ein Gruben-Grab-Gerät!
  Mit Zitat antworten Zitat