Switched from "owner" being default to "you" (player performing action)
This commit is contained in:
@@ -439,7 +439,7 @@ public class BuiltLotroCardBlueprint implements LotroCardBlueprint {
|
||||
List<RequiredTriggerAction> result = new LinkedList<>();
|
||||
|
||||
for (ActionSource requiredBeforeTrigger : requiredBeforeTriggers) {
|
||||
DefaultActionContext actionContext = new DefaultActionContext(null, game, self, null, effect);
|
||||
DefaultActionContext actionContext = new DefaultActionContext(self.getOwner(), game, self, null, effect);
|
||||
if (requiredBeforeTrigger.isValid(actionContext)) {
|
||||
RequiredTriggerAction action = new RequiredTriggerAction(self);
|
||||
requiredBeforeTrigger.createAction(action, actionContext);
|
||||
@@ -458,7 +458,7 @@ public class BuiltLotroCardBlueprint implements LotroCardBlueprint {
|
||||
List<RequiredTriggerAction> result = new LinkedList<>();
|
||||
|
||||
for (ActionSource requiredAfterTrigger : requiredAfterTriggers) {
|
||||
DefaultActionContext actionContext = new DefaultActionContext(null, game, self, effectResult, null);
|
||||
DefaultActionContext actionContext = new DefaultActionContext(self.getOwner(), game, self, effectResult, null);
|
||||
if (requiredAfterTrigger.isValid(actionContext)) {
|
||||
RequiredTriggerAction action = new RequiredTriggerAction(self);
|
||||
requiredAfterTrigger.createAction(action, actionContext);
|
||||
|
||||
@@ -20,7 +20,7 @@ public class AddBurden implements EffectAppenderProducer {
|
||||
FieldUtils.validateAllowedFields(effectObject, "amount", "player");
|
||||
|
||||
final int amount = FieldUtils.getInteger(effectObject.get("amount"), "amount", 1);
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "owner");
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "you");
|
||||
|
||||
final PlayerSource playerSource = PlayerResolver.resolvePlayer(player, environment);
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ public class AddKeyword implements EffectAppenderProducer {
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCards(filter, valueSource, memory, "owner", "Choose cards to add keywork to", environment));
|
||||
CardResolver.resolveCards(filter, valueSource, memory, "you", "Choose cards to add keywork to", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -21,7 +21,7 @@ public class AssignToSkirmishAgainstMinion implements EffectAppenderProducer {
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "player", "fpCharacter", "against");
|
||||
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "owner");
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "you");
|
||||
final String fpCharacter = FieldUtils.getString(effectObject.get("fpCharacter"), "fpCharacter");
|
||||
final String against = FieldUtils.getString(effectObject.get("against"), "against");
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ public class CantBeAssignedToSkirmish implements EffectAppenderProducer {
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCards(filter, new ConstantEvaluator(1), "_temp", "owner", "Choose characters that you want to make unable to be assigned to skirmish", environment));
|
||||
CardResolver.resolveCards(filter, new ConstantEvaluator(1), "_temp", "you", "Choose characters that you want to make unable to be assigned to skirmish", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -31,7 +31,7 @@ public class CantBeOverwhelmedMultiplier implements EffectAppenderProducer {
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCards(filter, new ConstantEvaluator(1), "_temp", "owner", "Choose characters that you want to make unable to be assigned to skirmish", environment));
|
||||
CardResolver.resolveCards(filter, new ConstantEvaluator(1), "_temp", "you", "Choose characters that you want to make unable to be assigned to skirmish", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -30,7 +30,7 @@ public class CantTakeMoreWoundsThan implements EffectAppenderProducer {
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCards(filter, new ConstantEvaluator(1), memory, "owner", "Choose cards to make take no more than " + wounds + " wound(s)", environment));
|
||||
CardResolver.resolveCards(filter, new ConstantEvaluator(1), memory, "you", "Choose cards to make take no more than " + wounds + " wound(s)", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -26,7 +26,7 @@ public class Choice implements EffectAppenderProducer {
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "player", "effects", "texts");
|
||||
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "owner");
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "you");
|
||||
final JSONObject[] effectArray = FieldUtils.getObjectArray(effectObject.get("effects"), "effects");
|
||||
final String[] textArray = FieldUtils.getStringArray(effectObject.get("texts"), "texts");
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ public class DiscardCardsFromHand implements EffectAppenderProducer {
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCardsInHand(filter, countSource, "_temp", "owner", "Choose cards to discard", environment));
|
||||
CardResolver.resolveCardsInHand(filter, countSource, "_temp", "you", "Choose cards to discard", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -23,7 +23,7 @@ public class DiscardFromPlay implements EffectAppenderProducer {
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "player", "count", "filter", "memorize", "memorizeStackedCards");
|
||||
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "owner");
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "you");
|
||||
final PlayerSource discardingPlayer = PlayerResolver.resolvePlayer(player, environment);
|
||||
final ValueSource valueSource = ValueResolver.resolveEvaluator(effectObject.get("count"), 1, environment);
|
||||
final String filter = FieldUtils.getString(effectObject.get("filter"), "filter");
|
||||
|
||||
@@ -24,7 +24,7 @@ public class DiscardStackedCards implements EffectAppenderProducer {
|
||||
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveStackedCards(filter, valueSource, onFilterSource, "_temp", "owner", "Choose cards to discard", environment));
|
||||
CardResolver.resolveStackedCards(filter, valueSource, onFilterSource, "_temp", "you", "Choose cards to discard", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -19,7 +19,7 @@ public class DiscardTopCardFromDeck implements EffectAppenderProducer {
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "deck", "count", "forced");
|
||||
|
||||
final String deck = FieldUtils.getString(effectObject.get("deck"), "deck", "owner");
|
||||
final String deck = FieldUtils.getString(effectObject.get("deck"), "deck", "you");
|
||||
final int count = FieldUtils.getInteger(effectObject.get("count"), "count", 1);
|
||||
final boolean forced = FieldUtils.getBoolean(effectObject.get("forced"), "forced");
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ public class DoesNotAddToArcheryTotal implements EffectAppenderProducer {
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCards(filter,
|
||||
valueSource, memory, "owner", "Choose cards to make not add to archery total", environment));
|
||||
valueSource, memory, "you", "Choose cards to make not add to archery total", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -17,7 +17,7 @@ public class DrawCards implements EffectAppenderProducer {
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "count", "player");
|
||||
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "owner");
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "you");
|
||||
|
||||
final PlayerSource playerSource = PlayerResolver.resolvePlayer(player, environment);
|
||||
final ValueSource count = ValueResolver.resolveEvaluator(effectObject.get("count"), 1, environment);
|
||||
|
||||
@@ -25,7 +25,7 @@ public class Exert implements EffectAppenderProducer {
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "player", "count", "times", "filter", "memorize");
|
||||
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "owner");
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "you");
|
||||
final ValueSource valueSource = ValueResolver.resolveEvaluator(effectObject.get("count"), 1, environment);
|
||||
final int times = FieldUtils.getInteger(effectObject.get("times"), "times", 1);
|
||||
final String filter = FieldUtils.getString(effectObject.get("filter"), "filter");
|
||||
|
||||
@@ -32,7 +32,7 @@ public class Heal implements EffectAppenderProducer {
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCards(filter,
|
||||
(actionContext) -> Filters.canHeal,
|
||||
count, memory, "owner", "Choose cards to heal", environment));
|
||||
count, memory, "you", "Choose cards to heal", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -35,7 +35,7 @@ public class ModifyStrength implements EffectAppenderProducer {
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCards(filter, valueSource, memory, "owner", "Choose cards to modify strength of", environment));
|
||||
CardResolver.resolveCards(filter, valueSource, memory, "you", "Choose cards to modify strength of", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -32,7 +32,7 @@ public class NegateWound implements EffectAppenderProducer {
|
||||
(actionContext) -> {
|
||||
final WoundCharactersEffect woundEffect = (WoundCharactersEffect) actionContext.getEffect();
|
||||
return Filters.in(woundEffect.getAffectedCardsMinusPrevented(actionContext.getGame()));
|
||||
}, new ConstantEvaluator(1), "_temp", "owner", "Choose characters to negate wound to", environment));
|
||||
}, new ConstantEvaluator(1), "_temp", "you", "Choose characters to negate wound to", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -31,7 +31,7 @@ public class PlayCardFromDiscard implements EffectAppenderProducer {
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCardsInDiscard(filter,
|
||||
(actionContext) -> Filters.playable(actionContext.getGame()),
|
||||
new ConstantEvaluator(1), "_temp", "owner", "Choose card to play", environment));
|
||||
new ConstantEvaluator(1), "_temp", "you", "Choose card to play", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -29,7 +29,7 @@ public class PlayCardFromHand implements EffectAppenderProducer {
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCardsInHand(filter,
|
||||
(actionContext) -> Filters.playable(actionContext.getGame()),
|
||||
new ConstantEvaluator(1), "_temp", "owner", "Choose card to play", environment));
|
||||
new ConstantEvaluator(1), "_temp", "you", "Choose card to play", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -26,7 +26,7 @@ public class PreventCardEffectAppender implements EffectAppenderProducer {
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCard(filter,
|
||||
(actionContext) -> Filters.in(((PreventableCardEffect) actionContext.getEffect()).getAffectedCardsMinusPrevented(actionContext.getGame())),
|
||||
memory, "owner", "Choose card to prevent effect on", environment));
|
||||
memory, "you", "Choose card to prevent effect on", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -34,7 +34,7 @@ public class PreventWound implements EffectAppenderProducer {
|
||||
(actionContext) -> {
|
||||
final WoundCharactersEffect woundEffect = (WoundCharactersEffect) actionContext.getEffect();
|
||||
return Filters.in(woundEffect.getAffectedCardsMinusPrevented(actionContext.getGame()));
|
||||
}, new ConstantEvaluator(1), "_temp", "owner", "Choose characters to prevent wound to", environment));
|
||||
}, new ConstantEvaluator(1), "_temp", "you", "Choose characters to prevent wound to", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -30,7 +30,7 @@ public class PutCardsFromDiscardIntoHand implements EffectAppenderProducer {
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCardsInDiscard(filter, valueSource, "_temp", "owner", "Choose cards from discard", environment));
|
||||
CardResolver.resolveCardsInDiscard(filter, valueSource, "_temp", "you", "Choose cards from discard", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -22,7 +22,7 @@ public class PutCardsFromHandOnBottomOfDeck implements EffectAppenderProducer {
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "player", "count", "filter");
|
||||
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "owner");
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "you");
|
||||
final ValueSource valueSource = ValueResolver.resolveEvaluator(effectObject.get("count"), 1, environment);
|
||||
final String filter = FieldUtils.getString(effectObject.get("filter"), "filter", "choose(any)");
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ public class PutStackedCardsIntoHand implements EffectAppenderProducer {
|
||||
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveStackedCards(filter, valueSource, onFilterSource, "_temp", "owner", "Choose cards to discard", environment));
|
||||
CardResolver.resolveStackedCards(filter, valueSource, onFilterSource, "_temp", "you", "Choose cards to discard", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -18,7 +18,7 @@ public class RemoveBurdens implements EffectAppenderProducer {
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "player", "amount");
|
||||
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "owner");
|
||||
final String player = FieldUtils.getString(effectObject.get("player"), "player", "you");
|
||||
final PlayerSource playerSource = PlayerResolver.resolvePlayer(player, environment);
|
||||
final ValueSource valueSource = ValueResolver.resolveEvaluator(effectObject.get("amount"), 1, environment);
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ public class ReplaceInSkirmish implements EffectAppenderProducer {
|
||||
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCard(with, "_temp", "owner", "Choose character to replace with in skirmish", environment));
|
||||
CardResolver.resolveCard(with, "_temp", "you", "Choose character to replace with in skirmish", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -21,7 +21,7 @@ public class RevealTopCardsOfDrawDeck implements EffectAppenderProducer {
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "deck", "count", "memorize");
|
||||
|
||||
final String deck = FieldUtils.getString(effectObject.get("deck"), "deck", "owner");
|
||||
final String deck = FieldUtils.getString(effectObject.get("deck"), "deck", "you");
|
||||
final int count = FieldUtils.getInteger(effectObject.get("count"), "count", 1);
|
||||
final String memorize = FieldUtils.getString(effectObject.get("memorize"), "memorize");
|
||||
|
||||
|
||||
@@ -17,6 +17,6 @@ public class Spot implements EffectAppenderProducer {
|
||||
final String memorize = FieldUtils.getString(effectObject.get("memorize"), "memorize", "_temp");
|
||||
|
||||
return CardResolver.resolveCard(
|
||||
filter, memorize, "owner", "Choose card to spot", environment);
|
||||
filter, memorize, "you", "Choose card to spot", environment);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,9 +31,9 @@ public class StackCardsFromDiscard implements EffectAppenderProducer {
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCard(where, "_temp1", "owner", "Choose card to stack on", environment));
|
||||
CardResolver.resolveCard(where, "_temp1", "you", "Choose card to stack on", environment));
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCardsInDiscard(filter, valueSource, "_temp2", "owner", "Choose cards to stack", environment));
|
||||
CardResolver.resolveCardsInDiscard(filter, valueSource, "_temp2", "you", "Choose cards to stack", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -31,9 +31,9 @@ public class StackCardsFromHand implements EffectAppenderProducer {
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCard(where, "_temp1", "owner", "Choose card to stack on", environment));
|
||||
CardResolver.resolveCard(where, "_temp1", "you", "Choose card to stack on", environment));
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCardsInHand(filter, valueSource, "_temp2", "owner", "Choose cards to stack", environment));
|
||||
CardResolver.resolveCardsInHand(filter, valueSource, "_temp2", "you", "Choose cards to stack", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -24,7 +24,7 @@ public class StackPlayedEvent implements EffectAppenderProducer {
|
||||
MultiEffectAppender result = new MultiEffectAppender();
|
||||
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCard(where, "_temp1", "owner", "Choose card to stack on", environment));
|
||||
CardResolver.resolveCard(where, "_temp1", "you", "Choose card to stack on", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -19,7 +19,7 @@ public class StackTopCardsOfDrawDeck implements EffectAppenderProducer {
|
||||
public EffectAppender createEffectAppender(JSONObject effectObject, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(effectObject, "deck", "where", "count");
|
||||
|
||||
final String deck = FieldUtils.getString(effectObject.get("deck"), "deck", "owner");
|
||||
final String deck = FieldUtils.getString(effectObject.get("deck"), "deck", "you");
|
||||
final String where = FieldUtils.getString(effectObject.get("where"), "where");
|
||||
final int count = FieldUtils.getInteger(effectObject.get("count"), "count", 1);
|
||||
|
||||
@@ -30,7 +30,7 @@ public class StackTopCardsOfDrawDeck implements EffectAppenderProducer {
|
||||
result.addEffectAppender(
|
||||
PlayerResolver.resolvePlayer(deck, deckPlayerMemory, environment));
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCard(where, cardMemory, "owner", "Choose card to stack on", environment));
|
||||
CardResolver.resolveCard(where, cardMemory, "you", "Choose card to stack on", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -35,7 +35,7 @@ public class Wound implements EffectAppenderProducer {
|
||||
result.addEffectAppender(
|
||||
CardResolver.resolveCards(filter,
|
||||
(actionContext) -> Filters.canTakeWounds(actionContext.getSource(), times),
|
||||
valueSource, memory, "owner", "Choose cards to wound", environment));
|
||||
valueSource, memory, "you", "Choose cards to wound", environment));
|
||||
result.addEffectAppender(
|
||||
new DelayedAppender() {
|
||||
@Override
|
||||
|
||||
@@ -14,7 +14,7 @@ public class ControlsSite implements RequirementProducer {
|
||||
public Requirement getPlayRequirement(JSONObject object, CardGenerationEnvironment environment) throws InvalidCardDefinitionException {
|
||||
FieldUtils.validateAllowedFields(object, "player");
|
||||
|
||||
final String player = FieldUtils.getString(object.get("player"), "player", "owner");
|
||||
final String player = FieldUtils.getString(object.get("player"), "player", "you");
|
||||
final PlayerSource playerSource = PlayerResolver.resolvePlayer(player, environment);
|
||||
|
||||
return (actionContext) -> {
|
||||
|
||||
Reference in New Issue
Block a user