diff --git a/src/main/java/forge/ComputerUtil.java b/src/main/java/forge/ComputerUtil.java index 85fc221ac91..49533448322 100644 --- a/src/main/java/forge/ComputerUtil.java +++ b/src/main/java/forge/ComputerUtil.java @@ -104,7 +104,7 @@ public class ComputerUtil { Card source = sa.getSourceCard(); if (sa.isSpell() && !source.isCopiedSpell()) { - AllZone.getGameAction().moveToStack(source); + sa.setSourceCard(AllZone.getGameAction().moveToStack(source)); } Cost cost = sa.getPayCosts(); @@ -241,7 +241,7 @@ public class ComputerUtil { Card source = bestSA.getSourceCard(); if (bestSA.isSpell() && !source.isCopiedSpell()) { - AllZone.getGameAction().moveToStack(source); + bestSA.setSourceCard(AllZone.getGameAction().moveToStack(source)); } Cost cost = bestSA.getPayCosts(); @@ -275,7 +275,7 @@ public class ComputerUtil { if (canPayCost(sa)) { Card source = sa.getSourceCard(); if (sa.isSpell() && !source.isCopiedSpell()) { - AllZone.getGameAction().moveToStack(source); + sa.setSourceCard(AllZone.getGameAction().moveToStack(source)); } sa.setActivatingPlayer(AllZone.getComputerPlayer()); @@ -299,7 +299,7 @@ public class ComputerUtil { Card source = sa.getSourceCard(); if (sa.isSpell() && !source.isCopiedSpell()) { - AllZone.getGameAction().moveToStack(source); + sa.setSourceCard(AllZone.getGameAction().moveToStack(source)); } AllZone.getStack().add(sa); @@ -319,7 +319,7 @@ public class ComputerUtil { if (canPayCost(sa)) { Card source = sa.getSourceCard(); if (sa.isSpell() && !source.isCopiedSpell()) { - AllZone.getGameAction().moveToStack(source); + sa.setSourceCard(AllZone.getGameAction().moveToStack(source)); } sa.setActivatingPlayer(AllZone.getComputerPlayer()); diff --git a/src/main/java/forge/GameAction.java b/src/main/java/forge/GameAction.java index cea8808730b..81c39f9eba0 100644 --- a/src/main/java/forge/GameAction.java +++ b/src/main/java/forge/GameAction.java @@ -1861,7 +1861,7 @@ public class GameAction { if (sa.isSpell()) { Card c = sa.getSourceCard(); if (!c.isCopiedSpell()) { - AllZone.getGameAction().moveToStack(c); + sa.setSourceCard(AllZone.getGameAction().moveToStack(c)); } } boolean x = false; @@ -2513,7 +2513,7 @@ public class GameAction { if (sa.getAfterPayMana() == null) { Card source = sa.getSourceCard(); if (sa.isSpell() && !source.isCopiedSpell()) { - AllZone.getGameAction().moveToStack(source); + sa.setSourceCard(AllZone.getGameAction().moveToStack(source)); } AllZone.getStack().add(sa); diff --git a/src/main/java/forge/MagicStack.java b/src/main/java/forge/MagicStack.java index acf12fec547..4cd29539094 100644 --- a/src/main/java/forge/MagicStack.java +++ b/src/main/java/forge/MagicStack.java @@ -161,7 +161,7 @@ public class MagicStack extends MyObservable { if (ability.isSpell()) { final Card source = ability.getSourceCard(); if (!source.isCopiedSpell() && !AllZone.getZoneOf(source).is(Constant.Zone.Stack)) { - AllZone.getGameAction().moveToStack(source); + //ability.setSourceCard(AllZone.getGameAction().moveToStack(source)); } } diff --git a/src/main/java/forge/card/cardFactory/CardFactoryUtil.java b/src/main/java/forge/card/cardFactory/CardFactoryUtil.java index c0a6e9e47e5..a90949b1b25 100644 --- a/src/main/java/forge/card/cardFactory/CardFactoryUtil.java +++ b/src/main/java/forge/card/cardFactory/CardFactoryUtil.java @@ -901,7 +901,7 @@ public class CardFactoryUtil { @Override public void resolve() { final SpellAbility[] sa = sourceCard.getSpellAbility(); - AllZone.getGameAction().moveToStack(sourceCard); + sa[0].setSourceCard(AllZone.getGameAction().moveToStack(sourceCard)); final SpellAbility flash = sa[0]; flash.setFlashBackAbility(true); AllZone.getStack().add(flash); diff --git a/src/main/java/forge/card/spellability/SpellAbility_Requirements.java b/src/main/java/forge/card/spellability/SpellAbility_Requirements.java index 58fe9eedf61..ff20e2f5d11 100644 --- a/src/main/java/forge/card/spellability/SpellAbility_Requirements.java +++ b/src/main/java/forge/card/spellability/SpellAbility_Requirements.java @@ -93,7 +93,7 @@ public class SpellAbility_Requirements { final Card c = this.ability.getSourceCard(); this.fromZone = AllZone.getZoneOf(c); - AllZone.getGameAction().moveToStack(c); + this.ability.setSourceCard(AllZone.getGameAction().moveToStack(c)); } } diff --git a/src/main/java/forge/gui/input/Input_PayManaCost.java b/src/main/java/forge/gui/input/Input_PayManaCost.java index bbeae6c025a..dbc0fc16bb5 100644 --- a/src/main/java/forge/gui/input/Input_PayManaCost.java +++ b/src/main/java/forge/gui/input/Input_PayManaCost.java @@ -183,7 +183,7 @@ public class Input_PayManaCost extends Input { // if this is a spell, move it to the Stack ZOne if (spell.isSpell()) { - AllZone.getGameAction().moveToStack(originalCard); + spell.setSourceCard(AllZone.getGameAction().moveToStack(originalCard)); } if (spell.getAfterPayMana() != null) {