diff --git a/forge-ai/src/main/java/forge/ai/ability/PumpAi.java b/forge-ai/src/main/java/forge/ai/ability/PumpAi.java index eee58114d7d..9b3f28a65f1 100644 --- a/forge-ai/src/main/java/forge/ai/ability/PumpAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/PumpAi.java @@ -348,6 +348,9 @@ public class PumpAi extends PumpAiBase { if (stAb.hasParam("AddToughness")) { defense += AbilityUtils.calculateAmount(source, stAb.getParam("AddToughness"), stAb); } + if (stAb.hasParam("AddKeyword")) { + keywords.addAll(Lists.newArrayList(stAb.getParam("AddKeyword").split(" & "))); + } } } } diff --git a/forge-gui/res/cardsfolder/a/ashnods_battle_gear.txt b/forge-gui/res/cardsfolder/a/ashnods_battle_gear.txt index 8d33a90ab60..e65a7f053dd 100644 --- a/forge-gui/res/cardsfolder/a/ashnods_battle_gear.txt +++ b/forge-gui/res/cardsfolder/a/ashnods_battle_gear.txt @@ -2,10 +2,12 @@ Name:Ashnod's Battle Gear ManaCost:2 Types:Artifact K:You may choose not to untap CARDNAME during your untap step. -A:AB$ Pump | Cost$ 2 T | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | RememberTargets$ True | SpellDescription$ Target creature you control gets +2/-2 for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription +A:AB$ Pump | Cost$ 2 T | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | RememberTargets$ True | AILogic$ ContinuousBonus | SpellDescription$ Target creature you control gets +2/-2 for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddPower$ 2 | AddToughness$ -2 T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True +SVar:AIUntapPreference:BetterTgtThanRemembered +#TODO: The AI uses this rather stupidly, killing its own creatures with 1-2 toughness, from hence RemAIDeck still remains. SVar:RemAIDeck:True SVar:Picture:http://www.wizards.com/global/images/magic/general/ashnods_battle_gear.jpg Oracle:You may choose not to untap Ashnod's Battle Gear during your untap step.\n{2}, {T}: Target creature you control gets +2/-2 for as long as Ashnod's Battle Gear remains tapped. diff --git a/forge-gui/res/cardsfolder/e/endoskeleton.txt b/forge-gui/res/cardsfolder/e/endoskeleton.txt index 52b884b2bbe..cbc80d94e1b 100644 --- a/forge-gui/res/cardsfolder/e/endoskeleton.txt +++ b/forge-gui/res/cardsfolder/e/endoskeleton.txt @@ -2,10 +2,10 @@ Name:Endoskeleton ManaCost:2 Types:Artifact K:You may choose not to untap CARDNAME during your untap step. -A:AB$ Pump | Cost$ 2 T | ValidTgts$ Creature | RememberTargets$ True | SpellDescription$ Target creature gets +0/+3 for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription +A:AB$ Pump | Cost$ 2 T | ValidTgts$ Creature | RememberTargets$ True | AILogic$ ContinuousBonus | SpellDescription$ Target creature gets +0/+3 for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddToughness$ 3 T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True -SVar:RemAIDeck:True +SVar:AIUntapPreference:BetterTgtThanRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/endoskeleton.jpg Oracle:You may choose not to untap Endoskeleton during your untap step.\n{2}, {T}: Target creature gets +0/+3 for as long as Endoskeleton remains tapped. diff --git a/forge-gui/res/cardsfolder/e/everglove_courier.txt b/forge-gui/res/cardsfolder/e/everglove_courier.txt index 7395d0c4328..ab6dbd62240 100644 --- a/forge-gui/res/cardsfolder/e/everglove_courier.txt +++ b/forge-gui/res/cardsfolder/e/everglove_courier.txt @@ -3,10 +3,11 @@ ManaCost:2 G Types:Creature Elf PT:2/1 K:You may choose not to untap CARDNAME during your untap step. -A:AB$ Pump | Cost$ 2 G T | ValidTgts$ Creature.Elf | TgtPrompt$ Select target Elf creature | RememberTargets$ True | SpellDescription$ Target Elf creature gets +2/+2 and has trample for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription +A:AB$ Pump | Cost$ 2 G T | ValidTgts$ Creature.Elf | TgtPrompt$ Select target Elf creature | RememberTargets$ True | AILogic$ ContinuousBonus | SpellDescription$ Target Elf creature gets +2/+2 and has trample for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddPower$ 2 | AddToughness$ 2 | AddKeyword$ Trample T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True -SVar:RemAIDeck:True +DeckNeeds:Type$Elf +SVar:AIUntapPreference:BetterTgtThanRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/everglove_courier.jpg Oracle:You may choose not to untap Everglove Courier during your untap step.\n{2}{G}, {T}: Target Elf creature gets +2/+2 and has trample for as long as Everglove Courier remains tapped. diff --git a/forge-gui/res/cardsfolder/f/flamestick_courier.txt b/forge-gui/res/cardsfolder/f/flamestick_courier.txt index 75b93135115..710431e0883 100644 --- a/forge-gui/res/cardsfolder/f/flamestick_courier.txt +++ b/forge-gui/res/cardsfolder/f/flamestick_courier.txt @@ -3,11 +3,11 @@ ManaCost:2 R Types:Creature Goblin PT:2/1 K:You may choose not to untap CARDNAME during your untap step. -A:AB$ Pump | Cost$ 2 R T | ValidTgts$ Creature.Goblin | TgtPrompt$ Select target Goblin creature | RememberTargets$ True | SpellDescription$ Target Goblin creature gets +2/+2 and has haste for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription +A:AB$ Pump | Cost$ 2 R T | ValidTgts$ Creature.Goblin | TgtPrompt$ Select target Goblin creature | RememberTargets$ True | AILogic$ ContinuousBonus | SpellDescription$ Target Goblin creature gets +2/+2 and has haste for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddPower$ 2 | AddToughness$ 2 | AddKeyword$ Haste T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True -SVar:RemRandomDeck:True -SVar:RemAIDeck:True +DeckNeeds:Type$Goblin +SVar:AIUntapPreference:BetterTgtThanRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/flamestick_courier.jpg Oracle:You may choose not to untap Flamestick Courier during your untap step.\n{2}{R}, {T}: Target Goblin creature gets +2/+2 and has haste for as long as Flamestick Courier remains tapped. diff --git a/forge-gui/res/cardsfolder/f/flowstone_armor.txt b/forge-gui/res/cardsfolder/f/flowstone_armor.txt index 58064804474..3bccb5a6d4a 100644 --- a/forge-gui/res/cardsfolder/f/flowstone_armor.txt +++ b/forge-gui/res/cardsfolder/f/flowstone_armor.txt @@ -2,10 +2,12 @@ Name:Flowstone Armor ManaCost:3 Types:Artifact K:You may choose not to untap CARDNAME during your untap step. -A:AB$ Pump | Cost$ 3 T | ValidTgts$ Creature | TgtPrompt$ Select target creature | RememberTargets$ True | SpellDescription$ Target creature gets +1/-1 for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription +A:AB$ Pump | Cost$ 3 T | ValidTgts$ Creature | TgtPrompt$ Select target creature | RememberTargets$ True | AILogic$ ContinuousBonus | SpellDescription$ Target creature gets +1/-1 for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddPower$ 1 | AddToughness$ -1 T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True +SVar:AIUntapPreference:BetterTgtThanRemembered +#TODO: The AI uses this rather stupidly, killing its own creatures with 1 toughness, from hence RemAIDeck still remains. SVar:RemAIDeck:True SVar:Picture:http://www.wizards.com/global/images/magic/general/flowstone_armor.jpg Oracle:You may choose not to untap Flowstone Armor during your untap step.\n{3}, {T}: Target creature gets +1/-1 for as long as Flowstone Armor remains tapped. diff --git a/forge-gui/res/cardsfolder/f/frightshroud_courier.txt b/forge-gui/res/cardsfolder/f/frightshroud_courier.txt index 0374bbbabd9..01a23672ceb 100644 --- a/forge-gui/res/cardsfolder/f/frightshroud_courier.txt +++ b/forge-gui/res/cardsfolder/f/frightshroud_courier.txt @@ -3,10 +3,11 @@ ManaCost:2 B Types:Creature Zombie PT:2/1 K:You may choose not to untap CARDNAME during your untap step. -A:AB$ Pump | Cost$ 2 B T | ValidTgts$ Creature.Zombie | TgtPrompt$ Select target Zombie creature | RememberTargets$ True | SpellDescription$ Target Zombie creature gets +2/+2 and has fear for as long as CARDNAME remains tapped. (It can't be blocked except by artifact creatures and/or black creatures.) | StackDescription$ SpellDescription +A:AB$ Pump | Cost$ 2 B T | ValidTgts$ Creature.Zombie | TgtPrompt$ Select target Zombie creature | RememberTargets$ True | AILogic$ ContinuousBonus | SpellDescription$ Target Zombie creature gets +2/+2 and has fear for as long as CARDNAME remains tapped. (It can't be blocked except by artifact creatures and/or black creatures.) | StackDescription$ SpellDescription S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddPower$ 2 | AddToughness$ 2 | AddKeyword$ Fear T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True -SVar:RemAIDeck:True +DeckNeeds:Type$Zombie +SVar:AIUntapPreference:BetterTgtThanRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/frightshroud_courier.jpg Oracle:You may choose not to untap Frightshroud Courier during your untap step.\n{2}{B}, {T}: Target Zombie creature gets +2/+2 and has fear for as long as Frightshroud Courier remains tapped. (It can't be blocked except by artifact creatures and/or black creatures.) diff --git a/forge-gui/res/cardsfolder/g/ghosthelm_courier.txt b/forge-gui/res/cardsfolder/g/ghosthelm_courier.txt index a92c031828e..d6a927cc83b 100644 --- a/forge-gui/res/cardsfolder/g/ghosthelm_courier.txt +++ b/forge-gui/res/cardsfolder/g/ghosthelm_courier.txt @@ -3,11 +3,11 @@ ManaCost:2 U Types:Creature Human Wizard PT:2/1 K:You may choose not to untap CARDNAME during your untap step. -A:AB$ Pump | Cost$ 2 U T | ValidTgts$ Creature.Wizard | TgtPrompt$ Select target Wizard creature | RememberTargets$ True | SpellDescription$ Target Wizard creature gets +2/+2 and has shroud for as long as CARDNAME remains tapped. (It can't be the target of spells or abilities.) | StackDescription$ SpellDescription +A:AB$ Pump | Cost$ 2 U T | ValidTgts$ Creature.Wizard | TgtPrompt$ Select target Wizard creature | RememberTargets$ True | AILogic$ ContinuousBonus | SpellDescription$ Target Wizard creature gets +2/+2 and has shroud for as long as CARDNAME remains tapped. (It can't be the target of spells or abilities.) | StackDescription$ SpellDescription S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddPower$ 2 | AddToughness$ 2 | AddKeyword$ Shroud T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True -SVar:RemAIDeck:True -SVar:RemRandomDeck:True +DeckNeeds:Type$Wizard +SVar:AIUntapPreference:BetterTgtThanRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/ghosthelm_courier.jpg Oracle:You may choose not to untap Ghosthelm Courier during your untap step.\n{2}{U}, {T}: Target Wizard creature gets +2/+2 and has shroud for as long as Ghosthelm Courier remains tapped. (It can't be the target of spells or abilities.) diff --git a/forge-gui/res/cardsfolder/p/pearlspear_courier.txt b/forge-gui/res/cardsfolder/p/pearlspear_courier.txt index a02e34ea84c..d5a19b29e86 100644 --- a/forge-gui/res/cardsfolder/p/pearlspear_courier.txt +++ b/forge-gui/res/cardsfolder/p/pearlspear_courier.txt @@ -3,11 +3,11 @@ ManaCost:2 W Types:Creature Human Soldier PT:2/1 K:You may choose not to untap CARDNAME during your untap step. -A:AB$ Pump | Cost$ 2 W T | ValidTgts$ Creature.Soldier | TgtPrompt$ Select target Soldier creature | RememberTargets$ True | SpellDescription$ Target Soldier creature gets +2/+2 and has vigilance for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription +A:AB$ Pump | Cost$ 2 W T | ValidTgts$ Creature.Soldier | TgtPrompt$ Select target Soldier creature | RememberTargets$ True | AILogic$ ContinuousBonus | SpellDescription$ Target Soldier creature gets +2/+2 and has vigilance for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddPower$ 2 | AddToughness$ 2 | AddKeyword$ Vigilance T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True -SVar:RemAIDeck:True -SVar:RemRandomDeck:True +DeckNeeds:Type$Soldier +SVar:AIUntapPreference:BetterTgtThanRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/pearlspear_courier.jpg Oracle:You may choose not to untap Pearlspear Courier during your untap step.\n{2}{W}, {T}: Target Soldier creature gets +2/+2 and has vigilance for as long as Pearlspear Courier remains tapped. diff --git a/forge-gui/res/cardsfolder/s/spirit_shield.txt b/forge-gui/res/cardsfolder/s/spirit_shield.txt index 41a47b48c97..ed891fa4d57 100644 --- a/forge-gui/res/cardsfolder/s/spirit_shield.txt +++ b/forge-gui/res/cardsfolder/s/spirit_shield.txt @@ -2,10 +2,10 @@ Name:Spirit Shield ManaCost:3 Types:Artifact K:You may choose not to untap CARDNAME during your untap step. -A:AB$ Pump | Cost$ 2 T | ValidTgts$ Creature | TgtPrompt$ Select target creature | RememberTargets$ True | SpellDescription$ Target creature gets +0/+2 for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription +A:AB$ Pump | Cost$ 2 T | ValidTgts$ Creature | TgtPrompt$ Select target creature | RememberTargets$ True | AILogic$ ContinuousBonus | SpellDescription$ Target creature gets +0/+2 for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddToughness$ 2 T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True -SVar:RemAIDeck:True +SVar:AIUntapPreference:BetterTgtThanRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/spirit_shield.jpg Oracle:You may choose not to untap Spirit Shield during your untap step.\n{2}, {T}: Target creature gets +0/+2 for as long as Spirit Shield remains tapped. diff --git a/forge-gui/res/cardsfolder/z/zelyon_sword.txt b/forge-gui/res/cardsfolder/z/zelyon_sword.txt index 2b54f7ad4fa..668be1b1675 100644 --- a/forge-gui/res/cardsfolder/z/zelyon_sword.txt +++ b/forge-gui/res/cardsfolder/z/zelyon_sword.txt @@ -2,10 +2,10 @@ Name:Zelyon Sword ManaCost:3 Types:Artifact K:You may choose not to untap CARDNAME during your untap step. -A:AB$ Pump | Cost$ 3 T | ValidTgts$ Creature | TgtPrompt$ Select target creature | RememberTargets$ True | SpellDescription$ Target creature gets +2/+0 for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription +A:AB$ Pump | Cost$ 3 T | ValidTgts$ Creature | TgtPrompt$ Select target creature | RememberTargets$ True | AILogic$ ContinuousBonus | SpellDescription$ Target creature gets +2/+0 for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddPower$ 2 T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True -SVar:RemAIDeck:True +SVar:AIUntapPreference:BetterTgtThanRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/zelyon_sword.jpg Oracle:You may choose not to untap Zelyon Sword during your untap step.\n{3}, {T}: Target creature gets +2/+0 for as long as Zelyon Sword remains tapped.