From f84e45417f26cebf08cd7ea9e29503a3498b21ce Mon Sep 17 00:00:00 2001 From: jendave Date: Sat, 6 Aug 2011 12:07:04 +0000 Subject: [PATCH] - Bugfix for Suspend trying to move Spell to Stack that's already moved - Convert Ancestral Vision to AF_Draw and remove from AI decks since Suspend currently returns false. --- res/cardsfolder/ancestral_vision.txt | 3 ++- src/forge/Card.java | 7 ++++--- src/forge/CardFactoryUtil.java | 6 ++++-- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/res/cardsfolder/ancestral_vision.txt b/res/cardsfolder/ancestral_vision.txt index 6eeb17903d3..589c4f9c351 100644 --- a/res/cardsfolder/ancestral_vision.txt +++ b/res/cardsfolder/ancestral_vision.txt @@ -4,8 +4,9 @@ Types:Sorcery Text:no text K:CARDNAME is blue. K:Suspend:4:U -K:spDrawCardsTgt:3:Target player draws three cards.:CARDNAME - draw 3 cards. +A:SP$Draw | Cost$ 0 | NumCards$ 3 | ValidTgts$ Player | TgtPrompt$ Choose a player to draw three cards | SpellDescription$ Target player draws three cards. | ActivationLimit$ 0 SVar:Rarity:Rare SVar:Picture:http://www.wizards.com/global/images/magic/general/ancestral_vision.jpg +SVar:RemAIDeck:True SetInfo:TSP|Rare|http://magiccards.info/scans/en/ts/48.jpg End \ No newline at end of file diff --git a/src/forge/Card.java b/src/forge/Card.java index 92b8d301f0a..31fe4fb50ec 100644 --- a/src/forge/Card.java +++ b/src/forge/Card.java @@ -385,7 +385,8 @@ public class Card extends MyObservable { c.addComesIntoPlayCommand(intoPlay); AllZone.GameAction.playCardNoCost(c); - AllZone.getZone(c).remove(c); + if (AllZone.getZone(c) != null) + AllZone.getZone(c).remove(c); } } this.updateObservers(); @@ -895,7 +896,7 @@ public class Card extends MyObservable { sb.append("\r\n"); sb.append(text.replaceAll("\\\\r\\\\n", "\r\n")); sb.append("\r\n"); - + SpellAbility[] sa = getSpellAbility(); for(int i = 0; i < sa.length; i++) { //presumes the first SpellAbility added to this card, is the "main" spell @@ -1939,7 +1940,7 @@ public class Card extends MyObservable { private static final long serialVersionUID = -3032496855034700637L; }); else - otherExtrinsicKeyword.add((getName().trim().length()==0 ? s :s.replaceAll(getName(), "CARDNAME"))); + otherExtrinsicKeyword.add((getName().trim().length()==0 ? s :s.replaceAll(getName(), "CARDNAME"))); //} } diff --git a/src/forge/CardFactoryUtil.java b/src/forge/CardFactoryUtil.java index 9d36588c7f5..0a2c8e39add 100644 --- a/src/forge/CardFactoryUtil.java +++ b/src/forge/CardFactoryUtil.java @@ -1812,8 +1812,10 @@ public class CardFactoryUtil { @Override public boolean canPlayAI() { - return false; - } + return false; + // Suspend currently not functional for the AI, + // seems to be an issue with regaining Priority after Suspension + } @Override public void resolve() {