Added additional cards to JSON card definition
This commit is contained in:
@@ -170,6 +170,7 @@
|
||||
},
|
||||
"effect": {
|
||||
"type": "choice",
|
||||
"player": "fp",
|
||||
"texts": [
|
||||
"Exert the Ring-bearer",
|
||||
"Add a burden"
|
||||
|
||||
@@ -2,9 +2,11 @@ package com.gempukku.lotro.cards.build.field.effect.appender;
|
||||
|
||||
import com.gempukku.lotro.cards.build.CardGenerationEnvironment;
|
||||
import com.gempukku.lotro.cards.build.InvalidCardDefinitionException;
|
||||
import com.gempukku.lotro.cards.build.PlayerSource;
|
||||
import com.gempukku.lotro.cards.build.field.FieldUtils;
|
||||
import com.gempukku.lotro.cards.build.field.effect.EffectAppender;
|
||||
import com.gempukku.lotro.cards.build.field.effect.EffectAppenderProducer;
|
||||
import com.gempukku.lotro.cards.build.field.effect.appender.resolver.PlayerResolver;
|
||||
import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
import com.gempukku.lotro.logic.actions.CostToEffectAction;
|
||||
@@ -20,8 +22,9 @@ import java.util.List;
|
||||
public class Choice implements EffectAppenderProducer {
|
||||
@Override
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "effects", "texts");
|
||||
FieldUtils.validateAllowedFields(effectObject, "player", "effects", "texts");
|
||||
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "owner");
|
||||
final JSONObject[] effectArray = FieldUtils.getObjectArray(effectObject.get("effects"), "effects");
|
||||
final String[] textArray = FieldUtils.getStringArray(effectObject.get("texts"), "texts");
|
||||
|
||||
@@ -34,6 +37,8 @@ public class Choice implements EffectAppenderProducer {
|
||||
environment.getEffectAppenderFactory().getEffectAppender(effect, environment));
|
||||
}
|
||||
|
||||
final PlayerSource playerSource = PlayerResolver.resolvePlayer(player, environment);
|
||||
|
||||
return new EffectAppender() {
|
||||
@Override
|
||||
public void appendCost(CostToEffectAction action, String playerId, LotroGame game, PhysicalCard self, EffectResult effectResult, Effect effect) {
|
||||
@@ -60,7 +65,9 @@ public class Choice implements EffectAppenderProducer {
|
||||
});
|
||||
}
|
||||
|
||||
action.appendCost(new ChoiceEffect(action, playerId, possibleEffects));
|
||||
final String choicePlayerId = playerSource.getPlayer(playerId, game, self, effectResult, effect);
|
||||
|
||||
action.appendCost(new ChoiceEffect(action, choicePlayerId, possibleEffects));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -88,7 +95,9 @@ public class Choice implements EffectAppenderProducer {
|
||||
});
|
||||
}
|
||||
|
||||
action.appendEffect(new ChoiceEffect(action, playerId, possibleEffects));
|
||||
final String choicePlayerId = playerSource.getPlayer(playerId, game, self, effectResult, effect);
|
||||
|
||||
action.appendEffect(new ChoiceEffect(action, choicePlayerId, possibleEffects));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user