Delphi ist weniger dazu gedacht Spiele zu programmieren. TImage ist eine Komponente um zB eine Bitmap anzuzeigen. Theoretisch kann man mehre TImages nehmen und sie hin und her bewegen, aber dazu sind sie eigentlich nicht gedacht. Zugegeben, TImage macht einiges einfach, weil man sie direkt platzieren kann, aber das Bild wird sehr flackern.
Und wenn ich TBitMap benutze nicht ?
€: Ich habe jetzt mal alles kleiner gemacht, jetzt sollte ich auch mit 100 Gegnern locker hinkommen.
Hier nochmal mein jetziger Code
Delphi-Quellcode:
if intersectRect(r, Player.BoundsRect, Ziel.BoundsRect) then
begin
Score:=Score+1;
Ziel.Top:=10+Random(Form1.ClientHeight-10);
Ziel.left:=10+Random(Form1.ClientWidth-10);
imgGegner[aVertikal].create(nil);
imgGegner[aHorizontal].Create(nil);
imgGegner[aVertikal].picture.LoadFromFile('Gegner.jpg');
imgGegner[aHorizontal].picture.LoadFromFile('Gegner.jpg');
Gegner[0].Position := Point(100, 20);
Gegner[0].Ausrichtung := aVertikal;
with Gegner[0] do
Canvas.Draw(Position.X, Position.Y, imgGegner[Ausrichtung].picture.bitmap);
end;
Wenn bei imgGegner[...].create bekomme ich den Fehler. Was mache ich falsch ?