"Rare Good Balast"

This commit is contained in:
marcins78@gmail.com
2011-10-19 15:15:08 +00:00
parent a3f1ddae9b
commit 261320a365
2 changed files with 66 additions and 3 deletions

View File

@@ -29,9 +29,7 @@ public class Card5_112 extends AbstractEvent {
public boolean checkPlayRequirements(String playerId, LotroGame game, PhysicalCard self, int twilightModifier) {
return super.checkPlayRequirements(playerId, game, self, twilightModifier)
&& PlayConditions.canSpot(game, Filters.name("Sam"))
&& (
PlayConditions.canBeDiscarded(self, game, Filters.name("Smeagol"))
|| PlayConditions.canBeDiscarded(self, game, Filters.name("Gollum")));
&& PlayConditions.canBeDiscarded(self, game, Filters.or(Filters.name("Smeagol"), Filters.name("Gollum")));
}
@Override

View File

@@ -0,0 +1,65 @@
package com.gempukku.lotro.cards.set5.shire;
import com.gempukku.lotro.cards.AbstractAttachable;
import com.gempukku.lotro.cards.PlayConditions;
import com.gempukku.lotro.cards.effects.CancelActivatedEffect;
import com.gempukku.lotro.cards.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
import com.gempukku.lotro.cards.modifiers.VitalityModifier;
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.effects.ActivateCardEffect;
import com.gempukku.lotro.logic.modifiers.Modifier;
import com.gempukku.lotro.logic.timing.Action;
import com.gempukku.lotro.logic.timing.Effect;
import com.gempukku.lotro.logic.timing.EffectResult;
import java.util.Collections;
import java.util.List;
/**
* Set: Battle of Helm's Deep
* Side: Free
* Culture: Shire
* Twilight Cost: 1
* Type: Condition
* Vitality: +1
* Game Text: Plays on Sam. Response: If a regroup special ability is used, discard Smeagol or Gollum to cancel
* that action.
*/
public class Card5_114 extends AbstractAttachable {
public Card5_114() {
super(Side.FREE_PEOPLE, CardType.CONDITION, 1, Culture.SHIRE, null, "Rare Good Balast", true);
}
@Override
protected Filterable getValidTargetFilter(String playerId, LotroGame game, PhysicalCard self) {
return Filters.name("Sam");
}
@Override
public List<? extends Modifier> getAlwaysOnModifiers(LotroGame game, PhysicalCard self) {
return Collections.singletonList(
new VitalityModifier(self, Filters.hasAttached(self), 1));
}
@Override
public List<? extends Action> getOptionalInPlayBeforeActions(String playerId, LotroGame game, Effect effect, PhysicalCard self) {
if (effect.getType() == EffectResult.Type.ACTIVATE) {
ActivateCardEffect activateEffect = (ActivateCardEffect) effect;
if (activateEffect.getActionTimeword() == Phase.REGROUP
&& !activateEffect.isCancelled()
&& PlayConditions.canBeDiscarded(self, game, Filters.or(Filters.name("Smeagol"), Filters.name("Gollum")))) {
ActivateCardAction action = new ActivateCardAction(self);
action.appendCost(
new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1, Filters.or(Filters.name("Smeagol"), Filters.name("Gollum"))));
action.appendEffect(
new CancelActivatedEffect(self, activateEffect));
return Collections.singletonList(action);
}
}
return null;
}
}