Migrated Uruk-hai cards in set 13 to hjson
This commit is contained in:
@@ -1,66 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
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.ActivateCardAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.effects.AddUntilEndOfPhaseModifierEffect;
|
||||
import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect;
|
||||
import com.gempukku.lotro.logic.effects.SelfExertEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.ResistanceModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.evaluator.CountActiveEvaluator;
|
||||
import com.gempukku.lotro.logic.modifiers.evaluator.MultiplyEvaluator;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 4
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 9
|
||||
* Vitality: 3
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. Shadow: Exert this minion and spot a Free Peoples condition to make an unbound companion
|
||||
* resistance -1 for each card that has the same card title as that condition.
|
||||
*/
|
||||
public class Card13_158 extends AbstractMinion {
|
||||
public Card13_158() {
|
||||
super(4, 9, 3, 5, Race.URUK_HAI, Culture.URUK_HAI, "Assault Commander");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(final String playerId, LotroGame game, final PhysicalCard self) {
|
||||
if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SHADOW, self, 0)
|
||||
&& PlayConditions.canSelfExert(self, game)
|
||||
&& PlayConditions.canSpot(game, Side.FREE_PEOPLE, CardType.CONDITION)) {
|
||||
final ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfExertEffect(action, self));
|
||||
action.appendCost(
|
||||
new ChooseActiveCardEffect(self, playerId, "Choose a Free Peoples condition") {
|
||||
@Override
|
||||
protected void cardSelected(LotroGame game, final PhysicalCard condition) {
|
||||
action.appendEffect(
|
||||
new ChooseActiveCardEffect(self, playerId, "Choose an unbound companion", Filters.unboundCompanion) {
|
||||
@Override
|
||||
protected void cardSelected(LotroGame game, PhysicalCard companion) {
|
||||
action.appendEffect(
|
||||
new AddUntilEndOfPhaseModifierEffect(
|
||||
new ResistanceModifier(self, companion, null,
|
||||
new MultiplyEvaluator(-1, new CountActiveEvaluator(Filters.name(condition.getBlueprint().getTitle()))))));
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,38 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
import com.gempukku.lotro.common.Side;
|
||||
import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.StrengthModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.evaluator.CountCultureTokensEvaluator;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 4
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 9
|
||||
* Vitality: 2
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. This minion is strength +1 for each Free Peoples culture token you can spot.
|
||||
*/
|
||||
public class Card13_159 extends AbstractMinion {
|
||||
public Card13_159() {
|
||||
super(4, 9, 2, 5, Race.URUK_HAI, Culture.URUK_HAI, "Assault Denizen");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
return Collections.singletonList(new StrengthModifier(self, self, null, new CountCultureTokensEvaluator(Side.FREE_PEOPLE)));
|
||||
}
|
||||
}
|
||||
@@ -1,41 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
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.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.modifiers.CantTakeWoundsModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.SpotCondition;
|
||||
import com.gempukku.lotro.logic.modifiers.condition.AndCondition;
|
||||
import com.gempukku.lotro.logic.modifiers.condition.NotCondition;
|
||||
import com.gempukku.lotro.logic.modifiers.condition.PhaseCondition;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 2
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 6
|
||||
* Vitality: 1
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. While you can spot a Free Peoples culture token, this minion cannot take wounds except during
|
||||
* skirmishes.
|
||||
*/
|
||||
public class Card13_160 extends AbstractMinion {
|
||||
public Card13_160() {
|
||||
super(2, 6, 1, 5, Race.URUK_HAI, Culture.URUK_HAI, "Cavern Denizen");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public java.util.List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
return java.util.Collections.singletonList(new CantTakeWoundsModifier(self,
|
||||
new AndCondition(
|
||||
new NotCondition(new PhaseCondition(Phase.SKIRMISH)),
|
||||
new SpotCondition(Side.FREE_PEOPLE, Filters.hasAnyCultureTokens(1))),
|
||||
self));
|
||||
}
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
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.ActivateCardAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.AddUntilEndOfPhaseModifierEffect;
|
||||
import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect;
|
||||
import com.gempukku.lotro.logic.effects.SelfDiscardEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.StrengthModifier;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 1
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: Skirmish: Discard this condition to make an [URUK-HAI] minion strength +1 for each of the following that
|
||||
* is true: it is at a battleground site; it is skirmishing a companion who has resistance 4 or less; it is bearing
|
||||
* a possession; you can spot an [URUK-HAI] minion not assigned to a skirmish.
|
||||
*/
|
||||
public class Card13_161 extends AbstractPermanent {
|
||||
public Card13_161() {
|
||||
super(Side.SHADOW, 1, CardType.CONDITION, Culture.URUK_HAI, "Endless Assault");
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, final PhysicalCard self) {
|
||||
if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SKIRMISH, self, 0)
|
||||
&& PlayConditions.canSelfDiscard(self, game)) {
|
||||
final ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfDiscardEffect(self));
|
||||
action.appendEffect(
|
||||
new ChooseActiveCardEffect(self, playerId, "Choose an URUK-HAI minion", Culture.URUK_HAI, CardType.MINION) {
|
||||
@Override
|
||||
protected void cardSelected(LotroGame game, PhysicalCard minion) {
|
||||
int bonus = 0;
|
||||
if (PlayConditions.location(game, Keyword.BATTLEGROUND))
|
||||
bonus++;
|
||||
if (PlayConditions.canSpot(game, minion, Filters.inSkirmishAgainst(CardType.COMPANION, Filters.maxResistance(4))))
|
||||
bonus++;
|
||||
if (PlayConditions.canSpot(game, minion, Filters.hasAttached(CardType.POSSESSION)))
|
||||
bonus++;
|
||||
if (PlayConditions.canSpot(game, Culture.URUK_HAI, CardType.MINION, Filters.notAssignedToSkirmish))
|
||||
bonus++;
|
||||
action.appendEffect(
|
||||
new AddUntilEndOfPhaseModifierEffect(
|
||||
new StrengthModifier(self, minion, bonus)));
|
||||
}
|
||||
});
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Side;
|
||||
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.ActivateCardAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.AddTwilightEffect;
|
||||
import com.gempukku.lotro.logic.effects.ChooseAndDiscardCardsFromHandEffect;
|
||||
import com.gempukku.lotro.logic.effects.SelfDiscardEffect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 1
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: To play, spot 2 [URUK-HAI] minions. Shadow: Discard 2 cards from hand to add (1). Regroup: Spot
|
||||
* an [URUK-HAI] minion and discard this condition from play to add (3).
|
||||
*/
|
||||
public class Card13_162 extends AbstractPermanent {
|
||||
public Card13_162() {
|
||||
super(Side.SHADOW, 1, CardType.CONDITION, Culture.URUK_HAI, "Enemy Without Number");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canSpot(game, 2, Culture.URUK_HAI, CardType.MINION);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SHADOW, self, 0)
|
||||
&& PlayConditions.canDiscardFromHand(game, playerId, 2, Filters.any)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 2));
|
||||
action.appendEffect(
|
||||
new AddTwilightEffect(self, 1));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.REGROUP, self, 0)
|
||||
&& PlayConditions.canSpot(game, Culture.URUK_HAI, CardType.MINION)
|
||||
&& PlayConditions.canSelfDiscard(self, game)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfDiscardEffect(self));
|
||||
action.appendEffect(
|
||||
new AddTwilightEffect(self, 3));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,39 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
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.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.modifiers.CantDiscardFromPlayModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 4
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 9
|
||||
* Vitality: 2
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. Lurker. (Skirmishes involving lurker minions must be resolved after any others.)
|
||||
* Possessions borne by this minion cannot be discarded by Free Peoples cards.
|
||||
*/
|
||||
public class Card13_163 extends AbstractMinion {
|
||||
public Card13_163() {
|
||||
super(4, 9, 2, 5, Race.URUK_HAI, Culture.URUK_HAI, "Entranced Uruk");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
addKeyword(Keyword.LURKER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
return Collections.singletonList(new CantDiscardFromPlayModifier(self, "Can't be discarded by Free Peoples cards",
|
||||
Filters.and(CardType.POSSESSION, Filters.attachedTo(self)),
|
||||
Filters.and(Side.FREE_PEOPLE)));
|
||||
}
|
||||
}
|
||||
@@ -1,64 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
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.actions.RequiredTriggerAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.ReinforceTokenEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
|
||||
import com.gempukku.lotro.logic.timing.EffectResult;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
import com.gempukku.lotro.logic.timing.TriggerConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 1
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: To play, spot an [URUK-HAI] minion. When you play this, if you spot a battleground site on the adventure
|
||||
* path, reinforce 3 [URUK-HAI] tokens. Each time the Free Peoples player plays the fellowship’s next site, you may
|
||||
* discard a condition from play.
|
||||
*/
|
||||
public class Card13_164 extends AbstractPermanent {
|
||||
public Card13_164() {
|
||||
super(Side.SHADOW, 1, CardType.CONDITION, Culture.URUK_HAI, "Fearless Approach");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canSpot(game, Culture.URUK_HAI, CardType.MINION);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<RequiredTriggerAction> getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, PhysicalCard self) {
|
||||
if (TriggerConditions.played(game, effectResult, self)
|
||||
&& PlayConditions.canSpot(game, CardType.SITE, Zone.ADVENTURE_PATH, Keyword.BATTLEGROUND)) {
|
||||
RequiredTriggerAction action = new RequiredTriggerAction(self);
|
||||
action.appendEffect(
|
||||
new ReinforceTokenEffect(self, self.getOwner(), Token.URUK_HAI, 3));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OptionalTriggerAction> getOptionalAfterTriggers(String playerId, LotroGame game, EffectResult effectResult, PhysicalCard self) {
|
||||
if (TriggerConditions.played(game, effectResult,
|
||||
CardType.SITE,
|
||||
Filters.owner(game.getGameState().getCurrentPlayerId()),
|
||||
Filters.siteNumber(game.getGameState().getCurrentSiteNumber() + 1))) {
|
||||
OptionalTriggerAction action = new OptionalTriggerAction(self);
|
||||
action.appendEffect(
|
||||
new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1, CardType.CONDITION));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,43 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
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.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.modifiers.ArcheryTotalModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.StrengthModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.condition.LocationCondition;
|
||||
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 3
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 7
|
||||
* Vitality: 1
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. While the fellowship is at a forest site, the fellowship archery total is -1. Each [ELVEN]
|
||||
* companion skirmishing this minion is strength -2.
|
||||
*/
|
||||
public class Card13_165 extends AbstractMinion {
|
||||
public Card13_165() {
|
||||
super(3, 7, 1, 5, Race.URUK_HAI, Culture.URUK_HAI, "Isengard Infiltrator");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
List<Modifier> modifiers = new LinkedList<>();
|
||||
modifiers.add(
|
||||
new ArcheryTotalModifier(self, Side.FREE_PEOPLE, new LocationCondition(Keyword.FOREST), -1));
|
||||
modifiers.add(
|
||||
new StrengthModifier(self, Filters.and(CardType.COMPANION, Culture.ELVEN, Filters.inSkirmishAgainst(self)), -2));
|
||||
return modifiers;
|
||||
}
|
||||
}
|
||||
@@ -1,52 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Side;
|
||||
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.CostToEffectAction;
|
||||
import com.gempukku.lotro.logic.actions.PlayEventAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractEvent;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect;
|
||||
import com.gempukku.lotro.logic.effects.discount.RemoveCardsFromDiscardDiscountEffect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 2
|
||||
* Type: Event • Skirmish
|
||||
* Game Text: You may remove from the game 4 [URUK-HAI] cards in your discard pile instead of paying the twilight cost
|
||||
* for this card. Make your [URUK-HAI] minion skirmishing a companion with resistance 4 or less strength +2.
|
||||
*/
|
||||
public class Card13_166 extends AbstractEvent {
|
||||
public Card13_166() {
|
||||
super(Side.SHADOW, 2, Culture.URUK_HAI, "New Enemy", Phase.SKIRMISH);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getPotentialDiscount(LotroGame game, String playerId, PhysicalCard self) {
|
||||
if (PlayConditions.canRemoveFromDiscard(self, game, playerId, 4, Culture.URUK_HAI))
|
||||
return 1000;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void appendPotentialDiscountEffects(LotroGame game, CostToEffectAction action, String playerId, PhysicalCard self) {
|
||||
action.appendPotentialDiscount(
|
||||
new RemoveCardsFromDiscardDiscountEffect(self, playerId, 4, 1000, Culture.URUK_HAI));
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayEventAction getPlayEventCardAction(String playerId, LotroGame game, PhysicalCard self) {
|
||||
PlayEventAction action = new PlayEventAction(self);
|
||||
action.appendEffect(
|
||||
new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId, 2, Filters.owner(playerId), Culture.URUK_HAI, CardType.MINION, Filters.inSkirmishAgainst(CardType.COMPANION, Filters.maxResistance(4))));
|
||||
return action;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,43 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
import com.gempukku.lotro.logic.timing.TriggerConditions;
|
||||
import com.gempukku.lotro.logic.effects.ExertCharactersEffect;
|
||||
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.RequiredTriggerAction;
|
||||
import com.gempukku.lotro.logic.timing.EffectResult;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 2
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: While you can spot 3 [URUK-HAI] lurker minions, at the start of each skirmish involving an [URUK-HAI]
|
||||
* lurker minion, each companion skirmishing that minion must exert.
|
||||
*/
|
||||
public class Card13_167 extends AbstractPermanent {
|
||||
public Card13_167() {
|
||||
super(Side.SHADOW, 2, CardType.CONDITION, Culture.URUK_HAI, "Signs of War", null, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<RequiredTriggerAction> getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, PhysicalCard self) {
|
||||
if (TriggerConditions.startOfPhase(game, effectResult, Phase.SKIRMISH)
|
||||
&& PlayConditions.canSpot(game, Culture.URUK_HAI, Keyword.LURKER, Filters.inSkirmish)
|
||||
&& PlayConditions.canSpot(game, 3, Culture.URUK_HAI, CardType.MINION, Keyword.LURKER)) {
|
||||
RequiredTriggerAction action = new RequiredTriggerAction(self);
|
||||
action.appendEffect(
|
||||
new ExertCharactersEffect(action, self, CardType.COMPANION, Filters.inSkirmish));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
import com.gempukku.lotro.filters.Filters;
|
||||
import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractMinion;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 3
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 8
|
||||
* Vitality: 2
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. When you play this, you may spot a companion who has resistance 0 to make this minion
|
||||
* twilight cost -2.
|
||||
*/
|
||||
public class Card13_168 extends AbstractMinion {
|
||||
public Card13_168() {
|
||||
super(3, 8, 2, 5, Race.URUK_HAI, Culture.URUK_HAI, "Uruk Aggressor");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getTwilightCostModifier(LotroGame game, PhysicalCard self, PhysicalCard target) {
|
||||
if (Filters.canSpot(game, CardType.COMPANION, Filters.maxResistance(0)))
|
||||
return -2;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
@@ -1,55 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
import com.gempukku.lotro.filters.Filters;
|
||||
import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.modifiers.KeywordModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.ResistanceModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.StrengthModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.condition.LocationCondition;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 4
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 12
|
||||
* Vitality: 2
|
||||
* Site: 5
|
||||
* Game Text: To play, spot an [URUK-HAI] minion. While the fellowship is in region 1, each Uruk-hai is damage +1. While
|
||||
* the fellowship is in region 2, each companion is strength -1. While the fellowship is in region 3, each
|
||||
* unbound companion is resistance -2.
|
||||
*/
|
||||
public class Card13_169 extends AbstractMinion {
|
||||
public Card13_169() {
|
||||
super(4, 12, 2, 5, Race.URUK_HAI, Culture.URUK_HAI, "Uruk Blitz", null, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canSpot(game, Culture.URUK_HAI, CardType.MINION);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
List<Modifier> modifiers = new LinkedList<>();
|
||||
modifiers.add(
|
||||
new KeywordModifier(self, Race.URUK_HAI, new LocationCondition(Filters.region(1)), Keyword.DAMAGE, 1));
|
||||
modifiers.add(
|
||||
new StrengthModifier(self, CardType.COMPANION, new LocationCondition(Filters.region(2)), -1));
|
||||
modifiers.add(
|
||||
new ResistanceModifier(self, Filters.unboundCompanion, new LocationCondition(Filters.region(3)), -2));
|
||||
return modifiers;
|
||||
}
|
||||
}
|
||||
@@ -1,52 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
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.ActivateCardAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.effects.SelfExertEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 4
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 9
|
||||
* Vitality: 2
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. Skirmish: If this minion is not assigned to a skirmish, you may exert it to discard
|
||||
* a possession borne by a companion skirmishing another [URUK-HAI] minion.
|
||||
*/
|
||||
public class Card13_170 extends AbstractMinion {
|
||||
public Card13_170() {
|
||||
super(4, 9, 2, 5, Race.URUK_HAI, Culture.URUK_HAI, "Uruk Distractor");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SKIRMISH, self, 0)
|
||||
&& PlayConditions.canSpot(game, self, Filters.notAssignedToSkirmish)
|
||||
&& PlayConditions.canSelfExert(self, game)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfExertEffect(action, self));
|
||||
action.appendEffect(
|
||||
new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1,
|
||||
CardType.POSSESSION,
|
||||
Filters.attachedTo(
|
||||
CardType.COMPANION,
|
||||
Filters.inSkirmishAgainst(Filters.not(self), Culture.URUK_HAI, CardType.MINION))));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
import com.gempukku.lotro.filters.Filters;
|
||||
import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractMinion;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 4
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 9
|
||||
* Vitality: 2
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. This minion is twilight cost -1 for each companion who has resistance 2 or less.
|
||||
*/
|
||||
public class Card13_171 extends AbstractMinion {
|
||||
public Card13_171() {
|
||||
super(4, 9, 2, 5, Race.URUK_HAI, Culture.URUK_HAI, "Uruk Invader");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getTwilightCostModifier(LotroGame game, PhysicalCard self, PhysicalCard target) {
|
||||
return -Filters.countActive(game, CardType.COMPANION, Filters.maxResistance(2));
|
||||
}
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
import com.gempukku.lotro.filters.Filters;
|
||||
import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.modifiers.KeywordModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.evaluator.Evaluator;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 5
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 15
|
||||
* Vitality: 2
|
||||
* Site: 5
|
||||
* Game Text: This minion is damage +1 for each character in the dead pile.
|
||||
*/
|
||||
public class Card13_172 extends AbstractMinion {
|
||||
public Card13_172() {
|
||||
super(5, 15, 2, 5, Race.URUK_HAI, Culture.URUK_HAI, "Uruk Outrider");
|
||||
}
|
||||
|
||||
@Override
|
||||
public java.util.List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
return java.util.Collections.singletonList(new KeywordModifier(self, self, null, Keyword.DAMAGE,
|
||||
new Evaluator() {
|
||||
@Override
|
||||
public int evaluateExpression(LotroGame game, PhysicalCard cardAffected) {
|
||||
return Filters.filter(game.getGameState().getDeadPile(game.getGameState().getCurrentPlayerId()), game, Filters.character).size();
|
||||
}
|
||||
}));
|
||||
}
|
||||
}
|
||||
@@ -1,59 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.timing.TriggerConditions;
|
||||
import com.gempukku.lotro.logic.effects.PutCardFromPlayOnBottomOfDeckEffect;
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
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.effects.ChooseActiveCardEffect;
|
||||
import com.gempukku.lotro.logic.effects.KillEffect;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 4
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 8
|
||||
* Vitality: 2
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. Lurker. (Skirmishes involving lurker minions must be resolved after any others.) Each time your
|
||||
* [URUK-HAI] minion is about to be killed in a skirmish, you may place that minion on the bottom of your
|
||||
* draw deck instead.
|
||||
*/
|
||||
public class Card13_173 extends AbstractMinion {
|
||||
public Card13_173() {
|
||||
super(4, 8, 2, 5, Race.URUK_HAI, Culture.URUK_HAI, "Uruk Reserve");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
addKeyword(Keyword.LURKER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OptionalTriggerAction> getOptionalBeforeTriggers(String playerId, LotroGame game, Effect effect, PhysicalCard self) {
|
||||
if (TriggerConditions.isGettingKilled(effect, game, Filters.owner(playerId), Culture.URUK_HAI, CardType.MINION, Filters.inSkirmish)) {
|
||||
final OptionalTriggerAction action = new OptionalTriggerAction(self);
|
||||
KillEffect killEffect = (KillEffect) effect;
|
||||
final List<PhysicalCard> charactersToBeKilled = killEffect.getCharactersToBeKilled();
|
||||
action.appendEffect(
|
||||
new ChooseActiveCardEffect(self, playerId, "Choose your URUK-HAI minion", Filters.in(charactersToBeKilled), Filters.owner(playerId), Culture.URUK_HAI, CardType.MINION, Filters.inSkirmish) {
|
||||
@Override
|
||||
protected void cardSelected(LotroGame game, PhysicalCard card) {
|
||||
action.appendEffect(
|
||||
new PutCardFromPlayOnBottomOfDeckEffect(card));
|
||||
}
|
||||
});
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,56 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
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.ActivateCardAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.effects.AddUntilStartOfPhaseModifierEffect;
|
||||
import com.gempukku.lotro.logic.effects.SelfExertEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.KeywordModifier;
|
||||
import com.gempukku.lotro.logic.modifiers.StrengthModifier;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 5
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 12
|
||||
* Vitality: 3
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. Skirmish: If no other minions are assigned to a skirmish, you may exert this minion twice
|
||||
* to make it fierce and strength +4 until the regroup phase.
|
||||
*/
|
||||
public class Card13_174 extends AbstractMinion {
|
||||
public Card13_174() {
|
||||
super(5, 12, 3, 5, Race.URUK_HAI, Culture.URUK_HAI, "Uruk Rogue");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SKIRMISH, self, 0)
|
||||
&& PlayConditions.canSelfExert(self, 2, game)
|
||||
&& !PlayConditions.canSpot(game, Filters.not(self), CardType.MINION, Filters.assignedToSkirmish)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfExertEffect(action, self));
|
||||
action.appendCost(
|
||||
new SelfExertEffect(action, self));
|
||||
action.appendEffect(
|
||||
new AddUntilStartOfPhaseModifierEffect(
|
||||
new StrengthModifier(self, self, 4), Phase.REGROUP));
|
||||
action.appendEffect(
|
||||
new AddUntilStartOfPhaseModifierEffect(
|
||||
new KeywordModifier(self, self, Keyword.FIERCE), Phase.REGROUP));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,49 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
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.ActivateCardAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractMinion;
|
||||
import com.gempukku.lotro.logic.effects.SelfExertEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 4
|
||||
* Type: Minion • Uruk-Hai
|
||||
* Strength: 7
|
||||
* Vitality: 3
|
||||
* Site: 5
|
||||
* Game Text: Damage +1. Skirmish: Exert this minion to make a companion skirmishing an [URUK-HAI] lurker minion
|
||||
* strength -2.
|
||||
*/
|
||||
public class Card13_175 extends AbstractMinion {
|
||||
public Card13_175() {
|
||||
super(4, 7, 3, 5, Race.URUK_HAI, Culture.URUK_HAI, "Uruk Tactician");
|
||||
addKeyword(Keyword.DAMAGE, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SKIRMISH, self, 0)
|
||||
&& PlayConditions.canSelfExert(self, game)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfExertEffect(action, self));
|
||||
action.appendEffect(
|
||||
new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId, -2,
|
||||
CardType.COMPANION,
|
||||
Filters.inSkirmishAgainst(Culture.URUK_HAI, CardType.MINION, Keyword.LURKER)));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,59 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.common.*;
|
||||
import com.gempukku.lotro.filters.Filter;
|
||||
import com.gempukku.lotro.filters.Filters;
|
||||
import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
import com.gempukku.lotro.logic.PlayUtils;
|
||||
import com.gempukku.lotro.logic.actions.PlayEventAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractEvent;
|
||||
import com.gempukku.lotro.logic.effects.ChooseArbitraryCardsEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndExertCharactersEffect;
|
||||
import com.gempukku.lotro.logic.timing.ExtraFilters;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 1
|
||||
* Type: Event • Skirmish
|
||||
* Game Text: Exert your [URUK-HAI] lurker minion to play an [URUK-HAI] hand weapon from your discard pile on your
|
||||
* [URUK-HAI] minion.
|
||||
*/
|
||||
public class Card13_176 extends AbstractEvent {
|
||||
public Card13_176() {
|
||||
super(Side.SHADOW, 1, Culture.URUK_HAI, "War Machine", Phase.SKIRMISH);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canExert(self, game, Filters.owner(self.getOwner()), Culture.URUK_HAI, CardType.MINION, Keyword.LURKER)
|
||||
&& PlayConditions.canPlayFromDiscard(self.getOwner(), game, Culture.URUK_HAI, PossessionClass.HAND_WEAPON, ExtraFilters.attachableTo(game, Filters.owner(self.getOwner()), Culture.URUK_HAI, CardType.MINION));
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayEventAction getPlayEventCardAction(final String playerId, LotroGame game, PhysicalCard self) {
|
||||
final Filter targetFilter = Filters.and(Filters.owner(playerId), Culture.URUK_HAI, CardType.MINION);
|
||||
PlayEventAction action = new PlayEventAction(self);
|
||||
action.appendCost(
|
||||
new ChooseAndExertCharactersEffect(action, playerId, 1, 1, Filters.owner(playerId), Culture.URUK_HAI, CardType.MINION, Keyword.LURKER));
|
||||
action.appendEffect(
|
||||
new ChooseArbitraryCardsEffect(playerId, "Choose card to play", game.getGameState().getDiscard(playerId),
|
||||
Filters.and(
|
||||
Culture.URUK_HAI, PossessionClass.HAND_WEAPON,
|
||||
ExtraFilters.attachableTo(game, targetFilter)), 1, 1) {
|
||||
@Override
|
||||
protected void cardsSelected(LotroGame game, Collection<PhysicalCard> selectedCards) {
|
||||
if (selectedCards.size() > 0) {
|
||||
PhysicalCard selectedCard = selectedCards.iterator().next();
|
||||
game.getActionsEnvironment().addActionToStack(PlayUtils.getPlayCardAction(game, selectedCard, 0, targetFilter, false));
|
||||
}
|
||||
}
|
||||
});
|
||||
return action;
|
||||
}
|
||||
}
|
||||
@@ -1,68 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set13.uruk_hai;
|
||||
|
||||
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.ActivateCardAction;
|
||||
import com.gempukku.lotro.logic.actions.RequiredTriggerAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.AddTokenEffect;
|
||||
import com.gempukku.lotro.logic.effects.ChoiceEffect;
|
||||
import com.gempukku.lotro.logic.effects.RemoveTokenEffect;
|
||||
import com.gempukku.lotro.logic.effects.SelfDiscardEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
import com.gempukku.lotro.logic.timing.EffectResult;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
import com.gempukku.lotro.logic.timing.TriggerConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Bloodlines
|
||||
* Side: Shadow
|
||||
* Culture: Uruk-hai
|
||||
* Twilight Cost: 0
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: When you play this, add an [URUK-HAI] token here for each wounded companion. Skirmish: Discard this from
|
||||
* play or remove 2 tokens from here to make a companion skirmishing an [URUK-HAI] minion strength -1.
|
||||
*/
|
||||
public class Card13_177 extends AbstractPermanent {
|
||||
public Card13_177() {
|
||||
super(Side.SHADOW, 0, CardType.CONDITION, Culture.URUK_HAI, "Weapons of Control");
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<RequiredTriggerAction> getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, PhysicalCard self) {
|
||||
if (TriggerConditions.played(game, effectResult, self)) {
|
||||
RequiredTriggerAction action = new RequiredTriggerAction(self);
|
||||
int count = Filters.countActive(game, CardType.COMPANION, Filters.wounded);
|
||||
if (count > 0)
|
||||
action.appendEffect(
|
||||
new AddTokenEffect(self, self, Token.URUK_HAI, count));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseShadowCardDuringPhase(game, Phase.SKIRMISH, self, 0)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
List<Effect> possibleCosts = new LinkedList<>();
|
||||
possibleCosts.add(
|
||||
new RemoveTokenEffect(self, self, Token.URUK_HAI, 2));
|
||||
possibleCosts.add(
|
||||
new SelfDiscardEffect(self));
|
||||
action.appendCost(
|
||||
new ChoiceEffect(action, playerId, possibleCosts));
|
||||
action.appendEffect(
|
||||
new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId, -1, CardType.COMPANION, Filters.inSkirmishAgainst(Culture.URUK_HAI, CardType.MINION)));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -27,6 +27,30 @@
|
||||
site: 5
|
||||
keywords: Damage+1
|
||||
effects: [
|
||||
{
|
||||
type: activated
|
||||
phase: shadow
|
||||
cost: [
|
||||
{
|
||||
type: exert
|
||||
filter: self
|
||||
}
|
||||
{
|
||||
type: spot
|
||||
filter: choose(side(free people),condition)
|
||||
memorize: spottedCondition
|
||||
}
|
||||
]
|
||||
effect: {
|
||||
type: modifyResistance
|
||||
filter: choose(unbound,companion)
|
||||
amount: {
|
||||
type: forEachYouCanSpot
|
||||
filter: nameFromMemory(spottedCondition)
|
||||
multiplier: -1
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>.<br><b>Shadow:</b> Exert this minion and spot a Free Peoples condition to make an unbound companion resistance -1 for each card that has the same card title as that condition.
|
||||
lore: Fear is a potent weapon in the hands of an Uruk-hai.
|
||||
@@ -66,6 +90,17 @@
|
||||
site: 5
|
||||
keywords: Damage+1
|
||||
effects: [
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: modifyStrength
|
||||
filter: self
|
||||
amount: {
|
||||
type: forEachToken
|
||||
filter: side(free people)
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>.<br>This minion is strength +1 for each Free Peoples culture token you can spot.
|
||||
lore: Theories and tactics of warfare were tested upon the battlefields of Middle-earth.
|
||||
@@ -105,6 +140,26 @@
|
||||
site: 5
|
||||
keywords: Damage+1
|
||||
effects: [
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: cantTakeWounds
|
||||
requires: [
|
||||
{
|
||||
type: canSpot
|
||||
filter: side(free people),hasAnyTokens
|
||||
}
|
||||
{
|
||||
type: not
|
||||
requires: {
|
||||
type: phase
|
||||
phase: skirmish
|
||||
}
|
||||
}
|
||||
]
|
||||
filter: self
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>.<br>While you can spot a Free Peoples culture token, this minion cannot take wounds except during skirmishes.
|
||||
lore: Saruman uses the enemy's strength to his own advantage.
|
||||
@@ -140,6 +195,62 @@
|
||||
type: Condition
|
||||
keywords: Support Area
|
||||
effects: [
|
||||
{
|
||||
type: activated
|
||||
phase: skirmish
|
||||
cost: {
|
||||
type: discard
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: modifyStrength
|
||||
filter: choose(culture(uruk-hai),minion)
|
||||
memorize: chosenMinion
|
||||
amount: {
|
||||
type: sum
|
||||
source: [
|
||||
{
|
||||
type: condition
|
||||
condition: {
|
||||
type: location
|
||||
filter: battleground
|
||||
}
|
||||
true: 1
|
||||
false: 0
|
||||
}
|
||||
{
|
||||
type: condition
|
||||
condition: {
|
||||
type: memoryMatches
|
||||
memory: chosenMinion
|
||||
filter: inSkirmishAgainst(companion,maxResistance(4))
|
||||
}
|
||||
true: 1
|
||||
false: 0
|
||||
}
|
||||
{
|
||||
type: condition
|
||||
condition: {
|
||||
type: memoryMatches
|
||||
memory: chosenMinion
|
||||
filter: hasAttached(possession)
|
||||
}
|
||||
true: 1
|
||||
false: 0
|
||||
}
|
||||
{
|
||||
type: condition
|
||||
condition: {
|
||||
type: canSpot
|
||||
filter: culture(uruk-hai),minion,notAssignedToSkirmish
|
||||
}
|
||||
true: 1
|
||||
false: 0
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Skirmish:</b> Discard this condition to make an [uruk-hai] minion strength +1 for each of the following that is true: it is at a battleground site; it is skirmishing a companion who has resistance 4 or less; it is bearing a possession; you can spot an [uruk-hai] minion not assigned to a skirmish.
|
||||
lore: ""
|
||||
@@ -175,6 +286,43 @@
|
||||
type: Condition
|
||||
keywords: Support Area
|
||||
effects: [
|
||||
{
|
||||
type: toPlay
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: culture(uruk-hai),minion
|
||||
count: 2
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: shadow
|
||||
cost: {
|
||||
type: discardFromHand
|
||||
forced: false
|
||||
count: 2
|
||||
}
|
||||
effect: {
|
||||
type: addTwilight
|
||||
amount: 1
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: regroup
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: culture(uruk-hai),minion
|
||||
}
|
||||
cost: {
|
||||
type: discard
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: addTwilight
|
||||
amount: 3
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: To play, spot 2 [uruk-hai] minions.<br><b>Shadow:</b> Discard 2 cards from hand to add (1).<br><b>Regroup:</b> Spot an [uruk-hai] minion and discard this condition from play to add (3).
|
||||
lore: Valour could not prevent the breach of the Deeping Wall.
|
||||
@@ -217,6 +365,14 @@
|
||||
Lurker
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: cantBeDiscarded
|
||||
filter: possession,attachedTo(self)
|
||||
by: side(free people)
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>. <b>Lurker</b>. <helper>(Skirmishes involving lurker minions must be resolved after any others.)</helper><br>Possessions borne by this minion cannot be discarded by Free Peoples cards.
|
||||
lore: An Uruk is disarmed only when it hurls its weapon.
|
||||
@@ -252,6 +408,32 @@
|
||||
type: Condition
|
||||
keywords: Support Area
|
||||
effects: [
|
||||
{
|
||||
type: toPlay
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: culture(uruk-hai),minion
|
||||
}
|
||||
}
|
||||
{
|
||||
type: trigger
|
||||
trigger: {
|
||||
type: played
|
||||
filter: self
|
||||
}
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: battleground,site,zone(adventure path)
|
||||
}
|
||||
effect: {
|
||||
type: repeat
|
||||
times: 3
|
||||
effect: {
|
||||
type: reinforceTokens
|
||||
culture: uruk-hai
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: To play, spot an [uruk-hai] minion.<br>When you play this, if you spot a battleground site on the adventure path, reinforce 3 [uruk-hai] tokens.<br>Each time the Free Peoples player plays the fellowship's next site, you may discard a condition from play.
|
||||
lore: ""
|
||||
@@ -291,6 +473,26 @@
|
||||
site: 5
|
||||
keywords: Damage+1
|
||||
effects: [
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: modifyArcheryTotal
|
||||
requires: {
|
||||
type: location
|
||||
filter: forest
|
||||
}
|
||||
side: free people
|
||||
amount: -1
|
||||
}
|
||||
}
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: modifyStrength
|
||||
filter: culture(elven),companion,inSkirmishAgainst(self)
|
||||
amount: -2
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>.<br>While the fellowship is at a forest site, the fellowship archery total is -1.<br>Each [elven] companion skirmishing this minion is strength -2.
|
||||
lore: The Uruk-hai trained to engage the enemy in its own territory.
|
||||
@@ -325,16 +527,26 @@
|
||||
twilight: 2
|
||||
type: Event
|
||||
keywords: Skirmish
|
||||
|
||||
effects: {
|
||||
type: event
|
||||
cost: {
|
||||
},
|
||||
effect: [
|
||||
{
|
||||
}
|
||||
]
|
||||
}
|
||||
effects: [
|
||||
{
|
||||
type: discount
|
||||
discount: {
|
||||
type: ifRemoveFromDiscard
|
||||
filter: culture(uruk-hai)
|
||||
count: 4
|
||||
}
|
||||
}
|
||||
{
|
||||
type: event
|
||||
effect: [
|
||||
{
|
||||
type: modifyStrength
|
||||
filter: choose(culture(uruk-hai),minion,inSkirmishAgainst(companion,maxResistance(4)))
|
||||
amount: 2
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
gametext: You may remove from the game 4 [uruk-hai] cards in your discard pile instead of paying the twilight cost for this card.<br>Make your [uruk-hai] minion skirmishing a companion with resistance 4 or less strength +2.
|
||||
lore: ...goblin-soldiers of greater stature.
|
||||
promotext: ""
|
||||
@@ -369,6 +581,22 @@
|
||||
type: Condition
|
||||
keywords: Support Area
|
||||
effects: [
|
||||
{
|
||||
type: trigger
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: culture(uruk-hai),lurker,minion
|
||||
count: 3
|
||||
}
|
||||
trigger: {
|
||||
type: startOfSkirmishInvolving
|
||||
filter: culture(uruk-hai),lurker,minion
|
||||
}
|
||||
effect: {
|
||||
type: exert
|
||||
filter: all(companion,inSkirmishAgainst(culture(uruk-hai),lurker,minion))
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: While you can spot 3 [uruk-hai] lurker minions, at the start of each skirmish involving an [uruk-hai] lurker minion, each companion skirmishing that minion must exert.
|
||||
lore: Horsemen were galloping on the grass of Rohan; wolves poured from Isengard.
|
||||
@@ -408,6 +636,14 @@
|
||||
site: 5
|
||||
keywords: Damage+1
|
||||
effects: [
|
||||
{
|
||||
type: modifyOwnCost
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: companion,maxResistance(0)
|
||||
}
|
||||
amount: -2
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>.<br>When you play this, you may spot a companion who has resistance 0 to make this minion twilight cost -2.
|
||||
lore: The defenses of the Hornburg were exploited, exposing their weakest points.
|
||||
@@ -446,6 +682,50 @@
|
||||
vitality: 2
|
||||
site: 5
|
||||
effects: [
|
||||
{
|
||||
type: toPlay
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: culture(uruk-hai),minion
|
||||
}
|
||||
}
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: addKeyword
|
||||
requires: {
|
||||
type: location
|
||||
filter: regionNumber(1)
|
||||
}
|
||||
filter: urukHai
|
||||
keyword: damage
|
||||
amount: 1
|
||||
}
|
||||
}
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: modifyStrength
|
||||
requires: {
|
||||
type: location
|
||||
filter: regionNumber(2)
|
||||
}
|
||||
filter: companion
|
||||
amount: -1
|
||||
}
|
||||
}
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: modifyResistance
|
||||
requires: {
|
||||
type: location
|
||||
filter: regionNumber(3)
|
||||
}
|
||||
filter: unbound,companion
|
||||
amount: -2
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: To play, spot an [uruk-hai] minion.<br>While the fellowship is in region 1, each Uruk-hai is <b>damage +1</b>.<br>While the fellowship is in region 2, each companion is strength -1.<br>While the fellowship is in region 3, each unbound companion is resistance -2.
|
||||
lore: ""
|
||||
@@ -485,6 +765,22 @@
|
||||
site: 5
|
||||
keywords: Damage+1
|
||||
effects: [
|
||||
{
|
||||
type: activated
|
||||
phase: skirmish
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: self,notAssignedToSkirmish
|
||||
}
|
||||
cost: {
|
||||
type: exert
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: discard
|
||||
filter: choose(possession,attachedTo(companion,inSkirmishAgainst(another,culture(uruk-hai),minion)))
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>.<br><b>Skirmish:</b> If this minion is not assigned to a skirmish, you may exert it to discard a possession borne by a companion skirmishing another [uruk-hai] minion.
|
||||
lore: Wounds do not always remove the Uruk-hai from their assault.
|
||||
@@ -524,6 +820,14 @@
|
||||
site: 5
|
||||
keywords: Damage+1
|
||||
effects: [
|
||||
{
|
||||
type: modifyOwnCost
|
||||
amount: {
|
||||
type: forEachYouCanSpot
|
||||
filter: companion,maxResistance(2)
|
||||
multiplier: -1
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>.<br>This minion is twilight cost -1 for each companion who has resistance 2 or less.
|
||||
lore: To sense weakness is to assume victory.
|
||||
@@ -562,6 +866,18 @@
|
||||
vitality: 2
|
||||
site: 5
|
||||
effects: [
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: addKeyword
|
||||
filter: self
|
||||
keyword: damage
|
||||
amount: {
|
||||
type: forEachInDeadPile
|
||||
filter: character
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: This minion is <b>damage +1</b> for each character in the dead pile.
|
||||
lore: The lesser the enemy, the greater the rage.
|
||||
@@ -604,6 +920,19 @@
|
||||
Lurker
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: trigger
|
||||
optional: true
|
||||
trigger: {
|
||||
type: aboutToBeKilled
|
||||
filter: culture(uruk-hai),minion,inSkirmish
|
||||
memorize: killed
|
||||
}
|
||||
effect: {
|
||||
type: putCardsFromPlayOnBottomOfDeck
|
||||
filter: choose(memory(killed),culture(uruk-hai),minion,inSkirmish)
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>. <b>Lurker</b>. <helper>(Skirmishes involving lurker minions must be resolved after any others.)</helper><br>Each time your [uruk-hai] minion is about to be killed in a skirmish, you may place that minion on the bottom of your draw deck instead.
|
||||
lore: ""
|
||||
@@ -643,6 +972,33 @@
|
||||
site: 5
|
||||
keywords: Damage+1
|
||||
effects: [
|
||||
{
|
||||
type: activated
|
||||
phase: skirmish
|
||||
requires: {
|
||||
type: cantSpot
|
||||
filter: other,minion,assignedToSkirmish(any)
|
||||
}
|
||||
cost: {
|
||||
type: exert
|
||||
filter: self
|
||||
times: 2
|
||||
}
|
||||
effect: [
|
||||
{
|
||||
type: addKeyword
|
||||
filter: self
|
||||
keyword: fierce
|
||||
until: regroup
|
||||
}
|
||||
{
|
||||
type: modifyStrength
|
||||
filter: self
|
||||
amount: 4
|
||||
until: regroup
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>.<br><b>Skirmish:</b> If no other minions are assigned to a skirmish, exert this minion twice to make it <b>fierce</b> and strength +4 until the regroup phase.
|
||||
lore: Some minions prefer to fight alone.
|
||||
@@ -682,6 +1038,19 @@
|
||||
site: 5
|
||||
keywords: Damage+1
|
||||
effects: [
|
||||
{
|
||||
type: activated
|
||||
phase: skirmish
|
||||
cost: {
|
||||
type: exert
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: modifyStrength
|
||||
filter: choose(companion,inSkirmishAgainst(culture(uruk-hai),lurker))
|
||||
amount: -2
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Damage +1</b>.<br><b>Skirmish:</b> Exert this minion to make a companion skirmishing an [uruk-hai] lurker minion strength -2.
|
||||
lore: Select warriors had been tasked with advancing the assault beyond the Deeping Wall.
|
||||
@@ -716,13 +1085,17 @@
|
||||
twilight: 1
|
||||
type: Event
|
||||
keywords: Skirmish
|
||||
|
||||
effects: {
|
||||
type: event
|
||||
cost: {
|
||||
},
|
||||
type: exert
|
||||
filter: choose(your,lurker,minion)
|
||||
}
|
||||
effect: [
|
||||
{
|
||||
type: playCardFromDiscard
|
||||
filter: choose(culture(uruk-hai),hand weapon)
|
||||
on: your,culture(uruk-hai),minion
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -760,6 +1133,49 @@
|
||||
type: Condition
|
||||
keywords: Support Area
|
||||
effects: [
|
||||
{
|
||||
type: trigger
|
||||
trigger: {
|
||||
type: played
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: addTokens
|
||||
culture: uruk-hai
|
||||
filter: self
|
||||
count: {
|
||||
type: forEachYouCanSpot
|
||||
filter: wounded,companion
|
||||
}
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: skirmish
|
||||
cost: {
|
||||
type: choice
|
||||
texts: [
|
||||
Disard this from play
|
||||
Remove 2 tokens from here
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: discard
|
||||
filter: self
|
||||
}
|
||||
{
|
||||
type: removeTokens
|
||||
filter: self
|
||||
count: 2
|
||||
}
|
||||
]
|
||||
}
|
||||
effect: {
|
||||
type: modifyStrength
|
||||
filter: choose(companion,inSkirmishAgainst(culture(uruk-hai),minion))
|
||||
amount: -1
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: When you play this, add an [uruk-hai] token here for each wounded companion.<br><b>Skirmish:</b> Discard this from play or remove 2 tokens from here to make a companion skirmishing an [uruk-hai] minion strength -1.
|
||||
lore: ""
|
||||
@@ -14,6 +14,7 @@ import org.json.simple.JSONObject;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
public class ValueResolver {
|
||||
@@ -280,13 +281,13 @@ public class ValueResolver {
|
||||
final FilterableSource filterableSource = environment.getFilterFactory().generateFilter(filter, environment);
|
||||
return new SmartValueSource(environment, object,
|
||||
actionContext -> (game, cardAffected) -> {
|
||||
final Filterable filterable = filterableSource.getFilterable(actionContext);
|
||||
int count = 0;
|
||||
for (String player : game.getGameState().getPlayerOrder().getAllPlayers())
|
||||
count += Filters.filter(game.getGameState().getDiscard(player), game, filterable).size();
|
||||
final Filterable filterable = filterableSource.getFilterable(actionContext);
|
||||
int count = 0;
|
||||
for (String player : game.getGameState().getPlayerOrder().getAllPlayers())
|
||||
count += Filters.filter(game.getGameState().getDiscard(player), game, filterable).size();
|
||||
|
||||
return count;
|
||||
}
|
||||
}
|
||||
);
|
||||
} else if (type.equalsIgnoreCase("forEachTopCardOfDeckUntilMatching")) {
|
||||
FieldUtils.validateAllowedFields(object, "filter", "deck", "over", "limit", "multiplier", "divider");
|
||||
@@ -586,7 +587,14 @@ public class ValueResolver {
|
||||
int result = 0;
|
||||
final Filterable filterable = filterableSource.getFilterable(actionContext);
|
||||
for (PhysicalCard physicalCard : Filters.filterActive(game, filterable)) {
|
||||
result += game.getGameState().getTokenCount(physicalCard, tokenForCulture);
|
||||
if (tokenForCulture != null) {
|
||||
result += game.getGameState().getTokenCount(physicalCard, tokenForCulture);
|
||||
} else {
|
||||
for (Map.Entry<Token, Integer> tokens : game.getGameState().getTokens(physicalCard).entrySet()) {
|
||||
if (tokens.getKey().getCulture() != null)
|
||||
result += tokens.getValue();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return multiplier * Math.min(limit, result);
|
||||
|
||||
Reference in New Issue
Block a user