diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/ActivatedEffectProcessor.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/ActivatedEffectProcessor.java index bdcc97dca..94f7f6e2b 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/ActivatedEffectProcessor.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/ActivatedEffectProcessor.java @@ -34,11 +34,6 @@ public class ActivatedEffectProcessor implements EffectProcessor { (actionContext) -> PlayConditions.checkPhaseLimit(actionContext.getGame(), actionContext.getSource(), phase, limitPerPhase)); actionSource.addCost( new AbstractEffectAppender() { - @Override - public boolean isPlayableInFull(ActionContext actionContext) { - return true; - } - @Override protected Effect createEffect(boolean cost, CostToEffectAction action, ActionContext actionContext) { return new IncrementPhaseLimitEffect(actionContext.getSource(), phase, limitPerPhase); diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/AbstractEffectAppender.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/AbstractEffectAppender.java index ebe32a902..986e8b8a2 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/AbstractEffectAppender.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/AbstractEffectAppender.java @@ -15,4 +15,9 @@ public abstract class AbstractEffectAppender implements EffectAppender { } protected abstract Effect createEffect(boolean cost, CostToEffectAction action, ActionContext actionContext); + + @Override + public boolean isPlayableInFull(ActionContext actionContext) { + return true; + } } diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/resolver/PlayerResolver.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/resolver/PlayerResolver.java index c6df046c9..dfef5710c 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/resolver/PlayerResolver.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/cards/build/field/effect/appender/resolver/PlayerResolver.java @@ -16,6 +16,8 @@ import java.util.Collection; public class PlayerResolver { public static PlayerSource resolvePlayer(String type, CardGenerationEnvironment environment) throws InvalidCardDefinitionException { + if (type.equals("you")) + return (actionContext) -> actionContext.getPerformingPlayer(); if (type.equals("owner")) return (actionContext) -> actionContext.getSource().getOwner(); else if (type.equals("shadowPlayer")) @@ -30,6 +32,18 @@ public class PlayerResolver { } public static EffectAppender resolvePlayer(String type, String memory, CardGenerationEnvironment environment) throws InvalidCardDefinitionException { + if (type.equals("you")) + return new AbstractEffectAppender() { + @Override + protected Effect createEffect(boolean cost, CostToEffectAction action, ActionContext actionContext) { + return new UnrespondableEffect() { + @Override + protected void doPlayEffect(LotroGame game) { + actionContext.setValueToMemory(memory, actionContext.getPerformingPlayer()); + } + }; + } + }; if (type.equals("owner")) { return new AbstractEffectAppender() { @Override @@ -41,21 +55,11 @@ public class PlayerResolver { } }; } - - @Override - public boolean isPlayableInFull(ActionContext actionContext) { - return true; - } }; } else if (type.startsWith("owner(") && type.endsWith(")")) { String filter = type.substring(type.indexOf("(") + 1, type.lastIndexOf(")")); final FilterableSource filterableSource = environment.getFilterFactory().generateFilter(filter); return new AbstractEffectAppender() { - @Override - public boolean isPlayableInFull(ActionContext actionContext) { - return true; - } - @Override protected Effect createEffect(boolean cost, CostToEffectAction action, ActionContext actionContext) { return new UnrespondableEffect() {