added java docs to model

This commit is contained in:
Hanno Fleischer
2024-12-11 23:31:52 +01:00
parent a3d0056f7f
commit c13152bb29
25 changed files with 373 additions and 42 deletions

View File

@@ -14,6 +14,11 @@ public class BonusNode extends Node {
super(null); super(null);
} }
/**
* This method will return true if the node is a bonus node.
*
* @return true if the node is a bonus node.
*/
@Override @Override
public boolean isBonus() { public boolean isBonus() {
return true; return true;

View File

@@ -50,27 +50,6 @@ public boolean isBonus() {
return false; return false;
} }
/**
* This method handles the event when a new occupant is moved to the node,
* it then returns the old occupant.
*
* @param newOccupant the new occupant of the node
* @return the old occupant of the node
*/
public Piece moveOccupant(Piece newOccupant) {
throw new RuntimeException("BÖSE METHODE !!!!");
// if (occupant == null) {
// setOccupant(newOccupant);
// return null;
// } else {
// occupant.setShield(ShieldState.NONE);
// occupant.setState(PieceState.WAITING);
// setOccupant(newOccupant);
// return occupant;
// }
}
/** /**
* This method is used to clear the node of its occupant * This method is used to clear the node of its occupant
*/ */

View File

@@ -22,6 +22,11 @@ protected ClientMessage() {
*/ */
public abstract void accept(ClientInterpreter interpreter, int from); public abstract void accept(ClientInterpreter interpreter, int from);
/**
* Returns a string representation of this object.
*
* @return a string representation of this object
*/
public String toString() { public String toString() {
return getClass().getSimpleName() + "{}"; return getClass().getSimpleName() + "{}";
} }

View File

@@ -16,6 +16,11 @@ public AcquireCardNotification(BonusCard bonusCard) {
this.bonusCard = bonusCard; this.bonusCard = bonusCard;
} }
/**
* This method will return the bonusCard attribute of AcquireCardNotification class.
*
* @return bonusCard as a BonusCard object.
*/
public BonusCard getBonusCard() { public BonusCard getBonusCard() {
return bonusCard; return bonusCard;
} }

View File

@@ -3,12 +3,21 @@
import pp.mdga.game.Color; import pp.mdga.game.Color;
public class FinishNotification extends Notification { public class FinishNotification extends Notification {
private Color colorFinished;
private final Color colorFinished;
/**
* Constructor.
*/
public FinishNotification(Color colorFinished) { public FinishNotification(Color colorFinished) {
this.colorFinished = colorFinished; this.colorFinished = colorFinished;
} }
/**
* This method will return the colorFinished attribute of FinishNotification class.
*
* @return colorFinished as a Color object.
*/
public Color getColorFinished() { public Color getColorFinished() {
return colorFinished; return colorFinished;
} }

View File

@@ -16,6 +16,11 @@ public GameNotification(Color ownColor) {
this.ownColor = ownColor; this.ownColor = ownColor;
} }
/**
* This method will return the ownColor attribute of GameNotification class.
*
* @return ownColor as a Color object.
*/
public Color getOwnColor() { public Color getOwnColor() {
return ownColor; return ownColor;
} }

View File

@@ -24,10 +24,20 @@ public InfoNotification(String info, boolean isError) {
this.isError = isError; this.isError = isError;
} }
/**
* This method will return the message attribute of InfoNotification class.
*
* @return message as a String object.
*/
public String getMessage() { public String getMessage() {
return message; return message;
} }
/**
* This method will return the isError attribute of InfoNotification class.
*
* @return isError as a boolean object.
*/
public boolean isError() { public boolean isError() {
return isError; return isError;
} }

View File

@@ -56,18 +56,30 @@ public MovePieceNotification(UUID piece, int startIndex, int moveIndex) {
this.moveStart = false; this.moveStart = false;
} }
/**
* @return the destination node index
*/
public int getMoveIndex() { public int getMoveIndex() {
return moveIndex; return moveIndex;
} }
/**
* @return the starting node index
*/
public int getStartIndex() { public int getStartIndex() {
return startIndex; return startIndex;
} }
/**
* @return the unique identifier of the piece
*/
public UUID getPiece() { public UUID getPiece() {
return piece; return piece;
} }
/**
* @return {@code true} if the piece is moving from the waiting area to the start node
*/
public boolean isMoveStart() { public boolean isMoveStart() {
return moveStart; return moveStart;
} }

View File

@@ -3,12 +3,24 @@
import java.util.UUID; import java.util.UUID;
public class RemoveShieldNotification extends Notification { public class RemoveShieldNotification extends Notification {
/**
* The UUID of the piece that has had its shield removed
*/
private final UUID pieceUuid; private final UUID pieceUuid;
/**
* Constructor.
*
* @param pieceUuid the UUID of the piece that has had its shield removed
*/
public RemoveShieldNotification(UUID pieceUuid) { public RemoveShieldNotification(UUID pieceUuid) {
this.pieceUuid = pieceUuid; this.pieceUuid = pieceUuid;
} }
/**
* @return the UUID of the piece that has had its shield removed
*/
public UUID getPieceUuid() { public UUID getPieceUuid() {
return pieceUuid; return pieceUuid;
} }

View File

@@ -29,7 +29,13 @@ public RollDiceNotification(Color color, int eyes) {
this.isRanking = false; this.isRanking = false;
} }
//ranking /**
* Constructor.
*
* @param color the color of the player that rolled the die.
* @param eyes the number of eyes that were rolled.
* @param isRanking whether the roll is for ranking purposes.
*/
public RollDiceNotification(Color color, int eyes, boolean isRanking) { public RollDiceNotification(Color color, int eyes, boolean isRanking) {
this.color = color; this.color = color;
this.eyes = eyes; this.eyes = eyes;
@@ -38,7 +44,13 @@ public RollDiceNotification(Color color, int eyes, boolean isRanking) {
this.isRanking = isRanking; this.isRanking = isRanking;
} }
//turbo /**
* Constructor.
*
* @param color the color of the player that rolled the die.
* @param eyes the number of eyes that were rolled.
* @param multiplier the multiplier of the roll.
*/
public RollDiceNotification(Color color, int eyes, int multiplier) { public RollDiceNotification(Color color, int eyes, int multiplier) {
this.color = color; this.color = color;
this.eyes = eyes; this.eyes = eyes;
@@ -65,14 +77,29 @@ public int getEyes() {
return eyes; return eyes;
} }
/**
* Get the multiplier of the roll.
*
* @return the multiplier of the roll.
*/
public int getMultiplier() { public int getMultiplier() {
return multiplier; return multiplier;
} }
/**
* Get whether the roll was a turbo roll.
*
* @return true if the roll was a turbo roll, false otherwise.
*/
public boolean isTurbo() { public boolean isTurbo() {
return turbo; return turbo;
} }
/**
* Get whether the roll was for ranking purposes.
*
* @return true if the roll was for ranking purposes, false otherwise.
*/
public boolean isRanking() { public boolean isRanking() {
return isRanking; return isRanking;
} }

View File

@@ -4,12 +4,26 @@
import java.util.UUID; import java.util.UUID;
public class SelectableShieldNotification extends Notification { public class SelectableShieldNotification extends Notification {
private List<UUID> pieces;
/**
* The list of piece IDs associated with the player.
*/
private final List<UUID> pieces;
/**
* Constructor.
*
* @param pieces the list of piece IDs associated with the player.
*/
public SelectableShieldNotification(List<UUID> pieces) { public SelectableShieldNotification(List<UUID> pieces) {
this.pieces = pieces; this.pieces = pieces;
} }
/**
* Get the list of piece IDs associated with the player.
*
* @return the list of piece IDs associated with the player.
*/
public List<UUID> getPieces() { public List<UUID> getPieces() {
return pieces; return pieces;
} }

View File

@@ -16,7 +16,7 @@ public class ServerGameLogic implements ClientInterpreter {
private static final Logger LOGGER = System.getLogger(ServerGameLogic.class.getName()); private static final Logger LOGGER = System.getLogger(ServerGameLogic.class.getName());
/** /**
* * Attributes.
*/ */
private final ServerSender serverSender; private final ServerSender serverSender;
private final Game game; private final Game game;
@@ -47,91 +47,199 @@ public ServerGameLogic(ServerSender serverSender, Game game) {
} }
/**
* Handles the reception of an AnimationEndMessage.
*
* @param msg the received AnimationEndMessage
* @param from the sender of the message
*/
@Override @Override
public void received(AnimationEndMessage msg, int from) { public void received(AnimationEndMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a DeselectTSKMessage.
*
* @param msg the received DeselectTSKMessage
* @param from the sender of the message
*/
@Override @Override
public void received(DeselectTSKMessage msg, int from) { public void received(DeselectTSKMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a StartGameMessage.
*
* @param msg the received StartGameMessage
* @param from the sender of the message
*/
@Override @Override
public void received(StartGameMessage msg, int from) { public void received(StartGameMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a JoinedLobbyMessage.
*
* @param msg the received JoinedLobbyMessage
* @param from the sender of the message
*/
@Override @Override
public void received(JoinedLobbyMessage msg, int from) { public void received(JoinedLobbyMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a LeaveGameMessage.
*
* @param msg the received LeaveGameMessage
* @param from the sender of the message
*/
@Override @Override
public void received(LeaveGameMessage msg, int from) { public void received(LeaveGameMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a LobbyReadyMessage.
*
* @param msg the received LobbyReadyMessage
* @param from the sender of the message
*/
@Override @Override
public void received(LobbyReadyMessage msg, int from) { public void received(LobbyReadyMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a LobbyNotReadyMessage.
*
* @param msg the received LobbyNotReadyMessage
* @param from the sender of the message
*/
@Override @Override
public void received(LobbyNotReadyMessage msg, int from) { public void received(LobbyNotReadyMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a DisconnectedMessage.
*
* @param msg the received DisconnectedMessage
* @param from the sender of the message
*/
@Override @Override
public void received(DisconnectedMessage msg, int from) { public void received(DisconnectedMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a RequestBriefingMessage.
*
* @param msg the received RequestBriefingMessage
* @param from the sender of the message
*/
@Override @Override
public void received(RequestBriefingMessage msg, int from) { public void received(RequestBriefingMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a RequestDieMessage.
*
* @param msg the received RequestDieMessage
* @param from the sender of the message
*/
@Override @Override
public void received(RequestDieMessage msg, int from) { public void received(RequestDieMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a RequestMoveMessage.
*
* @param msg the received RequestMoveMessage
* @param from the sender of the message
*/
@Override @Override
public void received(RequestMoveMessage msg, int from) { public void received(RequestMoveMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a RequestPlayCardMessage.
*
* @param msg the received RequestPlayCardMessage
* @param from the sender of the message
*/
@Override @Override
public void received(RequestPlayCardMessage msg, int from) { public void received(RequestPlayCardMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a SelectCardMessage.
*
* @param msg the received SelectCardMessage
* @param from the sender of the message
*/
@Override @Override
public void received(SelectCardMessage msg, int from) { public void received(SelectCardMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a SelectTSKMessage.
*
* @param msg the received SelectTSKMessage
* @param from the sender of the message
*/
@Override @Override
public void received(SelectTSKMessage msg, int from) { public void received(SelectTSKMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a ForceContinueGameMessage.
*
* @param msg the received ForceContinueGameMessage
* @param from the sender of the message
*/
@Override @Override
public void received(ForceContinueGameMessage msg, int from) { public void received(ForceContinueGameMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a ClientStartGameMessage.
*
* @param msg the received ClientStartGameMessage
* @param from the sender of the message
*/
@Override @Override
public void received(ClientStartGameMessage msg, int from) { public void received(ClientStartGameMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a NoPowerCardMessage.
*
* @param msg the received NoPowerCardMessage
* @param from the sender of the message
*/
@Override @Override
public void received(NoPowerCardMessage msg, int from) { public void received(NoPowerCardMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* Handles the reception of a SelectedPiecesMessage.
*
* @param msg the received SelectedPiecesMessage
* @param from the sender of the message
*/
@Override @Override
public void received(SelectedPiecesMessage msg, int from) { public void received(SelectedPiecesMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);

View File

@@ -85,19 +85,46 @@ public void received(LeaveGameMessage msg, int from) {
} }
} }
/**
* This method will be called whenever the server received an NoPowerCardMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a NoPowerCardMessage object.
* @param from as the client id of the player as an Integer.
*/
@Override @Override
public void received(NoPowerCardMessage msg, int from) { public void received(NoPowerCardMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* This method will be called whenever the server received a SelectCardMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a SelectCardMessage object.
* @param from as the client id of the player as an Integer.
*/
public void received(SelectCardMessage msg, int from) { public void received(SelectCardMessage msg, int from) {
currentState.received(msg, from); currentState.received(msg, from);
} }
/**
* This method will be called whenever the server received a RequestMoveMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a RequestMoveMessage object.
* @param from as the client id of the player as an Integer.
*/
public void received(RequestMoveMessage msg, int from) { public void received(RequestMoveMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* This method will be called whenever the server received a SelectedPiecesMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a SelectedPiecesMessage object.
* @param from as the client id of the player as an Integer.
*/
@Override @Override
public void received(SelectedPiecesMessage msg, int from) { public void received(SelectedPiecesMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);

View File

@@ -31,11 +31,17 @@ public AnimationState(GameState gameAutomaton, ServerGameLogic logic) {
super(gameAutomaton, logic); super(gameAutomaton, logic);
} }
/**
* This method will be used whenever this state will be entered.
*/
@Override @Override
public void enter() { public void enter() {
LOGGER.log(System.Logger.Level.DEBUG, "Entered AnimationState state."); LOGGER.log(System.Logger.Level.DEBUG, "Entered AnimationState state.");
} }
/**
* This method will be used whenever this state will be exited.
*/
@Override @Override
public void exit() { public void exit() {
LOGGER.log(System.Logger.Level.DEBUG, "Exited AnimationState state."); LOGGER.log(System.Logger.Level.DEBUG, "Exited AnimationState state.");

View File

@@ -38,12 +38,18 @@ public DetermineStartPlayerState(GameState gameAutomaton, ServerGameLogic logic)
super(gameAutomaton, logic); super(gameAutomaton, logic);
} }
/**
* This method will be used whenever this state will be entered.
*/
@Override @Override
public void enter() { public void enter() {
LOGGER.log(System.Logger.Level.INFO, "Entered DetermineStartPlayerState state."); LOGGER.log(System.Logger.Level.INFO, "Entered DetermineStartPlayerState state.");
playerToStart = this.logic.getGame().getPlayers().size(); playerToStart = this.logic.getGame().getPlayers().size();
} }
/**
* This method will be used whenever this state will be exited.
*/
@Override @Override
public void exit() { public void exit() {
LOGGER.log(Level.INFO, "Exited DetermineStartPlayerState state."); LOGGER.log(Level.INFO, "Exited DetermineStartPlayerState state.");

View File

@@ -45,6 +45,9 @@ public TurnState(GameState gameAutomaton, ServerGameLogic logic) {
this.movePieceState = new MovePieceState(this, logic); this.movePieceState = new MovePieceState(this, logic);
} }
/**
* This method will be used whenever this state will be entered.
*/
@Override @Override
public void enter() { public void enter() {
LOGGER.log(Level.INFO, "Entered TurnState state."); LOGGER.log(Level.INFO, "Entered TurnState state.");
@@ -55,6 +58,9 @@ public void enter() {
this.setCurrentState(this.powerCardState); this.setCurrentState(this.powerCardState);
} }
/**
* This method will be used whenever this state will be exited.
*/
@Override @Override
public void exit() { public void exit() {
LOGGER.log(Level.DEBUG, "Exited TurnState state."); LOGGER.log(Level.DEBUG, "Exited TurnState state.");
@@ -108,11 +114,25 @@ public void received(RequestMoveMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* This method will be called whenever the server received a AnimationEndMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a AnimationEndMessage object.
* @param from as the client id of the player as an Integer.
*/
@Override @Override
public void received(AnimationEndMessage msg, int from) { public void received(AnimationEndMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* This method will be called whenever the server received a SelectCardMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a SelectCardMessage object.
* @param from as the client id of the player as an Integer.
*/
public void received(SelectCardMessage msg, int from) { public void received(SelectCardMessage msg, int from) {
currentState.received(msg, from); currentState.received(msg, from);
} }

View File

@@ -30,17 +30,31 @@ public MovePieceState(TurnState turnAutomaton, ServerGameLogic logic) {
super(turnAutomaton, logic); super(turnAutomaton, logic);
} }
/**
* This method will be used whenever this state will be entered.
*/
@Override @Override
public void enter() { public void enter() {
LOGGER.log(System.Logger.Level.DEBUG, "Entered MovePieceState state."); LOGGER.log(System.Logger.Level.DEBUG, "Entered MovePieceState state.");
} }
/**
* Sets the active player to the next player in the game.
*
* @param activePlayer the current active player color
*/
private void setActivePlayer(Color activePlayer) { private void setActivePlayer(Color activePlayer) {
Color newColor = activePlayer.next(logic.getGame()); Color newColor = activePlayer.next(logic.getGame());
logic.getGame().setActiveColor(newColor); logic.getGame().setActiveColor(newColor);
logic.getServerSender().broadcast(new ActivePlayerMessage(newColor)); logic.getServerSender().broadcast(new ActivePlayerMessage(newColor));
} }
/**
* Handles the received AnimationEndMessage.
*
* @param msg the received AnimationEndMessage
* @param from the ID of the player who sent the message
*/
@Override @Override
public void received(AnimationEndMessage msg, int from) { public void received(AnimationEndMessage msg, int from) {
finishedAnimations.add(logic.getGame().getPlayerById(from)); finishedAnimations.add(logic.getGame().getPlayerById(from));
@@ -55,10 +69,12 @@ public void received(AnimationEndMessage msg, int from) {
return; return;
} }
this.turnAutomaton.getGameAutomaton().setCurrentState(this.turnAutomaton.getGameAutomaton().getTurnState()); this.turnAutomaton.getGameAutomaton().setCurrentState(this.turnAutomaton.getGameAutomaton().getTurnState());
} else if (logic.getGame().getDiceEyes() == 6) { }
else if (logic.getGame().getDiceEyes() == 6) {
logic.getServerSender().send(logic.getGame().getPlayerIdByColor(logic.getGame().getActiveColor()), new DiceNowMessage()); logic.getServerSender().send(logic.getGame().getPlayerIdByColor(logic.getGame().getActiveColor()), new DiceNowMessage());
this.turnAutomaton.setCurrentState(this.turnAutomaton.getRollDiceState()); this.turnAutomaton.setCurrentState(this.turnAutomaton.getRollDiceState());
} else { }
else {
logic.getServerSender().send(logic.getGame().getPlayerIdByColor(logic.getGame().getActiveColor()), new EndOfTurnMessage()); logic.getServerSender().send(logic.getGame().getPlayerIdByColor(logic.getGame().getActiveColor()), new EndOfTurnMessage());
setActivePlayer(logic.getGame().getActiveColor()); setActivePlayer(logic.getGame().getActiveColor());
this.turnAutomaton.getGameAutomaton().setCurrentState(this.turnAutomaton.getGameAutomaton().getTurnState()); this.turnAutomaton.getGameAutomaton().setCurrentState(this.turnAutomaton.getGameAutomaton().getTurnState());
@@ -66,6 +82,9 @@ public void received(AnimationEndMessage msg, int from) {
} }
} }
/**
* This method will be used whenever this state will be exited.
*/
@Override @Override
public void exit() { public void exit() {
finishedAnimations.clear(); finishedAnimations.clear();

View File

@@ -17,7 +17,7 @@ public class PlayPowerCardState extends TurnAutomatonState {
/** /**
* Create PlayPowerCardState attributes. * Create PlayPowerCardState attributes.
*/ */
private Set<Integer> messageReceived = new HashSet<Integer>(); private final Set<Integer> messageReceived = new HashSet<Integer>();
/** /**
* Constructs a server state of the specified game logic. * Constructs a server state of the specified game logic.
@@ -29,13 +29,20 @@ public PlayPowerCardState(TurnState turnAutomaton, ServerGameLogic logic) {
super(turnAutomaton, logic); super(turnAutomaton, logic);
} }
/**
* This method will be used whenever this state will be entered.
*/
@Override @Override
public void enter() { public void enter() {
LOGGER.log(System.Logger.Level.DEBUG, "Entered PlayPowerCardState state."); LOGGER.log(System.Logger.Level.DEBUG, "Entered PlayPowerCardState state.");
} }
/**
* This method will be used whenever this state will be exited.
*/
@Override @Override
public void exit() { public void exit() {
messageReceived.clear();
LOGGER.log(System.Logger.Level.DEBUG, "Exited PlayPowerCardState state."); LOGGER.log(System.Logger.Level.DEBUG, "Exited PlayPowerCardState state.");
} }

View File

@@ -54,6 +54,13 @@ public PowerCardState(TurnState turnAutomaton, ServerGameLogic logic) {
} }
/**
* Enters the PowerCardState state.
* Clears the checked cards, logs the entry, sets the current state to choosePowerCardState,
* initializes the visitor, and processes the player's hand cards.
* If no cards are available, sends a DiceNowMessage and transitions to RollDiceState.
* Otherwise, sends a PossibleCardsMessage with the available cards.
*/
@Override @Override
public void enter() { public void enter() {
chekedCards.clear(); chekedCards.clear();
@@ -75,11 +82,22 @@ public void enter() {
} }
} }
/**
* Exits the PowerCardState state.
* Logs the exit.
*/
@Override @Override
public void exit() { public void exit() {
LOGGER.log(System.Logger.Level.DEBUG, "Exit PowerCardState state."); LOGGER.log(System.Logger.Level.DEBUG, "Exit PowerCardState state.");
} }
/**
* Handles the received NoPowerCardMessage.
* Delegates the message handling to the current state's received method.
*
* @param msg the NoPowerCardMessage received
* @param form the client id of the player who sent the message
*/
@Override @Override
public void received(NoPowerCardMessage msg, int form) { public void received(NoPowerCardMessage msg, int form) {
currentState.received(msg, form); currentState.received(msg, form);

View File

@@ -64,6 +64,13 @@ public void received(RequestDieMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);
} }
/**
* This method will be called whenever the server received a AnimationEndMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a AnimationEndMessage object.
* @param from as the client id of the player as an Integer.
*/
@Override @Override
public void received(AnimationEndMessage msg, int from) { public void received(AnimationEndMessage msg, int from) {
this.currentState.received(msg, from); this.currentState.received(msg, from);

View File

@@ -88,6 +88,12 @@ public void received(SelectedPiecesMessage msg, int from) {
} }
} }
/**
* This method will swap the pieces of the given messageOwn and messageEnemy.
*
* @param messageOwn as the own piece as a Piece object.
* @param messageEnemy as the enemy piece as a Piece object.
*/
private void swapPieces(Piece messageOwn, Piece messageEnemy) { private void swapPieces(Piece messageOwn, Piece messageEnemy) {
//swap Pieces in Model //swap Pieces in Model
Board board = logic.getGame().getBoard(); Board board = logic.getGame().getBoard();

View File

@@ -39,16 +39,4 @@ public void enter() {
public void exit() { public void exit() {
} }
/**
* This method will be called whenever the server received a SelectedPiecesMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a SelectedPiecesMessage object.
* @param from as the client id of the player as an Integer.
*/
@Override
public void received(SelectedPiecesMessage msg, int from) {
// ToDo: We can use this method to catch irregular client messages.
}
} }

View File

@@ -45,6 +45,9 @@ public void enter() {
} }
} }
/**
* This method will be used whenever this state will be exited.
*/
@Override @Override
public void exit() { public void exit() {
LOGGER.log(System.Logger.Level.INFO, "Exited FirstRollState state."); LOGGER.log(System.Logger.Level.INFO, "Exited FirstRollState state.");
@@ -69,6 +72,13 @@ public void received(RequestDieMessage msg, int from) {
isDied = true; isDied = true;
} }
/**
* This method will be called whenever the server received a AnimationEndMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a AnimationEndMessage object.
* @param from as the client id of the player as an Integer.
*/
@Override @Override
public void received(AnimationEndMessage msg, int from) { public void received(AnimationEndMessage msg, int from) {
if (from != this.logic.getGame().getActivePlayerId()) { if (from != this.logic.getGame().getActivePlayerId()) {

View File

@@ -25,12 +25,18 @@ public SecondRollState(RollDiceState rollDiceAutomaton, ServerGameLogic logic) {
super(rollDiceAutomaton, logic); super(rollDiceAutomaton, logic);
} }
/**
* This method will be used whenever this state will be entered.
*/
@Override @Override
public void enter() { public void enter() {
this.logic.getServerSender().send(this.logic.getGame().getActivePlayerId(), new DiceNowMessage()); this.logic.getServerSender().send(this.logic.getGame().getActivePlayerId(), new DiceNowMessage());
LOGGER.log(System.Logger.Level.DEBUG, "Entered SecondRollState state."); LOGGER.log(System.Logger.Level.DEBUG, "Entered SecondRollState state.");
} }
/**
* This method will be used whenever this state will be exited.
*/
@Override @Override
public void exit() { public void exit() {
LOGGER.log(System.Logger.Level.DEBUG, "Exited SecondRollState state."); LOGGER.log(System.Logger.Level.DEBUG, "Exited SecondRollState state.");
@@ -54,6 +60,13 @@ public void received(RequestDieMessage msg, int from) {
this.logic.getServerSender().broadcast(new DieMessage(roll)); this.logic.getServerSender().broadcast(new DieMessage(roll));
} }
/**
* This method will be called whenever the server received a AnimationEndMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a AnimationEndMessage object.
* @param from as the client id of the player as an Integer.
*/
@Override @Override
public void received(AnimationEndMessage msg, int from) { public void received(AnimationEndMessage msg, int from) {
if (from != this.logic.getGame().getActivePlayerId()) { if (from != this.logic.getGame().getActivePlayerId()) {

View File

@@ -23,12 +23,18 @@ public ThirdRollState(RollDiceState rollDiceAutomaton, ServerGameLogic logic) {
super(rollDiceAutomaton, logic); super(rollDiceAutomaton, logic);
} }
/**
* This method will be used whenever this state will be entered.
*/
@Override @Override
public void enter() { public void enter() {
this.logic.getServerSender().send(this.logic.getGame().getActivePlayerId(), new DiceNowMessage()); this.logic.getServerSender().send(this.logic.getGame().getActivePlayerId(), new DiceNowMessage());
LOGGER.log(System.Logger.Level.DEBUG, "Exited ThirdRollState state."); LOGGER.log(System.Logger.Level.DEBUG, "Exited ThirdRollState state.");
} }
/**
* This method will be used whenever this state will be exited.
*/
@Override @Override
public void exit() { public void exit() {
LOGGER.log(System.Logger.Level.DEBUG, "Entered ThirdRollState state."); LOGGER.log(System.Logger.Level.DEBUG, "Entered ThirdRollState state.");
@@ -52,6 +58,13 @@ public void received(RequestDieMessage msg, int from) {
this.logic.getServerSender().broadcast(new DieMessage(roll)); this.logic.getServerSender().broadcast(new DieMessage(roll));
} }
/**
* This method will be called whenever the server received a AnimationEndMessage message.
* It will also get the client id of the player who send this message.
*
* @param msg as the message which was sent by the player as a AnimationEndMessage object.
* @param from as the client id of the player as an Integer.
*/
@Override @Override
public void received(AnimationEndMessage msg, int from) { public void received(AnimationEndMessage msg, int from) {
if (from != this.logic.getGame().getActivePlayerId()) { if (from != this.logic.getGame().getActivePlayerId()) {