Einzelnen Beitrag anzeigen

Snowi

Registriert seit: 30. Okt 2003
Ort: Düsseldorf
7 Beiträge
 
Delphi 6 Professional
 
#1

DelphiX - mehrere Sprites als Hürde

  Alt 16. Okt 2004, 15:12
Hi,
wenn ich in DelphiX mehrere quadratische Steine (à la Bomberman) auf dem Spielfeld erstelle

Delphi-Quellcode:
 for I := 1 to 300 do begin
  with TStein.Create(DXSpriteEngine1.Engine) do
  begin
   x:=random(21)*30;
   y:=random(21)*30;
   Name := 'Stein'+inttostr(I);
  end;
  end;
und dann eine Collisionsabfrage von einem Computerspieler für diese Steine mache

Delphi-Quellcode:
procedure TCPU.DoCollision(Sprite: TSprite; var Done: Boolean);
var
 I: Integer;
begin
inherited DoCollision(Sprite, Done);
  if sprite is TStein then begin
   case Direction of
   1: begin
         x := x + 1;
         Direction := 3;
        end;
   2: begin
         y := y - 1;
         Direction := 4;
        end;
   3: begin
         x := x - 1;
         Direction := 1;
        end;
   4: begin
         y := y + 1;
         Direction := 2;
        end;
   end;
(Direction ist für 1= links, 2= unten, 3= rechts, 4= oben)

Dann klappt das zwar bei den meisten Steinen, aber einige werden trotzdem ignoriert und der Computer läuft durch. Ich habe schon probiert, ob er die Stelle mit dem Case of überhaupt erreicht und das tut er auch, aber er geht einfach durch den Stein durch.

Jmd ne Ahnung, warum einige Steine dann nicht mehr beachtet werden?
Alexander Koch
  Mit Zitat antworten Zitat