diff --git a/res/card-pictures.txt b/res/card-pictures.txt index 83cf3a84871..a953bd1d513 100644 --- a/res/card-pictures.txt +++ b/res/card-pictures.txt @@ -18,6 +18,7 @@ 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 +benalish_trapper.jpg http://www.wizards.com/global/images/magic/general/benalish_trapper.jpg merfolk_looter.jpg http://www.wizards.com/global/images/magic/general/merfolk_looter.jpg thornscape_apprentice.jpg http://www.wizards.com/global/images/magic/general/thornscape_apprentice.jpg scepter_of_insight.jpg http://www.wizards.com/global/images/magic/general/scepter_of_insight.jpg @@ -58,7 +59,6 @@ azorius_first_wing.jpg http://www.wizards.com/global/images/magic/general/azori bant_sureblade.jpg http://www.wizards.com/global/images/magic/general/bant_sureblade.jpg bartel_runeaxe.jpg http://www.wizards.com/global/images/magic/general/bartel_runeaxe.jpg benalish_heralds.jpg http://www.wizards.com/global/images/magic/general/benalish_heralds.jpg -benalish_hero.jpg http://www.wizards.com/global/images/magic/general/benalish_hero.jpg boris_devilboon.jpg http://www.wizards.com/global/images/magic/general/boris_devilboon.jpg buoyancy.jpg http://www.wizards.com/global/images/magic/general/buoyancy.jpg dakkon_blackblade.jpg http://www.wizards.com/global/images/magic/general/dakkon_blackblade.jpg diff --git a/res/cards.txt b/res/cards.txt index 4fba07c10e4..59a0b796d6b 100644 --- a/res/cards.txt +++ b/res/cards.txt @@ -9,14 +9,14 @@ G Creature Human Wizard no text 1/1 -TgtKpump R T: First strike +TgtKpump R T: First Strike Scepter of Insight 1 U U Artifact no text -Asha's favor +Asha's Favor 2 W Enchantment Aura Enchanted creature gains flying, first strike and vigilance. @@ -29,7 +29,7 @@ no text 0/1 Exalted -Blinding mage +Blinding Mage 1 W Creature Human Wizard no text @@ -57,13 +57,13 @@ spDrawCards:Count$TypeOppCtrlTapped.Creature:Draw a card for each tapped creatur Cruel Bargain B B B Sorcery -no text +(NOTE: "You lose half your life, rounded up." is not implemented.) spDrawCards:4:Drawback$LoseLifeYou/Count$YourLifeTotal/HalfUp:Draw four cards.:You lose half your life, rounded up.:Cruel Bargain - Draw cards and lose half your life, rounded up. Infernal Contract B B B Sorcery -no text +(NOTE: "You lose half your life, rounded up." is not implemented.) spDrawCards:4:Drawback$LoseLifeYou/Count$YourLifeTotal/HalfUp:Draw four cards.:You lose half your life, rounded up.:Infernal Contract - Draw cards and lose half your life, rounded up. Theft of Dreams @@ -100,7 +100,7 @@ Inspiration 3 U Sorcery no text -spDrawCards:2:Draw two cards.:Inspiration - draw 2 cards. +spDrawCardsTgt:2:Target player draws two cards.:Inspiration - draw 2 cards. Concentrate 2 U U @@ -365,7 +365,7 @@ no text Sacred Nectar 1 W Sorcery -You gain 4 life. +no text Maniacal Rage 1 R @@ -376,14 +376,14 @@ Enchant creature Scavenged Weaponry 2 B Enchantment Aura -Enchanted creature gets +1/+1. +Enchanted creature gets +1/+1. Draw a card. Enchant creature Cantrip Shield of Duty and Reason W Enchantment Aura -Enchanted creature has first protection from green and from blue. +Enchanted creature has protection from green and from blue. Enchant creature Reflexes @@ -435,7 +435,7 @@ spDamageTgtCP:Count$NamedInAllYards.Kindle/Plus.2:Kindle deals X damage to targe Ire of Kaminari 3 R -Instant — Arcane +Instant Arcane no text spDamageTgtCP:Count$TypeInYourYard.Arcane:Ire of Kaminari deals damage to target creature or player equal to the number of Arcane cards in your graveyard. @@ -479,7 +479,7 @@ Thermal Blast 4 R Instant no text -spDamageTgtC:Count$Hellbent.5.3:Thermal Blast deals 3 damage to target creature. Threshold — Thermal Blast deals 5 damage to that creature instead if seven or more cards are in your graveyard. +spDamageTgtC:Count$Hellbent.5.3:Thermal Blast deals 3 damage to target creature. Threshold - Thermal Blast deals 5 damage to that creature instead if seven or more cards are in your graveyard. Spitting Earth 1 R @@ -1196,7 +1196,7 @@ tap: add 1 Darkwater Catacombs no cost Land -no text +1,tap: add U B 1,tap: add U B Fetid Heath @@ -1258,7 +1258,7 @@ tap: add 1 Mossfire Valley no cost Land -no text +1,tap: add R G 1,tap: add R G Mystic Gate @@ -1293,7 +1293,7 @@ tap: add 1 Shadowblood Ridge no cost Land -no text +1,tap: add B R 1,tap: add B R Shimmering Grotto @@ -1310,13 +1310,13 @@ tap: add 1 Skycloud Expanse no cost Land -no text +1,tap: add W U 1,tap: add W U Sungrass Prairie no cost Land -no text +1,tap: add W G 1,tap: add W G Sunken Ruins @@ -1803,7 +1803,7 @@ Protection from green Dosan's Oldest Chant 4 G Sorcery -You gain 6 life +Draw a card. Cantrip Sluggishness @@ -2318,7 +2318,7 @@ Cantrip Morsel Theft 2 B B -Sorcery +Tribal Sorcery Rogue Target player loses 3 life and you gain 3 life. (NOTE: "Prowl" is not implemented.) spLoseLifeGainLife:3 @@ -2438,7 +2438,7 @@ Wrath of God 2 W W Sorcery Destroy all creatures. They can't be regenerated. - + Devout Lightcaster W W W Creature Kor Cleric @@ -10983,12 +10983,12 @@ Put two 1/1 red Goblin creature tokens into play. Storm (When you play this spel Feudkiller's Verdict 4 W W -Sorcery +Tribal Sorcery Giant You gain 10 life. Then if you have more life than an opponent, put a 5/5 white Giant Warrior creature token into play. Reach of Branches 4 G -Instant +Tribal Instant Treefolk Put a 2/5 green Treefolk Shaman creature token into play. Whenever a Forest comes into play under your control, you may return Reach of Branches from your graveyard to your hand. Meadowboon @@ -11017,7 +11017,7 @@ Fear Bitterblossom 1 B -Enchantment Faerie +Tribal Enchantment Faerie At the beginning of your upkeep, you lose 1 life and put a 1/1 black Faerie Rogue creature token with flying into play. Ambassador Oak diff --git a/res/quest/questData b/res/quest/questData index 87ddbd4d3ac..4f09c76b247 100644 Binary files a/res/quest/questData and b/res/quest/questData differ diff --git a/src/Deck.java b/src/Deck.java index 3109dd5fdc6..15a0229833b 100644 --- a/src/Deck.java +++ b/src/Deck.java @@ -20,9 +20,11 @@ public class Deck implements Serializable { private String deckType; + /* private boolean isRegular; private boolean isSealed; private boolean isDraft; + */ private ArrayList main; private ArrayList sideboard; diff --git a/src/QuestData_State.java b/src/QuestData_State.java index 9a808381197..1a216a41680 100644 --- a/src/QuestData_State.java +++ b/src/QuestData_State.java @@ -28,7 +28,6 @@ public class QuestData_State implements Serializable { ArrayList cardPool; HashMap myDecks, aiDecks; - @SuppressWarnings("unchecked") private Object readResolve() throws ObjectStreamException { // System.out.println("resolving obsolete QuestData_State"); Map myDecks = new HashMap(); diff --git a/src/forge/CardFactory.java b/src/forge/CardFactory.java index 8577dfce9f3..246af8689ac 100644 --- a/src/forge/CardFactory.java +++ b/src/forge/CardFactory.java @@ -3326,85 +3326,6 @@ public class CardFactory implements NewConstants { - //*************** START *********** START ************************** - else if(cardName.equals("Magus of the Disk")) - { - SpellAbility summoningSpell = new Spell_Permanent(card) - { - private static final long serialVersionUID = 2510163318362956239L; - - public boolean canPlayAI() - { - boolean nevinyrralInPlay = false; - - CardList inPlay = new CardList(); - inPlay.addAll(AllZone.Computer_Play.getCards()); - for(int i=0; i 1 && CardFactoryUtil.AI_isMainPhase(); } } };//Input + ability.setDescription("W U B R G: Exile target permanent."); ability.setBeforePayMana(target); card.addSpellAbility(ability); @@ -16038,7 +15960,8 @@ return land.size() > 1 && CardFactoryUtil.AI_isMainPhase(); } } };//Input - + ability.setDescription("1, tap: Untap target artifact."); + ability.setBeforePayMana(target); card.addSpellAbility(ability); diff --git a/src/forge/CardFactory_Creatures.java b/src/forge/CardFactory_Creatures.java index bee23f8bbe2..f7359e207f6 100644 --- a/src/forge/CardFactory_Creatures.java +++ b/src/forge/CardFactory_Creatures.java @@ -18,7 +18,7 @@ public class CardFactory_Creatures { public static Card getCard(final Card card, String cardName, String owner, CardFactory cf) { - //*************** START *********** START ************************** + //*************** START *********** START ************************** if(cardName.equals("Filthy Cur")) { final Card newCard = new Card() @@ -4073,7 +4073,6 @@ public class CardFactory_Creatures { ability.setDescription("B R G, Tap: Return target creature card from your graveyard to your hand."); ability.setStackDescription(cardName + " - return target creature from your graveyard to your hand."); - card.clearSpellAbility(); card.addSpellAbility(ability); @@ -7658,7 +7657,7 @@ public class CardFactory_Creatures { else if(cardName.equals("Xira Arien")) { //mana tap ability - final Ability_Tap ability = new Ability_Tap(card, "G R B") + final Ability_Tap ability = new Ability_Tap(card, "B R G") { private static final long serialVersionUID = 5373361883064666451L; @@ -7686,7 +7685,7 @@ public class CardFactory_Creatures { } };//SpellAbility - ability.setDescription("Tap: Target player draws a card."); + ability.setDescription("B R G, Tap: Target player draws a card."); //ability.setBeforePayMana(new Input_NoCost_TapAbility(ability)); ability.setBeforePayMana(CardFactoryUtil.input_targetPlayer(ability)); @@ -15433,8 +15432,86 @@ public class CardFactory_Creatures { } //*************** END ************ END ************************** - - + + + //*************** START *********** START ************************** + else if(cardName.equals("Magus of the Disk")) + { + SpellAbility summoningSpell = new Spell_Permanent(card) + { + private static final long serialVersionUID = 2510163318362956239L; + + public boolean canPlayAI() + { + boolean nevinyrralInPlay = false; + + CardList inPlay = new CardList(); + inPlay.addAll(AllZone.Computer_Play.getCards()); + for(int i=0; i[] classes = {Integer.class, String.class, String.class, String.class}; //values taken from TableModel private static final int[] minWidth = {-1, 190, 85, -1, -1, -1, -1}; diff --git a/src/forge/StateBasedEffects.java b/src/forge/StateBasedEffects.java index 368fe1fd819..b2cc78fb902 100644 --- a/src/forge/StateBasedEffects.java +++ b/src/forge/StateBasedEffects.java @@ -98,6 +98,10 @@ public class StateBasedEffects cardToEffectsList.put("Radiant, Archangel", new String[] {"Radiant_Archangel"}); cardToEffectsList.put("Castle", new String[] {"Castle"}); cardToEffectsList.put("Castle Raptors", new String[] {"Castle_Raptors"}); + cardToEffectsList.put("Levitation", new String[] {"Levitation"}); + cardToEffectsList.put("Knighthood", new String[] {"Knighthood"}); + cardToEffectsList.put("Absolute Law", new String[] {"Absolute_Law"}); + cardToEffectsList.put("Absolute Grace", new String[] {"Absolute_Grace"}); cardToEffectsList.put("Mobilization", new String[] {"Mobilization"}); cardToEffectsList.put("Serra's Blessing", new String[] {"Serras_Blessing"}); cardToEffectsList.put("Cover of Darkness", new String[] {"Cover_of_Darkness"});