From f8ac708b77c5a5f2fe80b34fd635ad4decfda80d Mon Sep 17 00:00:00 2001 From: Sloth Date: Fri, 27 Jan 2012 11:30:15 +0000 Subject: [PATCH] - Added Academy Researchers. --- .gitattributes | 1 + res/cardsfolder/a/academy_researchers.txt | 14 ++++++++ .../AbilityFactoryChangeZone.java | 32 +++++++++++++++++++ 3 files changed, 47 insertions(+) create mode 100644 res/cardsfolder/a/academy_researchers.txt diff --git a/.gitattributes b/.gitattributes index 548a372b644..8cb7f87f9ee 100644 --- a/.gitattributes +++ b/.gitattributes @@ -49,6 +49,7 @@ res/cardsfolder/a/abyssal_nocturnus.txt svneol=native#text/plain res/cardsfolder/a/abyssal_persecutor.txt svneol=native#text/plain res/cardsfolder/a/abyssal_specter.txt svneol=native#text/plain res/cardsfolder/a/academy_rector.txt svneol=native#text/plain +res/cardsfolder/a/academy_researchers.txt -text res/cardsfolder/a/academy_ruins.txt svneol=native#text/plain res/cardsfolder/a/accelerate.txt svneol=native#text/plain res/cardsfolder/a/accelerated_mutation.txt svneol=native#text/plain diff --git a/res/cardsfolder/a/academy_researchers.txt b/res/cardsfolder/a/academy_researchers.txt new file mode 100644 index 00000000000..94d0923b71f --- /dev/null +++ b/res/cardsfolder/a/academy_researchers.txt @@ -0,0 +1,14 @@ +Name:Academy Researchers +ManaCost:1 U U +Types:Creature Drake +Text:no text +PT:2/2 +K:Flying +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChangeZone | TriggerDescription$ When CARDNAME enters the battlefield, you may put an Aura card from your hand onto the battlefield attached to Academy Researchers. +SVar:TrigChangeZone:AB$ChangeZone | Cost$ 0 | Origin$ Hand | Destination$ Battlefield | ChangeType$ Aura | AttachedTo$ Self +SVar:Rarity:Uncommon +SVar:Picture:http://www.wizards.com/global/images/magic/general/academy_researchers.jpg +SetInfo:USG|Uncommon|http://magiccards.info/scans/en/us/58.jpg +SetInfo:10E|Uncommon|http://magiccards.info/scans/en/10e/63.jpg +Oracle:When Academy Researchers enters the battlefield, you may put an Aura card from your hand onto the battlefield attached to Academy Researchers. +End \ No newline at end of file diff --git a/src/main/java/forge/card/abilityfactory/AbilityFactoryChangeZone.java b/src/main/java/forge/card/abilityfactory/AbilityFactoryChangeZone.java index b6c234f54f4..4e7bb8e71f2 100644 --- a/src/main/java/forge/card/abilityfactory/AbilityFactoryChangeZone.java +++ b/src/main/java/forge/card/abilityfactory/AbilityFactoryChangeZone.java @@ -858,6 +858,22 @@ public final class AbilityFactoryChangeZone { if (params.containsKey("GainControl")) { c.addController(af.getHostCard()); } + + if (params.containsKey("AttachedTo")) { + ArrayList list = AbilityFactory.getDefinedCards(sa.getSourceCard(), params.get("AttachedTo"), sa); + if (!list.isEmpty()) { + Card attachedTo = list.get(0); + if (c.isEnchanting()) { + // If this Card is already Enchanting something + // Need to unenchant it, then clear out the commands + final GameEntity oldEnchanted = c.getEnchanting(); + c.removeEnchanting(oldEnchanted); + c.clearEnchantCommand(); + c.clearUnEnchantCommand(); + } + c.enchantEntity(attachedTo); + } + } if (params.containsKey("Attacking")) { AllZone.getCombat().addAttacker(c); @@ -1016,6 +1032,22 @@ public final class AbilityFactoryChangeZone { c.addController(af.getHostCard()); } + if (params.containsKey("AttachedTo")) { + ArrayList list = AbilityFactory.getDefinedCards(sa.getSourceCard(), params.get("AttachedTo"), sa); + if (!list.isEmpty()) { + Card attachedTo = list.get(0); + if (c.isEnchanting()) { + // If this Card is already Enchanting something + // Need to unenchant it, then clear out the commands + final GameEntity oldEnchanted = c.getEnchanting(); + c.removeEnchanting(oldEnchanted); + c.clearEnchantCommand(); + c.clearUnEnchantCommand(); + } + c.enchantEntity(attachedTo); + } + } + if (params.containsKey("Attacking")) { AllZone.getCombat().addAttacker(c); }