Migrated Shire cards in set 17 to hjson
This commit is contained in:
@@ -1,49 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set17.shire;
|
||||
|
||||
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.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.CancelSkirmishEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Rise of Saruman
|
||||
* Side: Free
|
||||
* Culture: Shire
|
||||
* Twilight Cost: 1
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: Pipeweed. To play, spot a Hobbit. Skirmish: Discard a pipeweed from play to cancel a skirmish involving
|
||||
* an unbound Hobbit.
|
||||
*/
|
||||
public class Card17_106 extends AbstractPermanent {
|
||||
public Card17_106() {
|
||||
super(Side.FREE_PEOPLE, 1, CardType.CONDITION, Culture.SHIRE, "Halfling Leaf");
|
||||
addKeyword(Keyword.PIPEWEED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canSpot(game, Race.HOBBIT);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self)
|
||||
&& PlayConditions.canDiscardFromPlay(self, game, Keyword.PIPEWEED)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1, Keyword.PIPEWEED));
|
||||
action.appendEffect(
|
||||
new CancelSkirmishEffect(Filters.unboundCompanion, Race.HOBBIT));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,55 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set17.shire;
|
||||
|
||||
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.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
import com.gempukku.lotro.logic.actions.ActivateCardAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractCompanion;
|
||||
import com.gempukku.lotro.logic.effects.SelfExertEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndPutCardFromDiscardOnBottomOfDeckEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.RaceSpotModifier;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Rise of Saruman
|
||||
* Side: Free
|
||||
* Culture: Shire
|
||||
* Twilight Cost: 1
|
||||
* Type: Companion • Hobbit
|
||||
* Strength: 3
|
||||
* Vitality: 4
|
||||
* Resistance: 8
|
||||
* Game Text: Add 1 to the number of Ents you can spot. Regroup: Exert Merry to place a pipeweed from your discard pile
|
||||
* beneath your draw deck.
|
||||
*/
|
||||
public class Card17_107 extends AbstractCompanion {
|
||||
public Card17_107() {
|
||||
super(1, 3, 4, 8, Culture.SHIRE, Race.HOBBIT, null, "Merry", "In the Bloom of Health", true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
return Collections.singletonList(new RaceSpotModifier(self, Race.ENT));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.REGROUP, self)
|
||||
&& PlayConditions.canSelfExert(self, game)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfExertEffect(action, self));
|
||||
action.appendEffect(
|
||||
new ChooseAndPutCardFromDiscardOnBottomOfDeckEffect(action, playerId, 1, 1, Keyword.PIPEWEED));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,60 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set17.shire;
|
||||
|
||||
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.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.RemoveThreatsEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Rise of Saruman
|
||||
* Side: Free
|
||||
* Culture: Shire
|
||||
* Twilight Cost: 1
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: Pipeweed. To play, spot an unbound Hobbit. Regroup: Discard a pipeweed from play to remove a threat.
|
||||
* Regroup: Discard a pipeweed from play to discard a minion.
|
||||
*/
|
||||
public class Card17_108 extends AbstractPermanent {
|
||||
public Card17_108() {
|
||||
super(Side.FREE_PEOPLE, 1, CardType.CONDITION, Culture.SHIRE, "Hornblower Leaf");
|
||||
addKeyword(Keyword.PIPEWEED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canSpot(game, Filters.unboundCompanion, Race.HOBBIT);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.REGROUP, self)
|
||||
&& PlayConditions.canDiscardFromPlay(self, game, Keyword.PIPEWEED)) {
|
||||
List<ActivateCardAction> actions = new LinkedList<>();
|
||||
ActivateCardAction action1 = new ActivateCardAction(self);
|
||||
action1.setText("Remove a threat");
|
||||
action1.appendCost(
|
||||
new ChooseAndDiscardCardsFromPlayEffect(action1, playerId, 1, 1, Keyword.PIPEWEED));
|
||||
action1.appendEffect(
|
||||
new RemoveThreatsEffect(self, 1));
|
||||
actions.add(action1);
|
||||
|
||||
ActivateCardAction action2 = new ActivateCardAction(self);
|
||||
action2.setText("Discard a minion");
|
||||
action2.appendCost(
|
||||
new ChooseAndDiscardCardsFromPlayEffect(action2, playerId, 1, 1, Keyword.PIPEWEED));
|
||||
action2.appendEffect(
|
||||
new ChooseAndDiscardCardsFromPlayEffect(action2, playerId, 1, 1, CardType.MINION));
|
||||
actions.add(action2);
|
||||
return actions;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,54 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set17.shire;
|
||||
|
||||
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.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
import com.gempukku.lotro.logic.actions.ActivateCardAction;
|
||||
import com.gempukku.lotro.logic.cardtype.AbstractCompanion;
|
||||
import com.gempukku.lotro.logic.effects.RemoveBurdenEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
import com.gempukku.lotro.logic.modifiers.RaceSpotModifier;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Rise of Saruman
|
||||
* Side: Free
|
||||
* Culture: Shire
|
||||
* Twilight Cost: 1
|
||||
* Type: Companion • Hobbit
|
||||
* Strength: 3
|
||||
* Vitality: 4
|
||||
* Resistance: 8
|
||||
* Game Text: Add 1 to the number of Ents you can spot. Maneuver: Discard 2 pipeweed cards from play to remove a burden.
|
||||
*/
|
||||
public class Card17_109 extends AbstractCompanion {
|
||||
public Card17_109() {
|
||||
super(1, 3, 4, 8, Culture.SHIRE, Race.HOBBIT, null, "Pippin", "In the Bloom of Health", true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends Modifier> getInPlayModifiers(LotroGame game, PhysicalCard self) {
|
||||
return Collections.singletonList(new RaceSpotModifier(self, Race.ENT));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.MANEUVER, self)
|
||||
&& PlayConditions.canDiscardFromPlay(self, game, 2, Keyword.PIPEWEED)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 2, 2, Keyword.PIPEWEED));
|
||||
action.appendEffect(
|
||||
new RemoveBurdenEffect(playerId, self));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,61 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set17.shire;
|
||||
|
||||
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.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.SelfDiscardEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndAddUntilEOPStrengthBonusEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndPlayCardFromDeckEffect;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Rise of Saruman
|
||||
* Side: Free
|
||||
* Culture: Shire
|
||||
* Twilight Cost: 1
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: Pipeweed. To play, spot an unbound Hobbit. Skirmish: Discard a pipeweed from play to make an unbound
|
||||
* Hobbit strength +2. Regroup: Discard this pipeweed from play to play a pipeweed from your draw deck. Reshuffle your
|
||||
* draw deck.
|
||||
*/
|
||||
public class Card17_110 extends AbstractPermanent {
|
||||
public Card17_110() {
|
||||
super(Side.FREE_PEOPLE, 1, CardType.CONDITION, Culture.SHIRE, "Southfarthing Leaf");
|
||||
addKeyword(Keyword.PIPEWEED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canSpot(game, Filters.unboundCompanion, Race.HOBBIT);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, PhysicalCard self) {
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self)
|
||||
&& PlayConditions.canDiscardFromPlay(self, game, Keyword.PIPEWEED)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1, Keyword.PIPEWEED));
|
||||
action.appendEffect(
|
||||
new ChooseAndAddUntilEOPStrengthBonusEffect(action, self, playerId, 2, Filters.unboundCompanion, Race.HOBBIT));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.REGROUP, self)
|
||||
&& PlayConditions.canSelfDiscard(self, game)) {
|
||||
ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new SelfDiscardEffect(self));
|
||||
action.appendEffect(
|
||||
new ChooseAndPlayCardFromDeckEffect(playerId, Keyword.PIPEWEED));
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
package com.gempukku.lotro.cards.set17.shire;
|
||||
|
||||
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.cardtype.AbstractPermanent;
|
||||
import com.gempukku.lotro.logic.effects.AddUntilEndOfPhaseModifierEffect;
|
||||
import com.gempukku.lotro.logic.effects.ChooseActiveCardEffect;
|
||||
import com.gempukku.lotro.logic.effects.choose.ChooseAndDiscardCardsFromPlayEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.OverwhelmedByMultiplierModifier;
|
||||
import com.gempukku.lotro.logic.timing.PlayConditions;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Set: Rise of Saruman
|
||||
* Side: Free
|
||||
* Culture: Shire
|
||||
* Twilight Cost: 1
|
||||
* Type: Condition • Support Area
|
||||
* Game Text: Pipeweed. To play, spot a Hobbit. Skirmish: Discard a pipeweed from play to prevent an unbound Hobbit from
|
||||
* being overwhelmed unless that Hobbit's strength is tripled.
|
||||
*/
|
||||
public class Card17_111 extends AbstractPermanent {
|
||||
public Card17_111() {
|
||||
super(Side.FREE_PEOPLE, 1, CardType.CONDITION, Culture.SHIRE, "Southlinch Leaf");
|
||||
addKeyword(Keyword.PIPEWEED);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean checkPlayRequirements(LotroGame game, PhysicalCard self) {
|
||||
return PlayConditions.canSpot(game, Race.HOBBIT);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<? extends ActivateCardAction> getPhaseActionsInPlay(String playerId, LotroGame game, final PhysicalCard self) {
|
||||
if (PlayConditions.canUseFPCardDuringPhase(game, Phase.SKIRMISH, self)
|
||||
&& PlayConditions.canDiscardFromPlay(self, game, Keyword.PIPEWEED)) {
|
||||
final ActivateCardAction action = new ActivateCardAction(self);
|
||||
action.appendCost(
|
||||
new ChooseAndDiscardCardsFromPlayEffect(action, playerId, 1, 1, Keyword.PIPEWEED));
|
||||
action.appendEffect(
|
||||
new ChooseActiveCardEffect(self, playerId, "Choose a Hobbit", Filters.unboundCompanion, Race.HOBBIT) {
|
||||
@Override
|
||||
protected void cardSelected(LotroGame game, PhysicalCard card) {
|
||||
action.appendEffect(
|
||||
new AddUntilEndOfPhaseModifierEffect(
|
||||
new OverwhelmedByMultiplierModifier(self, card, 3)));
|
||||
}
|
||||
});
|
||||
return Collections.singletonList(action);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -26,6 +26,25 @@
|
||||
Support Area
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: toPlay
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: hobbit
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: skirmish
|
||||
cost: {
|
||||
type: discard
|
||||
filter: choose(pipeweed)
|
||||
}
|
||||
effect: {
|
||||
type: cancelSkirmish
|
||||
filter: unbound,hobbit
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Pipeweed</b>. To play, spot a Hobbit.<br><b>Skirmish:</b> Discard a pipeweed from play to cancel a skirmish involving an unbound Hobbit.
|
||||
lore: It feels good, and it smells good.'
|
||||
@@ -65,6 +84,25 @@
|
||||
vitality: 4
|
||||
resistance: 8
|
||||
effects: [
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: modifyRaceSpotCount
|
||||
race: ent
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: regroup
|
||||
cost: {
|
||||
type: exert
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: putCardsFromDiscardOnBottomOfDeck
|
||||
filter: choose(pipeweed)
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: Add 1 to the number of Ents you can spot.<br><b>Regroup:</b> Exert Merry to place a pipeweed from your discard pile beneath your draw deck.
|
||||
lore: I think we may have made a mistake leaving the Shire, Pippin.'
|
||||
@@ -103,6 +141,38 @@
|
||||
Support Area
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: toPlay
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: unbound,hobbit
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: regroup
|
||||
text: Remove a threat
|
||||
cost: {
|
||||
type: discard
|
||||
filter: choose(pipeweed)
|
||||
}
|
||||
effect: {
|
||||
type: removeThreats
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: regroup
|
||||
text: Discard a minion
|
||||
cost: {
|
||||
type: discard
|
||||
filter: choose(pipeweed)
|
||||
}
|
||||
effect: {
|
||||
type: discard
|
||||
filter: choose(minion)
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Pipeweed</b>. To play, spot an unbound Hobbit.<br><b>Regroup:</b> Discard a pipeweed from play to remove a threat.<br><b>Regroup:</b> Discard a pipeweed from play to discard a minion.
|
||||
lore: These are the Hornblower brandmarks....'
|
||||
@@ -142,6 +212,25 @@
|
||||
vitality: 4
|
||||
resistance: 8
|
||||
effects: [
|
||||
{
|
||||
type: modifier
|
||||
modifier: {
|
||||
type: modifyRaceSpotCount
|
||||
race: ent
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: maneuver
|
||||
cost: {
|
||||
type: discard
|
||||
filter: choose(pipeweed)
|
||||
count: 2
|
||||
}
|
||||
effect: {
|
||||
type: removeBurdens
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: Add 1 to the number of Ents you can spot.<br><b>Maneuver:</b> Discard 2 pipeweed cards from play to remove a burden.
|
||||
lore: Ents are – well Ents are all different for one thing.
|
||||
@@ -180,6 +269,38 @@
|
||||
Support Area
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: toPlay
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: unbound,hobbit
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: skirmish
|
||||
cost: {
|
||||
type: discard
|
||||
filter: choose(pipeweed)
|
||||
}
|
||||
effect: {
|
||||
type: modifyStrength
|
||||
filter: choose(unbound,hobbit)
|
||||
amount: 2
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: regroup
|
||||
cost: {
|
||||
type: discard
|
||||
filter: self
|
||||
}
|
||||
effect: {
|
||||
type: playCardFromDrawDeck
|
||||
filter: choose(pipeweed)
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Pipeweed</b>. To play, spot an unbound Hobbit.<br><b>Skirmish:</b> Discard a pipeweed from play to make an unbound Hobbit strength +2.<br><b>Regroup:</b> Discard this pipeweed from play to play a pipeweed from your draw deck. Reshuffle your draw deck.
|
||||
lore: ""
|
||||
@@ -218,6 +339,26 @@
|
||||
Support Area
|
||||
]
|
||||
effects: [
|
||||
{
|
||||
type: toPlay
|
||||
requires: {
|
||||
type: canSpot
|
||||
filter: hobbit
|
||||
}
|
||||
}
|
||||
{
|
||||
type: activated
|
||||
phase: skirmish
|
||||
cost: {
|
||||
type: discard
|
||||
filter: choose(pipeweed)
|
||||
}
|
||||
effect: {
|
||||
type: alterOverwhelmMultiplier
|
||||
filter: choose(unbound,hobbit)
|
||||
multiplier: 3
|
||||
}
|
||||
}
|
||||
]
|
||||
gametext: <b>Pipeweed</b>. To play, spot a Hobbit.<br><b>Skirmish:</b> Discard a pipeweed from play to prevent an unbound Hobbit from being overwhelmed unless that Hobbit's strength is tripled.
|
||||
lore: How it came here, I can't imagine. For Saruman's private use, I fancy.'
|
||||
@@ -71,6 +71,7 @@ public class ModifierSourceFactory {
|
||||
modifierProducers.put("modifyinitiativehandsize", new ModifyInitiativeHandSize());
|
||||
modifierProducers.put("modifymovelimit", new ModifyMoveLimit());
|
||||
modifierProducers.put("modifyplayoncost", new ModifyPlayOnCost());
|
||||
modifierProducers.put("modifyracespotcount", new ModifyRaceSpotCount());
|
||||
modifierProducers.put("modifyresistance", new ModifyResistance());
|
||||
modifierProducers.put("modifyroamingpenalty", new ModifyRoamingPenalty());
|
||||
modifierProducers.put("modifysanctuaryheal", new ModifySanctuaryHeal());
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.gempukku.lotro.cards.build.field.effect.modifier;
|
||||
|
||||
import com.gempukku.lotro.cards.build.CardGenerationEnvironment;
|
||||
import com.gempukku.lotro.cards.build.InvalidCardDefinitionException;
|
||||
import com.gempukku.lotro.cards.build.ModifierSource;
|
||||
import com.gempukku.lotro.cards.build.field.FieldUtils;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
import com.gempukku.lotro.logic.modifiers.RaceSpotModifier;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
public class ModifyRaceSpotCount implements ModifierSourceProducer {
|
||||
@Override
|
||||
public ModifierSource getModifierSource(JSONObject object, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(object, "race");
|
||||
|
||||
Race race = FieldUtils.getEnum(Race.class, object.get("race"), "race");
|
||||
if (race == null)
|
||||
throw new InvalidCardDefinitionException("Race is required for \"modify race spot count\"");
|
||||
|
||||
return (actionContext) -> new RaceSpotModifier(actionContext.getSource(), race);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user