From 0fe2afb3c0dc6a9f0d4b4d670cdc38ac00d8f668 Mon Sep 17 00:00:00 2001 From: Myrd Date: Tue, 27 Dec 2016 04:20:56 +0000 Subject: [PATCH] When copying spell-abilities to a new card, update the hostCard. (Not sure what this affects, but noticed that it wasn't being done.) --- forge-game/src/main/java/forge/game/card/CardFactory.java | 2 +- .../src/main/java/forge/game/spellability/SpellAbility.java | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/forge-game/src/main/java/forge/game/card/CardFactory.java b/forge-game/src/main/java/forge/game/card/CardFactory.java index e6c1603d663..77be550fb8b 100644 --- a/forge-game/src/main/java/forge/game/card/CardFactory.java +++ b/forge-game/src/main/java/forge/game/card/CardFactory.java @@ -647,7 +647,7 @@ public class CardFactory { to.setReplacementEffects(fromCharacteristics.getReplacementEffects()); // add abilities for (SpellAbility sa : fromCharacteristics.getIntrinsicSpellAbilities()) { - to.addSpellAbility(sa.copy()); + to.addSpellAbility(sa.copy(to)); } for (String staticAbility : to.getStaticAbilityStrings()) { diff --git a/forge-game/src/main/java/forge/game/spellability/SpellAbility.java b/forge-game/src/main/java/forge/game/spellability/SpellAbility.java index de432da5864..bc7e48a8dfa 100644 --- a/forge-game/src/main/java/forge/game/spellability/SpellAbility.java +++ b/forge-game/src/main/java/forge/game/spellability/SpellAbility.java @@ -755,11 +755,16 @@ public abstract class SpellAbility extends CardTraitBase implements ISpellAbilit } public SpellAbility copy() { + return copy(hostCard); + } + + public SpellAbility copy(Card newHostCard) { SpellAbility clone = null; try { clone = (SpellAbility) clone(); clone.id = nextId(); clone.view = new SpellAbilityView(clone); + clone.hostCard = newHostCard; if (clone.hostCard != null && clone.hostCard.getGame() != null) { clone.hostCard.getGame().addSpellAbility(clone.id, clone); }