![]() |
PING PONG soll abprallen
Hi @ all,
In unserem Informatikkurs machen wir gerade das Projekt "Ping Pong" Bis jetzt haben wir geschafft den Ball zu zeichnen und zu bewegen. Das jetztige Problem von mir ist, dass ich den Ball nicht wenden kann :?:
Delphi-Quellcode:
da liegt das Problem !!! Ich weiß ja auch warum, ich kenn aber bisher keine andere Möglichkeit um die Richtung vom Ball zu ändern.
procedure TForm1.Timer1Timer(Sender: TObject);
begin position.X:=position.X+1; position.Y:=position.Y+1; refresh; if (position.X = 2) and (position.Y = 2) then Begin; position.Y:=position.Y-20; position.X:=position.X-20 end; canvas.Brush.Color:=clRed; Ball_zeichnen; end; Ich wäre froh, wenn ihr mir helfen könnt. mfg Intapper |
Re: PING PONG soll abprallen
Hallo,
Speicher in einer Variable die Richtung. Am Besten für X- und Y-Richtung getrennt. Wenn der Ball an eine Wand / Spielbrett kommt änderst du die Richtung. Die Bewegung entsteht, wie du ja schon weißt *g* aus Subtraktion bzw. Addition von der Geschwindigkeit. :) MfG ein sehr müder freak |
Re: PING PONG soll abprallen
Zitat:
Sorry kenn mich nicht sehr gut aus mit Delphi :oops: Könntest du mir zum Bsp. " Die Richtung in einer Variable speichern" zeigen? Danke. mfg Intapper |
Re: PING PONG soll abprallen
Ich würde das zum Beispiel so machen:
Delphi-Quellcode:
Nur so als Idee. Mann Kann die Richtung auch als positiven oder negativen Wert in einer Integervariable speichern und dann den Wert addieren.
var
BallBewegtSichNachRechts: Boolean; ... if BallBewegtSichNachRechts then Ball.X := Ball.X + 5 else Ball.X := Ball.X - 5;
Delphi-Quellcode:
Das mal so als Idee. ;) Hab das weder getestet noch wirklich viel drüber nachgedacht.
var
Ballgeschwindigkeit: Integer; ... Ballgeschwindigkeit := 5; Ball.X := Ball.X + Ballgeschwindigkeit; if Ball.X + Ball.Breite >= Form1.Width then Ballgeschwindigkeit := Ballgeschwindigkeit * -1; MfG freak |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz