diff --git a/src/main/java/vazkii/botania/common/block/BlockPistonRelay.java b/src/main/java/vazkii/botania/common/block/BlockPistonRelay.java index e61d0f6f0..27883721b 100644 --- a/src/main/java/vazkii/botania/common/block/BlockPistonRelay.java +++ b/src/main/java/vazkii/botania/common/block/BlockPistonRelay.java @@ -196,8 +196,9 @@ public class BlockPistonRelay extends BlockMod implements IWandable, ILexiconabl @SubscribeEvent public void tickEnd(TickEvent event) { - if(event.type == Type.SERVER && event.phase == Phase.END) - for(String s : coordsToCheck.keySet()) { + if(event.type == Type.SERVER && event.phase == Phase.END) { + List coordsToCheckCopy = new ArrayList(coordsToCheck.keySet()); + for(String s : coordsToCheckCopy) { decrCoords(s); if(checkedCoords.contains(s)) continue; @@ -255,7 +256,8 @@ public class BlockPistonRelay extends BlockMod implements IWandable, ILexiconabl } } } - + } + // ConcurrentModificationException failsafe ArrayList remove = new ArrayList(removeThese); for(String s : remove) {