From 59d6d735cd7c67c6262f35d8059ec40eda49a469 Mon Sep 17 00:00:00 2001 From: jendave Date: Sat, 6 Aug 2011 13:49:41 +0000 Subject: [PATCH] - Bounce spells that use AF Changezone will target only human permanents, since the AI is not capable of emergency rescue. Sol beat me to the exile case (I even added the same filter to CardList). --- res/cardsfolder/incinerate.txt | 2 +- src/forge/AbilityFactory_ChangeZone.java | 4 ++-- src/forge/CardList.java | 27 ------------------------ 3 files changed, 3 insertions(+), 30 deletions(-) diff --git a/res/cardsfolder/incinerate.txt b/res/cardsfolder/incinerate.txt index 5916de7ccbf..be8f09f2c5a 100644 --- a/res/cardsfolder/incinerate.txt +++ b/res/cardsfolder/incinerate.txt @@ -3,7 +3,7 @@ ManaCost:1 R Types:Instant Text:no text A:SP$DealDamage | Cost$ 1 R | Tgt$ TgtCP | NumDmg$ 3 | SubAbility$ SVar=DB | SpellDescription$ CARDNAME deals 3 damage to target creature or player. A creature dealt damage this way can't be regenerated this turn. -SVar:DB:DB$Pump | KW$ HIDDEN CARDNAME can't be regenerated. | Defined$Targeted +SVar:DB:DB$Pump | KW$ HIDDEN CARDNAME can't be regenerated. | Defined$ Targeted SVar:Rarity:Common SVar:Picture:http://www.wizards.com/global/images/magic/general/incinerate.jpg End \ No newline at end of file diff --git a/src/forge/AbilityFactory_ChangeZone.java b/src/forge/AbilityFactory_ChangeZone.java index defa1d7053e..57f2c525e1c 100644 --- a/src/forge/AbilityFactory_ChangeZone.java +++ b/src/forge/AbilityFactory_ChangeZone.java @@ -583,7 +583,7 @@ public class AbilityFactory_ChangeZone { CardList list = AllZoneUtil.getCardsInZone(origin); list = list.getValidCards(tgt.getValidTgts(), AllZone.ComputerPlayer, source); - + if (list.size() == 0) return false; @@ -605,7 +605,7 @@ public class AbilityFactory_ChangeZone { } - if (destination.equals("Exile")) + if (destination.equals("Exile") || origin.equals("Battlefield")) list = list.getController(AllZone.HumanPlayer); if (list.size() == 0) diff --git a/src/forge/CardList.java b/src/forge/CardList.java index 83180a1ae09..d86e15bb1fc 100644 --- a/src/forge/CardList.java +++ b/src/forge/CardList.java @@ -149,7 +149,6 @@ public class CardList implements Iterable { return c; } - //cardType is like "Land" or "Goblin", returns a new CardList that is a subset of current CardList public CardList getController(final Player player) { return this.filter(new CardListFilter() { public boolean addCard(Card c) { @@ -314,32 +313,6 @@ public class CardList implements Iterable { }); } - /* - public CardList getValidCards(final String Restrictions[], final Card source) { - return this.filter(new CardListFilter() { - public boolean addCard(Card c) { - return c.isValidCard(Restrictions, source); - } - }); - } - - public CardList getValidCards(final String Restrictions[], final Player Controller) { - return this.filter(new CardListFilter() { - public boolean addCard(Card c) { - return c.isValidCard(Restrictions, Controller); - } - }); - } - - public CardList getValidCards(final String Restrictions[]) { - return this.filter(new CardListFilter() { - public boolean addCard(Card c) { - return c.isValidCard(Restrictions); - } - }); - }//getValidCards - */ - public CardList getEquipMagnets() { return this.filter(new CardListFilter() { public boolean addCard(Card c) {