From 8ad992ba122568db78f8670ee02597b254bb742e Mon Sep 17 00:00:00 2001 From: "marcin.sciesinski" Date: Thu, 29 Aug 2019 21:31:09 -0700 Subject: [PATCH] (Almost) all dwarven cards --- .../src/main/web/cards/set40.json | 46 +++++++++++++++++++ .../appender/resolver/PlayerResolver.java | 3 ++ 2 files changed, 49 insertions(+) diff --git a/gemp-lotr/gemp-lotr-async/src/main/web/cards/set40.json b/gemp-lotr/gemp-lotr-async/src/main/web/cards/set40.json index 5593c17a0..d0f574bd9 100644 --- a/gemp-lotr/gemp-lotr-async/src/main/web/cards/set40.json +++ b/gemp-lotr/gemp-lotr-async/src/main/web/cards/set40.json @@ -885,6 +885,52 @@ } } }, + "40_31": { + "title": "*Thorin III", + "subtitle": "Lord of the Longbeards", + "side": "free people", + "culture": "dwarven", + "cost": 2, + "type": "companion", + "race": "dwarf", + "strength": 6, + "vitality": 3, + "resistance": 6, + "keyword": "damage+1", + "effects": { + "type": "modifyStrength", + "filter": "self", + "amount": 2, + "condition": { + "type": "canSpot", + "filter": "culture(dwarven),condition,hasStackedCount(3,culture(dwarven))" + } + } + }, + "40_32": { + "title": "*Well Prepared", + "side": "free people", + "culture": "dwarven", + "cost": 1, + "type": "condition", + "keyword": "support area", + "effects": { + "type": "trigger", + "trigger": { + "type": "played", + "filter": "side(shadow),event" + }, + "requirement": { + "type": "canSpot", + "filter": "self,hasStackedCount(3,any)" + }, + "effect": { + "type": "exert", + "player": "shadowPlayer", + "filter": "choose(minion)" + } + } + }, "40_184": { "title": "Black Steed", "subtitle": "Bred to Serve", 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 3c757ca03..a6a7d1073 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 @@ -10,6 +10,7 @@ import com.gempukku.lotro.common.Filterable; import com.gempukku.lotro.filters.Filters; import com.gempukku.lotro.game.PhysicalCard; import com.gempukku.lotro.game.state.LotroGame; +import com.gempukku.lotro.logic.GameUtils; import com.gempukku.lotro.logic.actions.CostToEffectAction; import com.gempukku.lotro.logic.timing.Effect; import com.gempukku.lotro.logic.timing.EffectResult; @@ -21,6 +22,8 @@ public class PlayerResolver { public static PlayerSource resolvePlayer(String type, CardGenerationEnvironment environment) throws InvalidCardDefinitionException { if (type.equals("owner")) return (playerId, game, self, effectResult, effect) -> self.getOwner(); + else if (type.equals("shadowPlayer")) + return (playerId, game, self, effectResult, effect) -> GameUtils.getFirstShadowPlayer(game); else if (type.equals("fp")) return ((playerId, game, self, effectResult, effect) -> game.getGameState().getCurrentPlayerId()); else if (type.startsWith("owner(") && type.endsWith(")")) {