Nabend.
Ich werd erstmal warten, ob du so noch weiter kommst, aber ein Tipp noch
... Wenn du die Schleife über alle Spielfelder machst (du könntest sie auch über alle Mannchen/Bomben machen, dann läuft sie nicht 1xx mal durch
), setze deinen Brechpunkt vom Debugger doch in eine weitere Bedingung:
Delphi-Quellcode:
for i := 0 to 11 do
for n := 0 to 11 do
if Spielfeld[i][n] is TMaennchen then
begin
// tu was mit dem maennchen und hier rein den breakpoint setzen
TMaennchen(Spielfeld[i][n]).TuWas;
end;
Dafür muss Spielfeld natürlich so aussehen:
Delphi-Quellcode:
var
Spielfeld: array[0..10, 0..10] of TObject;
Und man sollte evtl am Anfang jedes Feld mit nil initialisieren. Ist aber auch sehr nervig, wenn sich ein Maennchen bewegt, es immer im Spielfeld auf die neue Koordinate zu setzen. Führt ausserdem dazu, dass auf einem Feld immer nur ein Spieler/Bombe sein kann, nichts gleichzeitig (Nach dem Bombe legen bleibt man ja drauf stehen, deshalb ist das schon ein starkes Minus). Du solltest also eventuell überlegen, ob das Spielfeld nicht über mehrere Listen verwaltet werden soll, wie Bomben und Mannchen, in einer großen Liste. Jede TBombe hat X und Y als Eigenschaft der Klasse, so wie das TMaennchen auch. Dann gehst du einfach über diese Liste und weißst ja direkt, wo das Element, was du in dem Schleifendurchlauf gerade hast, platziert ist... War jetzt doch ein etwas längerer Post, aber egal...
HTH