From b16d68f4df5cc4975a5df24dae1b9af8fb98922a Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Fri, 30 Sep 2011 08:15:35 +0000 Subject: [PATCH] "Mines of Khazad-Dum" --- .../effects/ChooseAndHealCharacterEffect.java | 4 +- .../lotro/cards/set1/elven/Card1_034.java | 2 +- .../lotro/cards/set1/elven/Card1_059.java | 4 +- .../lotro/cards/set1/gondor/Card1_094.java | 2 +- .../lotro/cards/set1/gondor/Card1_365.java | 2 +- .../lotro/cards/set1/isengard/Card1_144.java | 2 +- .../lotro/cards/set1/isengard/Card1_152.java | 2 +- .../lotro/cards/set1/shire/Card1_288.java | 2 +- .../lotro/cards/set1/shire/Card1_289.java | 2 +- .../lotro/cards/set1/shire/Card1_291.java | 2 +- .../lotro/cards/set1/shire/Card1_297.java | 2 +- .../lotro/cards/set1/shire/Card1_307.java | 2 +- .../lotro/cards/set1/shire/Card1_315.java | 2 +- .../lotro/cards/set1/site/Card1_343.java | 2 +- .../lotro/cards/set1/site/Card1_358.java | 2 +- .../lotro/cards/set1/wraith/Card1_220.java | 2 +- .../lotro/cards/set2/moria/Card2_063.java | 2 +- .../lotro/cards/set3/dwarven/Card3_003.java | 40 +++++++++++++++++++ 18 files changed, 59 insertions(+), 19 deletions(-) create mode 100644 gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/dwarven/Card3_003.java diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/effects/ChooseAndHealCharacterEffect.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/effects/ChooseAndHealCharacterEffect.java index 0452ca3d9..03b83b9bb 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/effects/ChooseAndHealCharacterEffect.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/effects/ChooseAndHealCharacterEffect.java @@ -14,8 +14,8 @@ public class ChooseAndHealCharacterEffect extends ChooseActiveCardEffect { private CostToEffectAction _action; private String _playerId; - public ChooseAndHealCharacterEffect(CostToEffectAction action, String playerId, String choiceText, Filter... filters) { - super(playerId, choiceText, Filters.and( + public ChooseAndHealCharacterEffect(CostToEffectAction action, String playerId, Filter... filters) { + super(playerId, "Choose character to heal", Filters.and( filters, new Filter() { @Override public boolean accepts(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard) { diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_034.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_034.java index 738e83b8d..1dbca988c 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_034.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_034.java @@ -35,7 +35,7 @@ public class Card1_034 extends AbstractAlly { && PlayConditions.canExert(self, game.getGameState(), game.getModifiersQuerying(), self)) { final ActivateCardAction action = new ActivateCardAction(self, Keyword.FELLOWSHIP); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose an ELVEN ally", Filters.culture(Culture.ELVEN), Filters.type(CardType.ALLY))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.culture(Culture.ELVEN), Filters.type(CardType.ALLY))); return Collections.singletonList(action); } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_059.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_059.java index 142b2a514..8e5f0f41c 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_059.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/elven/Card1_059.java @@ -56,7 +56,7 @@ public class Card1_059 extends AbstractPermanent { super.cardsSelected(dwarf, success); if (success) { action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose an Elf", Filters.race(Race.ELF))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.race(Race.ELF))); } } }); @@ -73,7 +73,7 @@ public class Card1_059 extends AbstractPermanent { super.cardsSelected(elf, success); if (success) { action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose a Dwarf", Filters.race(Race.DWARF))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.race(Race.DWARF))); } } }); diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_094.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_094.java index 59afcf9c5..04da67004 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_094.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_094.java @@ -49,7 +49,7 @@ public class Card1_094 extends AbstractAttachableFPPossession { List possibleEffects = new LinkedList(); possibleEffects.add( - new ChooseAndHealCharacterEffect(action, playerId, "Choose companion", Filters.type(CardType.COMPANION)) { + new ChooseAndHealCharacterEffect(action, playerId, Filters.type(CardType.COMPANION)) { @Override public String getText(LotroGame game) { return "Heal a companion"; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_365.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_365.java index aedcf912d..bf8376cc2 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_365.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/gondor/Card1_365.java @@ -35,7 +35,7 @@ public class Card1_365 extends AbstractCompanion { if (effectResult.getType() == EffectResult.Type.START_OF_TURN) { final OptionalTriggerAction action = new OptionalTriggerAction(self); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose companion", Filters.type(CardType.COMPANION), Filters.signet(Signet.ARAGORN), Filters.not(Filters.sameCard(self)))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.type(CardType.COMPANION), Filters.signet(Signet.ARAGORN), Filters.not(Filters.sameCard(self)))); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_144.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_144.java index 344c8e5b9..c81491063 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_144.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_144.java @@ -37,7 +37,7 @@ public class Card1_144 extends AbstractPermanent { final ActivateCardAction action = new ActivateCardAction(self, Keyword.RESPONSE); action.appendCost(new RemoveTwilightEffect(1)); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose an Uruk-hai", Filters.race(Race.URUK_HAI), Filters.in(skirmishResult.getWinners()))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.race(Race.URUK_HAI), Filters.in(skirmishResult.getWinners()))); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_152.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_152.java index 50b69308c..c5a115147 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_152.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/isengard/Card1_152.java @@ -40,7 +40,7 @@ public class Card1_152 extends AbstractMinion { final ActivateCardAction action = new ActivateCardAction(self, Keyword.MANEUVER); action.appendCost(new RemoveTwilightEffect(2)); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose an Uruk-hai", Filters.race(Race.URUK_HAI))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.race(Race.URUK_HAI))); return Collections.singletonList(action); } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_288.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_288.java index ea990a5db..a8980ee8a 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_288.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_288.java @@ -41,7 +41,7 @@ public class Card1_288 extends AbstractAlly { action.appendCost( new ExertCharactersCost(self, self)); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose Merry or Pippin", Filters.or(Filters.name("Merry"), Filters.name("Pippin")))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.or(Filters.name("Merry"), Filters.name("Pippin")))); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_289.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_289.java index 30a1a7301..c335a63e8 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_289.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_289.java @@ -40,7 +40,7 @@ public class Card1_289 extends AbstractCompanion { if (effectResult.getType() == EffectResult.Type.START_OF_TURN) { final OptionalTriggerAction action = new OptionalTriggerAction(self); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose a Hobbit ally", Filters.type(CardType.ALLY), Filters.race(Race.HOBBIT))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.type(CardType.ALLY), Filters.race(Race.HOBBIT))); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_291.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_291.java index ca1452350..1f9b72ea2 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_291.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_291.java @@ -41,7 +41,7 @@ public class Card1_291 extends AbstractAlly { action.appendCost( new ExertCharactersCost(self, self)); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose Frodo or Sam", Filters.or(Filters.name("Frodo"), Filters.name("Sam")))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.or(Filters.name("Frodo"), Filters.name("Sam")))); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_297.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_297.java index 608754d37..fbceb6b38 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_297.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_297.java @@ -42,7 +42,7 @@ public class Card1_297 extends AbstractAlly { action.appendCost( new ExertCharactersCost(self, self)); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose another Hobbit ally", Filters.type(CardType.ALLY), Filters.race(Race.HOBBIT), Filters.not(Filters.sameCard(self)), Filters.siteNumber(1))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.type(CardType.ALLY), Filters.race(Race.HOBBIT), Filters.not(Filters.sameCard(self)), Filters.siteNumber(1))); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_307.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_307.java index f8f2ef2a7..97e442e3c 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_307.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_307.java @@ -45,7 +45,7 @@ public class Card1_307 extends AbstractCompanion { List possibleEffects = new LinkedList(); possibleEffects.add(new RemoveBurdenEffect(self.getOwner())); possibleEffects.add( - new ChooseAndHealCharacterEffect(action, self.getOwner(), "Choose a companion", Filters.type(CardType.COMPANION))); + new ChooseAndHealCharacterEffect(action, self.getOwner(), Filters.type(CardType.COMPANION))); action.appendEffect(new ChoiceEffect(action, self.getOwner(), possibleEffects)); return Collections.singletonList(action); } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_315.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_315.java index b790e5a53..36d5667e8 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_315.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/shire/Card1_315.java @@ -28,7 +28,7 @@ public class Card1_315 extends AbstractEvent { public PlayEventAction getPlayCardAction(final String playerId, LotroGame game, PhysicalCard self, int twilightModifier) { final PlayEventAction action = new PlayEventAction(self); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose a Hobbit", Filters.race(Race.HOBBIT))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.race(Race.HOBBIT))); return action; } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/site/Card1_343.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/site/Card1_343.java index ff957fb9e..1b305a798 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/site/Card1_343.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/site/Card1_343.java @@ -51,7 +51,7 @@ public class Card1_343 extends AbstractSite { action.appendCost( new ChoiceCost(action, playerId, possibleCosts)); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose your companion", Filters.owner(playerId), Filters.type(CardType.COMPANION))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.owner(playerId), Filters.type(CardType.COMPANION))); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/site/Card1_358.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/site/Card1_358.java index e12e31d1b..f774b61be 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/site/Card1_358.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/site/Card1_358.java @@ -38,7 +38,7 @@ public class Card1_358 extends AbstractSite { action.appendCost( new ChooseAndDiscardCardsFromHandEffect(action, playerId, 1, 1, Filters.culture(Culture.GONDOR))); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose a GONDOR companion", Filters.type(CardType.COMPANION), Filters.culture(Culture.GONDOR))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.type(CardType.COMPANION), Filters.culture(Culture.GONDOR))); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_220.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_220.java index 470e603f9..821bbb5bb 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_220.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/wraith/Card1_220.java @@ -34,7 +34,7 @@ public class Card1_220 extends AbstractPermanent { final ActivateCardAction action = new ActivateCardAction(self, (game.getGameState().getCurrentPhase() == Phase.MANEUVER) ? Keyword.MANEUVER : Keyword.SKIRMISH); action.appendCost(new RemoveTwilightEffect(3)); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose a Nazgul", Filters.race(Race.NAZGUL))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.race(Race.NAZGUL))); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set2/moria/Card2_063.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set2/moria/Card2_063.java index f81ee5c1b..a5706aa66 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set2/moria/Card2_063.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set2/moria/Card2_063.java @@ -36,7 +36,7 @@ public class Card2_063 extends AbstractMinion { if (PlayConditions.played(game.getGameState(), game.getModifiersQuerying(), effectResult, Filters.sameCard(self))) { OptionalTriggerAction action = new OptionalTriggerAction(self); action.appendEffect( - new ChooseAndHealCharacterEffect(action, playerId, "Choose MORIA minion", Filters.culture(Culture.MORIA), Filters.type(CardType.MINION))); + new ChooseAndHealCharacterEffect(action, playerId, Filters.culture(Culture.MORIA), Filters.type(CardType.MINION))); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/dwarven/Card3_003.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/dwarven/Card3_003.java new file mode 100644 index 000000000..bf434b39a --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set3/dwarven/Card3_003.java @@ -0,0 +1,40 @@ +package com.gempukku.lotro.cards.set3.dwarven; + +import com.gempukku.lotro.cards.AbstractPermanent; +import com.gempukku.lotro.cards.PlayConditions; +import com.gempukku.lotro.cards.effects.ChooseAndHealCharacterEffect; +import com.gempukku.lotro.common.*; +import com.gempukku.lotro.filters.Filters; +import com.gempukku.lotro.game.PhysicalCard; +import com.gempukku.lotro.game.state.LotroGame; +import com.gempukku.lotro.logic.actions.OptionalTriggerAction; +import com.gempukku.lotro.logic.timing.EffectResult; + +import java.util.Collections; +import java.util.List; + +/** + * Set: Realms of Elf-lords + * Side: Free + * Culture: Dwarven + * Twilight Cost: 1 + * Type: Condition + * Game Text: Plays to your support area. Each time you play a [DWARVEN] tale, you may heal a Dwarf companion. + */ +public class Card3_003 extends AbstractPermanent { + public Card3_003() { + super(Side.FREE_PEOPLE, 1, CardType.CONDITION, Culture.DWARVEN, Zone.FREE_SUPPORT, "Mines of Khazad-Dum"); + } + + @Override + public List getOptionalAfterTriggers(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) { + if (PlayConditions.played(game.getGameState(), game.getModifiersQuerying(), effectResult, Filters.and(Filters.culture(Culture.DWARVEN), Filters.keyword(Keyword.TALE)))) { + OptionalTriggerAction action = new OptionalTriggerAction(self); + action.appendEffect( + new ChooseAndHealCharacterEffect(action, playerId, Filters.race(Race.DWARF), Filters.type(CardType.COMPANION))); + return Collections.singletonList(action); + } + + return null; + } +}