From 37655012ad4ad916b87c8147bbe2da0131892a8f Mon Sep 17 00:00:00 2001 From: Maxmtg Date: Wed, 15 May 2013 04:11:23 +0000 Subject: [PATCH] SpellAbilityStackInstance keeps original activating player and restores it on getSpellAbility call --- .../forge/card/spellability/SpellAbilityStackInstance.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/forge/card/spellability/SpellAbilityStackInstance.java b/src/main/java/forge/card/spellability/SpellAbilityStackInstance.java index e55690fd803..aae687d027a 100644 --- a/src/main/java/forge/card/spellability/SpellAbilityStackInstance.java +++ b/src/main/java/forge/card/spellability/SpellAbilityStackInstance.java @@ -21,6 +21,7 @@ import java.util.HashMap; import java.util.List; import forge.Card; +import forge.game.player.Player; /** *

@@ -44,6 +45,7 @@ public class SpellAbilityStackInstance { /** The sub instace. */ private SpellAbilityStackInstance subInstace = null; + private final Player activator; // When going to a SubAbility that SA has a Instance Choice object /** The tc. */ @@ -85,7 +87,8 @@ public class SpellAbilityStackInstance { // Base SA info this.ability = sa; this.stackDescription = this.ability.getStackDescription(); - + this.activator = sa.getActivatingPlayer(); + // Payment info this.paidHash = this.ability.getPaidHash(); this.ability.resetPaidHash(); @@ -135,6 +138,7 @@ public class SpellAbilityStackInstance { this.ability.getTarget().resetTargets(); this.ability.getTarget().setTargetChoices(this.tc); } + this.ability.setActivatingPlayer(activator); // Saved sub-SA needs to be reset on the way out if (this.subInstace != null) {