Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- #include <vector>
- struct BoardSquare
- {
- BoardSquare();
- bool isVisible;
- bool isFlagged;
- bool isMine;
- int numMinesAround;
- };
- class SweeperBoard
- {
- public:
- SweeperBoard(int width_x, int width_y, int minePercent);
- void PrintBoard();
- bool Pop(int x, int y);
- bool Flag(int x, int y);
- bool Unflag(int x, int y);
- bool gameLost;
- bool gameWon;
- private:
- typedef std::vector<std::vector<BoardSquare>> BoardType;
- typedef std::vector<BoardSquare> SubBoardType;
- typedef BoardType::iterator BoardType_iter;
- typedef SubBoardType::iterator SubBoardType_iter;
- inline BoardSquare& SquareAt(int x, int y);
- void CheckVictoryCondition();
- bool IsValidPosition(int x, int y);
- void LeakPositions(int x, int y);
- void ValidateFill(int x, int y);
- void IncrementPosition(int x, int y);
- bool CreateMine(int x, int y);
- BoardType *boardVector;
- int numMines;
- int visSpace;
- int boardSize_x;
- int boardSize_y;
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement