Hi,
wenn ich es mir mal so überlege, ist der Balken ähnlich wie ein Pong-Balken. Daher kann ich dir mal gerade einen uralten Codeausschnitt meines Pong-Klons geben:
Delphi-Quellcode:
procedure TfrmMain.tTimer(Sender: TObject);
var Toleranz : Integer;
begin
Toleranz := Ball.Width div 2;
// KI-Aktivierung
KI;
// Vereinbarungen
Ball.Left := Ball.Left + XSpeed;
Ball.Top := Ball.Top + YSpeed;
// Ballkollision
if (Abs(Ball.Left - Enemy.Left) <= 5) and (Abs(Ball.Top - Enemy.Top) <= 5) then
XSpeed := -XSpeed;
if (Ball.Top > Player1.Top -1-Toleranz) and (Ball.Top < Player1.Top + Player1.Height +1+Toleranz) and (Ball.Left = Player1.Left+Player1.width) then
XSpeed := -XSpeed;
// Kollisionserkennung
if Ball.Left < 0 then
begin
t.Enabled := False;
Ball.Visible := False;
go_p2;
end;
end;