diff --git a/Spigot-Server-Patches/0560-PortalCreateEvent-needs-to-know-its-entity.patch b/Spigot-Server-Patches/0560-PortalCreateEvent-needs-to-know-its-entity.patch index 66018f4db8..cfced66829 100644 --- a/Spigot-Server-Patches/0560-PortalCreateEvent-needs-to-know-its-entity.patch +++ b/Spigot-Server-Patches/0560-PortalCreateEvent-needs-to-know-its-entity.patch @@ -100,7 +100,7 @@ index 2a785ea58a7bdc80c703a60bc6ed602dc8040aa0..9af91784544dbb0555824a9108825765 public void onPlace(IBlockData iblockdata, World world, BlockPosition blockposition, IBlockData iblockdata1, boolean flag) { org.spigotmc.AsyncCatcher.catchOp("block onPlace"); // Spigot diff --git a/src/main/java/net/minecraft/world/level/portal/BlockPortalShape.java b/src/main/java/net/minecraft/world/level/portal/BlockPortalShape.java -index 9f7ff56e43a3dc0cc57ed3a2c6dbc729afafa1f8..3f8a674345bcad8289a48d2daa5e2a283528e952 100644 +index 7c43a12f86cce829b2afb42ebcc95c2449985c10..0bce061d5a0dd0fc08f0aa4d46ead9326beb4bc7 100644 --- a/src/main/java/net/minecraft/world/level/portal/BlockPortalShape.java +++ b/src/main/java/net/minecraft/world/level/portal/BlockPortalShape.java @@ -11,6 +11,7 @@ import net.minecraft.tags.Tag; @@ -111,7 +111,7 @@ index 9f7ff56e43a3dc0cc57ed3a2c6dbc729afafa1f8..3f8a674345bcad8289a48d2daa5e2a28 import net.minecraft.world.level.GeneratorAccess; import net.minecraft.world.level.block.BlockPortal; import net.minecraft.world.level.block.Blocks; -@@ -177,7 +178,10 @@ public class BlockPortalShape { +@@ -182,7 +183,10 @@ public class BlockPortalShape { } // CraftBukkit start - return boolean @@ -123,12 +123,13 @@ index 9f7ff56e43a3dc0cc57ed3a2c6dbc729afafa1f8..3f8a674345bcad8289a48d2daa5e2a28 org.bukkit.World bworld = this.b.getMinecraftWorld().getWorld(); // Copy below for loop -@@ -189,7 +193,7 @@ public class BlockPortalShape { - blocks.add(state); +@@ -191,8 +195,7 @@ public class BlockPortalShape { + BlockPosition.a(this.position, this.position.shift(EnumDirection.UP, this.height - 1).shift(this.d, this.width - 1)).forEach((blockposition) -> { + blocks.setTypeAndData(blockposition, iblockdata, 18); }); - -- PortalCreateEvent event = new PortalCreateEvent(blocks, bworld, null, PortalCreateEvent.CreateReason.FIRE); -+ PortalCreateEvent event = new PortalCreateEvent(blocks, bworld, itemActionContext == null || itemActionContext.getEntity() == null ? null : itemActionContext.getEntity().getBukkitEntity(), PortalCreateEvent.CreateReason.FIRE); // Paper - pass entity param +- +- PortalCreateEvent event = new PortalCreateEvent((java.util.List) (java.util.List) blocks.getList(), bworld, null, PortalCreateEvent.CreateReason.FIRE); ++ PortalCreateEvent event = new PortalCreateEvent((java.util.List) (java.util.List) blocks.getList(), bworld, itemActionContext == null || itemActionContext.getEntity() == null ? null : itemActionContext.getEntity().getBukkitEntity(), PortalCreateEvent.CreateReason.FIRE); // Paper - pass entity param this.b.getMinecraftWorld().getMinecraftServer().server.getPluginManager().callEvent(event); if (event.isCancelled()) { diff --git a/work/CraftBukkit b/work/CraftBukkit index ebe18b9b0e..3797d93e36 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit ebe18b9b0ea94fcec32accc5132d33fe43923455 +Subproject commit 3797d93e369645c9b2d9ab0188aa893a11280628