diff --git a/forge-game/src/main/java/forge/game/replacement/ReplacementHandler.java b/forge-game/src/main/java/forge/game/replacement/ReplacementHandler.java index c47dd86d932..b1843c1850d 100644 --- a/forge-game/src/main/java/forge/game/replacement/ReplacementHandler.java +++ b/forge-game/src/main/java/forge/game/replacement/ReplacementHandler.java @@ -309,13 +309,15 @@ public class ReplacementHandler { game.forEachCardInGame(new Visitor() { @Override public boolean visit(Card c) { - for (int i = 0; i < c.getReplacementEffects().size(); i++) { - ReplacementEffect rep = c.getReplacementEffects().get(i); + List toRemove = Lists.newArrayList(); + for (ReplacementEffect rep : c.getReplacementEffects()) { if (rep.isTemporary()) { - c.removeReplacementEffect(rep); - i--; + toRemove.add(rep); } } + for (ReplacementEffect rep : toRemove) { + c.removeReplacementEffect(rep); + } return true; } });