diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java b/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java index cd25888a542..44dfb9fead2 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java @@ -63,14 +63,16 @@ public class TriggerHandler { @Override public boolean visit(Card c) { boolean changed = false; - for (int i = 0; i < c.getTriggers().size(); i++) { - Trigger trigger = c.getTriggers().get(i); - if (trigger.isTemporary()) { - c.removeTrigger(trigger); - changed = true; - i--; + List toRemove = Lists.newArrayList(); + for (Trigger t : c.getTriggers()) { + if (t.isTemporary()) { + toRemove.add(t); } } + for (Trigger t : toRemove) { + changed = true; + c.removeTrigger(t); + } if (changed) { c.updateStateForView(); }