From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Michael Himing Date: Mon, 9 Sep 2019 13:21:17 +1000 Subject: [PATCH] Fix nether portal creation diff --git a/src/main/java/org/bukkit/craftbukkit/util/BlockStateListPopulator.java b/src/main/java/org/bukkit/craftbukkit/util/BlockStateListPopulator.java index 60330f753fcbdef679a9444c3888f1656b2fa344..c22dbbfbe8b16d4c2f1df1f9efd3b06e330ac909 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/BlockStateListPopulator.java +++ b/src/main/java/org/bukkit/craftbukkit/util/BlockStateListPopulator.java @@ -38,6 +38,11 @@ public class BlockStateListPopulator extends DummyGeneratorAccess { @Override public boolean setTypeAndData(BlockPosition position, IBlockData data, int flag) { + // Paper start + // When a LinkedHashMap entry is overwritten, it keeps its old position. Removing the entry here before adding + // a new one ensures that the nether portal blocks are placed last and are not destroyed by physics. + list.remove(position); + // Paper end CraftBlockState state = CraftBlockState.getBlockState(world, position, flag); state.setData(data); list.put(position, state);