Habe mich jetzt erstmal an die Bewegung und das abprallen der Gegner gesetzt:
Delphi-Quellcode:
procedure TForm1.Timer2Timer(Sender: TObject);
var
m,l,k,links,rechts,oben,unten,Geschwindigkeit:Integer;
begin
//Gegner bewegen
If length(Gegner)>=1 Then
begin
For l:= 0 to length(gegner)-1 do
begin
If Gegner[l].width > Gegner[l].height Then
begin
//Wenn Gegner waagrecht ist
Gegner[l].Left:=Gegner[l].left + Gegner[l].speed;
for k := 0 to high(Gegner) do
begin
links := Gegner[k].left;
if links <= 0 then
begin
Gegner[k].speed := Gegner[k].speed * -1;
end;
if Links + Gegner[k].Width >= Form1.clientwidth + Gegner[k].left then
begin
Gegner[k].speed := Gegner[k].speed * -1;
end;
end;
end;
If Gegner[l].width < Gegner[l].height Then
begin
//Wenn Gegner senkrecht ist
Gegner[l].top:=Gegner[l].top + Gegner[l].speed;
for m := 0 to high(Gegner) do
begin
oben := Gegner[m].top;
if oben <= 0 then
begin
Gegner[m].speed := Gegner[m].speed * -1;
end;
if oben + Gegner[m].Height >= Form1.clientheight then
begin
Gegner[m].speed := Gegner[m].speed * -1;
end;
end;
end;
end;
end;
end;
Leider funktioniert das nicht ganz. Die Gegner prallen manchmal ab und manchmal nicht und ich
verstehe nicht warum. Kann mir jemand sagen, was ich falsch mache ?
Ich kann euch auch nochmal das Projekt hochladen, damit ihr es euch mal anschauen könnt.