"Troll of Udun"
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
package com.gempukku.lotro.cards.effects.choose;
|
package com.gempukku.lotro.cards.effects.choose;
|
||||||
|
|
||||||
import com.gempukku.lotro.filters.Filter;
|
import com.gempukku.lotro.common.Filterable;
|
||||||
import com.gempukku.lotro.filters.Filters;
|
import com.gempukku.lotro.filters.Filters;
|
||||||
import com.gempukku.lotro.game.PhysicalCard;
|
import com.gempukku.lotro.game.PhysicalCard;
|
||||||
import com.gempukku.lotro.game.state.LotroGame;
|
import com.gempukku.lotro.game.state.LotroGame;
|
||||||
@@ -21,19 +21,19 @@ public class ChooseAndDiscardCardsFromHandEffect extends AbstractEffect {
|
|||||||
private boolean _forced;
|
private boolean _forced;
|
||||||
private int _minimum;
|
private int _minimum;
|
||||||
private int _maximum;
|
private int _maximum;
|
||||||
private Filter _filter;
|
private Filterable[] _filter;
|
||||||
|
|
||||||
public ChooseAndDiscardCardsFromHandEffect(Action action, String playerId, boolean forced, int minimum, int maximum, Filter filter) {
|
public ChooseAndDiscardCardsFromHandEffect(Action action, String playerId, boolean forced, int minimum, int maximum, Filterable... filters) {
|
||||||
_action = action;
|
_action = action;
|
||||||
_playerId = playerId;
|
_playerId = playerId;
|
||||||
_forced = forced;
|
_forced = forced;
|
||||||
_minimum = minimum;
|
_minimum = minimum;
|
||||||
_maximum = maximum;
|
_maximum = maximum;
|
||||||
_filter = filter;
|
_filter = filters;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ChooseAndDiscardCardsFromHandEffect(Action action, String playerId, boolean forced, int count, Filter filter) {
|
public ChooseAndDiscardCardsFromHandEffect(Action action, String playerId, boolean forced, int count, Filterable... filters) {
|
||||||
this(action, playerId, forced, count, count, filter);
|
this(action, playerId, forced, count, count, filters);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ChooseAndDiscardCardsFromHandEffect(Action action, String playerId, boolean forced, int count) {
|
public ChooseAndDiscardCardsFromHandEffect(Action action, String playerId, boolean forced, int count) {
|
||||||
|
|||||||
@@ -0,0 +1,62 @@
|
|||||||
|
package com.gempukku.lotro.cards.set6.sauron;
|
||||||
|
|
||||||
|
import com.gempukku.lotro.cards.AbstractMinion;
|
||||||
|
import com.gempukku.lotro.cards.PlayConditions;
|
||||||
|
import com.gempukku.lotro.cards.effects.AddUntilEndOfPhaseModifierEffect;
|
||||||
|
import com.gempukku.lotro.cards.effects.choose.ChooseAndDiscardCardsFromHandEffect;
|
||||||
|
import com.gempukku.lotro.cards.modifiers.StrengthModifier;
|
||||||
|
import com.gempukku.lotro.common.Culture;
|
||||||
|
import com.gempukku.lotro.common.Keyword;
|
||||||
|
import com.gempukku.lotro.common.Phase;
|
||||||
|
import com.gempukku.lotro.common.Race;
|
||||||
|
import com.gempukku.lotro.filters.Filters;
|
||||||
|
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.actions.ActivateCardAction;
|
||||||
|
import com.gempukku.lotro.logic.modifiers.ModifiersQuerying;
|
||||||
|
import com.gempukku.lotro.logic.timing.Action;
|
||||||
|
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set: Ents of Fangorn
|
||||||
|
* Side: Shadow
|
||||||
|
* Culture: Sauron
|
||||||
|
* Twilight Cost: 10
|
||||||
|
* Type: Minion • Troll
|
||||||
|
* Strength: 14
|
||||||
|
* Vitality: 5
|
||||||
|
* Site: 6
|
||||||
|
* Game Text: Fierce. While you can spot a Troll, this minion's twilight cost is -4. Skirmish: Discard a [SAURON] card
|
||||||
|
* from hand to make this minion strength +1.
|
||||||
|
*/
|
||||||
|
public class Card6_106 extends AbstractMinion {
|
||||||
|
public Card6_106() {
|
||||||
|
super(10, 14, 5, 6, Race.TROLL, Culture.SAURON, "Troll of Udun");
|
||||||
|
addKeyword(Keyword.FIERCE);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getTwilightCostModifier(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard self) {
|
||||||
|
if (Filters.canSpot(gameState, modifiersQuerying, Race.TROLL))
|
||||||
|
return -4;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected List<? extends Action> getExtraPhaseActions(String playerId, LotroGame game, PhysicalCard self) {
|
||||||
|
if (PlayConditions.canUseShadowCardDuringPhase(game.getGameState(), Phase.SKIRMISH, self, 0)
|
||||||
|
&& PlayConditions.canDiscardFromHand(game, playerId, 1, Culture.SAURON)) {
|
||||||
|
ActivateCardAction action = new ActivateCardAction(self);
|
||||||
|
action.appendCost(
|
||||||
|
new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 1, Culture.SAURON));
|
||||||
|
action.appendEffect(
|
||||||
|
new AddUntilEndOfPhaseModifierEffect(
|
||||||
|
new StrengthModifier(self, self, 1), Phase.SKIRMISH));
|
||||||
|
return Collections.singletonList(action);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user