Updated RevealCardsFromHand and typos
Updated RevealCardsFromHand to be player agnostic. The "hand" option now specifies which player to use (instead of defaulting always to self). Fixed typo in Error message of MultipleChoiceAwaitingDecision.
This commit is contained in:
@@ -1,13 +1,11 @@
|
|||||||
package com.gempukku.lotro.cards.build.field.effect.appender;
|
package com.gempukku.lotro.cards.build.field.effect.appender;
|
||||||
|
|
||||||
import com.gempukku.lotro.cards.build.ActionContext;
|
import com.gempukku.lotro.cards.build.*;
|
||||||
import com.gempukku.lotro.cards.build.CardGenerationEnvironment;
|
|
||||||
import com.gempukku.lotro.cards.build.InvalidCardDefinitionException;
|
|
||||||
import com.gempukku.lotro.cards.build.ValueSource;
|
|
||||||
import com.gempukku.lotro.cards.build.field.FieldUtils;
|
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.EffectAppender;
|
||||||
import com.gempukku.lotro.cards.build.field.effect.EffectAppenderProducer;
|
import com.gempukku.lotro.cards.build.field.effect.EffectAppenderProducer;
|
||||||
import com.gempukku.lotro.cards.build.field.effect.appender.resolver.CardResolver;
|
import com.gempukku.lotro.cards.build.field.effect.appender.resolver.CardResolver;
|
||||||
|
import com.gempukku.lotro.cards.build.field.effect.appender.resolver.PlayerResolver;
|
||||||
import com.gempukku.lotro.cards.build.field.effect.appender.resolver.ValueResolver;
|
import com.gempukku.lotro.cards.build.field.effect.appender.resolver.ValueResolver;
|
||||||
import com.gempukku.lotro.game.PhysicalCard;
|
import com.gempukku.lotro.game.PhysicalCard;
|
||||||
import com.gempukku.lotro.logic.actions.CostToEffectAction;
|
import com.gempukku.lotro.logic.actions.CostToEffectAction;
|
||||||
@@ -20,17 +18,20 @@ import java.util.Collection;
|
|||||||
public class RevealCardsFromHand implements EffectAppenderProducer {
|
public class RevealCardsFromHand implements EffectAppenderProducer {
|
||||||
@Override
|
@Override
|
||||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||||
FieldUtils.validateAllowedFields(effectObject, "count", "filter", "memorize");
|
FieldUtils.validateAllowedFields(effectObject, "count", "filter", "memorize", "hand");
|
||||||
|
|
||||||
|
final String hand = FieldUtils.getString(effectObject.get("hand"), "hand", "you");
|
||||||
final String filter = FieldUtils.getString(effectObject.get("filter"), "filter", "choose(any)");
|
final String filter = FieldUtils.getString(effectObject.get("filter"), "filter", "choose(any)");
|
||||||
final String memorize = FieldUtils.getString(effectObject.get("memorize"), "memorize", "_temp");
|
final String memorize = FieldUtils.getString(effectObject.get("memorize"), "memorize", "_temp");
|
||||||
|
|
||||||
final ValueSource countSource = ValueResolver.resolveEvaluator(effectObject.get("count"), 1, environment);
|
final ValueSource countSource = ValueResolver.resolveEvaluator(effectObject.get("count"), 1, environment);
|
||||||
|
final PlayerSource handSource = PlayerResolver.resolvePlayer(hand, environment);
|
||||||
|
|
||||||
|
|
||||||
MultiEffectAppender result = new MultiEffectAppender();
|
MultiEffectAppender result = new MultiEffectAppender();
|
||||||
|
|
||||||
result.addEffectAppender(
|
result.addEffectAppender(
|
||||||
CardResolver.resolveCardsInHand(filter, countSource, memorize, "you", "you", "Choose cards to reveal", environment));
|
CardResolver.resolveCardsInHand(filter, countSource, memorize, hand, hand, "Choose cards to reveal", environment));
|
||||||
result.addEffectAppender(
|
result.addEffectAppender(
|
||||||
new DelayedAppender() {
|
new DelayedAppender() {
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ public abstract class MultipleChoiceAwaitingDecision extends AbstractAwaitingDec
|
|||||||
try {
|
try {
|
||||||
index = Integer.parseInt(result);
|
index = Integer.parseInt(result);
|
||||||
} catch (NumberFormatException exp) {
|
} catch (NumberFormatException exp) {
|
||||||
throw new DecisionResultInvalidException("Unkown response number");
|
throw new DecisionResultInvalidException("Unknown response number");
|
||||||
}
|
}
|
||||||
validDecisionMade(index, _possibleResults[index]);
|
validDecisionMade(index, _possibleResults[index]);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user