Migrated Rohan cards in set 4 to hjson
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -102,11 +102,12 @@ public class EffectAppenderFactory {
|
||||
effectAppenderProducers.put("playsite", new PlaySite());
|
||||
effectAppenderProducers.put("preventable", new PreventableAppenderProducer());
|
||||
effectAppenderProducers.put("preventallwounds", new PreventAllWounds());
|
||||
effectAppenderProducers.put("preventburden", new PreventBurden());
|
||||
effectAppenderProducers.put("preventburden", new PreventEffect());
|
||||
effectAppenderProducers.put("preventdiscard", new PreventCardEffectAppender());
|
||||
effectAppenderProducers.put("preventeffect", new PreventEffect());
|
||||
effectAppenderProducers.put("preventexert", new PreventExert());
|
||||
effectAppenderProducers.put("preventheal", new PreventCardEffectAppender());
|
||||
effectAppenderProducers.put("preventtwilight", new PreventTwilight());
|
||||
effectAppenderProducers.put("preventtwilight", new PreventEffect());
|
||||
effectAppenderProducers.put("preventwound", new PreventWound());
|
||||
effectAppenderProducers.put("putcardsfromdeckintohand", new PutCardsFromDeckIntoHand());
|
||||
effectAppenderProducers.put("putcardsfromdeckontopofdeck", new PutCardsFromDeckOnTopOfDeck());
|
||||
|
||||
@@ -7,12 +7,11 @@ 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.logic.actions.CostToEffectAction;
|
||||
import com.gempukku.lotro.logic.effects.AddBurdenEffect;
|
||||
import com.gempukku.lotro.logic.effects.PreventEffect;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
import com.gempukku.lotro.logic.timing.Preventable;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
public class PreventBurden implements EffectAppenderProducer {
|
||||
public class PreventEffect implements EffectAppenderProducer {
|
||||
@Override
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject);
|
||||
@@ -23,8 +22,8 @@ public class PreventBurden implements EffectAppenderProducer {
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
protected Effect createEffect(boolean cost, CostToEffectAction action, ActionContext actionContext) {
|
||||
AddBurdenEffect addBurdenEffect = (AddBurdenEffect) actionContext.getEffect();
|
||||
return new PreventEffect(addBurdenEffect);
|
||||
Preventable preventable = (Preventable) actionContext.getEffect();
|
||||
return new com.gempukku.lotro.logic.effects.PreventEffect(preventable);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
package com.gempukku.lotro.cards.build.field.effect.appender;
|
||||
|
||||
import com.gempukku.lotro.cards.build.ActionContext;
|
||||
import com.gempukku.lotro.cards.build.CardGenerationEnvironment;
|
||||
import com.gempukku.lotro.cards.build.InvalidCardDefinitionException;
|
||||
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.logic.actions.CostToEffectAction;
|
||||
import com.gempukku.lotro.logic.effects.AddTwilightEffect;
|
||||
import com.gempukku.lotro.logic.effects.PreventEffect;
|
||||
import com.gempukku.lotro.logic.timing.Effect;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
public class PreventTwilight implements EffectAppenderProducer {
|
||||
@Override
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject);
|
||||
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
protected Effect createEffect(boolean cost, CostToEffectAction action, ActionContext actionContext) {
|
||||
AddTwilightEffect addTwilightEffect = (AddTwilightEffect) actionContext.getEffect();
|
||||
return new PreventEffect(addTwilightEffect);
|
||||
}
|
||||
});
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -42,6 +42,8 @@ public class FilterFactory {
|
||||
simpleFilters.put("bearer", (actionContext -> Filters.hasAttached(actionContext.getSource())));
|
||||
simpleFilters.put("character", (actionContext) -> Filters.character);
|
||||
simpleFilters.put("canexert", (actionContext -> Filters.canExert(actionContext.getSource())));
|
||||
simpleFilters.put("controlledbyotherplayer",
|
||||
(actionContext -> Filters.siteControlledByOtherPlayer(actionContext.getPerformingPlayer())));
|
||||
simpleFilters.put("controlledsite",
|
||||
(actionContext -> Filters.siteControlled(actionContext.getPerformingPlayer())));
|
||||
simpleFilters.put("currentsite",
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.gempukku.lotro.cards.build.field.effect.trigger;
|
||||
|
||||
import com.gempukku.lotro.cards.build.ActionContext;
|
||||
import com.gempukku.lotro.cards.build.CardGenerationEnvironment;
|
||||
import com.gempukku.lotro.cards.build.FilterableSource;
|
||||
import com.gempukku.lotro.cards.build.InvalidCardDefinitionException;
|
||||
import com.gempukku.lotro.cards.build.field.FieldUtils;
|
||||
import com.gempukku.lotro.common.Filterable;
|
||||
import com.gempukku.lotro.logic.timing.TriggerConditions;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
public class AboutToTakeControlOfSite implements TriggerCheckerProducer {
|
||||
@Override
|
||||
public TriggerChecker getTriggerChecker(JSONObject value, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(value, "filter");
|
||||
|
||||
String filter = FieldUtils.getString(value.get("filter"), "filter", "any");
|
||||
|
||||
final FilterableSource sourceFilter = environment.getFilterFactory().generateFilter(filter, environment);
|
||||
|
||||
return new TriggerChecker() {
|
||||
@Override
|
||||
public boolean accepts(ActionContext actionContext) {
|
||||
final Filterable source = sourceFilter.getFilterable(actionContext);
|
||||
return TriggerConditions.isTakingControlOfSite(actionContext.getEffect(), actionContext.getGame(), source);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isBefore() {
|
||||
return true;
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -13,12 +13,13 @@ public class TriggerCheckerFactory {
|
||||
|
||||
public TriggerCheckerFactory() {
|
||||
triggerCheckers.put("abouttoaddburden", new AboutToAddBurden());
|
||||
triggerCheckers.put("abouttoaddtwilight", new AboutToAddBurden());
|
||||
triggerCheckers.put("abouttoaddtwilight", new AboutToAddTwilight());
|
||||
triggerCheckers.put("abouttobekilled", new AboutToBeKilled());
|
||||
triggerCheckers.put("abouttodiscard", new AboutToDiscardFromPlay());
|
||||
triggerCheckers.put("abouttoexert", new AboutToExert());
|
||||
triggerCheckers.put("abouttoheal", new AboutToHeal());
|
||||
triggerCheckers.put("abouttomoveto", new AboutToMoveTo());
|
||||
triggerCheckers.put("abouttotakecontrolofsite", new AboutToTakeControlOfSite());
|
||||
triggerCheckers.put("abouttotakewound", new AboutToTakeWound());
|
||||
triggerCheckers.put("addsburden", new AddsBurden());
|
||||
triggerCheckers.put("addsthreat", new AddsThreat());
|
||||
|
||||
Reference in New Issue
Block a user