From faa801320839729637ecea717953303f345273bc Mon Sep 17 00:00:00 2001 From: tool4EvEr Date: Sun, 2 May 2021 16:59:52 +0200 Subject: [PATCH] Restore old controllers for AI checks --- forge-game/src/main/java/forge/game/card/Card.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index af365c8c18b..43eb7c32f20 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -6476,6 +6476,7 @@ public class Card extends GameEntity implements Comparable, IHasSVars { final Collection toRemove = Lists.newArrayListWithCapacity(abilities.size()); for (final SpellAbility sa : abilities) { + Player oldController = sa.getActivatingPlayer(); sa.setActivatingPlayer(player); // fix things like retrace // check only if SA can't be cast normally @@ -6483,6 +6484,10 @@ public class Card extends GameEntity implements Comparable, IHasSVars { continue; } if ((removeUnplayable && !sa.canPlay()) || !sa.isPossible()) { + if (oldController != null) { + // in case the ability is on the stack this should not change + sa.setActivatingPlayer(oldController); + } toRemove.add(sa); } }