"No Mere Ranger"
This commit is contained in:
@@ -39,7 +39,8 @@ public class Card2_017 extends AbstractResponseEvent {
|
|||||||
@Override
|
@Override
|
||||||
public List<PlayEventAction> getOptionalAfterActions(String playerId, LotroGame game, EffectResult effectResult, final PhysicalCard self) {
|
public List<PlayEventAction> getOptionalAfterActions(String playerId, LotroGame game, EffectResult effectResult, final PhysicalCard self) {
|
||||||
if (PlayConditions.winsSkirmish(game.getGameState(), game.getModifiersQuerying(), effectResult, Filters.and(Filters.race(Race.ELF), Filters.keyword(Keyword.ARCHER)))
|
if (PlayConditions.winsSkirmish(game.getGameState(), game.getModifiersQuerying(), effectResult, Filters.and(Filters.race(Race.ELF), Filters.keyword(Keyword.ARCHER)))
|
||||||
&& PlayConditions.canPlayCardDuringPhase(game, (Phase) null, self)) {
|
&& PlayConditions.canPlayCardDuringPhase(game, (Phase) null, self)
|
||||||
|
&& checkPlayRequirements(playerId, game, self, 0)) {
|
||||||
final PlayEventAction action = new PlayEventAction(self);
|
final PlayEventAction action = new PlayEventAction(self);
|
||||||
action.appendEffect(
|
action.appendEffect(
|
||||||
new ChooseOpponentEffect(playerId) {
|
new ChooseOpponentEffect(playerId) {
|
||||||
|
|||||||
@@ -38,7 +38,8 @@ public class Card2_033 extends AbstractResponseEvent {
|
|||||||
@Override
|
@Override
|
||||||
public List<PlayEventAction> getOptionalAfterActions(String playerId, LotroGame game, EffectResult effectResult, final PhysicalCard self) {
|
public List<PlayEventAction> getOptionalAfterActions(String playerId, LotroGame game, EffectResult effectResult, final PhysicalCard self) {
|
||||||
if (PlayConditions.canPlayCardDuringPhase(game, (Phase) null, self)
|
if (PlayConditions.canPlayCardDuringPhase(game, (Phase) null, self)
|
||||||
&& PlayConditions.winsSkirmish(game.getGameState(), game.getModifiersQuerying(), effectResult, Filters.and(Filters.culture(Culture.GONDOR), Filters.type(CardType.COMPANION)))) {
|
&& PlayConditions.winsSkirmish(game.getGameState(), game.getModifiersQuerying(), effectResult, Filters.and(Filters.culture(Culture.GONDOR), Filters.type(CardType.COMPANION)))
|
||||||
|
&& checkPlayRequirements(playerId, game, self, 0)) {
|
||||||
final PlayEventAction action = new PlayEventAction(self);
|
final PlayEventAction action = new PlayEventAction(self);
|
||||||
action.appendEffect(
|
action.appendEffect(
|
||||||
new ChooseActiveCardEffect(playerId, "Choose a minion", Filters.not(Filters.canExert()), Filters.race(Race.ORC)) {
|
new ChooseActiveCardEffect(playerId, "Choose a minion", Filters.not(Filters.canExert()), Filters.race(Race.ORC)) {
|
||||||
|
|||||||
@@ -40,7 +40,8 @@ public class Card2_034 extends AbstractResponseEvent {
|
|||||||
@Override
|
@Override
|
||||||
public List<PlayEventAction> getOptionalBeforeActions(String playerId, LotroGame game, Effect effect, PhysicalCard self) {
|
public List<PlayEventAction> getOptionalBeforeActions(String playerId, LotroGame game, Effect effect, PhysicalCard self) {
|
||||||
if (effect.getType() == EffectResult.Type.WOUND
|
if (effect.getType() == EffectResult.Type.WOUND
|
||||||
&& Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.culture(Culture.GONDOR), Filters.type(CardType.COMPANION), Filters.canExert())) {
|
&& Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.culture(Culture.GONDOR), Filters.type(CardType.COMPANION), Filters.canExert())
|
||||||
|
&& checkPlayRequirements(playerId, game, self, 0)) {
|
||||||
final WoundCharacterEffect woundEffect = (WoundCharacterEffect) effect;
|
final WoundCharacterEffect woundEffect = (WoundCharacterEffect) effect;
|
||||||
Collection<PhysicalCard> woundedCards = woundEffect.getCardsToBeAffected(game);
|
Collection<PhysicalCard> woundedCards = woundEffect.getCardsToBeAffected(game);
|
||||||
if (Filters.filter(woundedCards, game.getGameState(), game.getModifiersQuerying(), Filters.type(CardType.COMPANION)).size() > 0) {
|
if (Filters.filter(woundedCards, game.getGameState(), game.getModifiersQuerying(), Filters.type(CardType.COMPANION)).size() > 0) {
|
||||||
|
|||||||
@@ -0,0 +1,56 @@
|
|||||||
|
package com.gempukku.lotro.cards.set2.gondor;
|
||||||
|
|
||||||
|
import com.gempukku.lotro.cards.AbstractEvent;
|
||||||
|
import com.gempukku.lotro.cards.actions.PlayEventAction;
|
||||||
|
import com.gempukku.lotro.cards.costs.ChooseAndExertCharactersCost;
|
||||||
|
import com.gempukku.lotro.cards.effects.AddUntilEndOfPhaseModifierEffect;
|
||||||
|
import com.gempukku.lotro.cards.modifiers.StrengthModifier;
|
||||||
|
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.effects.ChooseActiveCardEffect;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set: Mines of Moria
|
||||||
|
* Side: Free
|
||||||
|
* Culture: Gondor
|
||||||
|
* Twilight Cost: 0
|
||||||
|
* Type: Event
|
||||||
|
* Game Text: Skirmish: Exert Aragorn to make another companion strength +2 (or +3 if that companion has the Aragorn
|
||||||
|
* signet).
|
||||||
|
*/
|
||||||
|
public class Card2_036 extends AbstractEvent {
|
||||||
|
public Card2_036() {
|
||||||
|
super(Side.FREE_PEOPLE, Culture.GONDOR, "No Mere Ranger", Phase.SKIRMISH);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getTwilightCost() {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) {
|
||||||
|
return super.checkPlayRequirements(playerId, game, self, twilightModifier)
|
||||||
|
&& Filters.canSpot(game.getGameState(), game.getModifiersQuerying(), Filters.name("Aragorn"), Filters.canExert());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PlayEventAction getPlayCardAction(String playerId, LotroGame game, final PhysicalCard self, int twilightModifier) {
|
||||||
|
final PlayEventAction action = new PlayEventAction(self);
|
||||||
|
action.appendCost(
|
||||||
|
new ChooseAndExertCharactersCost(action, playerId, 1, 1, Filters.name("Aragorn")));
|
||||||
|
action.appendEffect(
|
||||||
|
new ChooseActiveCardEffect(playerId, "Choose another companion", Filters.type(CardType.COMPANION), Filters.not(Filters.name("Aragorn"))) {
|
||||||
|
@Override
|
||||||
|
protected void cardSelected(PhysicalCard card) {
|
||||||
|
int bonus = (card.getBlueprint().getSignet() == Signet.ARAGORN) ? 3 : 2;
|
||||||
|
action.insertEffect(
|
||||||
|
new AddUntilEndOfPhaseModifierEffect(
|
||||||
|
new StrengthModifier(self, Filters.sameCard(card), bonus), Phase.SKIRMISH));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return action;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user