X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c80599533f36a899a74ae02a4166a85a64bf7934..d5e7ffcf7af0e444cc8b3d3cfc2e2ca263f411d5:/demos/bombs/game.cpp diff --git a/demos/bombs/game.cpp b/demos/bombs/game.cpp index 6a76fea09b..ae07b7dac0 100644 --- a/demos/bombs/game.cpp +++ b/demos/bombs/game.cpp @@ -9,10 +9,6 @@ // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ -# pragma implementation -#endif - #include "wx/wxprec.h" #ifdef __BORLANDC__ @@ -99,6 +95,7 @@ bool BombsGame::Init(int aWidth, int aHeight, bool easyCorner) } m_numRemainingCells = m_height*m_width-m_numBombCells; + m_numMarkedCells = 0; return true; } @@ -106,15 +103,22 @@ bool BombsGame::Init(int aWidth, int aHeight, bool easyCorner) void BombsGame::Mark(int x, int y) { m_field[x+y*m_width] ^= BG_MARKED; + if (IsMarked(x, y)) + m_numMarkedCells++; + else + m_numMarkedCells--; } -void BombsGame::Unhide(int x, int y) +void BombsGame::Unhide(int x, int y, bool b_selected) { if (!IsHidden(x,y)) { return; } + if (b_selected) + m_field[x+y*m_width] |= BG_SELECTED; + m_field[x+y*m_width] &= ~BG_HIDDEN; if (!IsBomb(x,y))