Einzelnen Beitrag anzeigen

Maximus

Registriert seit: 26. Okt 2003
169 Beiträge
 
#2

Re: (wieder einmal) Kollisionsabfrage mit DelphiX

  Alt 19. Nov 2003, 11:00
Delphi-Quellcode:
 procedure TSpieler.DoCollision(Sprite:TSprite; var Done:Boolean);
begin
 if sprite is TWand then
  case Spieler.richtung of //richtung von der man kommt
  1: y := y + 1; //wenn man nach oben läuft und die Wand berührt
  2: x := x - 1; //wenn man nach rechts läuft und die Wand berührt
  3: y := y - 1; //wenn man nach unten läuft und die Wand berührt
  4: x := x + 1; //wenn man nach links läuft und die Wand berührt
  end;
end;
TSpieler wäre das Sprite das sich im Labyrinth bewegt und TWand halt die 32x32 große Sprites die die Wand darstellen sollen!

richtung muss bei TSpieler als integer vereinbart werden und bei DoMove je nach richtung geändert werden!
1 -> nach oben
2 -> rechts
3 -> unten
4 -> links

So müsste es funktionieren das TSpieler nicht auf die Wand läuft, bzw. bevor es angezeigt wird das TSpieler auf die Wand läuft wird TSpieler wieder zurück gesetzt in die richtung von der er kam!

PS: Ich hoffe ich hab das Problem richtig vertsanden!
  Mit Zitat antworten Zitat