From f6e0cc9aaad43cff36deb94f8b549bb68f7d0403 Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Mon, 24 Oct 2011 00:25:03 +0000 Subject: [PATCH] - "Orc Insurgent" no longer highlights to use his ability, when already exhausted. - "My Axe Is Notched" and "Final Count" now add Str bonus equal to minimum of token count, rather than maximum. - "Legolas Sword" now correctly heals Legolas. - "Grishnak" fixed his prevention text display. - Ambush is no longer optional and works once only. - "Dwarven Axe" no longer adds it's strength twice to character. --- .../gempukku/lotro/cards/set1/dwarven/Card1_009.java | 12 ++++-------- .../gempukku/lotro/cards/set4/dwarven/Card4_052.java | 2 +- .../gempukku/lotro/cards/set4/elven/Card4_069.java | 2 +- .../gempukku/lotro/cards/set5/elven/Card5_012.java | 2 +- .../gempukku/lotro/cards/set6/sauron/Card6_104.java | 2 +- .../lotro/logic/actions/RequiredTriggerAction.java | 3 ++- .../gempukku/lotro/logic/effects/DrawCardEffect.java | 2 +- .../lotro/logic/timing/rules/AmbushRule.java | 8 ++++---- .../src/main/webapp/includes/changeLog.html | 6 ++++++ 9 files changed, 21 insertions(+), 18 deletions(-) diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java index e82163781..2858a7dc4 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set1/dwarven/Card1_009.java @@ -3,7 +3,6 @@ package com.gempukku.lotro.cards.set1.dwarven; import com.gempukku.lotro.cards.AbstractAttachableFPPossession; import com.gempukku.lotro.cards.PlayConditions; import com.gempukku.lotro.cards.effects.DiscardTopCardFromDeckEffect; -import com.gempukku.lotro.cards.modifiers.StrengthModifier; import com.gempukku.lotro.common.Culture; import com.gempukku.lotro.common.PossessionClass; import com.gempukku.lotro.common.Race; @@ -12,11 +11,13 @@ 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.RequiredTriggerAction; -import com.gempukku.lotro.logic.modifiers.Modifier; import com.gempukku.lotro.logic.timing.EffectResult; import com.gempukku.lotro.logic.timing.results.SkirmishResult; -import java.util.*; +import java.util.HashSet; +import java.util.LinkedList; +import java.util.List; +import java.util.Set; /** * Set: The Fellowship of the Ring @@ -38,11 +39,6 @@ public class Card1_009 extends AbstractAttachableFPPossession { return Filters.race(Race.DWARF); } - @Override - protected List getNonBasicStatsModifiers(PhysicalCard self) { - return Collections.singletonList(new StrengthModifier(self, Filters.hasAttached(self), 2)); - } - @Override public List getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, PhysicalCard self) { if (PlayConditions.winsSkirmish(effectResult, self.getAttachedTo())) { diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/dwarven/Card4_052.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/dwarven/Card4_052.java index 717c78987..f9030b844 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/dwarven/Card4_052.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/dwarven/Card4_052.java @@ -42,7 +42,7 @@ public class Card4_052 extends AbstractPermanent { public int evaluateExpression(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard self) { PhysicalCard finalCount = Filters.findFirstActive(gameState, modifiersQuerying, Filters.name("Final Count")); if (finalCount != null) - return Math.min(3, Math.max(gameState.getTokenCount(self, Token.DWARVEN), gameState.getTokenCount(finalCount, Token.ELVEN))); + return Math.min(3, Math.min(gameState.getTokenCount(self, Token.DWARVEN), gameState.getTokenCount(finalCount, Token.ELVEN))); return 0; } })); diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/elven/Card4_069.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/elven/Card4_069.java index c2d07a59f..b7e50023c 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/elven/Card4_069.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set4/elven/Card4_069.java @@ -42,7 +42,7 @@ public class Card4_069 extends AbstractPermanent { public int evaluateExpression(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard self) { PhysicalCard myAxeIsNotched = Filters.findFirstActive(gameState, modifiersQuerying, Filters.name("My Axe Is Notched")); if (myAxeIsNotched != null) - return Math.min(3, Math.max(gameState.getTokenCount(self, Token.ELVEN), gameState.getTokenCount(myAxeIsNotched, Token.DWARVEN))); + return Math.min(3, Math.min(gameState.getTokenCount(self, Token.ELVEN), gameState.getTokenCount(myAxeIsNotched, Token.DWARVEN))); return 0; } })); diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set5/elven/Card5_012.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set5/elven/Card5_012.java index 87ef38a46..f7cdb148f 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set5/elven/Card5_012.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set5/elven/Card5_012.java @@ -41,7 +41,7 @@ public class Card5_012 extends AbstractAttachableFPPossession { && PlayConditions.canSpot(game, CardType.MINION, Filters.wounded)) { OptionalTriggerAction action = new OptionalTriggerAction(self); action.appendEffect( - new HealCharactersEffect(playerId, self)); + new HealCharactersEffect(playerId, self.getAttachedTo())); return Collections.singletonList(action); } return null; diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/sauron/Card6_104.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/sauron/Card6_104.java index f460c3525..deda0a03c 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/sauron/Card6_104.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set6/sauron/Card6_104.java @@ -38,7 +38,7 @@ public class Card6_104 extends AbstractMinion { @Override protected List getExtraPhaseActions(String playerId, LotroGame game, PhysicalCard self) { if (PlayConditions.canUseShadowCardDuringPhase(game.getGameState(), Phase.SHADOW, self, 0) - && PlayConditions.canSelfDiscard(self, game)) { + && PlayConditions.canSelfExert(self, game)) { int x = new CountCulturesEvaluator(2, 1, Side.FREE_PEOPLE).evaluateExpression(game.getGameState(), game.getModifiersQuerying(), null); ActivateCardAction action = new ActivateCardAction(self); action.appendCost( diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/actions/RequiredTriggerAction.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/actions/RequiredTriggerAction.java index e92daa9d8..78e90f21d 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/actions/RequiredTriggerAction.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/actions/RequiredTriggerAction.java @@ -15,7 +15,8 @@ public class RequiredTriggerAction extends AbstractCostToEffectAction { public RequiredTriggerAction(PhysicalCard physicalCard) { _physicalCard = physicalCard; - _text = "Required trigger from " + GameUtils.getCardLink(_physicalCard); + if (physicalCard != null) + _text = "Required trigger from " + GameUtils.getCardLink(_physicalCard); } @Override diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DrawCardEffect.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DrawCardEffect.java index 9d65ab0a7..c1b6ef153 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DrawCardEffect.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DrawCardEffect.java @@ -18,7 +18,7 @@ public class DrawCardEffect extends AbstractEffect { @Override public String getText(LotroGame game) { - return null; + return "Draw " + _count + " card(s)"; } @Override diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/rules/AmbushRule.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/rules/AmbushRule.java index 45962d223..79f973425 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/rules/AmbushRule.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/rules/AmbushRule.java @@ -5,7 +5,7 @@ import com.gempukku.lotro.game.AbstractActionProxy; import com.gempukku.lotro.game.PhysicalCard; import com.gempukku.lotro.game.state.LotroGame; import com.gempukku.lotro.game.state.actions.DefaultActionsEnvironment; -import com.gempukku.lotro.logic.actions.OptionalTriggerAction; +import com.gempukku.lotro.logic.actions.RequiredTriggerAction; import com.gempukku.lotro.logic.effects.AddTwilightEffect; import com.gempukku.lotro.logic.timing.Action; import com.gempukku.lotro.logic.timing.EffectResult; @@ -25,16 +25,16 @@ public class AmbushRule { _actionsEnvironment.addAlwaysOnActionProxy( new AbstractActionProxy() { @Override - public List getOptionalAfterTriggers(String playerId, LotroGame game, EffectResult effectResult) { + public List getRequiredAfterTriggers(LotroGame game, EffectResult effectResult) { if (effectResult.getType() == EffectResult.Type.ASSIGNMENT) { AssignmentResult assignmentResult = (AssignmentResult) effectResult; if (assignmentResult.getPlayerId().equals(game.getGameState().getCurrentPlayerId())) { - List actions = new LinkedList(); + List actions = new LinkedList(); for (List minions : assignmentResult.getAssignments().values()) { for (PhysicalCard minion : minions) { if (game.getModifiersQuerying().hasKeyword(game.getGameState(), minion, Keyword.AMBUSH)) { final int count = game.getModifiersQuerying().getKeywordCount(game.getGameState(), minion, Keyword.AMBUSH); - OptionalTriggerAction action = new OptionalTriggerAction(minion); + RequiredTriggerAction action = new RequiredTriggerAction(minion); action.setText("Ambush - add " + count); action.appendEffect( new AddTwilightEffect(minion, count)); diff --git a/gemp-lotr/gemp-lotr-web/src/main/webapp/includes/changeLog.html b/gemp-lotr/gemp-lotr-web/src/main/webapp/includes/changeLog.html index 737b7d452..cfbbaf41b 100644 --- a/gemp-lotr/gemp-lotr-web/src/main/webapp/includes/changeLog.html +++ b/gemp-lotr/gemp-lotr-web/src/main/webapp/includes/changeLog.html @@ -3,6 +3,12 @@ - "Hornburg Causeway" now adds +2 to archery for each unbound companion over 3, instead of +1. - "The One Ring" from TTT now correctly gives Ring-Bound keyword to whoever is carrying it. - "Final Count" is an optional trigger now, instead of required trigger (like "My Axe Is Notched"). +- "Orc Insurgent" no longer highlights to use his ability, when already exhausted. +- "My Axe Is Notched" and "Final Count" now add Str bonus equal to minimum of token count, rather than maximum. +- "Legolas Sword" now correctly heals Legolas. +- "Grishnak" fixed his prevention text display. +- Ambush is no longer optional and works once only. +- "Dwarven Axe" no longer adds it's strength twice to character. 22 Oct. 2011 - Fixed the cards that heal, exert or wound "for each" to allow healing, exerting or wounding the same character