diff --git a/res/cardsfolder/e/ego_erasure.txt b/res/cardsfolder/e/ego_erasure.txt index 6ac9574c0a9..42a84b4279f 100644 --- a/res/cardsfolder/e/ego_erasure.txt +++ b/res/cardsfolder/e/ego_erasure.txt @@ -3,8 +3,8 @@ ManaCost:2 U Types:Tribal Instant Shapeshifter Text:no text S:Mode$ Continuous | Affected$ Card.Self | CharacteristicDefining$ True | AddType$ AllCreatureTypes | Description$ Changeling (This card is every creature type at all times.) -A:SP$ PumpAll | Cost$ 2 U | ValidTgts$ Player | TgtPrompt$ Select target player | ValidCards$ Creature | NumAtt$ -2 | NumDef$ -0 | IsCurse$ True | SubAbility$ SVar=DBAnimateAll |SpellDescription$ Creatures target player controls get -2/-0 and lose all creature types until end of turn. -SVar:DBAnimateAll:DB$ AnimateAll | Cost$ 0 | Defined$ Targeted | ValidCards$ Creature | Types$ Creature | RemoveCreatureTypes$ True +A:SP$ PumpAll | Cost$ 2 U | ValidTgts$ Player | TgtPrompt$ Select target player | ValidCards$ Creature | NumAtt$ -2 | NumDef$ -0 | IsCurse$ True | SubAbility$ DBAnimateAll | SpellDescription$ Creatures target player controls get -2/-0 and lose all creature types until end of turn. +SVar:DBAnimateAll:DB$ AnimateAll | Cost$ 0 | Defined$ Targeted | RemoveCreatureTypes$ True SVar:Rarity:Uncommon SVar:Picture:http://www.wizards.com/global/images/magic/general/ego_erasure.jpg SetInfo:LRW|Uncommon|http://magiccards.info/scans/en/lw/59.jpg diff --git a/res/cardsfolder/s/shields_of_velis_vel.txt b/res/cardsfolder/s/shields_of_velis_vel.txt index cd9ac933d45..031241e3c99 100644 --- a/res/cardsfolder/s/shields_of_velis_vel.txt +++ b/res/cardsfolder/s/shields_of_velis_vel.txt @@ -1,12 +1,12 @@ -Name:Shields of Velis Vel -ManaCost:W -Types:Tribal Instant Shapeshifter -Text:no text -S:Mode$ Continuous | Affected$ Card.Self | CharacteristicDefining$ True | AddType$ AllCreatureTypes | Description$ Changeling (This card is every creature type at all times.) -A:SP$ PumpAll | Cost$ W | ValidTgts$ Player | TgtPrompt$ Select target player | ValidCards$ Creature | NumAtt$ +0 | NumDef$ +1 | SubAbility$ DBAnimate | SpellDescription$ Creatures target player controls get +0/+1 and gain all creature types until end of turn. -SVar:DBAnimate:DB$ AnimateAll | Cost$ 0 | Defined$ Targeted | Types$ AllCreatureTypes -SVar:Rarity:Common -SVar:Picture:http://www.wizards.com/global/images/magic/general/shields_of_velis_vel.jpg -SetInfo:LRW|Common|http://magiccards.info/scans/en/lw/39.jpg -Oracle:Changeling (This card is every creature type at all times.)\nCreatures target player controls get +0/+1 and gain all creature types until end of turn. +Name:Shields of Velis Vel +ManaCost:W +Types:Tribal Instant Shapeshifter +Text:no text +S:Mode$ Continuous | Affected$ Card.Self | CharacteristicDefining$ True | AddType$ AllCreatureTypes | Description$ Changeling (This card is every creature type at all times.) +A:SP$ PumpAll | Cost$ W | ValidTgts$ Player | TgtPrompt$ Select target player | ValidCards$ Creature | NumAtt$ +0 | NumDef$ +1 | SubAbility$ DBAnimate | SpellDescription$ Creatures target player controls get +0/+1 and gain all creature types until end of turn. +SVar:DBAnimate:DB$ AnimateAll | Cost$ 0 | Defined$ Targeted | Types$ AllCreatureTypes +SVar:Rarity:Common +SVar:Picture:http://www.wizards.com/global/images/magic/general/shields_of_velis_vel.jpg +SetInfo:LRW|Common|http://magiccards.info/scans/en/lw/39.jpg +Oracle:Changeling (This card is every creature type at all times.)\nCreatures target player controls get +0/+1 and gain all creature types until end of turn. End \ No newline at end of file diff --git a/src/main/java/forge/card/abilityFactory/AbilityFactory_Animate.java b/src/main/java/forge/card/abilityFactory/AbilityFactory_Animate.java index 11818b37594..611df2e2b6f 100644 --- a/src/main/java/forge/card/abilityFactory/AbilityFactory_Animate.java +++ b/src/main/java/forge/card/abilityFactory/AbilityFactory_Animate.java @@ -9,6 +9,7 @@ import forge.CardUtil; import forge.Command; import forge.ComputerUtil; import forge.Constant; +import forge.Player; import forge.Constant.Zone; import forge.card.spellability.Ability_Activated; @@ -665,7 +666,7 @@ public final class AbilityFactory_Animate { c.addNewPT(power, toughness, timestamp); } - if (!types.isEmpty() || !removeTypes.isEmpty()) { + if (!types.isEmpty() || !removeTypes.isEmpty() || removeCreatureTypes) { c.addChangedCardTypes(types, removeTypes, removeSuperTypes, removeCardTypes, removeSubTypes, removeCreatureTypes, timestamp); } @@ -712,7 +713,7 @@ public final class AbilityFactory_Animate { c.setStaticAbilities(new ArrayList()); } - if (params.containsKey("Types")) { + if (params.containsKey("Types") || params.containsKey("RemoveTypes") || params.containsKey("RemoveCreatureTypes")) { c.removeChangedCardTypes(timestamp); } @@ -1034,8 +1035,21 @@ public final class AbilityFactory_Animate { if (params.containsKey("ValidCards")) { valid = params.get("ValidCards"); } + + CardList list; + ArrayList tgtPlayers = null; + + Target tgt = af.getAbTgt(); + if (tgt != null) + tgtPlayers = tgt.getTargetPlayers(); + else if (params.containsKey("Defined")) // Make sure Defined exists to use it + tgtPlayers = AbilityFactory.getDefinedPlayers(sa.getSourceCard(), params.get("Defined"), sa); + + if (tgtPlayers == null || tgtPlayers.isEmpty()) + list = AllZoneUtil.getCardsIn(Zone.Battlefield); + else + list = tgtPlayers.get(0).getCardsIn(Zone.Battlefield); - CardList list = AllZoneUtil.getCardsIn(Zone.Battlefield); list = list.getValidCards(valid.split(","), host.getController(), host); for (final Card c : list) {