From df07ad4418de083e53f17de52ede1ad03f12474e Mon Sep 17 00:00:00 2001 From: jeffwadsworth Date: Sat, 31 Jul 2021 18:16:09 -0500 Subject: [PATCH] - added fix by JayDi for gameState().value and Lists. --- .../AttackingCreaturePutIntoGraveyardTriggeredAbility.java | 3 --- Mage/src/main/java/mage/game/GameState.java | 2 ++ 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/Mage/src/main/java/mage/abilities/common/AttackingCreaturePutIntoGraveyardTriggeredAbility.java b/Mage/src/main/java/mage/abilities/common/AttackingCreaturePutIntoGraveyardTriggeredAbility.java index afb204e5642..e0f7e1b84dd 100644 --- a/Mage/src/main/java/mage/abilities/common/AttackingCreaturePutIntoGraveyardTriggeredAbility.java +++ b/Mage/src/main/java/mage/abilities/common/AttackingCreaturePutIntoGraveyardTriggeredAbility.java @@ -94,9 +94,6 @@ public class AttackingCreaturePutIntoGraveyardTriggeredAbility extends Triggered } case REMOVED_FROM_COMBAT: // a card removed from combat is no longer an attacker or blocker so remove it from the list - if (game.isSimulation()) { // a simulated game will always choose to apply any triggered effect IE: Gustcloak Savior - return false; - } List attackersList = (List) game.getState().getValue(this.getSourceId() + "Attackers"); if (attackersList != null && attackersList.contains(event.getTargetId())) { diff --git a/Mage/src/main/java/mage/game/GameState.java b/Mage/src/main/java/mage/game/GameState.java index 87078458594..491c26b5876 100644 --- a/Mage/src/main/java/mage/game/GameState.java +++ b/Mage/src/main/java/mage/game/GameState.java @@ -172,6 +172,8 @@ public class GameState implements Serializable, Copyable { this.values.put(entry.getKey(), ((EnumSet) entry.getValue()).clone()); } else if (entry.getValue() instanceof HashMap) { this.values.put(entry.getKey(), ((HashMap) entry.getValue()).clone()); + } else if (entry.getValue() instanceof List) { + this.values.put(entry.getKey(), ((List) entry.getValue()).stream().collect(Collectors.toList())); } else { this.values.put(entry.getKey(), entry.getValue()); }