diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/effects/PreventCardEffect.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/effects/PreventCardEffect.java index 7543f9fbc..96697b6b2 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/effects/PreventCardEffect.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/effects/PreventCardEffect.java @@ -24,6 +24,6 @@ public class PreventCardEffect extends UnrespondableEffect { @Override protected void doPlayEffect(LotroGame game) { for (PhysicalCard card : _cards) - _effect.preventEffect(card); + _effect.preventEffect(game, card); } } diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set10/site/Card10_119.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set10/site/Card10_119.java new file mode 100644 index 000000000..0ef01812b --- /dev/null +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/set10/site/Card10_119.java @@ -0,0 +1,40 @@ +package com.gempukku.lotro.cards.set10.site; + +import com.gempukku.lotro.cards.AbstractSite; +import com.gempukku.lotro.cards.modifiers.CantHealModifier; +import com.gempukku.lotro.cards.modifiers.CantRemoveBurdensModifier; +import com.gempukku.lotro.cards.modifiers.SpecialFlagModifier; +import com.gempukku.lotro.common.Block; +import com.gempukku.lotro.filters.Filters; +import com.gempukku.lotro.game.PhysicalCard; +import com.gempukku.lotro.game.state.LotroGame; +import com.gempukku.lotro.logic.modifiers.Modifier; +import com.gempukku.lotro.logic.modifiers.ModifierFlag; + +import java.util.LinkedList; +import java.util.List; + +/** + * Set: Mount Doom + * Twilight Cost: 8 + * Type: Site + * Site: 5K + * Game Text: Wounds cannot be prevented or healed. Burdens cannot be removed. + */ +public class Card10_119 extends AbstractSite { + public Card10_119() { + super("Steward's Tomb", Block.KING, 4, 8, Direction.LEFT); + } + + @Override + public List getAlwaysOnModifiers(LotroGame game, PhysicalCard self) { + List modifiers = new LinkedList(); + modifiers.add( + new CantHealModifier(self, Filters.character)); + modifiers.add( + new SpecialFlagModifier(self, ModifierFlag.CANT_PREVENT_WOUNDS)); + modifiers.add( + new CantRemoveBurdensModifier(self, null, Filters.any)); + return modifiers; + } +} diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/AbstractPreventableCardEffect.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/AbstractPreventableCardEffect.java index fc4e3d595..0fdee5112 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/AbstractPreventableCardEffect.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/AbstractPreventableCardEffect.java @@ -52,7 +52,7 @@ public abstract class AbstractPreventableCardEffect extends AbstractEffect { return new FullEffectResult(results, affectedCards.size() >= _requiredTargets, affectedMinusPreventedCards.size() >= _requiredTargets); } - public void preventEffect(PhysicalCard card) { + public void preventEffect(LotroGame game, PhysicalCard card) { _preventedTargets.add(card); } } diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/WoundCharactersEffect.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/WoundCharactersEffect.java index 50abe50f5..f56405821 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/WoundCharactersEffect.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/WoundCharactersEffect.java @@ -6,6 +6,7 @@ import com.gempukku.lotro.game.PhysicalCard; import com.gempukku.lotro.game.state.GameState; import com.gempukku.lotro.game.state.LotroGame; import com.gempukku.lotro.logic.GameUtils; +import com.gempukku.lotro.logic.modifiers.ModifierFlag; import com.gempukku.lotro.logic.modifiers.ModifiersQuerying; import com.gempukku.lotro.logic.timing.Effect; import com.gempukku.lotro.logic.timing.EffectResult; @@ -74,4 +75,10 @@ public class WoundCharactersEffect extends AbstractPreventableCardEffect { return Collections.singleton(new WoundResult(cards)); } + + @Override + public void preventEffect(LotroGame game, PhysicalCard card) { + if (!game.getModifiersQuerying().hasFlagActive(game.getGameState(), ModifierFlag.CANT_PREVENT_WOUNDS)) + super.preventEffect(game, card); + } } diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/modifiers/ModifierFlag.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/modifiers/ModifierFlag.java index d4c867e4b..29d9f430a 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/modifiers/ModifierFlag.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/modifiers/ModifierFlag.java @@ -7,5 +7,6 @@ public enum ModifierFlag { WIN_CHECK_AFTER_SHADOW_RECONCILE, CANT_PLAY_FROM_DISCARD_OR_DECK, RING_BEARER_CANT_TAKE_THREAT_WOUNDS, - SKIRMISH_ORDER_BY_FIRST_SHADOW_PLAYER + SKIRMISH_ORDER_BY_FIRST_SHADOW_PLAYER, + CANT_PREVENT_WOUNDS }