diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/jrummikub/control/RoundControl.java | 8 | ||||
-rw-r--r-- | src/jrummikub/model/IPlayer.java | 17 | ||||
-rw-r--r-- | src/jrummikub/model/Player.java | 30 | ||||
-rw-r--r-- | src/jrummikub/model/PlayerSettings.java | 42 | ||||
-rw-r--r-- | src/jrummikub/model/RoundState.java | 8 |
5 files changed, 66 insertions, 39 deletions
diff --git a/src/jrummikub/control/RoundControl.java b/src/jrummikub/control/RoundControl.java index 07adb99..9b746d1 100644 --- a/src/jrummikub/control/RoundControl.java +++ b/src/jrummikub/control/RoundControl.java @@ -72,13 +72,13 @@ public class RoundControl { clonedTable = (ITable) gameState.getTable().clone(); view.enableStartTurnPanel(true); view.getTablePanel().setStoneSets(clonedTable); - view.setCurrentPlayerName(gameState.getActivePlayer().getName()); + view.setCurrentPlayerName(gameState.getActivePlayer().getPlayerSettings().getName()); view.getTablePanel().setLeftPlayerName( - gameState.getNthNextPlayer(1).getName()); + gameState.getNthNextPlayer(1).getPlayerSettings().getName()); view.getTablePanel().setTopPlayerName( - gameState.getNthNextPlayer(2).getName()); + gameState.getNthNextPlayer(2).getPlayerSettings().getName()); view.getTablePanel().setRightPlayerName( - gameState.getNthNextPlayer(3).getName()); + gameState.getNthNextPlayer(3).getPlayerSettings().getName()); } private void startTurn() { diff --git a/src/jrummikub/model/IPlayer.java b/src/jrummikub/model/IPlayer.java index ebe77fa..1ae6f12 100644 --- a/src/jrummikub/model/IPlayer.java +++ b/src/jrummikub/model/IPlayer.java @@ -1,7 +1,5 @@ package jrummikub.model; -import java.awt.Color; - /** * Interface for {@link Player} model */ @@ -15,19 +13,16 @@ public interface IPlayer { public IHand getHand(); /** - * Return the player's color + * Has the player laid out yet? * - * @return the player's color + * @return if the player has laid out */ - public Color getColor(); + public boolean getLaidOut(); /** - * Return the name of the player + * Returns the player settings * - * @return the player's name + * @return the player settings */ - public String getName(); - - boolean getLaidOut(); - + public PlayerSettings getPlayerSettings(); }
\ No newline at end of file diff --git a/src/jrummikub/model/Player.java b/src/jrummikub/model/Player.java index 9444b5a..f482f28 100644 --- a/src/jrummikub/model/Player.java +++ b/src/jrummikub/model/Player.java @@ -1,46 +1,36 @@ package jrummikub.model; -import java.awt.Color; - /** Class managing player data. No methods in release 1 */ public class Player implements IPlayer { - + private PlayerSettings settings; private IHand hand; - private String name; - private Color color; private boolean laidOut; /** * Create a new player with a given name and color * - * @param name - * player name - * @param color - * player's color + * @param settings + * the player settings */ - public Player(String name, Color color) { + public Player(PlayerSettings settings) { + this.settings = settings; + hand = new Hand(); - this.name = name; - this.color = color; + laidOut = false; } @Override public IHand getHand() { return hand; } - + @Override public boolean getLaidOut() { return laidOut; } @Override - public Color getColor() { - return color; - } - - @Override - public String getName() { - return name; + public PlayerSettings getPlayerSettings() { + return settings; } } diff --git a/src/jrummikub/model/PlayerSettings.java b/src/jrummikub/model/PlayerSettings.java new file mode 100644 index 0000000..87c2a27 --- /dev/null +++ b/src/jrummikub/model/PlayerSettings.java @@ -0,0 +1,42 @@ +package jrummikub.model; + +import java.awt.Color; + +/** + * The settings of a player + */ +public class PlayerSettings { + private String name; + private Color color; + + /** + * Create a new human player + * + * @param name + * the player's name + * @param color + * the player's color + */ + public PlayerSettings(String name, Color color) { + this.name = name; + this.color = color; + } + + /** + * Returns the player's color + * + * @return the color + */ + public Color getColor() { + return color; + } + + /** + * Returns the player's name + * + * @return the name + */ + public String getName() { + return name; + } +} diff --git a/src/jrummikub/model/RoundState.java b/src/jrummikub/model/RoundState.java index 4a27d2d..b566fdf 100644 --- a/src/jrummikub/model/RoundState.java +++ b/src/jrummikub/model/RoundState.java @@ -24,10 +24,10 @@ public class RoundState implements IRoundState { table = new Table(); players = new ArrayList<Player>(); - players.add(new Player("Ida", Color.RED)); - players.add(new Player("Matthias", Color.YELLOW)); - players.add(new Player("Jannis", Color.GREEN)); - players.add(new Player("Bennet", Color.BLACK)); + players.add(new Player(new PlayerSettings("Ida", Color.RED))); + players.add(new Player(new PlayerSettings("Matthias", Color.YELLOW))); + players.add(new Player(new PlayerSettings("Jannis", Color.GREEN))); + players.add(new Player(new PlayerSettings("Bennet", Color.BLACK))); activePlayer = 0; gameHeap = new StoneHeap(); } |