From 11061585da894527e205c7ffa7670df67f4806e6 Mon Sep 17 00:00:00 2001 From: Maxmtg Date: Sun, 2 Jun 2013 15:34:47 +0000 Subject: [PATCH] 2ns ability of Sovereigns of Lost Alara scripted. Thank you, Swordshine --- res/cardsfolder/s/sovereigns_of_lost_alara.txt | 4 +++- src/main/java/forge/Card.java | 12 +++++++++--- src/main/java/forge/game/phase/PhaseHandler.java | 6 +++--- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/res/cardsfolder/s/sovereigns_of_lost_alara.txt b/res/cardsfolder/s/sovereigns_of_lost_alara.txt index 9e3626d7001..1949356a0f1 100644 --- a/res/cardsfolder/s/sovereigns_of_lost_alara.txt +++ b/res/cardsfolder/s/sovereigns_of_lost_alara.txt @@ -1,9 +1,11 @@ Name:Sovereigns of Lost Alara ManaCost:4 W U Types:Creature Spirit -Text:Whenever a creature you control attacks alone, you may search your library for an Aura card that could enchant that creature, put it onto the battlefield attached to that creature, then shuffle your library. PT:4/5 K:Exalted +T:Mode$ Attacks | ValidCard$ Creature.YouCtrl | Alone$ True | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigSearch | TriggerDescription$ Whenever a creature you control attacks alone, you may search your library for an Aura card that could enchant that creature, put it onto the battlefield attached to that creature, then shuffle your library. +SVar:TrigSearch:AB$ Pump | Cost$ 0 | RememberObjects$ TriggeredAttacker | SubAbility$ DBMoveAura +SVar:DBMoveAura:DB$ ChangeZone | Origin$ Library | Destination$ Battlefield | ChangeType$ Aura.CanEnchantRemembered+YouCtrl | AttachedTo$ Remembered | ChangeNum$ 1 | Hidden$ True SVar:RemRandomDeck:True SVar:Picture:http://www.wizards.com/global/images/magic/general/sovereigns_of_lost_alara.jpg Oracle:Exalted (Whenever a creature you control attacks alone, that creature gets +1/+1 until end of turn.)\nWhenever a creature you control attacks alone, you may search your library for an Aura card that could enchant that creature, put it onto the battlefield attached to that creature, then shuffle your library. diff --git a/src/main/java/forge/Card.java b/src/main/java/forge/Card.java index 13cd84733f8..bee39fad39e 100644 --- a/src/main/java/forge/Card.java +++ b/src/main/java/forge/Card.java @@ -5429,9 +5429,15 @@ public class Card extends GameEntity implements Comparable { if (!source.equals(this.enchanting)) { return false; } - } else if (property.startsWith("CanEnchantSource")) { - if (!source.canBeEnchantedBy(this)) { - return false; + } else if (property.startsWith("CanEnchant")) { + final String restriction = property.substring(10); + if (restriction.equals("Remembered")) { + for (final Object rem : source.getRemembered()) { + if (!(rem instanceof Card) || !((Card) rem).canBeEnchantedBy(this)) + return false; + } + } else if (restriction.equals("Source")) { + if (!source.canBeEnchantedBy(this)) return false; } } else if (property.startsWith("CanBeEnchantedBy")) { if (property.substring(16).equals("Targeted")) { diff --git a/src/main/java/forge/game/phase/PhaseHandler.java b/src/main/java/forge/game/phase/PhaseHandler.java index 6d98689f778..f6b59b7dc41 100644 --- a/src/main/java/forge/game/phase/PhaseHandler.java +++ b/src/main/java/forge/game/phase/PhaseHandler.java @@ -305,9 +305,9 @@ public class PhaseHandler implements java.io.Serializable { CombatUtil.executeExaltedAbility(game, attacker, exaltedMagnitude, card); } - if ("Sovereigns of Lost Alara".equals(card.getName())) { - CombatUtil.souverignsOfAlara2ndAbility(game, attacker); - } +// if ("Sovereigns of Lost Alara".equals(card.getName())) { +// CombatUtil.souverignsOfAlara2ndAbility(game, attacker); +// } } }