Einzelnen Beitrag anzeigen

Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#1

[DelphiX] Relative Figur-Bewegung

  Alt 30. Apr 2006, 18:18
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(!)^^)
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat