From b5a2b2c21af7ec8a3da92db6d23a215eda56042c Mon Sep 17 00:00:00 2001 From: jendave Date: Sat, 6 Aug 2011 20:41:33 +0000 Subject: [PATCH] convert Goblin Piledriver, Knotvine Paladin, and Timbermaw Larva to triggers --- res/cardsfolder/goblin_piledriver.txt | 3 + res/cardsfolder/knotvine_paladin.txt | 5 +- res/cardsfolder/timbermaw_larva.txt | 5 +- src/forge/CombatUtil.java | 167 -------------------------- 4 files changed, 11 insertions(+), 169 deletions(-) diff --git a/res/cardsfolder/goblin_piledriver.txt b/res/cardsfolder/goblin_piledriver.txt index 46e5be25016..254d38b7edb 100644 --- a/res/cardsfolder/goblin_piledriver.txt +++ b/res/cardsfolder/goblin_piledriver.txt @@ -4,6 +4,9 @@ Types:Creature Goblin Warrior Text:Whenever Goblin Piledriver attacks, it gets +2/+0 until end of turn for each other attacking Goblin. PT:1/2 K:Protection from blue +T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, it gets +2/+0 until end of turn for each other attacking Goblin. +SVar:TrigPump:AB$Pump | Cost$ 0 | Defined$ Self | NumAtt$ X +SVar:X:Count$Valid Goblin.attacking+Other/Times.2 SVar:Rarity:Rare SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_piledriver.jpg SetInfo:ONS|Rare|http://magiccards.info/scans/en/on/205.jpg diff --git a/res/cardsfolder/knotvine_paladin.txt b/res/cardsfolder/knotvine_paladin.txt index ef3c92d20e0..1a5c23b8d02 100644 --- a/res/cardsfolder/knotvine_paladin.txt +++ b/res/cardsfolder/knotvine_paladin.txt @@ -1,8 +1,11 @@ Name:Knotvine Paladin ManaCost:G W Types:Creature Human Knight -Text:Whenever Knotvine Paladin attacks, it gets +1/+1 until end of turn for each untapped creature you control. +Text:no text PT:2/2 +T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, it gets +1/+1 until end of turn for each untapped creature you control. +SVar:TrigPump:AB$Pump | Cost$ 0 | Defined$ Self | NumAtt$ X | NumDef$ X +SVar:X:Count$Valid Creature.untapped+YouCtrl SVar:Rarity:Rare SVar:Picture:http://www.wizards.com/global/images/magic/general/knotvine_paladin.jpg SetInfo:ARB|Rare|http://magiccards.info/scans/en/arb/71.jpg diff --git a/res/cardsfolder/timbermaw_larva.txt b/res/cardsfolder/timbermaw_larva.txt index 76d614935af..f20cbe41171 100644 --- a/res/cardsfolder/timbermaw_larva.txt +++ b/res/cardsfolder/timbermaw_larva.txt @@ -1,8 +1,11 @@ Name:Timbermaw Larva ManaCost:3 G Types:Creature Beast -Text:Whenever Timbermaw Larva attacks, it gets +1/+1 until end of turn for each Forest you control. +Text:no text PT:2/2 +T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME attacks, it gets +1/+1 until end of turn for each Forest you control. +SVar:TrigPump:AB$Pump | Cost$ 0 | Defined$ Self | NumAtt$ X | NumDef$ X +SVar:X:Count$Valid Forest.YouCtrl SVar:Rarity:Common SVar:Picture:http://www.wizards.com/global/images/magic/general/timbermaw_larva.jpg SetInfo:ZEN|Common|http://magiccards.info/scans/en/zen/189.jpg diff --git a/src/forge/CombatUtil.java b/src/forge/CombatUtil.java index ee0a0a22b37..367fa2011ae 100644 --- a/src/forge/CombatUtil.java +++ b/src/forge/CombatUtil.java @@ -1389,173 +1389,6 @@ public class CombatUtil { } //if (creatures.size() > 0) }//Yore-Tiller Nephilim - else if(c.getName().equals("Timbermaw Larva") && !c.getCreatureAttackedThisCombat()) { - final Card charger = c; - Ability ability2 = new Ability(c, "0") { - @Override - public void resolve() { - final Player player = charger.getController(); - PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, player); - CardList list = new CardList(); - list.addAll(play.getCards()); - list = list.filter(new CardListFilter() { - public boolean addCard(Card card) { - return (card.getType().contains("Forest")); - } - }); - final int x = list.size(); - - final Command untilEOT = new Command() { - private static final long serialVersionUID = -1703473800920781454L; - - public void execute() { - if(AllZone.GameAction.isCardInPlay(charger)) { - charger.addTempAttackBoost(-1 * x); - charger.addTempDefenseBoost(-1 * x); - } - } - };//Command - - - if(AllZone.GameAction.isCardInPlay(charger)) { - charger.addTempAttackBoost(x); - charger.addTempDefenseBoost(x); - - AllZone.EndOfTurn.addUntil(untilEOT); - } - }//resolve - - };//ability - - StringBuilder sb = new StringBuilder(); - sb.append(c.getName()); - sb.append(" - +1/+1 until end of turn for each Forest "); - sb.append(charger.getController()); - sb.append(" controls."); - ability2.setStackDescription(sb.toString()); - - AllZone.Stack.add(ability2); - - }//Timbermaw Larva - - - else if(c.getName().equals("Knotvine Paladin") && !c.getCreatureAttackedThisCombat()) { - final Card charger = c; - Ability ability2 = new Ability(c, "0") { - @Override - public void resolve() { - CardList list = AllZoneUtil.getCreaturesInPlay(charger.getController()); - list = list.filter(AllZoneUtil.untapped); - final int k = list.size(); - - final Command untilEOT = new Command() { - private static final long serialVersionUID = -1703473800920781454L; - - public void execute() { - if(AllZone.GameAction.isCardInPlay(charger)) { - charger.addTempAttackBoost(-1 * k); - charger.addTempDefenseBoost(-1 * k); - } - } - };//Command - - if(AllZone.GameAction.isCardInPlay(charger)) { - charger.addTempAttackBoost(k); - charger.addTempDefenseBoost(k); - - AllZone.EndOfTurn.addUntil(untilEOT); - } - }//resolve - - };//ability - - StringBuilder sb2 = new StringBuilder(); - sb2.append(c.getName()).append(" - gets +1/+1 until end of turn for each untapped creature "); - sb2.append(c.getController()).append(" controls."); - ability2.setStackDescription(sb2.toString()); - - AllZone.Stack.add(ability2); - - }//Knotvine Paladin - - - else if(c.getName().equals("Goblin Piledriver") && !c.getCreatureAttackedThisCombat()) { - final Card piledriver = c; - Ability ability2 = new Ability(c, "0") { - @Override - public void resolve() { - CardList list = new CardList(); - list.addAll(AllZone.Combat.getAttackers()); - list = list.getType("Goblin"); - list.remove(piledriver); - - final int otherGoblins = list.size(); - - final Command untilEOT = new Command() { - private static final long serialVersionUID = -4154121199693045635L; - - public void execute() { - if(AllZone.GameAction.isCardInPlay(piledriver)) { - piledriver.addTempAttackBoost(-2 * otherGoblins); - } - } - };//Command - - if(AllZone.GameAction.isCardInPlay(piledriver)) { - piledriver.addTempAttackBoost(2 * otherGoblins); - AllZone.EndOfTurn.addUntil(untilEOT); - } - }//resolve - };//ability - - StringBuilder sb2 = new StringBuilder(); - sb2.append(c.getName()).append(" - gets +2/+0 until end of turn for each other attacking Goblin."); - ability2.setStackDescription(sb2.toString()); - - AllZone.Stack.add(ability2); - - }//Goblin Piledriver - - /* - else if((c.getName().equals("Charging Bandits") || c.getName().equals("Wei Ambush Force") - || c.getName().equals("Ravenous Skirge") || c.getName().equals("Vicious Kavu") - || c.getName().equals("Lurking Nightstalker") || c.getName().equals("Hollow Dogs")) - && !c.getCreatureAttackedThisCombat()) { - final Card charger = c; - Ability ability2 = new Ability(c, "0") { - @Override - public void resolve() { - - final Command untilEOT = new Command() { - private static final long serialVersionUID = -1703473800920781454L; - - public void execute() { - if(AllZone.GameAction.isCardInPlay(charger)) { - charger.addTempAttackBoost(-2); - charger.addTempDefenseBoost(0); - } - } - };//Command - - - if(AllZone.GameAction.isCardInPlay(charger)) { - charger.addTempAttackBoost(2); - charger.addTempDefenseBoost(0); - - AllZone.EndOfTurn.addUntil(untilEOT); - } - }//resolve - - };//ability - - StringBuilder sb2 = new StringBuilder(); - sb2.append(c.getName()).append(" - gets +2/+0 until EOT."); - ability2.setStackDescription(sb2.toString()); - - AllZone.Stack.add(ability2); - - }//+2+0 Chargers */ - else if(c.getName().equals("Spectral Bears")) { Player opp = c.getController().getOpponent(); PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, opp);