eben so einfach ist das mit den einfachen Regeln, die sind eben einfach und wohl deshalb so kompliziert
Ja ist es denn so schwer zu verstehen?
Nimm Deine Regel und Du siehst, dass eben aus diesem Grund keine Überprüfung der umliegenden Felder eines Zahlfeldes
NOTWENDIG ist.
Und daher werden die umliegenden Felder eines
ZAHLFELDES nach dem Aufdecken eben
NICHT mehr geprüft.
Aber
genau das besagt doch die Regel
und genau deshalb definiert man die Regel so, weil es dadurch einfach in der Beschreibung und in der Anwendung ist.
Delphi-Quellcode:
procedure TSpiel.DeckMichAuf( Feld : TFeld );
var
LNachbar : TFeld;
begin
if Feld.Aufgedeckt then
Exit;
Feld.Aufgedeckt := True;
if Feld.HatMine then
Exit;
if Feld.AnzahlNachbarMinen = 0 then
begin
for LNachbar in NachbarnVon( Feld ) do
DeckMichAuf( LNachbar );
end;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)