From e10f90cf4966174c4a6ab4123c9ee9169abd6cdc Mon Sep 17 00:00:00 2001 From: Agetian Date: Sat, 8 Dec 2018 10:36:18 +0300 Subject: [PATCH] - Fix Myr Welder + Ornate Kanzashi, make Myr Welder use the Imprint mechanism. --- .../forge/game/spellability/SpellAbility.java | 15 +++++++++------ forge-gui/res/cardsfolder/m/myr_welder.txt | 6 +++--- 2 files changed, 12 insertions(+), 9 deletions(-) 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 b06759ea044..a1cf5a993fa 100644 --- a/forge-game/src/main/java/forge/game/spellability/SpellAbility.java +++ b/forge-game/src/main/java/forge/game/spellability/SpellAbility.java @@ -400,13 +400,16 @@ public abstract class SpellAbility extends CardTraitBase implements ISpellAbilit } public void setOriginalHost(final Card c) { grantorCard = c; - for (List addSaList : this.getAdditionalAbilityLists().values()) { - for (SpellAbility addSa : addSaList) { - addSa.setOriginalHost(c); - } + if (subAbility != null) { + subAbility.setOriginalHost(c); } - if (this.getSubAbility() != null) { - this.getSubAbility().setOriginalHost(c); + for (AbilitySub sa : additionalAbilities.values()) { + sa.setOriginalHost(c); + } + for (List list : additionalAbilityLists.values()) { + for (AbilitySub sa : list) { + sa.setOriginalHost(c); + } } } diff --git a/forge-gui/res/cardsfolder/m/myr_welder.txt b/forge-gui/res/cardsfolder/m/myr_welder.txt index a63ac712047..9a238f12976 100644 --- a/forge-gui/res/cardsfolder/m/myr_welder.txt +++ b/forge-gui/res/cardsfolder/m/myr_welder.txt @@ -2,11 +2,11 @@ Name:Myr Welder ManaCost:3 Types:Artifact Creature Myr PT:1/4 -S:Mode$ Continuous | Affected$ Card.Self | EffectZone$ Battlefield | GainsAbilitiesOf$ Card.IsRemembered+ExiledWithSource | GainsAbilitiesOfZones$ Exile | Description$ CARDNAME has all activated abilities of all cards exiled with it. -A:AB$ ChangeZone | Cost$ T | ValidTgts$ Artifact | Origin$ Graveyard | Destination$ Exile | TgtPrompt$ Select target artifact | RememberChanged$ True | PrecostDesc$ Imprint — | SpellDescription$ Exile target artifact card from a graveyard. +S:Mode$ Continuous | Affected$ Card.Self | EffectZone$ Battlefield | GainsAbilitiesOf$ Card.IsImprinted+ExiledWithSource | GainsAbilitiesOfZones$ Exile | Description$ CARDNAME has all activated abilities of all cards exiled with it. +A:AB$ ChangeZone | Cost$ T | ValidTgts$ Artifact | Origin$ Graveyard | Destination$ Exile | TgtPrompt$ Select target artifact | Imprint$ True | PrecostDesc$ Imprint — | SpellDescription$ Exile target artifact card from a graveyard. T:Mode$ ChangesZone | Origin$ Exile | Destination$ Any | Static$ True | ValidCard$ Card.IsRemembered+ExiledWithSource | Execute$ DBForget SVar:DBForget:DB$ Pump | ForgetObjects$ TriggeredCard T:Mode$ ChangesZone | Origin$ Battlefield | ValidCard$ Card.Self | Destination$ Any | Execute$ DBCleanup | Static$ True -SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:DBCleanup:DB$ Cleanup | ClearImprinted$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/myr_welder.jpg Oracle:Imprint — {T}: Exile target artifact card from a graveyard.\nMyr Welder has all activated abilities of all cards exiled with it.