Hi,
Nunja, hatte den ganzen kram in Mathe noch nichz, deshalb frag ich hier:
Ich habe (via DelphiX) ein Sprite mit den Positionsangaben x und y. Dieses ist (via Tastatur) drehbar.
Problem ist: Wie kriege ich es hin, dass, wenn ich beschleunige, sich das Objekt relativ zu seinem 'Kopf' vorwärts bewegt?
Ich habe folgenden Code, den ich abändern muss:
Delphi-Quellcode:
procedure TPlayerShip.DoMove(MoveCount: Integer);
var isMoved: Boolean;
begin
inherited DoMove(MoveCount);
isMoved:=false;
If isUp in MainForm.DXInput1.States then
begin
vY := vY - 0.1;
isMoved:=true;
end;
If isDown in MainForm.DXInput1.States then
begin
vY := vY + 0.1;
isMoved:=true;
end;
If isLeft in MainForm.DXInput1.States then
begin
Angle:=Angle-1;
isMoved:=true;
end;
If isRight in MainForm.DXInput1.States then
begin
Angle:=Angle+1;
isMoved:=true;
end;
If isButton32 in MainForm.DXInput1.States then halt;
PlayerShip.X:=PlayerShip.X+vx; //was muss hier stehen?
PlayerShip.Y:=playership.y+vy; //und hier?
end;
Schon mal danke im voraus
So far,
inh3r1ted
(€dit: mein 222. Beitrag(!)^^)