Hab schon 'ne Weile nix mehr mit Andorra gemacht, aber fehlt da nicht noch 'ne "DoMove"-Routine? Bei mir ruft diese "Collision" auf.
Delphi-Quellcode:
procedure TSpriteFigure.DoCollision(Sprite: TSprite; var Done: boolean);
begin
CollisionEdges := [];
FHitsEnemy := FALSE;
FWallCollision := FALSE;
if FDead then
Exit;
GetCollisionEdges;
if (Sprite is TWall) then
begin
// ...
end;
end;
procedure TSpriteFigure.DoMove(TimeGap: Double);
begin
inherited;
FTimeGap := TimeGap;
FTargetSprite := nil;
// ...
Collision;
XSpeed := 0;
YSpeed := 0;
if FWillDie then
begin
// ...
end;
end;
Und soweit ich weiß, macht das die Demo auch so?