Thema: Delphi Counter Strike in 2D

Einzelnen Beitrag anzeigen

Benutzerbild von F.W.
F.W.

Registriert seit: 28. Jul 2003
Ort: Zittau
636 Beiträge
 
#17

Re: Counter Strike in 2D

  Alt 11. Okt 2004, 18:34
@Ben1: Hab mir dein Spiel noch nicht angesehen, hört sich aber logisch an, auch von den anderen.

Das Prob. ist, ich weiß nicht was ich mit der for-Schleife durchgehen soll. Ich hab mal was versucht, hat aber nicht geklappt: for I := 0 to DXSpriteEngine.Engine.Items.Count-1
Zitat:
Ich nehme jetzt einfach an, dass Player[0] der PC-Spieler ist, und der Rest KI-Spieler
Nein, es gibt keinen PC-Spiele, ich möchte vorerst nur probieren, vom Computer gesteuerte Personen (->"Bots") zu bewegen.
Alle Spieler gehören der Klasse TCSPlayer an. Sie werden nur am Team (TTeam = (TeamCT, TeamT)) unterschieden. (Und sie haben ein blaues bzw. rotes Sprite, das wird anhand von Team zugewiesen).

Erstellen TUE ich sie folgender Maßen:
Delphi-Quellcode:
var
 NewTeam: TTeam;

constructor TCSPlayer.Create(AOwner: TSprite);
begin
 inherited;

 HP := 100;
 if Team = TeamCT then begin
    Image := Game.Pics.Items.Find('Blau'); //Game ist mein Haupt-Formular
    Width := Game.Pics.Items.Find('Blau').Width;
    Height := Game.Pics.Items.Find('Blau').Height;
    X := Random(Game.DXWelt.Width div 3);
    Y := Random(Game.DXWelt.Height-Height);
 end else begin
    Image := Game.Pics.Items.Find('Rot');
    Width := Game.Pics.Items.Find('Rot').Width;
    Height := Game.Pics.Items.Find('Rot').Height;
    X := Game.DXWelt.Width-Width-Random(Game.DXWelt.Width div 3);
    Y := Random(Game.DXWelt.Height-Height);
 end;
end;

procedure StartGame(ACTCount, ATCount: Integer);
var
 I: integer;
begin
 for I := 1 to ACTCount do begin
     NewTeam := TeamCT;
     with TCSPlayer.Create(Game.DXEngine.Engine) do begin end;
 end;

 for I := 1 to ATCount do begin
     NewTeam := TeamT;
     with TCSPlayer.Create(Game.DXEngine.Engine) do begin end;
 end;
end;
Welches Array muss ich abgehen?
  Mit Zitat antworten Zitat