diff --git a/.gitattributes b/.gitattributes index fb63c695ee0..a86ea73e89c 100644 --- a/.gitattributes +++ b/.gitattributes @@ -39,6 +39,7 @@ res/cardsfolder/accelerated_mutation.txt -text svneol=native#text/plain res/cardsfolder/acceptable_losses.txt -text svneol=native#text/plain res/cardsfolder/accorders_shield.txt -text svneol=native#text/plain res/cardsfolder/accumulated_knowledge.txt -text svneol=native#text/plain +res/cardsfolder/accursed_centaur.txt -text svneol=native#text/plain res/cardsfolder/acid_rain.txt -text svneol=native#text/plain res/cardsfolder/acid_web_spider.txt -text svneol=native#text/plain res/cardsfolder/acidic_slime.txt -text svneol=native#text/plain @@ -940,6 +941,7 @@ res/cardsfolder/colossal_might.txt -text svneol=native#text/plain res/cardsfolder/combust.txt -text svneol=native#text/plain res/cardsfolder/command_of_unsummoning.txt -text svneol=native#text/plain res/cardsfolder/commander_eesha.txt -text svneol=native#text/plain +res/cardsfolder/commander_greven_il_vec.txt -text svneol=native#text/plain res/cardsfolder/commune_with_nature.txt -text svneol=native#text/plain res/cardsfolder/composite_golem.txt -text svneol=native#text/plain res/cardsfolder/compulsion.txt -text svneol=native#text/plain @@ -2720,6 +2722,7 @@ res/cardsfolder/kitsune_dawnblade.txt -text svneol=native#text/plain res/cardsfolder/kitsune_diviner.txt -text svneol=native#text/plain res/cardsfolder/kitsune_loreweaver.txt -text svneol=native#text/plain res/cardsfolder/kitsune_riftwalker.txt -text svneol=native#text/plain +res/cardsfolder/kjeldoran_dead.txt -text svneol=native#text/plain res/cardsfolder/kjeldoran_gargoyle.txt -text svneol=native#text/plain res/cardsfolder/kjeldoran_javelineer.txt -text svneol=native#text/plain res/cardsfolder/kjeldoran_outpost.txt -text svneol=native#text/plain @@ -4667,6 +4670,7 @@ res/cardsfolder/spinal_villain.txt -text svneol=native#text/plain res/cardsfolder/spincrusher.txt -text svneol=native#text/plain res/cardsfolder/spindrift_drake.txt -text svneol=native#text/plain res/cardsfolder/spined_basher.txt -text svneol=native#text/plain +res/cardsfolder/spined_fluke.txt -text svneol=native#text/plain res/cardsfolder/spined_sliver.txt -text svneol=native#text/plain res/cardsfolder/spined_wurm.txt -text svneol=native#text/plain res/cardsfolder/spineless_thug.txt -text svneol=native#text/plain @@ -5450,6 +5454,7 @@ res/cardsfolder/vigilant_drake.txt -text svneol=native#text/plain res/cardsfolder/village_elder.txt -text svneol=native#text/plain res/cardsfolder/villainous_ogre.txt -text svneol=native#text/plain res/cardsfolder/vindicate.txt -text svneol=native#text/plain +res/cardsfolder/vindictive_mob.txt -text svneol=native#text/plain res/cardsfolder/vine_trellis.txt -text svneol=native#text/plain res/cardsfolder/vinelasher_kudzu.txt -text svneol=native#text/plain res/cardsfolder/vintara_snapper.txt -text svneol=native#text/plain diff --git a/res/cardsfolder/accursed_centaur.txt b/res/cardsfolder/accursed_centaur.txt new file mode 100644 index 00000000000..c71286c6e97 --- /dev/null +++ b/res/cardsfolder/accursed_centaur.txt @@ -0,0 +1,8 @@ +Name:Accursed Centaur +ManaCost:B +Types:Creature Zombie Centaur +Text:When CARDNAME enters the battlefield, sacrifice a creature. +PT:2/2 +SVar:Rarity:Common +SVar:Picture:http://www.wizards.com/global/images/magic/general/accursed_centaur.jpg +End \ No newline at end of file diff --git a/res/cardsfolder/commander_greven_il_vec.txt b/res/cardsfolder/commander_greven_il_vec.txt new file mode 100644 index 00000000000..7fadc169c65 --- /dev/null +++ b/res/cardsfolder/commander_greven_il_vec.txt @@ -0,0 +1,9 @@ +Name:Commander Greven il-Vec +ManaCost:3 B B B +Types:Legendary Creature Human Warrior +Text:When CARDNAME enters the battlefield, sacrifice a creature. +PT:7/5 +K:Fear +SVar:Rarity:Rare +SVar:Picture:http://www.wizards.com/global/images/magic/general/commander_greven_il_vec.jpg +End \ No newline at end of file diff --git a/res/cardsfolder/kjeldoran_dead.txt b/res/cardsfolder/kjeldoran_dead.txt new file mode 100644 index 00000000000..4da8a4e4797 --- /dev/null +++ b/res/cardsfolder/kjeldoran_dead.txt @@ -0,0 +1,9 @@ +Name:Kjeldoran Dead +ManaCost:B +Types:Creature Skeleton +Text:When CARDNAME enters the battlefield, sacrifice a creature. +PT:3/1 +A:AB$Regenerate|Cost$B|SpellDescription$Regenerate CARDNAME. +SVar:Rarity:Common +SVar:Picture:http://www.wizards.com/global/images/magic/general/kjeldoran_dead.jpg +End \ No newline at end of file diff --git a/res/cardsfolder/spined_fluke.txt b/res/cardsfolder/spined_fluke.txt new file mode 100644 index 00000000000..29f1313a84d --- /dev/null +++ b/res/cardsfolder/spined_fluke.txt @@ -0,0 +1,9 @@ +Name:Spined Fluke +ManaCost:2 B +Types:Creature Worm Horror +Text:When CARDNAME enters the battlefield, sacrifice a creature. +PT:5/1 +A:AB$Regenerate|Cost$B|SpellDescription$Regenerate CARDNAME. +SVar:Rarity:Uncommon +SVar:Picture:http://www.wizards.com/global/images/magic/general/spined_fluke.jpg +End \ No newline at end of file diff --git a/res/cardsfolder/vindictive_mob.txt b/res/cardsfolder/vindictive_mob.txt new file mode 100644 index 00000000000..6f45d10a8e4 --- /dev/null +++ b/res/cardsfolder/vindictive_mob.txt @@ -0,0 +1,9 @@ +Name:Vindictive Mob +ManaCost:4 B B +Types:Creature Human Berserker +Text:When CARDNAME enters the battlefield, sacrifice a creature. +PT:5/5 +K:CARDNAME can't be blocked by Saprolings. +SVar:Rarity:Uncommon +SVar:Picture:http://www.wizards.com/global/images/magic/general/vindictive_mob.jpg +End \ No newline at end of file diff --git a/src/forge/CardFactory_Creatures.java b/src/forge/CardFactory_Creatures.java index a198b7f6c2b..f9392d597c0 100644 --- a/src/forge/CardFactory_Creatures.java +++ b/src/forge/CardFactory_Creatures.java @@ -13428,6 +13428,53 @@ public class CardFactory_Creatures { card.addSpellAbility(discard); }//*************** END ************ END ************************** + + + //*************** START *********** START ************************** + else if(cardName.equals("Accursed Centaur") || cardName.equals("Commander Greven il-Vec") || + cardName.equals("Kjeldoran Dead") || cardName.equals("Spined Fluke") || + cardName.equals("Vindictive Mob")) { + + final Command comesIntoPlay = new Command() { + private static final long serialVersionUID = -6986957647765851979L; + final Player player = card.getController(); + public void execute() { + CardList type = AllZoneUtil.getCreaturesInPlay(player); + + if( player.isComputer()) { + if( type.size() > 0 ) { + Card sac = CardFactoryUtil.AI_getWorstCreature(type); + AllZone.GameAction.sacrifice(sac); + } + else { + AllZone.GameAction.sacrifice(card); + } + } + else { //this is the human resolution + Input target = new Input() { + private static final long serialVersionUID = 2795318747338985959L; + public void showMessage() { + AllZone.Display.showMessage(cardName+" - Select a creature to sacrifice"); + ButtonUtil.enableOnlyCancel(); + } + public void selectButtonCancel() { + AllZone.GameAction.sacrifice(card); + stop(); + } + public void selectCard(Card c, PlayerZone zone) { + if(zone.is(Constant.Zone.Battlefield, card.getController()) && c.isCreature()) { + AllZone.GameAction.sacrifice(c); + stop(); + } + }//selectCard() + };//Input + AllZone.InputControl.setInput(target); + } + } + }; + + card.addComesIntoPlayCommand(comesIntoPlay); + }//*************** END ************ END ************************** if(hasKeyword(card, "Level up") != -1 && hasKeyword(card, "maxLevel") != -1) diff --git a/src/forge/CombatUtil.java b/src/forge/CombatUtil.java index 9e29944b198..aafd697647e 100644 --- a/src/forge/CombatUtil.java +++ b/src/forge/CombatUtil.java @@ -285,6 +285,10 @@ public class CombatUtil { return false; } + if(attacker.getKeyword().contains("CARDNAME can't be blocked by Saprolings.")) { + if(blocker.isType("Saproling")) return false; + } + if(attacker.getKeyword().contains("Intimidate")) { if(!blocker.getType().contains("Artifact") && !attacker.sharesColorWith(blocker)) return false; }