From 2e1db70148af0a38e116969c40b028dbb94a87e4 Mon Sep 17 00:00:00 2001 From: jendave Date: Sat, 6 Aug 2011 09:05:56 +0000 Subject: [PATCH] - Fixed AI bugs in AbilityFactory_Fetch if Destination is not battlefield and added revealing. - Added Artificer's Intuition, Braidwood Sextant and Journeyer's Kite. --- .gitattributes | 3 +++ res/cardsfolder/artificers_intuition.txt | 9 +++++++++ res/cardsfolder/braidwood_sextant.txt | 8 ++++++++ res/cardsfolder/journeyers_kite.txt | 8 ++++++++ res/cardsfolder/kuldotha_forgemaster.txt | 2 +- src/forge/AbilityFactory_Fetch.java | 18 +++++++++++++----- 6 files changed, 42 insertions(+), 6 deletions(-) create mode 100644 res/cardsfolder/artificers_intuition.txt create mode 100644 res/cardsfolder/braidwood_sextant.txt create mode 100644 res/cardsfolder/journeyers_kite.txt diff --git a/.gitattributes b/.gitattributes index fb0e0bea304..d46f50c370a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -234,6 +234,7 @@ res/cardsfolder/arrogant_wurm.txt -text svneol=native#text/plain res/cardsfolder/artifact_blast.txt -text svneol=native#text/plain res/cardsfolder/artifact_mutation.txt -text svneol=native#text/plain res/cardsfolder/artifact_ward.txt -text svneol=native#text/plain +res/cardsfolder/artificers_intuition.txt -text svneol=native#text/plain res/cardsfolder/artisan_of_kozilek.txt -text svneol=native#text/plain res/cardsfolder/ascendant_evincar.txt -text svneol=native#text/plain res/cardsfolder/ascending_aven.txt -text svneol=native#text/plain @@ -521,6 +522,7 @@ res/cardsfolder/bounteous_kirin.txt -text svneol=native#text/plain res/cardsfolder/bountiful_harvest.txt -text svneol=native#text/plain res/cardsfolder/brackwater_elemental.txt -text svneol=native#text/plain res/cardsfolder/braidwood_cup.txt -text svneol=native#text/plain +res/cardsfolder/braidwood_sextant.txt -text svneol=native#text/plain res/cardsfolder/brain_freeze.txt -text svneol=native#text/plain res/cardsfolder/brainbite.txt -text svneol=native#text/plain res/cardsfolder/braingeyser.txt -text svneol=native#text/plain @@ -2112,6 +2114,7 @@ res/cardsfolder/jolraels_centaur.txt -text svneol=native#text/plain res/cardsfolder/jolting_merfolk.txt -text svneol=native#text/plain res/cardsfolder/joraga_bard.txt -text svneol=native#text/plain res/cardsfolder/journey_to_nowhere.txt -text svneol=native#text/plain +res/cardsfolder/journeyers_kite.txt -text svneol=native#text/plain res/cardsfolder/joven.txt -text svneol=native#text/plain res/cardsfolder/jovial_evil.txt -text svneol=native#text/plain res/cardsfolder/joyous_respite.txt -text svneol=native#text/plain diff --git a/res/cardsfolder/artificers_intuition.txt b/res/cardsfolder/artificers_intuition.txt new file mode 100644 index 00000000000..b028de783ab --- /dev/null +++ b/res/cardsfolder/artificers_intuition.txt @@ -0,0 +1,9 @@ +Name:Artificer's Intuition +ManaCost:1 U +Types:Enchantment +Text:no text +A:AB$Fetch|Cost$U Discard<1/Artifact>|Destination$Hand|FetchType$Artifact.cmcLE1|FetchNum$1|SpellDescription$Search your library for an artifact card with converted mana cost 1 or less, reveal that card, and put it into your hand. Then shuffle your library. +SVar:RemAIDeck:True +SVar:Rarity:Rare +SVar:Picture:http://www.wizards.com/global/images/magic/general/artificers_intuition.jpg +End \ No newline at end of file diff --git a/res/cardsfolder/braidwood_sextant.txt b/res/cardsfolder/braidwood_sextant.txt new file mode 100644 index 00000000000..8cb62a3829d --- /dev/null +++ b/res/cardsfolder/braidwood_sextant.txt @@ -0,0 +1,8 @@ +Name:Braidwood Sextant +ManaCost:1 +Types:Artifact +Text:no text +A:AB$Fetch|Cost$2 T Sac<1/CARDNAME>|Destination$Hand|FetchType$Land.Basic|FetchNum$1|SpellDescription$Search your library for a basic land card, reveal that card, and put it into your hand. Then shuffle your library. +SVar:Rarity:Uncommon +SVar:Picture:http://www.wizards.com/global/images/magic/general/braidwood_sextant.jpg +End \ No newline at end of file diff --git a/res/cardsfolder/journeyers_kite.txt b/res/cardsfolder/journeyers_kite.txt new file mode 100644 index 00000000000..3ef88d16e69 --- /dev/null +++ b/res/cardsfolder/journeyers_kite.txt @@ -0,0 +1,8 @@ +Name:Journeyer's Kite +ManaCost:2 +Types:Artifact +Text:no text +A:AB$Fetch|Cost$3 T|Destination$Hand|FetchType$Land.Basic|FetchNum$1|SpellDescription$Search your library for a basic land card, reveal it, and put it into your hand. Then shuffle your library. +SVar:Rarity:Rare +SVar:Picture:http://www.wizards.com/global/images/magic/general/journeyers_kite.jpg +End \ No newline at end of file diff --git a/res/cardsfolder/kuldotha_forgemaster.txt b/res/cardsfolder/kuldotha_forgemaster.txt index 28d2b71e21b..9ffeb08901d 100644 --- a/res/cardsfolder/kuldotha_forgemaster.txt +++ b/res/cardsfolder/kuldotha_forgemaster.txt @@ -3,7 +3,7 @@ ManaCost:5 Types:Artifact Creature Construct Text:no text PT:3/5 -A:AB$Fetch|Cost$T T Sac<3/Artifact>|Destination$Battlefield|FetchType$Artifact|FetchNum$1|SpellDescription$Search your library for an artifact card and put it onto the battlefield. Then shuffle your library. +A:AB$Fetch|Cost$T Sac<3/Artifact>|Destination$Battlefield|FetchType$Artifact|FetchNum$1|SpellDescription$Search your library for an artifact card and put it onto the battlefield. Then shuffle your library. SVar:RemAIDeck:True SVar:Rarity:Rare SVar:Picture:http://www.wizards.com/global/images/magic/general/kuldotha_forgemaster.jpg diff --git a/src/forge/AbilityFactory_Fetch.java b/src/forge/AbilityFactory_Fetch.java index b68b10224b2..07d7d232382 100644 --- a/src/forge/AbilityFactory_Fetch.java +++ b/src/forge/AbilityFactory_Fetch.java @@ -124,14 +124,22 @@ public class AbilityFactory_Fetch { else c = library.get(0); - AllZone.Human_Library.remove(c); + AllZone.Computer_Library.remove(c); library.remove(c); - if (destination.equals("Hand")) - AllZone.Human_Hand.add(c); //move to hand + if (destination.equals("Hand")) { + CardList l = new CardList(); + l.add(c); + AllZone.Display.getChoiceOptional("Computer picked:", l.toArray()); + AllZone.Computer_Hand.add(c); + }//move to hand else if (destination.equals("Battlefield")) AllZone.getZone(Constant.Zone.Play, player).add(c); //move to battlefield - else if (destination.equals("Library")) - AllZone.Human_Library.add(c, libraryPosition); //move to top of library + else if (destination.equals("Library")) { + CardList l = new CardList(); + l.add(c); + AllZone.Display.getChoiceOptional("Computer picked:", l.toArray()); + AllZone.Computer_Library.add(c, libraryPosition); + }//move to top of library }//if } AllZone.GameAction.shuffle(player);