diff --git a/.gitattributes b/.gitattributes index 39f3dc1903a..7a8873a7f90 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1012,6 +1012,7 @@ res/cardsfolder/death_ward.txt -text svneol=native#text/plain res/cardsfolder/deathbringer_thoctar.txt -text svneol=native#text/plain res/cardsfolder/deathgazer.txt -text svneol=native#text/plain res/cardsfolder/deathgreeter.txt -text svneol=native#text/plain +res/cardsfolder/deathgrip.txt -text svneol=native#text/plain res/cardsfolder/deathknell_kami.txt -text svneol=native#text/plain res/cardsfolder/deathless_angel.txt -text svneol=native#text/plain res/cardsfolder/deathmark.txt -text svneol=native#text/plain @@ -2473,6 +2474,7 @@ res/cardsfolder/lieutenant_kirtar.txt -text svneol=native#text/plain res/cardsfolder/life_burst.txt -text svneol=native#text/plain res/cardsfolder/life_from_the_loam.txt -text svneol=native#text/plain res/cardsfolder/lifeblood.txt -text svneol=native#text/plain +res/cardsfolder/lifeforce.txt -text svneol=native#text/plain res/cardsfolder/lifegift.txt -text svneol=native#text/plain res/cardsfolder/lifelink.txt -text svneol=native#text/plain res/cardsfolder/lifesmith.txt -text svneol=native#text/plain diff --git a/res/cardsfolder/deathgrip.txt b/res/cardsfolder/deathgrip.txt new file mode 100644 index 00000000000..9bfda79a9ab --- /dev/null +++ b/res/cardsfolder/deathgrip.txt @@ -0,0 +1,7 @@ +Name:Deathgrip +ManaCost:B B +Types:Enchantment +Text:B B: Counter target green spell. +SVar:Rarity:Uncommon +SVar:Picture:http://www.wizards.com/global/images/magic/general/deathgrip.jpg +End diff --git a/res/cardsfolder/lifeforce.txt b/res/cardsfolder/lifeforce.txt new file mode 100644 index 00000000000..be838d88470 --- /dev/null +++ b/res/cardsfolder/lifeforce.txt @@ -0,0 +1,7 @@ +Name:Lifeforce +ManaCost:G G +Types:Enchantment +Text:G G: Counter target black spell. +SVar:Rarity:Uncommon +SVar:Picture:http://www.wizards.com/global/images/magic/general/lifeforce.jpg +End diff --git a/src/forge/CardFactory.java b/src/forge/CardFactory.java index de075d4400f..feb3c06d161 100644 --- a/src/forge/CardFactory.java +++ b/src/forge/CardFactory.java @@ -11860,6 +11860,80 @@ public class CardFactory implements NewConstants { ability.setChooseTargetAI(CardFactoryUtil.AI_targetHuman()); ability.setBeforePayMana(CardFactoryUtil.input_targetPlayer(ability)); }//*************** END ************ END ************************** + + //*************** START *********** START ************************** + else if(cardName.equals("Lifeforce")) { + final SpellAbility counter = new Ability(card, "G G") { + + @Override + public boolean canPlayAI() { + System.out.println("AI is pondering using "+cardName); + return canPlay(); + } + + @Override + public boolean canPlay() { + if(AllZone.Stack.size() == 0){ + return false; + } + else { + SpellAbility sa = AllZone.Stack.peek(); + if(sa.isAbility()) return false; + Card tgtCard = sa.getSourceCard(); + if(tgtCard.isBlack()) return true; + } + return false; + } + + @Override + public void resolve() { + System.out.println("Resolving " + card.getName()); + SpellAbility sa = AllZone.Stack.pop(); + AllZone.GameAction.moveToGraveyard(sa.getSourceCard()); + } + + };//Ability + counter.setStackDescription(cardName+" - counter target black spell."); + card.addSpellAbility(counter); + }//*************** END ************ END ************************** + + //*************** START *********** START ************************** + else if(cardName.equals("Deathgrip")) { + final SpellAbility counter = new Ability(card, "B B") { + + @Override + public boolean canPlayAI() { + System.out.println("AI is pondering using "+cardName); + return canPlay(); + } + + @Override + public boolean canPlay() { + if(AllZone.Stack.size() == 0){ + return false; + } + else { + SpellAbility sa = AllZone.Stack.peek(); + if(sa.isAbility()) return false; + Card tgtCard = sa.getSourceCard(); + if(tgtCard.isGreen()) return true; + } + return false; + } + + @Override + public void resolve() { + System.out.println("Resolving " + card.getName()); + SpellAbility sa = AllZone.Stack.pop(); + AllZone.GameAction.moveToGraveyard(sa.getSourceCard()); + } + + };//Ability + counter.setStackDescription(cardName+" - counter target green spell."); + card.addSpellAbility(counter); + }//*************** END ************ END ************************** + + return postFactoryKeywords(card); }//getCard2