Forum: Multimedia
Delphi
by jbg,
15. Jun 2002
Du musst die TList AllShoots erst im OnCreate Ereignis erzeugen (AllShoots := TList.Create) und im OnDestroy Ereignis über AllShoots.Free (nach dem Aufruf von DeleteDeadShoots) wieder freigeben.
Damit nicht bei jedem Zeichnen eines Schusses, alle anderen gelöscht werden, musst du den Aufruf von Form1.Refresh aus der Funktion Shoot in das OnTimer-Ereignis (vor die Schliefe) verschieben.
Forum: Multimedia
Delphi
by jbg,
15. Jun 2002
Du musst, beim Abfeuern dir die X und Y Koordinaten merken. Danach sind diese dein Ausgangspunkt. Ein Array würde ich dir da vorerst einmal nicht empfehlen, da man nicht weiß, wieviel Schuss abgefeuert werden, und wenn ein Schuss "ausgelebt" hat, dann musst du bei einem Array alle nachfolgenden Schüsse um ein Element nach vorne schieben. Mit einer dynamischen Liste wie TList, ist das kein...