Nächstes Problem.
Wenn sich zwei unterschiedliche Sprites treffen, soll eine Animation aus vier Bildern ablaufen:
Delphi-Quellcode:
procedure TPlayerShip.DoCollision(Sprite: TSprite;
var Done: Boolean);
begin
if Sprite
is TEnemy
then
begin
Dec(Form1.FPlayerCount);
Collisioned := False;
Done := False;
TEnemy(Sprite).Hit;
Image := Form1.DXImageList1.Items.Find('
Explosion');
Width := Image.Width;
Height := Image.Height;
AnimCount := Image.PatternCount;
AnimLooped := False;
AnimSpeed := 850/1000;
AnimPos := 0;
Dead;
end;
end;
Bei AnimSpeed kann ich eintragen, was ich will die Animation, eine Explosion (Wieder aus dem Shooter-Demo von den DelphiX Komponenten), läuft immer viel zu schnell ab. Ich weiß gar nicht, ob überhaout alle Bilder angezeigt werden. Ich habe nur die Orientierung von waagerecht auf senkrecht des Bitmaps geändert. TimerIntervall setht auf 33.