From d095dc71565a2a4e8405c0e206aa6d0ecb26aef5 Mon Sep 17 00:00:00 2001 From: Northmoc Date: Mon, 18 Oct 2021 10:33:21 -0400 Subject: [PATCH] InvestigateEffect - support Optional and RememberInvestigatingPlayers --- .../forge/game/ability/effects/InvestigateEffect.java | 10 ++++++++++ forge-gui/res/languages/de-DE.properties | 2 ++ forge-gui/res/languages/en-US.properties | 2 ++ forge-gui/res/languages/es-ES.properties | 2 ++ forge-gui/res/languages/it-IT.properties | 2 ++ forge-gui/res/languages/ja-JP.properties | 2 ++ forge-gui/res/languages/zh-CN.properties | 2 ++ 7 files changed, 22 insertions(+) diff --git a/forge-game/src/main/java/forge/game/ability/effects/InvestigateEffect.java b/forge-game/src/main/java/forge/game/ability/effects/InvestigateEffect.java index 30746f73093..4eaab4d61d6 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/InvestigateEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/InvestigateEffect.java @@ -1,5 +1,6 @@ package forge.game.ability.effects; +import forge.util.Localizer; import org.apache.commons.lang3.mutable.MutableBoolean; import forge.game.Game; @@ -38,6 +39,11 @@ public class InvestigateEffect extends TokenEffectBase { // Investigate in Sequence for (final Player p : getTargetPlayers(sa)) { for (int i = 0; i < amount; i++) { + if (sa.hasParam("Optional") && !p.getController().confirmAction(sa, null, + Localizer.getInstance().getMessage("lblWouldYouLikeInvestigate"))) { + return; + } + CardZoneTable triggerList = new CardZoneTable(); MutableBoolean combatChanged = new MutableBoolean(false); @@ -46,6 +52,10 @@ public class InvestigateEffect extends TokenEffectBase { triggerList.triggerChangesZoneAll(game, sa); p.addInvestigatedThisTurn(); + if (sa.hasParam("RememberInvestigatingPlayers")) { + card.addRemembered(p); + } + game.fireEvent(new GameEventTokenCreated()); if (combatChanged.isTrue()) { diff --git a/forge-gui/res/languages/de-DE.properties b/forge-gui/res/languages/de-DE.properties index 416c96cd4e9..60ec963432b 100644 --- a/forge-gui/res/languages/de-DE.properties +++ b/forge-gui/res/languages/de-DE.properties @@ -1923,6 +1923,8 @@ lblTails=Zahl lblCallCoinFlip=Kopf oder Zahl lblWin=Gewonnen lblLose=Verloren +#InvestigateEffect.java +lblWouldYouLikeInvestigate=Do you want to investigate? #LifeSetEffect.java lblLifeTotal=Lebenspunkte #ManaEffect.java diff --git a/forge-gui/res/languages/en-US.properties b/forge-gui/res/languages/en-US.properties index 1016e0788f1..0a0a028a233 100644 --- a/forge-gui/res/languages/en-US.properties +++ b/forge-gui/res/languages/en-US.properties @@ -1924,6 +1924,8 @@ lblTails=tails lblCallCoinFlip=Call coin flip lblWin=win lblLose=lose +#InvestigateEffect.java +lblWouldYouLikeInvestigate=Do you want to investigate? #LifeSetEffect.java lblLifeTotal=Life Total #ManaEffect.java diff --git a/forge-gui/res/languages/es-ES.properties b/forge-gui/res/languages/es-ES.properties index 7829d14e95f..991f2b8aded 100644 --- a/forge-gui/res/languages/es-ES.properties +++ b/forge-gui/res/languages/es-ES.properties @@ -1922,6 +1922,8 @@ lblTails=cruz lblCallCoinFlip=Llamar al lanzamiento de la moneda lblWin=gana lblLose=pierde +#InvestigateEffect.java +lblWouldYouLikeInvestigate=¿Quieres investigar? #LifeSetEffect.java lblLifeTotal=Vida total #ManaEffect.java diff --git a/forge-gui/res/languages/it-IT.properties b/forge-gui/res/languages/it-IT.properties index c6cffef9818..021eec01988 100644 --- a/forge-gui/res/languages/it-IT.properties +++ b/forge-gui/res/languages/it-IT.properties @@ -1921,6 +1921,8 @@ lblTails=croce lblCallCoinFlip=Scegli testa o croce lblWin=hai vinto lblLose=hai perso +#InvestigateEffect.java +lblWouldYouLikeInvestigate=Do you want to investigate? #LifeSetEffect.java lblLifeTotal=Punti Vita #ManaEffect.java diff --git a/forge-gui/res/languages/ja-JP.properties b/forge-gui/res/languages/ja-JP.properties index b51ad63904a..1336ab6211e 100644 --- a/forge-gui/res/languages/ja-JP.properties +++ b/forge-gui/res/languages/ja-JP.properties @@ -1921,6 +1921,8 @@ lblTails=裏 lblCallCoinFlip=コイン投げを予想 lblWin=勝ち lblLose=負け +#InvestigateEffect.java +lblWouldYouLikeInvestigate=Do you want to investigate? #LifeSetEffect.java lblLifeTotal=総ライフ値 #ManaEffect.java diff --git a/forge-gui/res/languages/zh-CN.properties b/forge-gui/res/languages/zh-CN.properties index 34c76c28c96..ef388df6229 100644 --- a/forge-gui/res/languages/zh-CN.properties +++ b/forge-gui/res/languages/zh-CN.properties @@ -1925,6 +1925,8 @@ lblTails=背面 lblCallCoinFlip=掷骰子 lblWin=赢 lblLose=输 +#InvestigateEffect.java +lblWouldYouLikeInvestigate=Do you want to investigate? #LifeSetEffect.java lblLifeTotal=生命总数 #ManaEffect.java