1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package eu.tankernn.mines;
- public class Tile {
- public final boolean isMine;
- private TileState state = TileState.HIDDEN;
- private int minesAround;
- public final Pos pos;
-
- public Tile(boolean mine, Pos pos) {
- this.isMine = mine;
- this.pos = pos;
- }
-
- public void setMinesAround(int minesAround) {
- this.minesAround = minesAround;
- this.state = TileState.CHECKED;
- }
-
- public int getMinesAround() {
- return minesAround;
- }
-
- public TileState getState() {
- return state;
- }
-
- public void setState(TileState state) {
- this.state = state;
- }
-
- public void toggleFlag() {
- if (this.state.equals(TileState.HIDDEN))
- this.setState(TileState.FLAGGED);
- else if (this.state.equals(TileState.FLAGGED))
- this.setState(TileState.HIDDEN);
- }
- public enum TileState {
- HIDDEN('*'), CHECKED(' '), EXPLODED('X'), FLAGGED('P');
-
- public final char appearance;
-
- private TileState(char value) {
- appearance = value;
- }
- }
- }
|