Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
Delphi 10.4 Sydney
|
AW: Minesweeper
27. Mär 2015, 01:25
Ok. Thanx. Deine DeckMichAuf ist klasse. Damit sieht's in meinem Code auch gleich wesentlich entspannter aus. Stimmt das mit der Fahne?
Delphi-Quellcode:
procedure TMinesweeperForm.Play(X, Y: integer); // PanelsMouseUp, Button mbLeft;
var
I, J: integer;
begin
if InPanelGrid(X, Y) // Wenn im Raster;
and FPanels[X, Y].Enabled // und noch nicht aufgedeckt;
and (FPanels[X, Y].FlankingMinesCount >= 0) // und keine Mine; (Mine = -1)
and (FPanels[X, Y].Caption <> cFlagSign) then // und keine Fahne;
begin
if FPanels[X, Y].FlankingMinesCount > 0 then // Wenn Zahl > Null;
FPanels[X, Y].Caption := IntToStr(FPanels[X, Y].FlankingMinesCount)
else
FPanels[X, Y].Caption := ''; // Null;
FPanels[X, Y].Color := clWindow; // farblich kennzeichnen und
FPanels[X, Y].Enabled := false; // -> aufdecken;
if GetFlankingMinesCount(X, Y) = 0 then // Wenn keine NachbarMine;
for I := -1 to 1 do
for J := -1 to 1 do
if ((I <> 0) or (J <> 0)) then // Alle außer X / Y;
Play(X + I, Y + J);
end;
end;
|
|
Zitat
|