Einzelnen Beitrag anzeigen

Benutzerbild von LoW_FloW
LoW_FloW

Registriert seit: 29. Nov 2003
117 Beiträge
 
Delphi 7 Professional
 
#4

Re: 2 Images gleichzeitig verschieben?

  Alt 10. Mär 2004, 13:26
Dann hier der Source. Aber ich habe halt schlechte Erfahrung gemacht, wenn ich den Source poste, dann antwortet wieder keiner
Delphi-Quellcode:
const
RightMove = 10 ;
LeftMove = -10 ;
NoMove = 0 ;
Jumphigh = 200 ;
NoJump = 0 ;

implementation

{$R *.dfm}

procedure ShowFighter(Image : TImage ; Richtung: String ; Bewegung : Boolean );
begin
  if Richtung = 'Rechtsthen Image.Picture.LoadFromFile('Bilder\Rechts.bmp');
  if Richtung = 'Linksthen Image.Picture.LoadFromFile('Bilder\Links.bmp');
  if Richtung = 'Geradethen Image.Picture.LoadFromFile('Bilder\Gerade.bmp');
end;

procedure MoveFighter(Image : TImage ; X : integer ; Jump : integer );
var
Schritt, i : integer ;
begin
//==HORIZONTALE=BEWEGUNG==
if X > 0 then ShowFighter(Image, 'Rechts', true) ; // Rechts, Links bei Bewegung
if X < 0 then ShowFighter(Image, 'Links', true) ;
Image.Left := Image.Left + (X) ;
//==VERTIKALE=BEWEGUNG==
if Jump > 0 then begin
  for i := 1 to Round(Jump/32) do begin
    Image.Top := Image.Top - 32 ;
    sleep(10);
    Image.Repaint;
    end;
  sleep(100);
  for i := 1 to Round(Jump/64) do begin
    Image.Top := Image.Top + 64 ;
    sleep(10);
    Image.Repaint;
    end;
  end;
end;

procedure TfrmMain.FormCreate(Sender: TObject);
begin
ShowFighter(imgFighter1, 'Rechts', true ) ;
frmMain.DoubleBuffered := true ;
end;

procedure TfrmMain.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if Key=VK_LEFT then MoveFighter (imgFighter1, LeftMove , NoJump );
if Key=VK_RIGHT then MoveFighter(imgFighter1, RightMove, NoJump );
if Key=VK_UP then MoveFighter (imgFighter1, NoMove , Jumphigh );
if Key=VK_DOWN then MoveFighter (imgFighter2, LeftMove , NoJump ); //TEST, damit man 2 auf einmal bewegen kann
end;

end.
Wenn jetzt RUNTER und LINKS auf einmal drückt, bewegt sich nur 1 Image. Wie kann man das proggen, das sich beide bewegen?
  Mit Zitat antworten Zitat