Einzelnen Beitrag anzeigen

Simme

Registriert seit: 8. Jan 2010
31 Beiträge
 
Delphi 7 Personal
 
#36

Re: Allgemeines Problem in meinem Programm/ Threads!?

  Alt 5. Mär 2010, 14:24
Macht ihr mich grad dumm?

Das Problem ist, dass der Quelltext zum Bombezünden so komplex ist, dass ich das nicht alles mitposten will, vor allem auch, weil ich mich bestimmt dafür schämen müsste, weils sicher sehr viel einfacherer geht. Aber ich versuche, euch den ganzen Code verkürzt zu posten.

Delphi-Quellcode:
procedure TForm2.Timer1Timer(Sender: TObject);
var
  i, e: Integer;
  gesprengt, item : ARRAY[1..4] of Boolean;
  itemx, itemy : Array[1..4] of Integer;
  zeit, x_wert, y_wert, Start : Integer;
begin
  Label5.Caption := IntToStr(Bomben.Count);
  for i := 0 to Bomben.Count - 1 do //Alle Bomben die es gibt durchgehen
    begin
    {...}
    Spieler1.bombegelegt := Spieler1.bombegelegt - 1;
    If Spieler1.bombegelegt < 0 Then Spieler1.bombegelegt := 0;
    If Spieler1.bombegelegt < Spieler1.laufzahl_bombe Then Spieler1.zuendet := 0;
  end;
  Label1.Caption := IntToStr(Spieler1.bombegelegt);
  If (Spieler1.bombegelegt = 0) Then
    begin
      Bomben.Delete(i);
    end;
end;
Also, an sich lösche ich die Bomben erst aus der Liste, wenn sich keine Bombe mehr auf dem Spielfeld befindet. Denn die Variable bombegelegt sagt, wieviele Bomben sich auf dem Spielfeld noch befinden. Das Problem ist nur, dass das mit dem bombegelegt nicht mehr so funktioniert, wie ursprünglich geplant. Naja.

Zitat von wicht:
Löscht du eventuell Bombenobjekte aus der Liste mit Hilfe einer Schleife?
Das könnte bei... unsachgemäßer Vorgehensweise nämlich das mit dem Listenindex erklären .. Ein herrlicher Fehler den glaube ich fast jeder schonmal gemacht hat.
Ja, das mache ich, wie du siehst. Ich hab aber keine Ahnung, ob ich das unsachgemäß mache. Naja, sagt einfach mal bescheid. Wenn ihr noch mehr wollt, sagt bescheid.

Liebe Grüße,
Simon =)
  Mit Zitat antworten Zitat