"Foot of Mount Doom"
This commit is contained in:
@@ -0,0 +1,26 @@
|
|||||||
|
package com.gempukku.lotro.cards.set18.site;
|
||||||
|
|
||||||
|
import com.gempukku.lotro.cards.AbstractNewSite;
|
||||||
|
import com.gempukku.lotro.common.Keyword;
|
||||||
|
import com.gempukku.lotro.game.PhysicalCard;
|
||||||
|
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||||
|
import com.gempukku.lotro.logic.modifiers.ModifierFlag;
|
||||||
|
import com.gempukku.lotro.logic.modifiers.SpecialFlagModifier;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set: Treachery & Deceit
|
||||||
|
* Twilight Cost: 2
|
||||||
|
* Type: Site
|
||||||
|
* Game Text: Mountain. Each card that is about to be placed into the discard pile is removed from the game instead.
|
||||||
|
*/
|
||||||
|
public class Card18_135 extends AbstractNewSite {
|
||||||
|
public Card18_135() {
|
||||||
|
super("Foot of Mount Doom", 2, Direction.LEFT);
|
||||||
|
addKeyword(Keyword.MOUNTAIN);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Modifier getAlwaysOnModifier(PhysicalCard self) {
|
||||||
|
return new SpecialFlagModifier(self, ModifierFlag.REMOVE_CARDS_GOING_TO_DISCARD);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -5,6 +5,7 @@ import com.gempukku.lotro.communication.GameStateListener;
|
|||||||
import com.gempukku.lotro.game.*;
|
import com.gempukku.lotro.game.*;
|
||||||
import com.gempukku.lotro.logic.PlayerOrder;
|
import com.gempukku.lotro.logic.PlayerOrder;
|
||||||
import com.gempukku.lotro.logic.decisions.AwaitingDecision;
|
import com.gempukku.lotro.logic.decisions.AwaitingDecision;
|
||||||
|
import com.gempukku.lotro.logic.modifiers.ModifierFlag;
|
||||||
import com.gempukku.lotro.logic.timing.GameStats;
|
import com.gempukku.lotro.logic.timing.GameStats;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@@ -409,6 +410,9 @@ public class GameState {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void addCardToZone(LotroGame game, PhysicalCard card, Zone zone, boolean end) {
|
private void addCardToZone(LotroGame game, PhysicalCard card, Zone zone, boolean end) {
|
||||||
|
if (zone == Zone.DISCARD && game.getModifiersQuerying().hasFlagActive(game.getGameState(), ModifierFlag.REMOVE_CARDS_GOING_TO_DISCARD))
|
||||||
|
zone = Zone.REMOVED;
|
||||||
|
|
||||||
if (zone.isInPlay())
|
if (zone.isInPlay())
|
||||||
assignNewCardId(card);
|
assignNewCardId(card);
|
||||||
|
|
||||||
|
|||||||
@@ -11,5 +11,6 @@ public enum ModifierFlag {
|
|||||||
CANT_PREVENT_WOUNDS,
|
CANT_PREVENT_WOUNDS,
|
||||||
CANT_TOUCH_CULTURE_TOKENS,
|
CANT_TOUCH_CULTURE_TOKENS,
|
||||||
TRANSFERS_FOR_FREE,
|
TRANSFERS_FOR_FREE,
|
||||||
SHADOW_PLAYER_REPLACED_CURRENT_SITE
|
SHADOW_PLAYER_REPLACED_CURRENT_SITE,
|
||||||
|
REMOVE_CARDS_GOING_TO_DISCARD
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user