From f90af4784ec41655ccb2e52b53739f6f5096119b Mon Sep 17 00:00:00 2001 From: Sol Date: Sun, 10 Dec 2017 20:30:48 +0000 Subject: [PATCH] Fix Signets being exploitable by not actually paying for activation --- .../src/main/java/forge/match/input/InputPayMana.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/forge-gui/src/main/java/forge/match/input/InputPayMana.java b/forge-gui/src/main/java/forge/match/input/InputPayMana.java index aa5660f02e7..49732cf50fb 100644 --- a/forge-gui/src/main/java/forge/match/input/InputPayMana.java +++ b/forge-gui/src/main/java/forge/match/input/InputPayMana.java @@ -302,13 +302,15 @@ public abstract class InputPayMana extends InputSyncronizedBase { game.getAction().invoke(new Runnable() { @Override public void run() { - HumanPlay.playSpellAbility(getController(), chosen.getActivatingPlayer(), chosen); - player.getManaPool().payManaFromAbility(saPaidFor, InputPayMana.this.manaCost, chosen); + if (HumanPlay.playSpellAbility(getController(), chosen.getActivatingPlayer(), chosen)) { + player.getManaPool().payManaFromAbility(saPaidFor, InputPayMana.this.manaCost, chosen); - onManaAbilityPaid(); - onStateChanged(); + onManaAbilityPaid(); + onStateChanged(); + } } }); + return true; }