"Fool's Hope"

This commit is contained in:
marcins78@gmail.com
2011-10-28 10:37:05 +00:00
parent 15c75e76ae
commit 73b4a99a1d

View File

@@ -0,0 +1,61 @@
package com.gempukku.lotro.cards.set7.gandalf;
import com.gempukku.lotro.cards.AbstractEvent;
import com.gempukku.lotro.cards.PlayConditions;
import com.gempukku.lotro.cards.actions.PlayEventAction;
import com.gempukku.lotro.cards.effects.choose.ChooseAndDiscardCardsFromHandEffect;
import com.gempukku.lotro.cards.effects.choose.ChooseOpponentEffect;
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.effects.ChooseActiveCardsEffect;
import com.gempukku.lotro.logic.effects.DiscardCardsFromPlayEffect;
import java.util.Collection;
/**
* Set: The Return of the King
* Side: Free
* Culture: Gandalf
* Twilight Cost: 3
* Type: Event • Fellowship
* Game Text: Spot Gandalf and discard 2 cards from hand to make an opponent discard all but 2 Shadow conditions.
*/
public class Card7_035 extends AbstractEvent {
public Card7_035() {
super(Side.FREE_PEOPLE, 3, Culture.GANDALF, "Fool's Hope", Phase.FELLOWSHIP);
}
@Override
public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) {
return super.checkPlayRequirements(playerId, game, self, twilightModifier)
&& PlayConditions.canSpot(game, Filters.name("Gandalf"))
&& PlayConditions.canDiscardCardsFromHandToPlay(self, game, playerId, 2, Filters.any);
}
@Override
public PlayEventAction getPlayCardAction(String playerId, LotroGame game, final PhysicalCard self, int twilightModifier) {
final PlayEventAction action = new PlayEventAction(self);
action.appendCost(
new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 2));
action.appendEffect(
new ChooseOpponentEffect(playerId) {
@Override
protected void opponentChosen(String opponentId) {
action.insertEffect(
new ChooseActiveCardsEffect(self, opponentId, "Choose 2 Shadow conditions to spare", 2, 2, Side.SHADOW, CardType.CONDITION) {
@Override
protected void cardsSelected(LotroGame game, Collection<PhysicalCard> cards) {
action.insertEffect(
new DiscardCardsFromPlayEffect(self, Side.SHADOW, CardType.CONDITION, Filters.not(Filters.in(cards))));
}
});
}
});
return action;
}
}