Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi [DelphiX]Kollision - OnEnter (https://www.delphipraxis.net/34278-%5Bdelphix%5Dkollision-onenter.html)

Neutral General 20. Nov 2004 13:14


[DelphiX]Kollision - OnEnter
 
Ich möchte das wenn ein Sprite von mir mit einem best. Feld kollidiert (das Feld betritt) die Richtung wechselt.
Das ist ja im Prinzip kein Problem. Das Problem ist, dass die Prozedur ja die ganze Zeit ausgeführt wird solange mein Sprite das Feld berührt. Das führt dann dazu, dass das Sprite sich nicht so recht entscheiden kann wohin :mrgreen:
Deshalb bräuchte ich sowas wie OnEnter, damit er sich eine Richtung aussucht und sich nicht entscheiden kann. (Hoffe ihr habt verstanden was ich meine)

Hier die Kollisionsprozedur :

Delphi-Quellcode:
procedure TGegner.DoCollision(Sprite: TSprite; var Done: Boolean);
begin
  if (Sprite is TLD) then begin
   if Richtung = 1 then
    Richtung := 2
   else
   if Richtung = 2 then
    Richtung := 1;
  end;
end;

Spoon 20. Nov 2004 17:47

Re: [DelphiX]Kollision - OnEnter
 
Warum speicherst du nicht einfach das Feld ab mit dem das Sprite (der Sprite?) kollidiert?
Wenn beim erneuten Aufruf des Feld gleich dem abgespeicherten ist, dann soll die Kollision eben ignoriert werden...

Neutral General 20. Nov 2004 18:04

Re: [DelphiX]Kollision - OnEnter
 
Ich hab eine (etwas unsauberer, aber funktionierende) Lösung mit einem Timer gefunden.
Das mit dem Feld speichern würde glaube ich aber nicht funktionieren, weil dieses Feld ja wieder gebraucht wird wenn der Sprite wieder darauf kommt ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:41 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz