Fixing couple of bugs

This commit is contained in:
marcin.sciesinski
2019-09-23 09:04:03 -07:00
parent 89fb17684d
commit 1a8ba7b7eb
5 changed files with 46 additions and 3 deletions

View File

@@ -202,6 +202,7 @@
{
"type": "discardFromHand",
"hand": "shadowPlayer",
"player": "shadowPlayer",
"forced": true,
"count": {
"type": "forEachMatchingInMemory",

View File

@@ -378,6 +378,15 @@
"type": "appendCardIdsToWhileInZone",
"memory": "playedNazgul"
}
},
{
"type": "trigger",
"trigger": {
"type": "endOfTurn"
},
"effect": {
"type": "resetWhileInZoneData"
}
}
]
},

View File

@@ -102,6 +102,7 @@ public class EffectAppenderFactory {
effectAppenderProducers.put("makeselfringbearer", new MakeSelfRingBearer());
effectAppenderProducers.put("choosearace", new ChooseARace());
effectAppenderProducers.put("storewhileinzone", new StoreWhileInZone());
effectAppenderProducers.put("resetwhileinzonedata", new ResetWhileInZoneData());
effectAppenderProducers.put("appendcardidstowhileinzone", new AppendCardIdsToWhileInZone());
effectAppenderProducers.put("corruptringbearer", new CorruptRingBearer());
effectAppenderProducers.put("kill", new Kill());

View File

@@ -0,0 +1,32 @@
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.game.state.LotroGame;
import com.gempukku.lotro.logic.actions.CostToEffectAction;
import com.gempukku.lotro.logic.timing.Effect;
import com.gempukku.lotro.logic.timing.UnrespondableEffect;
import org.json.simple.JSONObject;
public class ResetWhileInZoneData implements EffectAppenderProducer {
@Override
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
FieldUtils.validateAllowedFields(effectObject);
return new DelayedAppender() {
@Override
protected Effect createEffect(boolean cost, CostToEffectAction action, ActionContext actionContext) {
return new UnrespondableEffect() {
@Override
protected void doPlayEffect(LotroGame game) {
actionContext.getSource().setWhileInZoneData(null);
}
};
}
};
}
}

View File

@@ -12,15 +12,15 @@ public class IncrementPhaseLimitEffect extends UnrespondableEffect {
private String prefix;
public IncrementPhaseLimitEffect(PhysicalCard card, int limit) {
this(card, null, "", 1);
this(card, null, "", limit);
}
public IncrementPhaseLimitEffect(PhysicalCard card, Phase phase, int limit) {
this(card, phase, "", 1);
this(card, phase, "", limit);
}
public IncrementPhaseLimitEffect(PhysicalCard card, String prefix, int limit) {
this(card, null, "", 1);
this(card, null, prefix, limit);
}
private IncrementPhaseLimitEffect(PhysicalCard card, Phase phase, String prefix, int limit) {