diff options
Diffstat (limited to 'src/jrummikub/model/IRoundState.java')
-rw-r--r-- | src/jrummikub/model/IRoundState.java | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/jrummikub/model/IRoundState.java b/src/jrummikub/model/IRoundState.java new file mode 100644 index 0000000..cb6cd73 --- /dev/null +++ b/src/jrummikub/model/IRoundState.java @@ -0,0 +1,56 @@ +package jrummikub.model; + +/** + * Interface for {@link RoundState} model + */ +public interface IRoundState { + + /** + * Get the current {@link Table} + * + * @return The current Table + */ + public ITable getTable(); + + /** + * Sets the current {@link Table} + * + * @param table + * The new Table + */ + public void setTable(ITable table); + + /** + * Returns the number of players + * + * @return number of players + */ + public int getPlayerCount(); + + /** Changes the activePlayer to the next {@link Player} in the list */ + public void nextPlayer(); + + /** + * Returns the currently active player + * + * @return currently active player + */ + public IPlayer getActivePlayer(); + + /** + * Returns the heap of stones to draw from + * + * @return heap of stones + */ + public StoneHeap getGameHeap(); + + /** + * Returns the player that would be the active player after i turns + * + * @param i + * number of turns + * @return player active after i turns + */ + public IPlayer getNthNextPlayer(int i); + +}
\ No newline at end of file |