From a71f583de2f00ba22ae53d48c5a7ad98c5860c01 Mon Sep 17 00:00:00 2001 From: jendave Date: Sat, 6 Aug 2011 02:51:02 +0000 Subject: [PATCH] - Added Xiahou Dun, the One-Eyed and Loyal Retainers. - Added Goblin Charbelcher ability text. - Added card-pictures.txt links. --- res/card-pictures.txt | 75 ++++++++++++ res/cards.txt | 19 ++- res/main.properties | 2 +- res/quest/questData | Bin 49697 -> 56572 bytes src/forge/CardFactory.java | 1 + src/forge/CardFactory_Creatures.java | 168 +++++++++++++++++++++++++++ src/forge/ComputerAI_General.java | 1 + 7 files changed, 262 insertions(+), 4 deletions(-) diff --git a/res/card-pictures.txt b/res/card-pictures.txt index e6d38c6eb98..d02f942162a 100644 --- a/res/card-pictures.txt +++ b/res/card-pictures.txt @@ -18,6 +18,81 @@ forest.jpg http://resources.wizards.com/magic/cards/unh/en-us/card73946.jpg forest1.jpg http://gatherer.wizards.com/handlers/image.ashx?type=card&multiverseid=2748 forest2.jpg http://gatherer.wizards.com/handlers/image.ashx?type=card&multiverseid=587 forest3.jpg http://gatherer.wizards.com/handlers/image.ashx?type=card&multiverseid=586 +door_to_nothingness.jpg http://www.wizards.com/global/images/magic/general/door_to_nothingness.jpg +kazuul_warlord.jpg http://www.wizards.com/global/images/magic/general/kazuul_warlord.jpg +seascape_aerialist.jpg http://www.wizards.com/global/images/magic/general/seascape_aerialist.jpg +ondu_cleric.jpg http://www.wizards.com/global/images/magic/general/ondu_cleric.jpg +joraga_bard.jpg http://www.wizards.com/global/images/magic/general/ondu_cleric.jpg +highland_berserker.jpg http://www.wizards.com/global/images/magic/general/highland_berserker.jpg +cruel_edict.jpg http://www.wizards.com/global/images/magic/general/cruel_edict.jpg +imperial_edict.jpg http://www.wizards.com/global/images/magic/general/imperial_edict.jpg +chainers_edict.jpg http://www.wizards.com/global/images/magic/general/chainers_edict.jpg +diabolic_edict.jpg http://www.wizards.com/global/images/magic/general/diabolic_edict.jpg +innocent_blood.jpg http://www.wizards.com/global/images/magic/general/innocent_blood.jpg +transguild_courier.jpg http://www.wizards.com/global/images/magic/general/transguild_courier.jpg +oran_rief_the_vastwood.jpg http://www.wizards.com/global/images/magic/general/oran_rief_the_vastwood.jpg +academy_rector.jpg http://www.wizards.com/global/images/magic/general/academy_rector.jpg +acolyte_of_xathrid.jpg http://www.wizards.com/global/images/magic/general/acolyte_of_xathrid.jpg +ajani_vengeant.jpg http://www.wizards.com/global/images/magic/general/ajani_vengeant.jpg +armored_galleon.jpg http://www.magickartenmarkt.de/img/cards/Portal_Second_Age/armored_galleon.jpg +auramancer.jpg http://www.wizards.com/global/images/magic/general/auramancer.jpg +barren_glory.jpg http://www.wizards.com/global/images/magic/general/barren_glory.jpg +boggart_harbinger.jpg http://www.wizards.com/global/images/magic/general/boggart_harbinger.jpg +capashen_unicorn.jpg http://www.wizards.com/global/images/magic/general/capashen_unicorn.jpg +capture_of_jingzhou.jpg http://www.wizards.com/global/images/magic/general/capture_of_jingzhou.jpg +cartographer.jpg http://www.wizards.com/global/images/magic/general/cartographer.jpg +conquerors_pledge.jpg http://www.wizards.com/global/images/magic/general/conquerors_pledge.jpg +deep_sea_serpent.jpg http://www.magickartenmarkt.de/img/cards/Portal/deep_sea_serpent.jpg +dwarven_pony.jpg http://www.wizards.com/global/images/magic/general/dwarven_pony.jpg +elvish_harbinger.jpg http://www.wizards.com/global/images/magic/general/elvish_harbinger.jpg +ethereal_whiskergill.jpg http://www.wizards.com/global/images/magic/general/ethereal_whiskergill.jpg +faerie_harbinger.jpg http://www.wizards.com/global/images/magic/general/faerie_harbinger.jpg +femeref_enchantress.jpg http://www.wizards.com/global/images/magic/general/femeref_enchantress.jpg +flamekin_harbinger.jpg http://www.wizards.com/global/images/magic/general/flamekin_harbinger.jpg +fleeting_image.jpg http://www.wizards.com/global/images/magic/general/fleeting_image.jpg +giant_harbinger.jpg http://www.wizards.com/global/images/magic/general/giant_harbinger.jpg +goblin_charbelcher.jpg http://www.wizards.com/global/images/magic/general/goblin_charbelcher.jpg +goblin_chieftain.jpg http://www.wizards.com/global/images/magic/general/goblin_chieftain.jpg +jace_beleren.jpg http://www.wizards.com/global/images/magic/general/jace_beleren.jpg +kaerveks_spite.jpg http://www.wizards.com/global/images/magic/general/kaerveks_spite.jpg +kami_of_ancient_law.jpg http://www.wizards.com/global/images/magic/general/kami_of_ancient_law.jpg +manta_ray.jpg http://www.wizards.com/global/images/magic/general/manta_ray.jpg +meekstone.jpg http://www.wizards.com/global/images/magic/general/meekstone.jpg +merfolk_sovereign.jpg http://www.wizards.com/global/images/magic/general/merfolk_sovereign.jpg +merrow_harbinger.jpg http://www.wizards.com/global/images/magic/general/merrow_harbinger.jpg +pirate_ship.jpg http://www.wizards.com/global/images/magic/general/pirate_ship.jpg +qasali_pridemage.jpg http://www.wizards.com/global/images/magic/general/qasali_pridemage.jpg +red_cliffs_armada.jpg http://www.wizards.com/global/images/magic/general/red_cliffs_armada.jpg +ronom_unicorn.jpg http://www.wizards.com/global/images/magic/general/ronom_unicorn.jpg +scarland_thrinax.jpg http://www.wizards.com/global/images/magic/general/scarland_thrinax.jpg +sea_monster.jpg http://www.wizards.com/global/images/magic/general/sea_monster.jpg +sea_serpent.jpg http://www.wizards.com/global/images/magic/general/sea_serpent.jpg +seal_of_cleansing.jpg http://www.wizards.com/global/images/magic/general/seal_of_cleansing.jpg +seal_of_fire.jpg http://www.wizards.com/global/images/magic/general/seal_of_fire.jpg +seal_of_primordium.jpg http://www.wizards.com/global/images/magic/general/seal_of_primordium.jpg +seal_of_removal.jpg http://www.wizards.com/global/images/magic/general/seal_of_removal.jpg +serendib_sorcerer.jpg http://www.wizards.com/global/images/magic/general/serendib_sorcerer.jpg +silhana_ledgewalker.jpg http://www.wizards.com/global/images/magic/general/silhana_ledgewalker.jpg +slipstream_eel.jpg http://www.wizards.com/global/images/magic/general/slipstream_eel.jpg +slipstream_serpent.jpg http://www.wizards.com/global/images/magic/general/slipstream_serpent.jpg +spell_snare.jpg http://www.wizards.com/global/images/magic/general/spell_snare.jpg +staff_of_domination.jpg http://www.wizards.com/global/images/magic/general/staff_of_domination.jpg +steam_frigate.jpg http://www.wizards.com/global/images/magic/general/steam_frigate.jpg +sword_of_the_meek.jpg http://www.wizards.com/global/images/magic/general/sword_of_the_meek.jpg +temporal_manipulation.jpg http://www.wizards.com/global/images/magic/general/temporal_manipulation.jpg +thopter_foundry.jpg http://www.wizards.com/global/images/magic/general/thopter_foundry.jpg +timber_protector.jpg http://www.wizards.com/global/images/magic/general/timber_protector.jpg +time_walk.jpg http://www.wizards.com/global/images/magic/general/time_walk.jpg +tinker.jpg http://www.wizards.com/global/images/magic/general/tinker.jpg +treetop_bracers.jpg http://www.wizards.com/global/images/magic/general/treetop_bracers.jpg +treetop_rangers.jpg http://www.wizards.com/global/images/magic/general/treetop_rangers.jpg +treetop_scout.jpg http://www.wizards.com/global/images/magic/general/treetop_scout.jpg +umezawas_jitte.jpg http://www.wizards.com/global/images/magic/general/umezawas_jitte.jpg +vendilion_clique.jpg http://www.wizards.com/global/images/magic/general/vendilion_clique.jpg +viridian_zealot.jpg http://www.wizards.com/global/images/magic/general/viridian_zealot.jpg +vodalian_knights.jpg http://www.wizards.com/global/images/magic/general/vodalian_knights.jpg +wu_warship.jpg http://www.wizards.com/global/images/magic/general/wu_warship.jpg +zhou_yu_chief_commander.jpg http://www.wizards.com/global/images/magic/general/zhou_yu_chief_commander.jpg boreal_griffin.jpg http://www.wizards.com/global/images/magic/general/boreal_griffin.jpg frost_raptor.jpg http://www.wizards.com/global/images/magic/general/frost_raptor.jpg goblin_rimerunner.jpg http://www.wizards.com/global/images/magic/general/goblin_rimerunner.jpg diff --git a/res/cards.txt b/res/cards.txt index b26f07947a6..4dafccf888a 100644 --- a/res/cards.txt +++ b/res/cards.txt @@ -1,7 +1,20 @@ +Xiahou Dun, the One-Eyed +2 B B +Legendary Creature Human Soldier +no text +3/2 +Horsemanship + +Loyal Retainers +2 W +Creature Human Advisor +no text +1/1 + Kor Cartographer 3 W Creature Kor Scout -When Kor Cartographer enters the field, you may search your library for a plains card, put it onto the battlefield tapped, then shuffle your library. +When Kor Cartographer enters the battlefield, you may search your library for a plains card, put it onto the battlefield tapped, then shuffle your library. 2/2 Celestial Purge @@ -126,7 +139,7 @@ Umezawa's Jitte Artifact Equipment Whenever equipped creature deals combat damage, put two charge counters on Umezawa's Jitte. -Vendillion Clique +Vendilion Clique 1 U U Legendary Creature Faerie Wizard When Vendilion Clique enters the battlefield, look at target player's hand. You may choose a nonland card from it. If you do, that player reveals the chosen card, puts it on the bottom of his or her library, then draws a card. @@ -294,7 +307,7 @@ no text This creature can't attack unless defending player controls an Island When you control no Islands, sacrifice this creature -Zhou You, Chief Commander +Zhou Yu, Chief Commander 5 U U Legendary Creature Human Soldier no text diff --git a/res/main.properties b/res/main.properties index d88f0e0d9bd..72112e17c7e 100644 --- a/res/main.properties +++ b/res/main.properties @@ -1,6 +1,6 @@ program/mail=mtgerror@yahoo.com program/forum=http://www.slightlymagic.net/forum/viewforum.php?f=26 -program/version=MTG Forge -- official beta: 09/11/02, SVN revision: 100 +program/version=MTG Forge -- official beta: 09/11/25, SVN revision: 101 tokens--file=AllTokens.txt diff --git a/res/quest/questData b/res/quest/questData index d102644935bf4f41a62b02760540a6817d1c3754..4a0a7751bf8a87b9c37b65e3e60379543c99d928 100644 GIT binary patch literal 56572 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 VaF)Q?0uK^6Cn6Hemn& literal 49697 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 diff --git a/src/forge/CardFactory.java b/src/forge/CardFactory.java index 23a0b2686d5..996dd8ab69e 100644 --- a/src/forge/CardFactory.java +++ b/src/forge/CardFactory.java @@ -16723,6 +16723,7 @@ return land.size() > 1 && CardFactoryUtil.AI_isMainPhase(); AllZone.GameAction.getPlayerLife(getTargetPlayer()).subtractLife(damage); } }; + ability.setDescription("3, tap: Reveal cards from the top of your library until you reveal a land card. Goblin Charbelcher deals damage equal to the number of nonland cards revealed this way to target creature or player. If the revealed land card was a Mountain, Goblin Charbelcher deals double that damage instead. Put the revealed cards on the bottom of your library in any order."); ability.setChooseTargetAI(CardFactoryUtil.AI_targetHuman()); ability.setBeforePayMana(CardFactoryUtil.input_targetCreaturePlayer(ability, true)); card.addSpellAbility(ability); diff --git a/src/forge/CardFactory_Creatures.java b/src/forge/CardFactory_Creatures.java index 7c7b7a3928f..6d04cfc44cf 100644 --- a/src/forge/CardFactory_Creatures.java +++ b/src/forge/CardFactory_Creatures.java @@ -16899,6 +16899,174 @@ public class CardFactory_Creatures { }}; card.addComesIntoPlayCommand(cip); }//*************** END ************ END ************************** + + + //*************** START *********** START ************************** + else if (cardName.equals("Loyal Retainers")) + { + final Ability ability = new Ability(card, "0") + { + + public void resolve() { + if (AllZone.GameAction.isCardInPlay(card)) { + AllZone.GameAction.sacrifice(card); + + PlayerZone play = AllZone.getZone(Constant.Zone.Play, card.getController()); + PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController()); + CardList list = new CardList(grave.getCards()); + list = list.filter(new CardListFilter() + { + public boolean addCard(Card c) + { + return c.isCreature() && c.getType().contains("Legendary"); + } + }); + + if (list.size() >0) { + if (card.getController().equals(Constant.Player.Human)) + { + Object o = AllZone.Display.getChoiceOptional("Select Legendary creature", list.toArray()); + if (o!=null) + { + Card c = (Card)o; + grave.remove(c); + play.add(c); + } + + } + else //computer + { + Card c = CardFactoryUtil.AI_getBestCreature(list); + grave.remove(c); + play.add(c); + } + } + } + } + + public boolean canPlay() + { + PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController()); + CardList list = new CardList(grave.getCards()); + list = list.filter(new CardListFilter() + { + public boolean addCard(Card c) + { + return c.isCreature() && c.getType().contains("Legendary"); + } + }); + + SpellAbility sa; + for (int i=0; i 0 && + AllZone.Phase.getPhase().equals(Constant.Phase.Main1) && + AllZone.Phase.getActivePlayer().equals(card.getController()); + } + + public boolean canPlayAI() + { + PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController()); + CardList list = new CardList(grave.getCards()); + list = list.filter(new CardListFilter() + { + public boolean addCard(Card c) + { + return c.isCreature() && c.getType().contains("Legendary") && CardUtil.getConvertedManaCost(c.getManaCost()) > 4; + } + }); + return list.size()>0; + } + + + }; + ability.setDescription("Sacrifice Loyal Retainers: Return target legendary creature card from your graveyard to the battlefield. Activate this ability only during your turn, before attackers are declared."); + ability.setStackDescription(cardName + " - Return target legendary creature card from your graveyard to the battlefield."); + + card.addSpellAbility(ability); + }//*************** END ************ END ************************** + + + //*************** START *********** START ************************** + else if (cardName.equals("Xiahou Dun, the One-Eyed")) + { + final Ability ability = new Ability(card, "0") + { + + public void resolve() { + if (AllZone.GameAction.isCardInPlay(card)) { + AllZone.GameAction.sacrifice(card); + + PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController()); + PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController()); + CardList list = new CardList(grave.getCards()); + list = list.filter(new CardListFilter() + { + public boolean addCard(Card c) + { + return CardUtil.getColors(c).contains(Constant.Color.Black); + } + }); + + if (list.size() >0) { + if (card.getController().equals(Constant.Player.Human)) + { + Object o = AllZone.Display.getChoiceOptional("Select black card", list.toArray()); + if (o!=null) + { + Card c = (Card)o; + grave.remove(c); + hand.add(c); + } + + } + else //computer + { + //TODO + } + } + } + } + public boolean canPlay() + { + PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController()); + CardList list = new CardList(grave.getCards()); + list = list.filter(new CardListFilter() + { + public boolean addCard(Card c) + { + return CardUtil.getColors(c).contains(Constant.Color.Black); + } + }); + + SpellAbility sa; + for (int i=0; i 0 && + AllZone.Phase.getPhase().equals(Constant.Phase.Main1) && + AllZone.Phase.getActivePlayer().equals(card.getController()); + } + + public boolean canPlayAI() + { + return false; + } + }; + ability.setDescription("Sacrifice Xiahou Dun, the One-Eyed: Return target black card from your graveyard to your hand. Activate this ability only during your turn, before attackers are declared."); + ability.setStackDescription(cardName + " - Return target black card from your graveyard to your hand."); + + card.addSpellAbility(ability); + }//*************** END ************ END ************************** // Cards with Cycling abilities // -1 means keyword "Cycling" not found diff --git a/src/forge/ComputerAI_General.java b/src/forge/ComputerAI_General.java index ec5ab4076a1..b3bcaf889a9 100644 --- a/src/forge/ComputerAI_General.java +++ b/src/forge/ComputerAI_General.java @@ -8,6 +8,7 @@ import java.util.TreeSet; public class ComputerAI_General implements Computer { //private boolean playLand = true; + //private int numberPlayLand = 1; private int numberPlayLand = CardFactoryUtil.getCanPlayNumberOfLands(Constant.Player.Computer); private Collection playMain1Cards;