"Dunlending Arsonist"

This commit is contained in:
marcins78@gmail.com
2011-10-05 15:23:01 +00:00
parent 0f54ff641c
commit 1306453539
2 changed files with 63 additions and 0 deletions

View File

@@ -58,10 +58,14 @@ public class ChooseAndPlayCardFromHandEffect extends AbstractEffect {
public void decisionMade(String result) throws DecisionResultInvalidException {
final PhysicalCard selectedCard = getSelectedCardsByResponse(result).iterator().next();
game.getActionsEnvironment().addActionToStack(selectedCard.getBlueprint().getPlayCardAction(_playerId, game, selectedCard, _twilightModifier));
cardChosenCallback(selectedCard);
}
});
return new FullEffectResult(null, true, true);
}
return new FullEffectResult(null, false, false);
}
protected void cardChosenCallback(PhysicalCard cardChosenToPlay) {
}
}

View File

@@ -0,0 +1,59 @@
package com.gempukku.lotro.cards.set4.dunland;
import com.gempukku.lotro.cards.AbstractMinion;
import com.gempukku.lotro.cards.PlayConditions;
import com.gempukku.lotro.cards.effects.AddUntilStartOfPhaseModifierEffect;
import com.gempukku.lotro.cards.effects.ChooseAndPlayCardFromHandEffect;
import com.gempukku.lotro.common.Culture;
import com.gempukku.lotro.common.Keyword;
import com.gempukku.lotro.common.Phase;
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.modifiers.KeywordModifier;
import com.gempukku.lotro.logic.timing.EffectResult;
import java.util.Collections;
import java.util.List;
/**
* Set: The Two Towers
* Side: Shadow
* Culture: Dunland
* Twilight Cost: 4
* Type: Minion • Man
* Strength: 10
* Vitality: 1
* Site: 3
* Game Text: Each time this minion wins a skirmish, you may play a [DUNLAND] Man from hand; his twilight cost is -2.
* That Man is fierce and damage +1 until the regroup phase.
*/
public class Card4_009 extends AbstractMinion {
public Card4_009() {
super(4, 10, 1, 3, Race.MAN, Culture.DUNLAND, "Dunlending Arsonist");
}
@Override
public List<OptionalTriggerAction> getOptionalAfterTriggers(String playerId, LotroGame game, EffectResult effectResult, final PhysicalCard self) {
if (PlayConditions.winsSkirmish(effectResult, self)
&& Filters.filter(game.getGameState().getHand(playerId), game.getGameState(), game.getModifiersQuerying(), Filters.culture(Culture.DUNLAND), Filters.race(Race.MAN), Filters.playable(game, -2)).size() > 0) {
final OptionalTriggerAction action = new OptionalTriggerAction(self);
action.appendEffect(
new ChooseAndPlayCardFromHandEffect(playerId, game.getGameState().getHand(playerId), Filters.and(Filters.culture(Culture.DUNLAND), Filters.race(Race.MAN)), -2) {
@Override
protected void cardChosenCallback(PhysicalCard cardChosenToPlay) {
action.appendEffect(
new AddUntilStartOfPhaseModifierEffect(
new KeywordModifier(self, Filters.sameCard(cardChosenToPlay), Keyword.FIERCE), Phase.REGROUP));
action.appendEffect(
new AddUntilStartOfPhaseModifierEffect(
new KeywordModifier(self, Filters.sameCard(cardChosenToPlay), Keyword.DAMAGE), Phase.REGROUP));
}
});
return Collections.singletonList(action);
}
return null;
}
}