merge Development into test #27

Merged
j23f0712 merged 14 commits from development into dev/test 2024-12-01 21:56:50 +01:00
29 changed files with 207 additions and 94 deletions
Showing only changes of commit 71d5701cc7 - Show all commits

View File

@@ -7,6 +7,7 @@
import com.jme3.texture.Texture2D; import com.jme3.texture.Texture2D;
import pp.mdga.client.MdgaApp; import pp.mdga.client.MdgaApp;
import pp.mdga.game.Color; import pp.mdga.game.Color;
import pp.mdga.game.BonusCard;
import java.util.List; import java.util.List;
@@ -70,7 +71,7 @@ public void hideDice() {
cardLayerHandler.hideDice(); cardLayerHandler.hideDice();
} }
public void addCard(pp.mdga.game.BonusCard card) { public void addCard(BonusCard card) {
cardLayerHandler.addCard(card); cardLayerHandler.addCard(card);
} }
@@ -78,7 +79,7 @@ public void clearSelectableCards() {
cardLayerHandler.clearSelectableCards(); cardLayerHandler.clearSelectableCards();
} }
public void setSelectableCards(List<pp.mdga.game.BonusCard> select) { public void setSelectableCards(List<BonusCard> select) {
cardLayerHandler.setSelectableCards(select); cardLayerHandler.setSelectableCards(select);
} }

View File

@@ -7,13 +7,20 @@
/** /**
* Notification that is sent when a card is acquired. * Notification that is sent when a card is acquired.
*/ */
public class AcquireCardNotification extends Notification{ public class AcquireCardNotification extends Notification {
/**
* The id of the card that was acquired.
*/
private final UUID cardId;
private UUID cardId; /**
private BonusCard bonusCard; * The bonus card that was acquired.
*/
private final BonusCard bonusCard;
/** /**
* Constructor. * Constructor.
*
* @param cardId The id of the card that was acquired. * @param cardId The id of the card that was acquired.
*/ */
public AcquireCardNotification(BonusCard bonusCard, UUID cardId) { public AcquireCardNotification(BonusCard bonusCard, UUID cardId) {
@@ -23,6 +30,7 @@ public AcquireCardNotification(BonusCard bonusCard, UUID cardId) {
/** /**
* Get the id of the card that was acquired. * Get the id of the card that was acquired.
*
* @return The id of the card that was acquired. * @return The id of the card that was acquired.
*/ */
public UUID getCardId() { public UUID getCardId() {

View File

@@ -6,12 +6,16 @@
* Notification that the active player has changed * Notification that the active player has changed
*/ */
public class ActivePlayerNotification extends Notification { public class ActivePlayerNotification extends Notification {
/** /**
* The color of the active player * The color of the active player
*/ */
private Color color; private final Color color;
/**
* Constructor.
*
* @param color the color of the active player
*/
public ActivePlayerNotification(Color color) { public ActivePlayerNotification(Color color) {
this.color = color; this.color = color;
} }

View File

@@ -7,7 +7,7 @@
/** /**
* Class CeremonyNotification * Class CeremonyNotification
* Represents a notification for a ceremony in the game. * Represents a notification for a ceremony in the game.
* * <p>
* Index mapping: * Index mapping:
* index = 0 ==> winner * index = 0 ==> winner
* index = 1 ==> 2nd * index = 1 ==> 2nd
@@ -16,6 +16,9 @@
* index = 4 ==> total * index = 4 ==> total
*/ */
public class CeremonyNotification extends Notification { public class CeremonyNotification extends Notification {
/**
* Attributes.
*/
private ArrayList<Color> colors; private ArrayList<Color> colors;
private ArrayList<String> names; private ArrayList<String> names;
private ArrayList<Integer> piecesThrown; private ArrayList<Integer> piecesThrown;
@@ -40,8 +43,6 @@ public CeremonyNotification() {
this.bonusNodes = new ArrayList<>(); this.bonusNodes = new ArrayList<>();
} }
// Getters and Setters
/** /**
* @return the list of colors * @return the list of colors
*/ */

View File

@@ -4,7 +4,6 @@
* Notification that the dice is now. * Notification that the dice is now.
*/ */
public class DiceNowNotification extends Notification { public class DiceNowNotification extends Notification {
/** /**
* Constructor. * Constructor.
*/ */

View File

@@ -5,12 +5,15 @@
/** /**
* Notification that is sent when a player has diced. * Notification that is sent when a player has diced.
*/ */
public class DicingNotification extends Notification{ public class DicingNotification extends Notification {
/**
private Color color; * The color of the player that diced.
*/
private final Color color;
/** /**
* Constructor. * Constructor.
*
* @param color The color of the player that diced. * @param color The color of the player that diced.
*/ */
public DicingNotification(Color color) { public DicingNotification(Color color) {
@@ -19,6 +22,7 @@ public DicingNotification(Color color) {
/** /**
* Get the color of the player that diced. * Get the color of the player that diced.
*
* @return The color of the player that diced. * @return The color of the player that diced.
*/ */
public Color getColor() { public Color getColor() {

View File

@@ -6,14 +6,20 @@
/** /**
* Notification that a card has been drawn * Notification that a card has been drawn
*/ */
public class DrawCardNotification extends Notification { public class DrawCardNotification extends Notification {
/**
* The color of the player who drew the card
*/
private final Color color;
private Color color; /**
private BonusCard card; * The card that was drawn
*/
private final BonusCard card;
/** /**
* @param color the color of the player who drew the card * @param color the color of the player who drew the card
* @param card the card that was drawn * @param card the card that was drawn
*/ */
public DrawCardNotification(Color color, BonusCard card) { public DrawCardNotification(Color color, BonusCard card) {
this.color = color; this.color = color;

View File

@@ -3,7 +3,7 @@
/** /**
* GameNotification class * GameNotification class
*/ */
public class GameNotification extends Notification{ public class GameNotification extends Notification {
/** /**
* Constructor * Constructor
*/ */

View File

@@ -6,14 +6,20 @@
* Notification that a piece has moved to a home. * Notification that a piece has moved to a home.
*/ */
public class HomeMoveNotification extends Notification { public class HomeMoveNotification extends Notification {
/**
* The unique identifier of the piece.
*/
private final UUID pieceId;
private UUID pieceId; /**
private int homeIndex; * The index of the home position.
*/
private final int homeIndex;
/** /**
* Constructor. * Constructor.
* *
* @param pieceId the piece id * @param pieceId the piece id
* @param homeIndex the home index * @param homeIndex the home index
*/ */
public HomeMoveNotification(UUID pieceId, int homeIndex) { public HomeMoveNotification(UUID pieceId, int homeIndex) {

View File

@@ -6,8 +6,10 @@
* Notification that a card has been drawn * Notification that a card has been drawn
*/ */
public class InterruptNotification extends Notification { public class InterruptNotification extends Notification {
/**
private Color color; * The color of the player who disconnected
*/
private final Color color;
/** /**
* @param color the color of the player who disconnected * @param color the color of the player who disconnected

View File

@@ -3,10 +3,5 @@
/** /**
* Notification that a dialog has been started * Notification that a dialog has been started
*/ */
public class LobbyDialogNotification extends Notification{ public class LobbyDialogNotification extends Notification {
/**
* Constructor
*/
public LobbyDialogNotification() {
}
} }

View File

@@ -1,14 +1,11 @@
package pp.mdga.notification; package pp.mdga.notification;
import pp.mdga.game.Color;
import java.util.UUID; import java.util.UUID;
/** /**
* Notification that a piece has been moved. * Notification that a piece has been moved.
*/ */
public class MovePieceNotification extends Notification { public class MovePieceNotification extends Notification {
/** /**
* The unique identifier of the piece being moved. * The unique identifier of the piece being moved.
*/ */

View File

@@ -6,8 +6,10 @@
* Notification that a piece has no shield. * Notification that a piece has no shield.
*/ */
public class NoShieldNotification extends Notification{ public class NoShieldNotification extends Notification{
/**
private UUID pieceId; * The id of the piece that has no shield.
*/
private final UUID pieceId;
/** /**
* Constructor. * Constructor.

View File

@@ -1,4 +1,7 @@
package pp.mdga.notification; package pp.mdga.notification;
/**
* Represents a notification that can be sent to a player.
*/
public abstract class Notification { public abstract class Notification {
} }

View File

@@ -7,14 +7,21 @@
* Notification that a card has been played. * Notification that a card has been played.
*/ */
public class PlayCardNotification extends Notification { public class PlayCardNotification extends Notification {
/**
* The color of the player that played the card.
*/
private final Color color;
private Color color; /**
private BonusCard card; * The card that was played.
*/
private final BonusCard card;
/** /**
* Constructor. * Constructor.
*
* @param color the color of the player that played the card. * @param color the color of the player that played the card.
* @param card the card that was played. * @param card the card that was played.
*/ */
public PlayCardNotification(Color color, BonusCard card) { public PlayCardNotification(Color color, BonusCard card) {
this.color = color; this.color = color;
@@ -23,6 +30,7 @@ public PlayCardNotification(Color color, BonusCard card) {
/** /**
* Get the color of the player that played the card. * Get the color of the player that played the card.
*
* @return the color of the player that played the card. * @return the color of the player that played the card.
*/ */
public Color getColor() { public Color getColor() {
@@ -31,6 +39,7 @@ public Color getColor() {
/** /**
* Get the card that was played. * Get the card that was played.
*
* @return the card that was played. * @return the card that was played.
*/ */
public BonusCard getCard() { public BonusCard getCard() {

View File

@@ -9,17 +9,28 @@
* Notification that a player is in the game. * Notification that a player is in the game.
*/ */
public class PlayerInGameNotification extends Notification { public class PlayerInGameNotification extends Notification {
/**
* The color of the player that is in the game.
*/
private final Color color;
private Color color; /**
private String name; * The name of the player that is in the game.
private List<UUID> piecesList; */
private final String name;
/**
* The list of piece IDs associated with the player.
*/
private final List<UUID> piecesList;
/** /**
* Constructor. * Constructor.
*
* @param color the color of the player that is in the game. * @param color the color of the player that is in the game.
* @param name the name of the player that is in the game. * @param name the name of the player that is in the game.
*/ */
public PlayerInGameNotification(Color color, List<UUID> piecesList, String name) { public PlayerInGameNotification(Color color, List<UUID> piecesList, String name) {
this.color = color; this.color = color;
this.name = name; this.name = name;
this.piecesList = piecesList; this.piecesList = piecesList;
@@ -27,6 +38,7 @@ public PlayerInGameNotification(Color color, List<UUID> piecesList, String name
/** /**
* Get the color of the player that is in the game. * Get the color of the player that is in the game.
*
* @return the color of the player that is in the game. * @return the color of the player that is in the game.
*/ */
public Color getColor() { public Color getColor() {
@@ -35,12 +47,18 @@ public Color getColor() {
/** /**
* Get the name of the player that is in the game. * Get the name of the player that is in the game.
*
* @return the name of the player that is in the game. * @return the name of the player that is in the game.
*/ */
public String getName() { public String getName() {
return name; return name;
} }
/**
* Get the list of piece IDs associated with the player.
*
* @return the list of piece IDs associated with the player.
*/
public List<UUID> getPiecesList() { public List<UUID> getPiecesList() {
return piecesList; return piecesList;
} }

View File

@@ -6,11 +6,14 @@
* Notification that a player is in the game. * Notification that a player is in the game.
*/ */
public class ResumeNotification extends Notification { public class ResumeNotification extends Notification {
/**
private Color color; * The color of the player that is in the game.
*/
private final Color color;
/** /**
* Constructor. * Constructor.
*
* @param color the color of the player that is in the game. * @param color the color of the player that is in the game.
*/ */
public ResumeNotification(Color color) { public ResumeNotification(Color color) {
@@ -19,6 +22,7 @@ public ResumeNotification(Color color) {
/** /**
* Get the color of the player that is in the game. * Get the color of the player that is in the game.
*
* @return the color of the player that is in the game. * @return the color of the player that is in the game.
*/ */
public Color getColor() { public Color getColor() {

View File

@@ -5,16 +5,27 @@
/** /**
* Notification that a die has been rolled. * Notification that a die has been rolled.
*/ */
public class RollDiceNotification extends Notification{ public class RollDiceNotification extends Notification {
/**
* The color of the player that rolled the die.
*/
private final Color color;
private Color color; /**
private int eyes; * The number of eyes that were rolled.
private int moveNumber; */
private final int eyes;
/**
* The number of the move that was made.
*/
private final int moveNumber;
/** /**
* Constructor. * Constructor.
* @param color the color of the player that rolled the die. *
* @param eyes the number of eyes that were rolled. * @param color the color of the player that rolled the die.
* @param eyes the number of eyes that were rolled.
* @param moveNumber the number of the move that was made. * @param moveNumber the number of the move that was made.
*/ */
public RollDiceNotification(Color color, int eyes, int moveNumber) { public RollDiceNotification(Color color, int eyes, int moveNumber) {
@@ -25,6 +36,7 @@ public RollDiceNotification(Color color, int eyes, int moveNumber) {
/** /**
* Get the color of the player that rolled the die. * Get the color of the player that rolled the die.
*
* @return the color of the player that rolled the die. * @return the color of the player that rolled the die.
*/ */
public Color getColor() { public Color getColor() {
@@ -33,6 +45,7 @@ public Color getColor() {
/** /**
* Get the number of eyes that were rolled. * Get the number of eyes that were rolled.
*
* @return the number of eyes that were rolled. * @return the number of eyes that were rolled.
*/ */
public int getEyes() { public int getEyes() {
@@ -41,6 +54,7 @@ public int getEyes() {
/** /**
* Get the number of the move that was made. * Get the number of the move that was made.
*
* @return the number of the move that was made. * @return the number of the move that was made.
*/ */
public int getMoveNumber() { public int getMoveNumber() {

View File

@@ -7,8 +7,10 @@
* Notification that contains a list of cards that the player can choose from. * Notification that contains a list of cards that the player can choose from.
*/ */
public class SelectableCardsNotification extends Notification { public class SelectableCardsNotification extends Notification {
/**
private List<BonusCard> cards; * The list of cards that the player can choose from.
*/
private final List<BonusCard> cards;
/** /**
* Constructor. * Constructor.

View File

@@ -6,8 +6,7 @@
/** /**
* Notification for selecting pieces and their possible moves. * Notification for selecting pieces and their possible moves.
*/ */
public class SelectableMoveNotification extends Notification{ public class SelectableMoveNotification extends Notification {
/** /**
* List of UUIDs representing the pieces that can be moved based on the dice roll. * List of UUIDs representing the pieces that can be moved based on the dice roll.
*/ */
@@ -16,7 +15,7 @@ public class SelectableMoveNotification extends Notification{
/** /**
* List of integers representing the target nodes the pieces can move to. * List of integers representing the target nodes the pieces can move to.
*/ */
private final List<Integer> moveIndexe; private final List<Integer> moveIndices;
/** /**
* List of booleans indicating whether the corresponding target nodes are in the home area. * List of booleans indicating whether the corresponding target nodes are in the home area.
@@ -28,12 +27,12 @@ public class SelectableMoveNotification extends Notification{
* Constructs a notification for selectable piece moves. * Constructs a notification for selectable piece moves.
* *
* @param pieces the list of pieces that can be moved * @param pieces the list of pieces that can be moved
* @param moveIndexe the list of target nodes for the moves * @param moveIndices the list of target nodes for the moves
* @param homeMoves the list indicating if the target nodes are in the home area * @param homeMoves the list indicating if the target nodes are in the home area
*/ */
public SelectableMoveNotification(List<UUID> pieces, List<Integer> moveIndexe, List<Boolean> homeMoves) { public SelectableMoveNotification(List<UUID> pieces, List<Integer> moveIndices, List<Boolean> homeMoves) {
this.pieces = pieces; this.pieces = pieces;
this.moveIndexe = moveIndexe; this.moveIndices = moveIndices;
this.homeMoves = homeMoves; this.homeMoves = homeMoves;
} }
@@ -51,8 +50,8 @@ public List<UUID> getPieces() {
* *
* @return a list of integers representing the target nodes * @return a list of integers representing the target nodes
*/ */
public List<Integer> getMoveIndexe() { public List<Integer> getMoveIndices() {
return moveIndexe; return moveIndices;
} }
/** /**

View File

@@ -6,8 +6,7 @@
/** /**
* Notification for selecting pieces for swapcard. * Notification for selecting pieces for swapcard.
*/ */
public class SelectableSwapNotification extends Notification{ public class SelectableSwapNotification extends Notification {
/** /**
* List of UUIDs representing the player's own pieces available for selection. * List of UUIDs representing the player's own pieces available for selection.
*/ */

View File

@@ -5,9 +5,11 @@
/** /**
* This class will be used to hold all ShieldActiveNotification relevant data. * This class will be used to hold all ShieldActiveNotification relevant data.
*/ */
public class ShieldActiveNotification extends Notification{ public class ShieldActiveNotification extends Notification {
/**
private UUID pieceId; * The pieceId
*/
private final UUID pieceId;
/** /**
* This constructor is used to create a new ShieldActiveNotification * This constructor is used to create a new ShieldActiveNotification

View File

@@ -6,8 +6,10 @@
* This class will be used to hold all ShieldSuppressedNotification relevant data. * This class will be used to hold all ShieldSuppressedNotification relevant data.
*/ */
public class ShieldSuppressedNotification extends Notification { public class ShieldSuppressedNotification extends Notification {
/**
private UUID pieceId; * The pieceId
*/
private final UUID pieceId;
/** /**
* This constructor is used to create a new ShieldSuppressedNotification * This constructor is used to create a new ShieldSuppressedNotification

View File

@@ -3,10 +3,5 @@
/** /**
* Notification that a dialog has been started * Notification that a dialog has been started
*/ */
public class StartDialogNotification extends Notification{ public class StartDialogNotification extends Notification {
/**
* Constructor
*/
public StartDialogNotification() {
}
} }

View File

@@ -6,23 +6,31 @@
* Notification that two pieces have been swapped. * Notification that two pieces have been swapped.
*/ */
public class SwapPieceNotification extends Notification { public class SwapPieceNotification extends Notification {
/**
* The UUID of the first piece that has been swapped.
*/
private final UUID firstPiece;
private UUID firstPiece; /**
private UUID secondPiece; * The UUID of the second piece that has been swapped.
*/
private final UUID secondPiece;
/** /**
* Constructor. * Constructor.
* @param firstPiece the UUID of the first piece that has been swapped. *
* @param firstPiece the UUID of the first piece that has been swapped.
* @param secondPiece the UUID of the second piece that has been swapped. * @param secondPiece the UUID of the second piece that has been swapped.
*/ */
public SwapPieceNotification(UUID firstPiece, UUID secondPiece) { public SwapPieceNotification(UUID firstPiece, UUID secondPiece) {
assert(!firstPiece.equals(secondPiece)); assert (!firstPiece.equals(secondPiece));
this.firstPiece = firstPiece; this.firstPiece = firstPiece;
this.secondPiece = secondPiece; this.secondPiece = secondPiece;
} }
/** /**
* Get the UUID of the first piece that has been swapped. * Get the UUID of the first piece that has been swapped.
*
* @return the UUID of the first piece that has been swapped. * @return the UUID of the first piece that has been swapped.
*/ */
public UUID getFirstPiece() { public UUID getFirstPiece() {
@@ -31,6 +39,7 @@ public UUID getFirstPiece() {
/** /**
* Get the UUID of the second piece that has been swapped. * Get the UUID of the second piece that has been swapped.
*
* @return the UUID of the second piece that has been swapped. * @return the UUID of the second piece that has been swapped.
*/ */
public UUID getSecondPiece() { public UUID getSecondPiece() {

View File

@@ -1,12 +1,15 @@
package pp.mdga.notification; package pp.mdga.notification;
import pp.mdga.game.Color;
import java.util.UUID; import java.util.UUID;
public class ThrowPieceNotification extends Notification{ /**
* Notification that is sent when a piece is thrown.
private UUID pieceId; */
public class ThrowPieceNotification extends Notification {
/**
* The id of the piece that was thrown.
*/
private final UUID pieceId;
/** /**
* This constructor is used to create a new ThrowPieceNotification * This constructor is used to create a new ThrowPieceNotification
@@ -15,6 +18,11 @@ public ThrowPieceNotification(UUID pieceId) {
this.pieceId = pieceId; this.pieceId = pieceId;
} }
/**
* Get the id of the piece that was thrown.
*
* @return The id of the piece that was thrown.
*/
public UUID getPieceId() { public UUID getPieceId() {
return pieceId; return pieceId;
} }

View File

@@ -5,16 +5,27 @@
/** /**
* Class TskSelectNotification * Class TskSelectNotification
*/ */
public class TskSelectNotification extends Notification{ public class TskSelectNotification extends Notification {
/**
* The color of the player that is in the game.
*/
private final Color color; private final Color color;
/**
* The name of the player that is in the game.
*/
private final String name; private final String name;
/**
* Indicates if the select notification affects the own user.
*/
private final boolean isSelf; private final boolean isSelf;
/** /**
* Constructor. * Constructor.
*
* @param color the color of the player that is in the game. * @param color the color of the player that is in the game.
* @param name the name of the player that is in the game. * @param name the name of the player that is in the game.
*/ */
public TskSelectNotification(Color color, String name, boolean isSelf) { public TskSelectNotification(Color color, String name, boolean isSelf) {
this.color = color; this.color = color;
@@ -24,6 +35,7 @@ public TskSelectNotification(Color color, String name, boolean isSelf) {
/** /**
* Get the color of the player that is in the game. * Get the color of the player that is in the game.
*
* @return the color of the player that is in the game. * @return the color of the player that is in the game.
*/ */
public Color getColor() { public Color getColor() {
@@ -32,6 +44,7 @@ public Color getColor() {
/** /**
* Get the name of the player that is in the game. * Get the name of the player that is in the game.
*
* @return the name of the player that is in the game. * @return the name of the player that is in the game.
*/ */
public String getName() { public String getName() {

View File

@@ -2,20 +2,27 @@
import pp.mdga.game.Color; import pp.mdga.game.Color;
public class TskUnselectNotification extends Notification{ /**
* Notification for unselecting a player
private Color color; */
public class TskUnselectNotification extends Notification {
/**
* The color of the player
*/
private final Color color;
/** /**
* Constructor * Constructor
* @param color *
* @param color the color of the player
*/ */
public TskUnselectNotification(Color color){ public TskUnselectNotification(Color color) {
this.color = color; this.color = color;
} }
/** /**
* Get the color * Get the color
*
* @return color * @return color
*/ */
public Color getColor() { public Color getColor() {

View File

@@ -5,12 +5,15 @@
/** /**
* Notification to inform the player that he has to wait for the other player to move. * Notification to inform the player that he has to wait for the other player to move.
*/ */
public class WaitMoveNotification extends Notification{ public class WaitMoveNotification extends Notification {
/**
private UUID pieceId; * The id of the piece that has to move.
*/
private final UUID pieceId;
/** /**
* Constructor. * Constructor.
*
* @param pieceId the id of the piece that has to move. * @param pieceId the id of the piece that has to move.
*/ */
public WaitMoveNotification(UUID pieceId) { public WaitMoveNotification(UUID pieceId) {
@@ -19,6 +22,7 @@ public WaitMoveNotification(UUID pieceId) {
/** /**
* Get the id of the piece that has to move. * Get the id of the piece that has to move.
*
* @return the id of the piece that has to move. * @return the id of the piece that has to move.
*/ */
public UUID getPieceId() { public UUID getPieceId() {