diff --git a/forge-gui/src/main/java/forge/player/HumanPlay.java b/forge-gui/src/main/java/forge/player/HumanPlay.java index bc9da8fa046..613f4129377 100644 --- a/forge-gui/src/main/java/forge/player/HumanPlay.java +++ b/forge-gui/src/main/java/forge/player/HumanPlay.java @@ -81,12 +81,12 @@ public class HumanPlay { * @param sa * a {@link forge.game.spellability.SpellAbility} object. */ - public final static void playSpellAbility(final PlayerControllerHuman controller, final Player p, SpellAbility sa) { + public final static boolean playSpellAbility(final PlayerControllerHuman controller, final Player p, SpellAbility sa) { FThreads.assertExecutedByEdt(false); if (sa == controller.getGame().PLAY_LAND_SURROGATE) { p.playLand(sa.getHostCard(), false); - return; + return false; } boolean castFaceDown = sa instanceof Spell && ((Spell)sa).isCastFaceDown(); @@ -98,7 +98,7 @@ public class HumanPlay { source.setSplitStateToPlayAbility(sa); sa = chooseOptionalAdditionalCosts(p, sa); if (sa == null) { - return; + return false; } if (flippedToCast && !castFaceDown) { @@ -133,6 +133,7 @@ public class HumanPlay { if (flippedToCast && !castFaceDown) { source.turnFaceDown(true); } + return false; } } else if (payManaCostIfNeeded(controller, p, sa)) { if (sa.isSpell() && !source.isCopiedSpell()) { @@ -145,7 +146,9 @@ public class HumanPlay { if (flippedToCast && !castFaceDown) { source.turnFaceDown(true); } + return false; } + return true; } /** diff --git a/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java b/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java index 6b1e0c01593..4bf2933f6f0 100644 --- a/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java +++ b/forge-gui/src/main/java/forge/player/PlayerControllerHuman.java @@ -1268,8 +1268,7 @@ public class PlayerControllerHuman @Override public boolean playSaFromPlayEffect(final SpellAbility tgtSA) { - HumanPlay.playSpellAbility(this, player, tgtSA); - return true; + return HumanPlay.playSpellAbility(this, player, tgtSA); } @Override