From d9ef7983f8594c89b0de7360c21585cbfa99ef28 Mon Sep 17 00:00:00 2001 From: rubenpirreram Date: Sun, 17 May 2026 15:48:14 +0200 Subject: [PATCH] Updated: Order now apply effect to disconnected during resolving but then put it last --- src/main/java/it/polimi/ingsw/gc14/Model/Game.java | 5 ++--- src/main/java/it/polimi/ingsw/gc14/Model/OrderLogicCard.java | 5 +---- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/Game.java b/src/main/java/it/polimi/ingsw/gc14/Model/Game.java index 8aac3d6..e74f2ff 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/Game.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/Game.java @@ -758,15 +758,14 @@ public class Game implements Serializable { } if (GameStages.RES_ACTIONS == currentState.getGameStage()) { - if(!disconnetedPlayers.containsKey(currentState.getCurrentPlayer())|| !disconnetedPlayers.get(currentState.getCurrentPlayer())) - orderLogicCard.push(currentState.getCurrentPlayer()); + orderLogicCard.push(currentState.getCurrentPlayer()); slotMap.put(currentState.getSlot(), null); for (Map.Entry entry : slotMap.entrySet()) { if (entry.getValue() != null) { - if(disconnetedPlayers.containsKey(entry.getValue())&&disconnetedPlayers.get(currentState.getCurrentPlayer())) { + orderLogicCard.push(entry.getValue()); entry.setValue(null); continue; } diff --git a/src/main/java/it/polimi/ingsw/gc14/Model/OrderLogicCard.java b/src/main/java/it/polimi/ingsw/gc14/Model/OrderLogicCard.java index 143ee83..e6283f7 100644 --- a/src/main/java/it/polimi/ingsw/gc14/Model/OrderLogicCard.java +++ b/src/main/java/it/polimi/ingsw/gc14/Model/OrderLogicCard.java @@ -70,10 +70,7 @@ public abstract class OrderLogicCard implements Serializable { playerList=new ArrayList<>(); } - if(players.stream().anyMatch(x->x.getUserName().equals(player.getUserName()))) - { - return; - } + players.removeIf(x->player.getUserName().equals(x.getUserName())); playerList.removeIf(x->player.getUserName().equals(x.player.getUserName())); playerList.add(new OrderPlayer(player,false)); players.add(player);