From cd04849b36d220dfebfd93211c2bf2746b6ee9ad Mon Sep 17 00:00:00 2001 From: rubenpirreram Date: Sun, 17 May 2026 16:38:36 +0200 Subject: [PATCH] Removed: PickOptionalTribeCard and PickOptionalBuildingCard in Network and ClientController --- .../gc14/Controller/ClientController.java | 46 ---------------- .../ingsw/gc14/Network/ClientPlayer.java | 15 ------ .../polimi/ingsw/gc14/Network/EventType.java | 7 +-- .../it/polimi/ingsw/gc14/Network/IClient.java | 10 +--- .../Network/NetworkEvents/NoOptionalCard.java | 44 --------------- .../PickOptionalBuildingCard.java | 51 ------------------ .../NetworkEvents/PickOptionalTribeCard.java | 53 ------------------- .../{SkipNoDrawable.java => SkipTurn.java} | 6 +-- .../gc14/Network/RMI/Client/RMIClient.java | 48 +---------------- .../gc14/Network/RMI/Common/IGameServer.java | 3 -- .../gc14/Network/RMI/Server/RMIServer.java | 35 +----------- .../gc14/Network/TCP/Client/TCPClient.java | 34 +----------- .../gc14/Network/TCP/Server/TCPServer.java | 2 - 13 files changed, 9 insertions(+), 345 deletions(-) delete mode 100644 src/main/java/it/polimi/ingsw/gc14/Network/ClientPlayer.java delete mode 100644 src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/NoOptionalCard.java delete mode 100644 src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/PickOptionalBuildingCard.java delete mode 100644 src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/PickOptionalTribeCard.java rename src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/{SkipNoDrawable.java => SkipTurn.java} (86%) diff --git a/src/main/java/it/polimi/ingsw/gc14/Controller/ClientController.java b/src/main/java/it/polimi/ingsw/gc14/Controller/ClientController.java index 3d3b26b..70cc100 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Controller/ClientController.java +++ b/src/main/java/it/polimi/ingsw/gc14/Controller/ClientController.java @@ -157,52 +157,6 @@ public class ClientController { } - - - /** - * Used to draw a tribe card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - * @param pos the index of the card to draw - */ - public void pickOptionalTribeCard(String playerUsername,int pos) { - if(!Objects.equals(playerUsername,miniModel.currentState.getCurrentPlayer().getUserName())) - view.showError("It's not your turn!"); - else { - client.pickOptionalTribeCard(playerUsername,pos); - } - } - - - /** - * Used to draw a building card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - * @param pos the index of the card to draw - */ - public void pickOptionalBuildingCard(String playerUsername,int pos) { - if(!Objects.equals(playerUsername, miniModel.currentState.getCurrentPlayer().getUserName())) - view.showError("It's not your turn!"); - else { - client.pickOptionalBuildingCard(playerUsername,pos); - } - } - - - /** - * Used to skip the action of drawing a card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - */ - public void noOptionalCard(String playerUsername) { - if(!Objects.equals(playerUsername, miniModel.currentState.getCurrentPlayer().getUserName())) - view.showError("It's not your turn!"); - else { - client.noOptionalCard(playerUsername); - } - } - - /** * Used to perform the slot choice action for the specified player at the specified position. * @param playerUsername the name of the player performing the action diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/ClientPlayer.java b/src/main/java/it/polimi/ingsw/gc14/Network/ClientPlayer.java deleted file mode 100644 index 29d816d..0000000 --- a/src/main/java/it/polimi/ingsw/gc14/Network/ClientPlayer.java +++ /dev/null @@ -1,15 +0,0 @@ -package it.polimi.ingsw.gc14.Network; -//TODO -public class ClientPlayer { - private String username; - - public String getUsername() { - return username; - } - public boolean connected; - - public ClientPlayer(String username,boolean connected) { - this.username = username; - this.connected = connected; - } -} diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/EventType.java b/src/main/java/it/polimi/ingsw/gc14/Network/EventType.java index 72d4394..a1f8fe4 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/EventType.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/EventType.java @@ -12,12 +12,9 @@ public enum EventType { DRAW_LOWER_TRIBE, DRAW_UPPER_BUILD, DRAW_LOWER_BUILD, - PICK_OPTIONAL_TRIBE, - PICK_OPTIONAL_BUILD, - SKIP_NO_DRAWABLE, + SKIP_TURN, DISCONNECTED_PLAYER, RECONNECT_PLAYER, NEXT_ROUND, - ENDED_GAME, - NO_OPTIONAL_CARD + ENDED_GAME } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/IClient.java b/src/main/java/it/polimi/ingsw/gc14/Network/IClient.java index 6534082..c633910 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/IClient.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/IClient.java @@ -18,15 +18,7 @@ public interface IClient { public void drawLowerBuildingCard(String playerUsername,int pos) ; public void skipTurn(String playerUsername); - - - - public void pickOptionalTribeCard(String playerUsername,int pos) ; - - public void pickOptionalBuildingCard(String playerUsername,int pos) ; - - - public void noOptionalCard(String playerUsername) ; + public void slotChoice(String playerUsername,int pos) ; public void totemChoice(String playerUsername,String totem) ; diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/NoOptionalCard.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/NoOptionalCard.java deleted file mode 100644 index 798fd5f..0000000 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/NoOptionalCard.java +++ /dev/null @@ -1,44 +0,0 @@ -package it.polimi.ingsw.gc14.Network.NetworkEvents; - -import it.polimi.ingsw.gc14.Controller.GameController; -import it.polimi.ingsw.gc14.Model.MiniModel; -import it.polimi.ingsw.gc14.Network.EventType; -import it.polimi.ingsw.gc14.Network.NetworkEvent; - -import java.io.Serializable; - -/** - * NetworkEvent to avoid drawing a card from the upper list (see the effect of Building 12) - */ -public class NoOptionalCard extends NetworkEvent implements Serializable{ - - /** - * Class constructor. - * Initialized all the attributes. - * @param username the name of the player requesting the event - */ - public NoOptionalCard(String username){ - super(username, EventType.NO_OPTIONAL_CARD, false); - } - - /** - * @param gameController the Game Controller on which to apply the event - * @return true if the player could draw the card, false otherwise - */ - @Override - public boolean apply(GameController gameController){ - return gameController.SkipTurn(username); - } - //TODO - @Override - public boolean apply(MiniModel miniModel){ - if(isError) - return false; - miniModel.setPlayer(player); - miniModel.setOrderLogicCard(orderLogicCard); - miniModel.setCurrentState(currentState); - miniModel.setSlotPlayerMap(slotPlayerMap); - return true; - - } -} diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/PickOptionalBuildingCard.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/PickOptionalBuildingCard.java deleted file mode 100644 index c9c9cff..0000000 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/PickOptionalBuildingCard.java +++ /dev/null @@ -1,51 +0,0 @@ -package it.polimi.ingsw.gc14.Network.NetworkEvents; - -import it.polimi.ingsw.gc14.Controller.GameController; -import it.polimi.ingsw.gc14.Model.MiniModel; -import it.polimi.ingsw.gc14.Network.EventType; -import it.polimi.ingsw.gc14.Network.NetworkEvent; - -import java.io.Serializable; - -/** - * NetworkEvent to draw a building card from the upper list (see the effect of Building 12) - */ -public class PickOptionalBuildingCard extends NetworkEvent implements Serializable{ - - /** Index of the card to draw */ - private int pos; - - /** - * Class constructor. - * Initialized all the attributes. - * @param username the name of the player requesting the event - * @param pos the index of the card to draw - */ - public PickOptionalBuildingCard(String username, int pos){ - super(username, EventType.PICK_OPTIONAL_BUILD, false); - this.pos = pos; - } - - /** - * @param gameController the Game Controller on which to apply the event - * @return true if the player could draw the card, false otherwise - */ - @Override - public boolean apply(GameController gameController){ - return gameController.drawUpperBuildingCard(username, pos); - } - //TODO - @Override - public boolean apply(MiniModel miniModel){ - if(isError) - return false; - - miniModel.board.removeUpperBuildingCard(miniModel.board.upperListBuilding.get(pos)); - miniModel.setPlayer(player); - miniModel.setOrderLogicCard(orderLogicCard); - miniModel.setCurrentState(currentState); - miniModel.setSlotPlayerMap(slotPlayerMap); - return true; - - } -} diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/PickOptionalTribeCard.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/PickOptionalTribeCard.java deleted file mode 100644 index 37507c7..0000000 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/PickOptionalTribeCard.java +++ /dev/null @@ -1,53 +0,0 @@ -package it.polimi.ingsw.gc14.Network.NetworkEvents; - -import it.polimi.ingsw.gc14.Controller.GameController; -import it.polimi.ingsw.gc14.Model.MiniModel; -import it.polimi.ingsw.gc14.Network.EventType; -import it.polimi.ingsw.gc14.Network.NetworkEvent; - -import java.io.Serializable; - -/** - * NetworkEvent to draw a tribe card from the upper list (see the effect of Building 12) - */ -public class PickOptionalTribeCard extends NetworkEvent implements Serializable{ - - /** Index of the card to draw */ - private int pos; - - /** - * Class constructor. - * Initialized all the attributes. - * @param username the name of the player requesting the event - * @param pos the index of the card to draw - */ - public PickOptionalTribeCard(String username, int pos){ - super(username, EventType.PICK_OPTIONAL_TRIBE, false); - this.pos = pos; - } - - /** - * @param gameController the Game Controller on which to apply the event - * @return true if the player could draw the card, false otherwise - */ - @Override - public boolean apply(GameController gameController){ - return gameController.drawUpperTribeCard(username, pos); - } - - //TODO - @Override - public boolean apply(MiniModel miniModel){ - if(isError) - return false; - - miniModel.board.removeUpperTribeCard(miniModel.board.upperListTribe.get(pos)); - miniModel.setPlayer(player); - miniModel.setOrderLogicCard(orderLogicCard); - miniModel.setCurrentState(currentState); - miniModel.setSlotPlayerMap(slotPlayerMap); - return true; - - } - -} diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SkipNoDrawable.java b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SkipTurn.java similarity index 86% rename from src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SkipNoDrawable.java rename to src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SkipTurn.java index 4cfcc34..0eecf0b 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SkipNoDrawable.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/NetworkEvents/SkipTurn.java @@ -10,15 +10,15 @@ import java.io.Serializable; /** * NetworkEvent to avoid drawing a card from the lower card list */ -public class SkipNoDrawable extends NetworkEvent implements Serializable{ +public class SkipTurn extends NetworkEvent implements Serializable{ /** * Class constructor. * Initializes all the attributes. * @param username the name of the player requesting the event */ - public SkipNoDrawable(String username){ - super(username, EventType.SKIP_NO_DRAWABLE, false); + public SkipTurn(String username){ + super(username, EventType.SKIP_TURN, false); } /** diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Client/RMIClient.java b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Client/RMIClient.java index 73fd073..313e605 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Client/RMIClient.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Client/RMIClient.java @@ -205,57 +205,11 @@ public class RMIClient implements IClient { System.out.println("Error during remote skip turn"); } } + - /** - * Used to draw a tribe card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - * @param pos the index of the card to draw - */ - public void pickOptionalTribeCard(String playerUsername,int pos) { - try{ - stub.pickOptionalTribeCard(playerUsername,pos); - } - catch (RemoteException e){ - System.out.println("Error during remote pick optional tribe card"); - } - } - - - /** - * Used to draw a building card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - * @param pos the index of the card to draw - */ - public void pickOptionalBuildingCard(String playerUsername,int pos) { - try{ - stub.pickOptionalBuildingCard(playerUsername,pos); - } - catch (RemoteException e){ - System.out.println("Error during remote pick optional building card"); - } - } - - - /** - * Used to skip the action of drawing a card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - */ - public void noOptionalCard(String playerUsername) { - try{ - stub.noOptionalCard(playerUsername); - } - catch (RemoteException e){ - System.out.println("Error during remote no pick optional card"); - } - } - - /** * Used to perform the slot choice action for the specified player at the specified position. * @param playerUsername the name of the player performing the action diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Common/IGameServer.java b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Common/IGameServer.java index af931e6..64177ab 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Common/IGameServer.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Common/IGameServer.java @@ -18,9 +18,6 @@ public interface IGameServer extends Remote { void drawUpperBuildingCard(String playerUsername, int pos) throws RemoteException; void drawLowerBuildingCard(String playerUsername, int pos) throws RemoteException; void skipTurn(String playerUsername) throws RemoteException; - void pickOptionalTribeCard(String playerUsername, int pos) throws RemoteException; - void pickOptionalBuildingCard(String playerUsername, int pos) throws RemoteException; - void noOptionalCard(String playerUsername) throws RemoteException; void slotChoice(String playerUsername, int pos) throws RemoteException; void totemChoice(String playerUsername, String totems) throws RemoteException; /** diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java index 0e7c2cf..1f8110b 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/RMI/Server/RMIServer.java @@ -3,7 +3,6 @@ package it.polimi.ingsw.gc14.Network.RMI.Server; import it.polimi.ingsw.gc14.Controller.GameController; import it.polimi.ingsw.gc14.LimitedMap; import it.polimi.ingsw.gc14.Model.Game; -import it.polimi.ingsw.gc14.Model.GamePackage.CurrentState; import it.polimi.ingsw.gc14.Model.MiniModel; import it.polimi.ingsw.gc14.Network.NetworkEvent; import it.polimi.ingsw.gc14.Network.NetworkEvents.*; @@ -250,43 +249,11 @@ public class RMIServer extends UnicastRemoteObject implements IGameServer { * @param playerUsername the name of the player performing the action */ public void skipTurn(String playerUsername) { - actionQueue.offer(new SkipNoDrawable(playerUsername)); + actionQueue.offer(new SkipTurn(playerUsername)); } - /** - * Used to draw a tribe card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - * @param pos the index of the card to draw - */ - public void pickOptionalTribeCard(String playerUsername,int pos) { - actionQueue.offer(new PickOptionalTribeCard(playerUsername,pos)); - } - - - /** - * Used to draw a building card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - * @param pos the index of the card to draw - */ - public void pickOptionalBuildingCard(String playerUsername,int pos) { - actionQueue.offer(new PickOptionalBuildingCard(playerUsername,pos)); - } - - - /** - * Used to skip the action of drawing a card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - */ - public void noOptionalCard(String playerUsername) { - actionQueue.offer(new NoOptionalCard(playerUsername)); - } - - /** * Used to perform the slot choice action for the specified player at the specified position. * @param playerUsername the name of the player performing the action diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/TCP/Client/TCPClient.java b/src/main/java/it/polimi/ingsw/gc14/Network/TCP/Client/TCPClient.java index 0499fb5..8ce4d76 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/TCP/Client/TCPClient.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/TCP/Client/TCPClient.java @@ -235,39 +235,7 @@ public class TCPClient implements IClient { * @param playerUsername the name of the player performing the action */ public void skipTurn(String playerUsername) { - doEvent(new SkipNoDrawable(playerUsername)); - } - - - /** - * Used to draw a tribe card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - * @param pos the index of the card to draw - */ - public void pickOptionalTribeCard(String playerUsername,int pos) { - doEvent(new PickOptionalTribeCard(playerUsername,pos)); - } - - - /** - * Used to draw a building card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - * @param pos the index of the card to draw - */ - public void pickOptionalBuildingCard(String playerUsername,int pos) { - doEvent(new PickOptionalBuildingCard(playerUsername,pos)); - } - - - /** - * Used to skip the action of drawing a card from the upper list. - * Available only if the player owns the building 12. - * @param playerUsername the name of the player performing the action - */ - public void noOptionalCard(String playerUsername) { - doEvent(new NoOptionalCard(playerUsername)); + doEvent(new SkipTurn(playerUsername)); } diff --git a/src/main/java/it/polimi/ingsw/gc14/Network/TCP/Server/TCPServer.java b/src/main/java/it/polimi/ingsw/gc14/Network/TCP/Server/TCPServer.java index 84253ab..d06db96 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Network/TCP/Server/TCPServer.java +++ b/src/main/java/it/polimi/ingsw/gc14/Network/TCP/Server/TCPServer.java @@ -4,8 +4,6 @@ import it.polimi.ingsw.gc14.Controller.GameController; import it.polimi.ingsw.gc14.LimitedMap; import it.polimi.ingsw.gc14.Model.Game; import it.polimi.ingsw.gc14.Model.MiniModel; -import it.polimi.ingsw.gc14.Model.Player; -import it.polimi.ingsw.gc14.Network.ClientPlayer; import it.polimi.ingsw.gc14.Network.EventType; import it.polimi.ingsw.gc14.Network.NetworkEvent; import it.polimi.ingsw.gc14.Network.NetworkEvents.AddPlayer;