cs501b:cs-501b-su13_minesweeper_square_example
Minesweeper Square Class Example
The following is an early version of a Minesweeper square class. It goes with the Minesweeper square description at http://tinyurl.com/kkepryl.
/** * Represents a single square in Minesweeper. * * @author J. Chung * @version 5-29-2013 */ public class MineSquare { // Fields: private String _shown; // What a square is showing now private boolean _mined; // Square is mined or not private boolean _flagged; // Square is flagged or not private boolean _questioned; // Square is question marked or not private int _minecount; // Square's surrounding mine count private boolean _opened; // Player has opened this square or not // Constructors & Methods: /** * Default constructor * Sets _mined and _opened to false. */ public MineSquare() { _mined = false; _opened = false; } /** * Returns flagged status of square. * @return _flagged Flagged status */ public boolean isFlagged() { return _flagged; } /** * Sets or unsets flag on a square. * @param flagged True or false (square is flagged or not) */ public void setFlagged(boolean flagged) { _flagged = flagged; // If flagged, square should show "F": if ( isFlagged() == true ) setShown("F"); else setShown(" "); } public int getMinecount() { return _minecount; } public void setMinecount(int minecount) { _minecount = minecount; } public boolean isMined() { return _mined; } public void setMined(boolean mined) { _mined = mined; } public boolean isOpened() { return _opened; } /** * Open a square. * (Once opened, a square can't be unopened.) */ public void setOpened() { _opened = true; if ( isMined() == true ) setShown("X"); else if ( getMinecount() > 0 ) setShown(_minecount + ""); else // blank space for _minecount = 0 setShown(" "); } public boolean isQuestioned() { return _questioned; } public void setQuestioned(boolean questioned) { _questioned = questioned; } public String getShown() { return _shown; } public void setShown(String shown) { _shown = shown; } }
cs501b/cs-501b-su13_minesweeper_square_example.txt · Last modified: 2013/06/12 15:45 by jchung