Zitat von
ISAS:
...
Ich poste mal den Code, wird aber auch nicht weiterhelfen.
Delphi-Quellcode:
Procedure TPlayer.domove(MoveCount: Integer);
begin
Angle:=Round(arctan((Aim.Y-Player.Y)/(Aim.X-Player.X)) * 180/pi);
inherited DoMove(MoveCount);
X := Cos256(Angle)+200;
Y := Sin256(Angle)+200;
end;
Zwar kann man hier nicht gehen, dass is aber auch unwichtig, da zuerst mal der SPieler in die richtige Richtung schaun muss, was er aber nicht tut
Ich weiß zwar nicht genau, was die Funktionen Cos256 und Sin256 berechnen (wenn es Sinus- und Cosinuswerte sind, kann man doch auch sin und cos nehmen, oder besser SinCos), aber ich vermute jetzt mal dass es an den letzten beiden Zeilen liegt:
Delphi-Quellcode:
Procedure TPlayer.domove(MoveCount: Integer);
begin
Angle:=Round(arctan((Aim.Y-Player.Y)/(Aim.X-Player.X)) * 180/pi);
inherited DoMove(MoveCount);
X := Cos256(Angle)*200;
Y := Sin256(Angle)*200;
{//oder:
SinCos(Angle, Y, X);
X:= 200*x;
Y:= 200*y;}
end;