diff --git a/src/main/java/forge/card/trigger/TriggerHandler.java b/src/main/java/forge/card/trigger/TriggerHandler.java index 6a0c5c18db1..bf37f7b5691 100644 --- a/src/main/java/forge/card/trigger/TriggerHandler.java +++ b/src/main/java/forge/card/trigger/TriggerHandler.java @@ -169,27 +169,29 @@ public class TriggerHandler { if (game.getStack().isFrozen() || holdTrigger) { waitingTriggers.add(new TriggerWaiting(mode, runParams)); } else { - runWaitingTrigger(new TriggerWaiting(mode, runParams), true); + runWaitingTrigger(new TriggerWaiting(mode, runParams)); } // Tell auto stop to stop } - public final boolean runWaitingTriggers(boolean runStaticEffects) { + public final boolean runWaitingTriggers() { ArrayList waiting = new ArrayList(waitingTriggers); waitingTriggers.clear(); if (waiting.isEmpty()) { return false; } + + Singletons.getModel().getGame().getAction().checkStaticAbilities(); boolean haveWaiting = false; for (TriggerWaiting wt : waiting) { - haveWaiting |= runWaitingTrigger(wt, runStaticEffects); + haveWaiting |= runWaitingTrigger(wt); } return haveWaiting; } - public final boolean runWaitingTrigger(TriggerWaiting wt, boolean runStaticEffects) { + public final boolean runWaitingTrigger(TriggerWaiting wt) { final TriggerType mode = wt.getMode(); final Map runParams = wt.getParams(); final GameState game = Singletons.getModel().getGame(); diff --git a/src/main/java/forge/game/GameAction.java b/src/main/java/forge/game/GameAction.java index 23c08a68205..bd2fe50342d 100644 --- a/src/main/java/forge/game/GameAction.java +++ b/src/main/java/forge/game/GameAction.java @@ -848,7 +848,7 @@ public class GameAction { } /** */ - private final void checkStaticAbilities() { + public final void checkStaticAbilities() { // remove old effects game.getStaticEffects().clearStaticEffects(); @@ -1051,7 +1051,7 @@ public class GameAction { } } - if (game.getTriggerHandler().runWaitingTriggers(true)) { + if (game.getTriggerHandler().runWaitingTriggers()) { checkAgain = true; // Place triggers on stack } diff --git a/src/main/java/forge/game/zone/MagicStack.java b/src/main/java/forge/game/zone/MagicStack.java index c188cb9433f..b469895b9be 100644 --- a/src/main/java/forge/game/zone/MagicStack.java +++ b/src/main/java/forge/game/zone/MagicStack.java @@ -201,7 +201,7 @@ public class MagicStack extends MyObservable { this.add(sa); } // Add all waiting triggers onto the stack - checkState |= Singletons.getModel().getGame().getTriggerHandler().runWaitingTriggers(false); + checkState |= Singletons.getModel().getGame().getTriggerHandler().runWaitingTriggers(); if (checkState) { this.chooseOrderOfSimultaneousStackEntryAll(); game.getAction().checkStateEffects();