Fixed defaults on some requirements for consistency across similar requirements. Rearranged order of some requirements.

This commit is contained in:
Christian 'ketura' McCarty
2024-05-30 00:18:51 -05:00
parent e81128f787
commit b7d21879af
6 changed files with 11 additions and 13 deletions

View File

@@ -15,7 +15,7 @@ public class HasCardInAdventureDeck implements RequirementProducer {
final String player = FieldUtils.getString(object.get("player"), "player", "you");
final int count = FieldUtils.getInteger(object.get("count"), "count", 1);
final String filter = FieldUtils.getString(object.get("filter"), "filter");
final String filter = FieldUtils.getString(object.get("filter"), "filter", "any");
final PlayerSource playerSource = PlayerResolver.resolvePlayer(player, environment);

View File

@@ -15,7 +15,7 @@ public class HasCardInDiscard implements RequirementProducer {
final String player = FieldUtils.getString(object.get("player"), "player", "you");
final int count = FieldUtils.getInteger(object.get("count"), "count", 1);
final String filter = FieldUtils.getString(object.get("filter"), "filter");
final String filter = FieldUtils.getString(object.get("filter"), "filter", "any");
final PlayerSource playerSource = PlayerResolver.resolvePlayer(player, environment);

View File

@@ -15,7 +15,7 @@ public class HasCardInHand implements RequirementProducer {
final String player = FieldUtils.getString(object.get("player"), "player", "you");
final int count = FieldUtils.getInteger(object.get("count"), "count", 1);
final String filter = FieldUtils.getString(object.get("filter"), "filter");
final String filter = FieldUtils.getString(object.get("filter"), "filter", "any");
final PlayerSource playerSource = PlayerResolver.resolvePlayer(player, environment);

View File

@@ -14,9 +14,9 @@ public class HasCardInRemoved implements RequirementProducer {
public Requirement getPlayRequirement(JSONObject object, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
FieldUtils.validateAllowedFields(object, "player", "count", "filter");
final String player = FieldUtils.getString(object.get("player"), "player");
final String player = FieldUtils.getString(object.get("player"), "player", "you");
final int count = FieldUtils.getInteger(object.get("count"), "count", 1);
final String filter = FieldUtils.getString(object.get("filter"), "filter");
final String filter = FieldUtils.getString(object.get("filter"), "filter", "any");
final PlayerSource playerSource = player != null ? PlayerResolver.resolvePlayer(player, environment) : null;

View File

@@ -18,10 +18,8 @@ public class MemoryMatches implements RequirementProducer {
final String memory = FieldUtils.getString(object.get("memory"), "memory");
final String filter = FieldUtils.getString(object.get("filter"), "filter");
String count = FieldUtils.getString(object.get("count"), "count", "1");
final ValueSource countSource = ValueResolver.resolveEvaluator(object.get("count"), 1, environment);
final FilterableSource filterableSource = environment.getFilterFactory().generateFilter(filter, environment);
ValueSource countSource = ValueResolver.resolveEvaluator(count, environment);
return (actionContext) -> {
final Collection<? extends PhysicalCard> cardsFromMemory = actionContext.getCardsFromMemory(memory);

View File

@@ -27,18 +27,18 @@ public class RequirementFactory {
requirementProducers.put("canplayfromdiscard", new CanPlayFromDiscard());
requirementProducers.put("canselfbeplayed", new CanSelfBePlayed());
requirementProducers.put("canspot", new CanSpot());
requirementProducers.put("cantspot", new CantSpot());
requirementProducers.put("canspotburdens", new CanSpotBurdens());
requirementProducers.put("cantspotburdens", new CantSpotBurdens());
requirementProducers.put("canspotculturetokens", new CanSpotCultureTokens());
requirementProducers.put("canspotfpcultures", new CanSpotFPCultures());
requirementProducers.put("cantspotfpcultures", new CantSpotFPCultures());
requirementProducers.put("canspotsameculture", new CanSpotSameCulture());
requirementProducers.put("canspotshadowcultures", new CanSpotShadowCultures());
requirementProducers.put("canspotthreats", new CanSpotThreats());
requirementProducers.put("cantspotthreats", new CantSpotThreats());
requirementProducers.put("canspottwilight", new CanSpotTwilight());
requirementProducers.put("canspotwounds", new CanSpotWounds());
requirementProducers.put("cantspot", new CantSpot());
requirementProducers.put("cantspotburdens", new CantSpotBurdens());
requirementProducers.put("cantspotfpcultures", new CantSpotFPCultures());
requirementProducers.put("cantspotthreats", new CantSpotThreats());
requirementProducers.put("cardsindeckcount", new CardsInDeckCount());
requirementProducers.put("cardsinhandmorethan", new CardsInHandMoreThan());
requirementProducers.put("controlssite", new ControlsSite());
@@ -47,9 +47,9 @@ public class RequirementFactory {
requirementProducers.put("hascardinadventuredeck", new HasCardInAdventureDeck());
requirementProducers.put("hascardindeadpile", new HasCardInDeadPile());
requirementProducers.put("hascardindiscard", new HasCardInDiscard());
requirementProducers.put("hascardinhand", new HasCardInHand());
requirementProducers.put("hascardinremoved", new HasCardInRemoved());
requirementProducers.put("hascardstacked", new HasCardStacked());
requirementProducers.put("hascardinhand", new HasCardInHand());
requirementProducers.put("hasinmemory", new HasInMemory());
requirementProducers.put("hasinzonedata", new HasInZoneData());
requirementProducers.put("haveinitiative", new HaveInitiative());