Thema: Delphi Schießen meine ich

Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

Schießen meine ich

  Alt 15. Jun 2002, 09:06
Bitte nicht lachen. Ich will mal so mein erstes Spiel programmieren. Und da dachte ich mir, ich schieße einfach mal so ein paar Objekte ab, die auf der Form rumschwirren. Aber so weit bin ich noch lange nicht. Alles was ich bisher geschafft habe, ist einen Schuß abzufeuern. Und das auch nur schlecht als recht.
Es ist gerade mal ein Schuß und dann ist Schluß. Zu allen Übel folgt der Schuß, wenn er abgefeuert wurde noch der Waffe (ein einfaches Label am unterem Fensterrand, welches man hin und her bewegen kann). Ich könnte aus der Kugel eine Rakete machen die man ins Ziel steuern muß, dann paßt es wieder, aber das will ich nicht.

Hier erstmal etwas Code:

Delphi-Quellcode:
procedure TForm1.Shoot(x, y: DWORD);
var
  Shot: TShot;
begin
  Shot.x := x;
  Shot.y := y;
  Form1.Refresh;
  Form1.Canvas.Draw(Shot.x ,Shot.y ,bullet);
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
   Shoot(lblGun.Left+(lblGun.Width div 2), ypos);
   Dec(ypos, 5);
end;
Der Schuß wird mit der Leertaste ausgelöst, da wird einfach der Timer gestartet. Das es das nicht ist weiß ich auch. Aber ich komme nicht dahinter wie es gehen könnte. Irgendwie muß ich die Schüsse in einem Array halten und in einer Schleife bewegen und mit dem Timer nur den Takt vorgeben. Aber wie?

Ach so, ich glaube, das Spiel hieß "Asterioids" oder so. So soll dass dann mal aussehen.

Ohne DirectX oder so bitte.
Michael
Ein Teil meines Codes würde euch verunsichern.

Geändert von TBx (17. Feb 2015 um 08:13 Uhr) Grund: code-Tag gegen Delphi-Tag getauscht
  Mit Zitat antworten Zitat