"Bag End"

This commit is contained in:
marcins78
2013-02-13 11:29:41 +00:00
parent 8558137751
commit 07f3645e4a
3 changed files with 54 additions and 1 deletions

View File

@@ -0,0 +1,48 @@
package com.gempukku.lotro.cards.set20.site;
import com.gempukku.lotro.cards.AbstractSite;
import com.gempukku.lotro.cards.PlayConditions;
import com.gempukku.lotro.cards.effects.SnapshotAndApplyStrengthModifierUntilStartOfPhaseEffect;
import com.gempukku.lotro.common.Block;
import com.gempukku.lotro.common.Keyword;
import com.gempukku.lotro.common.Phase;
import com.gempukku.lotro.filters.Filters;
import com.gempukku.lotro.game.PhysicalCard;
import com.gempukku.lotro.game.state.LotroGame;
import com.gempukku.lotro.logic.GameUtils;
import com.gempukku.lotro.logic.actions.ActivateCardAction;
import com.gempukku.lotro.logic.effects.ChooseAndDiscardCardsFromHandEffect;
import com.gempukku.lotro.logic.modifiers.evaluator.ConstantEvaluator;
import com.gempukku.lotro.logic.timing.Action;
import java.util.Collections;
import java.util.List;
/**
* Bag End
* 1 0
* Dwelling.
* Fellowship: Discard a card from hand to make Frodo strength +1 until the regroup phase.
*/
public class Card20_416 extends AbstractSite {
public Card20_416() {
super("Bag End", Block.SECOND_ED, 1, 0, null);
addKeyword(Keyword.DWELLING);
}
@Override
public List<? extends Action> getPhaseActions(String playerId, LotroGame game, PhysicalCard self) {
if (PlayConditions.canUseSiteDuringPhase(game, Phase.FELLOWSHIP, self)
&& GameUtils.isFP(game, playerId)
&& PlayConditions.canDiscardFromHand(game, playerId, 1, Filters.any)) {
ActivateCardAction action = new ActivateCardAction(self);
action.appendCost(
new ChooseAndDiscardCardsFromHandEffect(action, playerId, false, 1));
action.appendEffect(
new SnapshotAndApplyStrengthModifierUntilStartOfPhaseEffect(self,
new ConstantEvaluator(1), Phase.REGROUP, Filters.frodo));
return Collections.singletonList(action);
}
return null;
}
}

View File

@@ -1,7 +1,8 @@
package com.gempukku.lotro.common;
public enum Block {
FELLOWSHIP("Fellowship"), TWO_TOWERS("Towers"), KING("King"), SHADOWS("Shadows and onwards"), SPECIAL("Special");
FELLOWSHIP("Fellowship"), TWO_TOWERS("Towers"), KING("King"), SHADOWS("Shadows and onwards"), SPECIAL("Special"),
SECOND_ED("2nd edition");
private String _humanReadable;

View File

@@ -13,6 +13,10 @@ import com.gempukku.lotro.logic.modifiers.ModifiersQuerying;
import java.util.*;
public class GameUtils {
public static boolean isFP(LotroGame game, String playerId) {
return game.getGameState().getCurrentPlayerId().equals(playerId);
}
public static String getFullName(PhysicalCard card) {
LotroCardBlueprint blueprint = card.getBlueprint();
return getFullName(blueprint);