From 6d41af029cfa106d9fea1fd846c1e1363557f7e9 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 9 Sep 2018 15:26:56 -0400 Subject: [PATCH] Updated Upstream (Bukkit/CraftBukkit/Spigot) Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 3e2858f6 SPIGOT-4352: MoistureChangeEvent 5466e281 Add BlockDispenseArmorEvent CraftBukkit Changes: 3123a069 SPIGOT-4352: MoistureChangeEvent 226db0ea Add BlockDispenseArmorEvent cd367fa4 Fix bad thread safety in ChunkRegionLoader 3f5ca5f2 SPIGOT-4355: Improve cancelling VehicleEnterEvent Spigot Changes: 145a37ae Rebuild patches 3f2423cc Rebuild patches --- Spigot-Server-Patches/0009-Timings-v2.patch | 14 ++++----- ...oreboards-for-non-players-by-default.patch | 10 +++---- .../0062-Chunk-save-queue-improvements.patch | 11 +++---- .../0078-Don-t-teleport-dead-entities.patch | 6 ++-- ...nilla-per-world-scoreboard-coloring-.patch | 10 +++---- ...9-Optional-TNT-doesn-t-move-in-water.patch | 6 ++-- .../0125-Fix-Double-World-Add-issues.patch | 8 ++--- .../0142-Add-EntityZapEvent.patch | 6 ++-- ...0-Add-source-to-PlayerExpChangeEvent.patch | 6 ++-- .../0153-Add-ProjectileCollideEvent.patch | 6 ++-- ...llow-entities-to-ride-themselves-572.patch | 6 ++-- ...emove-entities-on-dimension-teleport.patch | 6 ++-- ...leHitEvent-to-include-the-BlockFace-.patch | 6 ++-- .../0284-InventoryCloseEvent-Reason-API.patch | 22 +++++++------- ...-more-information-to-Entity.toString.patch | 6 ++-- .../0299-Duplicate-UUID-Resolve-Option.patch | 14 ++++----- ...5-Vanished-players-don-t-have-rights.patch | 8 ++--- ...revent-Saving-Bad-entities-to-chunks.patch | 8 ++--- Spigot-Server-Patches/0346-Anti-Xray.patch | 8 ++--- ...d-load-entity-AABB-to-prevent-wobble.patch | 6 ++-- .../0363-Improve-death-events.patch | 30 +++++++++---------- work/Bukkit | 2 +- work/CraftBukkit | 2 +- work/Spigot | 2 +- 24 files changed, 105 insertions(+), 104 deletions(-) diff --git a/Spigot-Server-Patches/0009-Timings-v2.patch b/Spigot-Server-Patches/0009-Timings-v2.patch index a6bb41ddc7..ac66a73fcd 100644 --- a/Spigot-Server-Patches/0009-Timings-v2.patch +++ b/Spigot-Server-Patches/0009-Timings-v2.patch @@ -1,4 +1,4 @@ -From ac01ce9208e9ce7478ed3686d6b9bba53873898e Mon Sep 17 00:00:00 2001 +From ba0e316b276f0e35be5368b7e7f3bf0346916678 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 3 Mar 2016 04:00:11 -0600 Subject: [PATCH] Timings v2 @@ -389,7 +389,7 @@ index 9e805c5d22..0034956af9 100644 this.chunkLoader.saveChunk(this.world, ichunkaccess, unloaded); // Spigot } catch (IOException ioexception) { diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index df07b2b889..f969c036f3 100644 +index 664b167bb2..2e9bd0949a 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java @@ -1,5 +1,6 @@ @@ -399,7 +399,7 @@ index df07b2b889..f969c036f3 100644 import com.google.common.collect.Maps; import com.mojang.datafixers.DataFixTypes; import com.mojang.datafixers.DataFixer; -@@ -678,7 +679,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -680,7 +681,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { public void loadEntities(NBTTagCompound nbttagcompound, Chunk chunk) { NBTTagList nbttaglist = nbttagcompound.getList("Entities", 10); World world = chunk.getWorld(); @@ -408,7 +408,7 @@ index df07b2b889..f969c036f3 100644 for (int i = 0; i < nbttaglist.size(); ++i) { NBTTagCompound nbttagcompound1 = nbttaglist.getCompound(i); -@@ -687,8 +688,6 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -689,8 +690,6 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { chunk.f(true); } @@ -417,7 +417,7 @@ index df07b2b889..f969c036f3 100644 NBTTagList nbttaglist1 = nbttagcompound.getList("TileEntities", 10); for (int j = 0; j < nbttaglist1.size(); ++j) { -@@ -705,8 +704,6 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -707,8 +706,6 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { } } } @@ -426,7 +426,7 @@ index df07b2b889..f969c036f3 100644 if (nbttagcompound.hasKeyOfType("TileTicks", 9) && world.J() instanceof TickListServer) { ((TickListServer) world.J()).a(nbttagcompound.getList("TileTicks", 10)); -@@ -715,7 +712,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -717,7 +714,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { if (nbttagcompound.hasKeyOfType("LiquidTicks", 9) && world.I() instanceof TickListServer) { ((TickListServer) world.I()).a(nbttagcompound.getList("LiquidTicks", 10)); } @@ -529,7 +529,7 @@ index efa738d4ec..dabad6b055 100644 return waitable.get(); } catch (java.util.concurrent.ExecutionException e) { diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 591ae114cf..ec5c9fd735 100644 +index 5914439b1c..f1cf6cf1cd 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -29,7 +29,8 @@ import org.bukkit.command.CommandSender; diff --git a/Spigot-Server-Patches/0059-Disable-Scoreboards-for-non-players-by-default.patch b/Spigot-Server-Patches/0059-Disable-Scoreboards-for-non-players-by-default.patch index 3bc20cba32..cdb090317a 100644 --- a/Spigot-Server-Patches/0059-Disable-Scoreboards-for-non-players-by-default.patch +++ b/Spigot-Server-Patches/0059-Disable-Scoreboards-for-non-players-by-default.patch @@ -1,4 +1,4 @@ -From 318ea0ac3b760220892f620d0218a490fcd390b5 Mon Sep 17 00:00:00 2001 +From 3fb25bf7d30a4e0dbe2d2e7e45260f78b0badc32 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 8 Mar 2016 23:25:45 -0500 Subject: [PATCH] Disable Scoreboards for non players by default @@ -11,7 +11,7 @@ So avoid looking up scoreboards and short circuit to the "not on a team" logic which is most likely to be true. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 4a2d296746..2b25da0465 100644 +index da68152a70..1d23a07389 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -193,4 +193,9 @@ public class PaperWorldConfig { @@ -25,10 +25,10 @@ index 4a2d296746..2b25da0465 100644 + } } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index f6cdff0ef9..9e1c427fcc 100644 +index b61a7706fa..1722573ffc 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2243,6 +2243,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2244,6 +2244,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @Nullable public ScoreboardTeamBase be() { @@ -37,7 +37,7 @@ index f6cdff0ef9..9e1c427fcc 100644 } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index dd216c64e9..ed6f5e70f3 100644 +index b9783ce056..58fe9f2ab3 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -538,6 +538,7 @@ public abstract class EntityLiving extends Entity { diff --git a/Spigot-Server-Patches/0062-Chunk-save-queue-improvements.patch b/Spigot-Server-Patches/0062-Chunk-save-queue-improvements.patch index f0264c85d6..b25bc57300 100644 --- a/Spigot-Server-Patches/0062-Chunk-save-queue-improvements.patch +++ b/Spigot-Server-Patches/0062-Chunk-save-queue-improvements.patch @@ -1,4 +1,4 @@ -From e5c85fe8b8be9af8965d9b2ab7aa871edfa14b96 Mon Sep 17 00:00:00 2001 +From 47272a40d066580e0b7d14486215f020684e8bad Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 4 Mar 2016 18:18:37 -0600 Subject: [PATCH] Chunk save queue improvements @@ -41,7 +41,7 @@ index 0d68ffd75a..fd00c320ce 100644 + } } diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index f969c036f3..2b0a088a6a 100644 +index 2e9bd0949a..3166d4b1ad 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java @@ -22,6 +22,7 @@ import java.util.function.Consumer; @@ -70,7 +70,7 @@ index f969c036f3..2b0a088a6a 100644 + // Paper end + private static final Logger a = LogManager.getLogger(); - private final Map> b = Maps.newHashMap(); + private final Map> b = java.util.Collections.synchronizedMap(Maps.newHashMap()); // CraftBukkit // Spigot private final File c; @@ -305,8 +319,8 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { } @@ -95,10 +95,11 @@ index f969c036f3..2b0a088a6a 100644 FileIOThread.a().a(this); } -@@ -325,19 +342,18 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -325,20 +342,18 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { } private boolean processSaveQueueEntry(boolean logCompletion) { +- synchronized (this.b) { // CraftBukkit - Iterator iterator = this.b.entrySet().iterator(); - if (!iterator.hasNext()) { + // Paper start - Chunk queue improvements @@ -121,7 +122,7 @@ index f969c036f3..2b0a088a6a 100644 if (nbttagcompound == null) { return true; -@@ -346,6 +362,14 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -347,6 +362,14 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { // CraftBukkit start RegionFileCache.write(this.c, chunkcoordintpair.x, chunkcoordintpair.z, SupplierUtils.getIfExists(nbttagcompound)); // Spigot diff --git a/Spigot-Server-Patches/0078-Don-t-teleport-dead-entities.patch b/Spigot-Server-Patches/0078-Don-t-teleport-dead-entities.patch index 075464e6f7..b50763022e 100644 --- a/Spigot-Server-Patches/0078-Don-t-teleport-dead-entities.patch +++ b/Spigot-Server-Patches/0078-Don-t-teleport-dead-entities.patch @@ -1,4 +1,4 @@ -From ccf9807fc0d57beb06724b3ede46c76296837330 Mon Sep 17 00:00:00 2001 +From d428f995faa24a9963d176e021fb5750f7f68281 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 22 Mar 2016 00:55:23 -0400 Subject: [PATCH] Don't teleport dead entities @@ -7,10 +7,10 @@ Had some issue with this in past, and this is the vanilla logic. Potentially an old CB change that's no longer needed. diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 90960bd0b8..5ab98cbcf1 100644 +index 219970a647..e7c79b2820 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2558,7 +2558,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2559,7 +2559,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } public Entity teleportTo(Location exit, boolean portal) { diff --git a/Spigot-Server-Patches/0098-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch b/Spigot-Server-Patches/0098-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch index feacbd8dfb..fc012b9e3d 100644 --- a/Spigot-Server-Patches/0098-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch +++ b/Spigot-Server-Patches/0098-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch @@ -1,11 +1,11 @@ -From f8cb909a7f2be0d60914177cfae16d1945845f96 Mon Sep 17 00:00:00 2001 +From f7ea6691ae48aa986e588c9f792755ce6108854c Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Wed, 6 Apr 2016 01:04:23 -0500 Subject: [PATCH] Option to use vanilla per-world scoreboard coloring on names diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 61e6dcb0ee..56a25531b4 100644 +index b50bc5bf06..3628ddb4db 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -242,4 +242,9 @@ public class PaperWorldConfig { @@ -19,10 +19,10 @@ index 61e6dcb0ee..56a25531b4 100644 + } } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 5ab98cbcf1..3fc9568663 100644 +index e7c79b2820..5e3a1094e8 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2255,6 +2255,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2256,6 +2256,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.getFlag(5); } @@ -31,7 +31,7 @@ index 5ab98cbcf1..3fc9568663 100644 public ScoreboardTeamBase be() { if (!this.world.paperConfig.nonPlayerEntitiesOnScoreboards && !(this instanceof EntityHuman)) { return null; } // Paper diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 096e4e0d8c..cc72398715 100644 +index 35159bcd8f..ef585b741b 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -1632,7 +1632,15 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { diff --git a/Spigot-Server-Patches/0119-Optional-TNT-doesn-t-move-in-water.patch b/Spigot-Server-Patches/0119-Optional-TNT-doesn-t-move-in-water.patch index 90173e9f33..aacab8e6ff 100644 --- a/Spigot-Server-Patches/0119-Optional-TNT-doesn-t-move-in-water.patch +++ b/Spigot-Server-Patches/0119-Optional-TNT-doesn-t-move-in-water.patch @@ -1,4 +1,4 @@ -From 3c7d74ab58e7ae98df962acee851f875b4129330 Mon Sep 17 00:00:00 2001 +From 2e63969b601f0219ad563c9f8a062268f7339496 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Sun, 22 May 2016 20:20:55 -0500 Subject: [PATCH] Optional TNT doesn't move in water @@ -32,7 +32,7 @@ index c2c4e16d13..f8102d9f07 100644 + } } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 4fb42a6319..5bd129bcaf 100644 +index 0952bff5c0..b73a4e6b37 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -1170,6 +1170,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -48,7 +48,7 @@ index 4fb42a6319..5bd129bcaf 100644 return this.isInWater() || this.q(); } -@@ -2720,6 +2726,11 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2721,6 +2727,11 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } public boolean bw() { diff --git a/Spigot-Server-Patches/0125-Fix-Double-World-Add-issues.patch b/Spigot-Server-Patches/0125-Fix-Double-World-Add-issues.patch index 52b05375af..8ebc4f7852 100644 --- a/Spigot-Server-Patches/0125-Fix-Double-World-Add-issues.patch +++ b/Spigot-Server-Patches/0125-Fix-Double-World-Add-issues.patch @@ -1,4 +1,4 @@ -From fef43c023a1486d881ecc405c59fc00acf543c3c Mon Sep 17 00:00:00 2001 +From be4d1a2e8b0408ab2496995a4b67bd819360bbd6 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 21 Jun 2016 22:54:34 -0400 Subject: [PATCH] Fix Double World Add issues @@ -8,10 +8,10 @@ Vanilla will double add Spider Jockeys to the world, so ignore already added. Also add debug if something else tries to, and abort before world gets bad state diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index dcd236a8e5..c85a8dac3e 100644 +index 3166d4b1ad..1c5b7903cc 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -@@ -1036,7 +1036,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -1037,7 +1037,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { } public static void a(Entity entity, GeneratorAccess generatoraccess, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason reason) { @@ -21,7 +21,7 @@ index dcd236a8e5..c85a8dac3e 100644 Iterator iterator = entity.bP().iterator(); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index c6fa54848e..1ed4408e2a 100644 +index b4f31c9310..6e1a396abc 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -987,6 +987,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc diff --git a/Spigot-Server-Patches/0142-Add-EntityZapEvent.patch b/Spigot-Server-Patches/0142-Add-EntityZapEvent.patch index 284c0d59b6..972c517156 100644 --- a/Spigot-Server-Patches/0142-Add-EntityZapEvent.patch +++ b/Spigot-Server-Patches/0142-Add-EntityZapEvent.patch @@ -1,4 +1,4 @@ -From ca8434b485225bfe2ef0d35428cfe473fe1dc301 Mon Sep 17 00:00:00 2001 +From 681b02dd72d0d81713197b5e1db3f089d4239b0a Mon Sep 17 00:00:00 2001 From: AlphaBlend Date: Sun, 16 Oct 2016 23:19:30 -0700 Subject: [PATCH] Add EntityZapEvent @@ -48,10 +48,10 @@ index 32e327e42c..5aebdba56c 100644 } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 5c5d85fabc..d427cbf88d 100644 +index 002c483e1e..bd094eef8a 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -697,6 +697,14 @@ public class CraftEventFactory { +@@ -710,6 +710,14 @@ public class CraftEventFactory { return event; } diff --git a/Spigot-Server-Patches/0150-Add-source-to-PlayerExpChangeEvent.patch b/Spigot-Server-Patches/0150-Add-source-to-PlayerExpChangeEvent.patch index d19e6406d1..90cf93e881 100644 --- a/Spigot-Server-Patches/0150-Add-source-to-PlayerExpChangeEvent.patch +++ b/Spigot-Server-Patches/0150-Add-source-to-PlayerExpChangeEvent.patch @@ -1,4 +1,4 @@ -From a39cfd645969493bcdc977e0a75c25ce62f1e57c Mon Sep 17 00:00:00 2001 +From 5f5a14dac2d1cdc06244646c0032b338d0ce66ab Mon Sep 17 00:00:00 2001 From: AlphaBlend Date: Thu, 8 Sep 2016 08:48:33 -0700 Subject: [PATCH] Add source to PlayerExpChangeEvent @@ -18,7 +18,7 @@ index 33b24c833b..880f496526 100644 this.die(); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index d427cbf88d..2bf5cad1e9 100644 +index bd094eef8a..3c498c56eb 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -48,6 +48,7 @@ import org.bukkit.entity.Player; @@ -29,7 +29,7 @@ index d427cbf88d..2bf5cad1e9 100644 import org.bukkit.event.Cancellable; import org.bukkit.event.Event; import org.bukkit.event.block.*; -@@ -666,6 +667,17 @@ public class CraftEventFactory { +@@ -679,6 +680,17 @@ public class CraftEventFactory { return event; } diff --git a/Spigot-Server-Patches/0153-Add-ProjectileCollideEvent.patch b/Spigot-Server-Patches/0153-Add-ProjectileCollideEvent.patch index 1c825d9abb..96dc79aa2d 100644 --- a/Spigot-Server-Patches/0153-Add-ProjectileCollideEvent.patch +++ b/Spigot-Server-Patches/0153-Add-ProjectileCollideEvent.patch @@ -1,4 +1,4 @@ -From 095f0dae4bedb5da2d31e79ce2021203c3f303ba Mon Sep 17 00:00:00 2001 +From e6c073eebee251cb71ae1c5ea572b793cc9bde64 Mon Sep 17 00:00:00 2001 From: Techcable Date: Fri, 16 Dec 2016 21:25:39 -0600 Subject: [PATCH] Add ProjectileCollideEvent @@ -87,10 +87,10 @@ index ee402d4140..fc8c0cab55 100644 if (movingobjectposition.type == MovingObjectPosition.EnumMovingObjectType.BLOCK && this.world.getType(movingobjectposition.a()).getBlock() == Blocks.NETHER_PORTAL) { this.e(movingobjectposition.a()); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 2bf5cad1e9..dbb714ecdd 100644 +index 3c498c56eb..43ccf4e23c 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -801,6 +801,16 @@ public class CraftEventFactory { +@@ -814,6 +814,16 @@ public class CraftEventFactory { return CraftItemStack.asNMSCopy(bitem); } diff --git a/Spigot-Server-Patches/0169-Don-t-allow-entities-to-ride-themselves-572.patch b/Spigot-Server-Patches/0169-Don-t-allow-entities-to-ride-themselves-572.patch index d7af5c2eec..9868936872 100644 --- a/Spigot-Server-Patches/0169-Don-t-allow-entities-to-ride-themselves-572.patch +++ b/Spigot-Server-Patches/0169-Don-t-allow-entities-to-ride-themselves-572.patch @@ -1,17 +1,17 @@ -From df9a405ea09f990b466ea4b5482545b799066b32 Mon Sep 17 00:00:00 2001 +From 94def123ad430b43c241982b2aa937372df72db3 Mon Sep 17 00:00:00 2001 From: Alfie Cleveland Date: Sun, 8 Jan 2017 04:31:36 +0000 Subject: [PATCH] Don't allow entities to ride themselves - #572 diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 7f430e590f..a16fbd4579 100644 +index 653bc6cd69..f3422a097b 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -2073,6 +2073,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } - protected void o(Entity entity) { + protected boolean o(Entity entity) { // CraftBukkit + if (entity == this) throw new IllegalArgumentException("Entities cannot become a passenger of themselves"); // Paper - issue 572 if (entity.getVehicle() != this) { throw new IllegalStateException("Use x.startRiding(y), not y.addPassenger(x)"); diff --git a/Spigot-Server-Patches/0268-Properly-remove-entities-on-dimension-teleport.patch b/Spigot-Server-Patches/0268-Properly-remove-entities-on-dimension-teleport.patch index e692243d10..5e627c4b7a 100644 --- a/Spigot-Server-Patches/0268-Properly-remove-entities-on-dimension-teleport.patch +++ b/Spigot-Server-Patches/0268-Properly-remove-entities-on-dimension-teleport.patch @@ -1,4 +1,4 @@ -From 99c2e5c47218e10dd063004b0056aba7ce122e0f Mon Sep 17 00:00:00 2001 +From 0aa57bc0915718eae312b2f975f65795fae8a1c1 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 10 Jun 2018 20:04:42 -0400 Subject: [PATCH] Properly remove entities on dimension teleport @@ -22,10 +22,10 @@ requirement, but plugins (such as my own) use this method to trigger a "reload" of the entity on the client. diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 0e8c95d96b..111c2c3df6 100644 +index bc768e6a7f..a0eacf34d0 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2590,7 +2590,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2591,7 +2591,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } // CraftBukkit end */ diff --git a/Spigot-Server-Patches/0281-Improve-ProjectileHitEvent-to-include-the-BlockFace-.patch b/Spigot-Server-Patches/0281-Improve-ProjectileHitEvent-to-include-the-BlockFace-.patch index d79c72f31f..a63170e091 100644 --- a/Spigot-Server-Patches/0281-Improve-ProjectileHitEvent-to-include-the-BlockFace-.patch +++ b/Spigot-Server-Patches/0281-Improve-ProjectileHitEvent-to-include-the-BlockFace-.patch @@ -1,4 +1,4 @@ -From ab55001552db9cf02bba4601b28078c67cec02b5 Mon Sep 17 00:00:00 2001 +From c5e7c1fea11313a52ac0d87c6e543f4db56a847c Mon Sep 17 00:00:00 2001 From: Brokkonaut Date: Sat, 30 Jun 2018 05:45:39 +0200 Subject: [PATCH] Improve ProjectileHitEvent to include the BlockFace where the @@ -6,10 +6,10 @@ Subject: [PATCH] Improve ProjectileHitEvent to include the BlockFace where the diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 74b53275bf..d6ff3f3303 100644 +index c344c8a9ca..15ae4cb8ea 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -825,7 +825,7 @@ public class CraftEventFactory { +@@ -838,7 +838,7 @@ public class CraftEventFactory { hitBlock = entity.getBukkitEntity().getWorld().getBlockAt(blockposition.getX(), blockposition.getY(), blockposition.getZ()); } diff --git a/Spigot-Server-Patches/0284-InventoryCloseEvent-Reason-API.patch b/Spigot-Server-Patches/0284-InventoryCloseEvent-Reason-API.patch index 41a96c2bb1..00c06d3c48 100644 --- a/Spigot-Server-Patches/0284-InventoryCloseEvent-Reason-API.patch +++ b/Spigot-Server-Patches/0284-InventoryCloseEvent-Reason-API.patch @@ -1,4 +1,4 @@ -From af423c1e2d1f13fb504985d95afaa7790728e375 Mon Sep 17 00:00:00 2001 +From f01d6308d059e6754bb682252277fd2121e90f48 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 3 Jul 2018 21:56:23 -0400 Subject: [PATCH] InventoryCloseEvent Reason API @@ -7,7 +7,7 @@ Allows you to determine why an inventory was closed, enabling plugin developers to "confirm" things based on if it was player triggered close or not. diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 6bbb737d..614fce44 100644 +index 6bbb737df7..614fce4447 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -900,7 +900,7 @@ public class Chunk implements IChunkAccess { @@ -29,7 +29,7 @@ index 6bbb737d..614fce44 100644 } } diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 5e13cb06..c7dc6fe0 100644 +index 5e13cb0640..c7dc6fe0ef 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -162,7 +162,7 @@ public abstract class EntityHuman extends EntityLiving { @@ -56,7 +56,7 @@ index 5e13cb06..c7dc6fe0 100644 this.activeContainer = this.defaultContainer; } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 3644fde3..68f5842c 100644 +index 3644fde3bb..68f5842cfe 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -346,7 +346,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -110,7 +110,7 @@ index 3644fde3..68f5842c 100644 this.m(); } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 5199c1fe..06709e0c 100644 +index 5199c1fe4e..06709e0c7f 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -2056,7 +2056,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { @@ -123,7 +123,7 @@ index 5199c1fe..06709e0c 100644 this.player.m(); } diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 304cae65..6d511b62 100644 +index 304cae655d..6d511b6230 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -422,7 +422,7 @@ public abstract class PlayerList { @@ -136,7 +136,7 @@ index 304cae65..6d511b62 100644 PlayerQuitEvent playerQuitEvent = new PlayerQuitEvent(cserver.getPlayer(entityplayer), "\u00A7e" + entityplayer.getName() + " left the game"); cserver.getPluginManager().callEvent(playerQuitEvent); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 92fe8031..70a4dbe2 100644 +index 92fe80316f..70a4dbe26b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java @@ -412,8 +412,13 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { @@ -155,7 +155,7 @@ index 92fe8031..70a4dbe2 100644 public boolean isBlocking() { return getHandle().isBlocking(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 40b590da..f372f19d 100644 +index 40b590da36..f372f19dec 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -740,7 +740,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -168,10 +168,10 @@ index 40b590da..f372f19d 100644 // Check if the fromWorld and toWorld are the same. diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index d6ff3f33..1cc17c29 100644 +index 15ae4cb8ea..063c1b7fa3 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -915,8 +915,19 @@ public class CraftEventFactory { +@@ -928,8 +928,19 @@ public class CraftEventFactory { return event; } @@ -193,5 +193,5 @@ index d6ff3f33..1cc17c29 100644 human.activeContainer.transferTo(human.defaultContainer, human.getBukkitEntity()); } -- -2.18.0.windows.1 +2.18.0 diff --git a/Spigot-Server-Patches/0294-add-more-information-to-Entity.toString.patch b/Spigot-Server-Patches/0294-add-more-information-to-Entity.toString.patch index 9d022f33f2..b6f39c2f00 100644 --- a/Spigot-Server-Patches/0294-add-more-information-to-Entity.toString.patch +++ b/Spigot-Server-Patches/0294-add-more-information-to-Entity.toString.patch @@ -1,4 +1,4 @@ -From 304398689959004f9b12d46a8d8d288bda1b4583 Mon Sep 17 00:00:00 2001 +From a87c697c5e33dcac78e007298ab76eca1b1977c2 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 19 Jul 2018 01:13:28 -0400 Subject: [PATCH] add more information to Entity.toString() @@ -6,10 +6,10 @@ Subject: [PATCH] add more information to Entity.toString() UUID, ticks lived, valid, dead diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 111c2c3df6..58f7489ebd 100644 +index a0eacf34d0..064bd4133a 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2493,7 +2493,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2494,7 +2494,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } public String toString() { diff --git a/Spigot-Server-Patches/0299-Duplicate-UUID-Resolve-Option.patch b/Spigot-Server-Patches/0299-Duplicate-UUID-Resolve-Option.patch index d10969fa30..65ec175b10 100644 --- a/Spigot-Server-Patches/0299-Duplicate-UUID-Resolve-Option.patch +++ b/Spigot-Server-Patches/0299-Duplicate-UUID-Resolve-Option.patch @@ -1,4 +1,4 @@ -From b3a484e0fc3c9e8585afb8d8b9e4a7d3b8ad70e2 Mon Sep 17 00:00:00 2001 +From 1a9d10661ff39ff804ecff3b146f45b7dd2541fa Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 21 Jul 2018 14:27:34 -0400 Subject: [PATCH] Duplicate UUID Resolve Option @@ -33,7 +33,7 @@ But for those who are ok with leaving this inconsistent behavior, you may use WA It is recommended you regenerate the entities, as these were legit entities, and deserve your love. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index fb2467636..3aa6f031f 100644 +index fb2467636a..3aa6f031f3 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -433,4 +433,47 @@ public class PaperWorldConfig { @@ -85,7 +85,7 @@ index fb2467636..3aa6f031f 100644 + } } diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index e806d13d2..3bddc5f9b 100644 +index e806d13d22..3bddc5f9b5 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -1,5 +1,10 @@ @@ -168,10 +168,10 @@ index e806d13d2..3bddc5f9b 100644 this.world.a(entityslice.stream().filter((entity) -> { return !(entity instanceof EntityHuman); diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index ffd88adcf..89a83548b 100644 +index 7d8f723968..46399cc9b0 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -2718,6 +2718,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2719,6 +2719,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke }); } @@ -180,7 +180,7 @@ index ffd88adcf..89a83548b 100644 this.uniqueID = uuid; this.au = this.uniqueID.toString(); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index ba1fb577a..ae7e17231 100644 +index ba1fb577a1..ae7e17231a 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -75,7 +75,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc @@ -193,7 +193,7 @@ index ba1fb577a..ae7e17231 100644 public final List tileEntityListTick = Lists.newArrayList(); private final List c = Lists.newArrayList(); diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 8e8cf659f..657938762 100644 +index 8e8cf659f8..6579387623 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -41,7 +41,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { diff --git a/Spigot-Server-Patches/0305-Vanished-players-don-t-have-rights.patch b/Spigot-Server-Patches/0305-Vanished-players-don-t-have-rights.patch index 811e6a1343..d8a60eaa67 100644 --- a/Spigot-Server-Patches/0305-Vanished-players-don-t-have-rights.patch +++ b/Spigot-Server-Patches/0305-Vanished-players-don-t-have-rights.patch @@ -1,11 +1,11 @@ -From c00e706c2239a7aef32a535ab1433f84706bbb4a Mon Sep 17 00:00:00 2001 +From 0cacdd59764c9ca57ca038d5b72392a0a6bb517e Mon Sep 17 00:00:00 2001 From: Hugo Manrique Date: Mon, 23 Jul 2018 14:22:26 +0200 Subject: [PATCH] Vanished players don't have rights diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 89a83548b8..9339b3255d 100644 +index 46399cc9b0..fdc9d96c27 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -94,7 +94,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -106,10 +106,10 @@ index caec2807a6..e7576c5c6a 100644 if (voxelshape.b()) { return true; diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 1cc17c29c9..a61c32a2f3 100644 +index 063c1b7fa3..f6b7f7a462 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -806,6 +806,14 @@ public class CraftEventFactory { +@@ -819,6 +819,14 @@ public class CraftEventFactory { Projectile projectile = (Projectile) entity.getBukkitEntity(); org.bukkit.entity.Entity collided = position.entity.getBukkitEntity(); com.destroystokyo.paper.event.entity.ProjectileCollideEvent event = new com.destroystokyo.paper.event.entity.ProjectileCollideEvent(projectile, collided); diff --git a/Spigot-Server-Patches/0311-Prevent-Saving-Bad-entities-to-chunks.patch b/Spigot-Server-Patches/0311-Prevent-Saving-Bad-entities-to-chunks.patch index 79e3687c4e..b56fdc1bf0 100644 --- a/Spigot-Server-Patches/0311-Prevent-Saving-Bad-entities-to-chunks.patch +++ b/Spigot-Server-Patches/0311-Prevent-Saving-Bad-entities-to-chunks.patch @@ -1,4 +1,4 @@ -From 06711c8f124e0f94a22fb27ab4041bdfffdc676a Mon Sep 17 00:00:00 2001 +From cd080ccdb7fb13e2b2458e8d97a64575a61fbec3 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 26 Jul 2018 00:11:12 -0400 Subject: [PATCH] Prevent Saving Bad entities to chunks @@ -18,10 +18,10 @@ an invalid entity. This should reduce log occurrences of dupe uuid messages. diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index a3b7d359dc..ffa94ea674 100644 +index 4f0571ae26..b0fa23db5e 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -@@ -547,11 +547,22 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -548,11 +548,22 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { Iterator iterator; @@ -44,7 +44,7 @@ index a3b7d359dc..ffa94ea674 100644 NBTTagCompound nbttagcompound1 = new NBTTagCompound(); if (entity.d(nbttagcompound1)) { -@@ -560,6 +571,11 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -561,6 +572,11 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { } } } diff --git a/Spigot-Server-Patches/0346-Anti-Xray.patch b/Spigot-Server-Patches/0346-Anti-Xray.patch index 26345ba5a3..568094830c 100644 --- a/Spigot-Server-Patches/0346-Anti-Xray.patch +++ b/Spigot-Server-Patches/0346-Anti-Xray.patch @@ -1,4 +1,4 @@ -From 6d63204aaeb5b73f788fbda5473db22b3c576c21 Mon Sep 17 00:00:00 2001 +From 5b3c1c01e0892270eff2bcea0209bf5e5c0fd39d Mon Sep 17 00:00:00 2001 From: stonar96 Date: Mon, 20 Aug 2018 03:03:58 +0200 Subject: [PATCH] Anti-Xray @@ -1071,10 +1071,10 @@ index 56c3783412..f3d9211baa 100644 this.initLighting(); } diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index 867b0db770..06968974c5 100644 +index 90e6de419e..538e4b04d9 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -@@ -843,7 +843,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -844,7 +844,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { } ChunkConverter chunkconverter = nbttagcompound.hasKeyOfType("UpgradeData", 10) ? new ChunkConverter(nbttagcompound.getCompound("UpgradeData")) : ChunkConverter.a; @@ -1083,7 +1083,7 @@ index 867b0db770..06968974c5 100644 protochunk.a(abiomebase); protochunk.b(nbttagcompound.getLong("InhabitedTime")); -@@ -949,7 +949,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { +@@ -950,7 +950,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { for (int i = 0; i < nbttaglist.size(); ++i) { NBTTagCompound nbttagcompound = nbttaglist.getCompound(i); byte b0 = nbttagcompound.getByte("Y"); diff --git a/Spigot-Server-Patches/0362-MC-2025-Save-and-load-entity-AABB-to-prevent-wobble.patch b/Spigot-Server-Patches/0362-MC-2025-Save-and-load-entity-AABB-to-prevent-wobble.patch index c2acf2bed0..0b2f929d4b 100644 --- a/Spigot-Server-Patches/0362-MC-2025-Save-and-load-entity-AABB-to-prevent-wobble.patch +++ b/Spigot-Server-Patches/0362-MC-2025-Save-and-load-entity-AABB-to-prevent-wobble.patch @@ -1,4 +1,4 @@ -From 82c64be280dc34840de9c10a2f4260cad8e8e690 Mon Sep 17 00:00:00 2001 +From a9658dc0a2bb54d4863a966a813a70d39fc2896f Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 4 Sep 2018 19:07:57 -0400 Subject: [PATCH] MC-2025: Save and load entity AABB to prevent wobble @@ -46,7 +46,7 @@ index 92edfe0295..624f0e3956 100644 public AxisAlignedBB(double d0, double d1, double d2, double d3, double d4, double d5) { this.a = Math.min(d0, d3); diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 2b1affd03c..1fae9aa074 100644 +index f609e2ceda..bcd7af059e 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -1658,6 +1658,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -79,7 +79,7 @@ index 2b1affd03c..1fae9aa074 100644 // CraftBukkit start if (this instanceof EntityLiving) { -@@ -2815,6 +2831,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2816,6 +2832,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.boundingBox; } diff --git a/Spigot-Server-Patches/0363-Improve-death-events.patch b/Spigot-Server-Patches/0363-Improve-death-events.patch index 98fddf0175..6863d64b96 100644 --- a/Spigot-Server-Patches/0363-Improve-death-events.patch +++ b/Spigot-Server-Patches/0363-Improve-death-events.patch @@ -1,4 +1,4 @@ -From bbba4ba76f40f8d71ffd3706870f4ebe8a9e9942 Mon Sep 17 00:00:00 2001 +From 53605f51ade300b443bfcb5b147499ce9397b8b6 Mon Sep 17 00:00:00 2001 From: Phoenix616 Date: Tue, 21 Aug 2018 01:39:35 +0100 Subject: [PATCH] Improve death events @@ -15,7 +15,7 @@ items and experience which is otherwise only properly possible by using internal code. diff --git a/src/main/java/net/minecraft/server/CombatTracker.java b/src/main/java/net/minecraft/server/CombatTracker.java -index 63bdb96db..96dd1a7fa 100644 +index 63bdb96db8..96dd1a7fa4 100644 --- a/src/main/java/net/minecraft/server/CombatTracker.java +++ b/src/main/java/net/minecraft/server/CombatTracker.java @@ -163,6 +163,7 @@ public class CombatTracker { @@ -27,7 +27,7 @@ index 63bdb96db..96dd1a7fa 100644 int i = this.f ? 300 : 100; if (this.g && (!this.b.isAlive() || this.b.ticksLived - this.c > i)) { diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 1fae9aa07..3e69bac9a 100644 +index bcd7af059e..f6c43bab46 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -1538,6 +1538,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -38,7 +38,7 @@ index 1fae9aa07..3e69bac9a 100644 public void a(Entity entity, int i, DamageSource damagesource) { if (entity instanceof EntityPlayer) { CriterionTriggers.c.a((EntityPlayer) entity, this, damagesource); -@@ -2406,6 +2407,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2407,6 +2408,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke this.fallDistance = 0.0F; } @@ -46,7 +46,7 @@ index 1fae9aa07..3e69bac9a 100644 public void b(EntityLiving entityliving) {} protected boolean i(double d0, double d1, double d2) { -@@ -3076,6 +3078,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -3077,6 +3079,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return EnumPistonReaction.NORMAL; } @@ -55,7 +55,7 @@ index 1fae9aa07..3e69bac9a 100644 return SoundCategory.NEUTRAL; } diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java -index 35afffede..e8e741374 100644 +index 35afffedef..e8e7413748 100644 --- a/src/main/java/net/minecraft/server/EntityArmorStand.java +++ b/src/main/java/net/minecraft/server/EntityArmorStand.java @@ -629,7 +629,8 @@ public class EntityArmorStand extends EntityLiving { @@ -69,7 +69,7 @@ index 35afffede..e8e741374 100644 } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 890a3a02b..fec7bf0a5 100644 +index 890a3a02bd..fec7bf0a5d 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -76,14 +76,14 @@ public abstract class EntityLiving extends Entity { @@ -206,7 +206,7 @@ index 890a3a02b..fec7bf0a5 100644 return this.isBaby() ? (this.random.nextFloat() - this.random.nextFloat()) * 0.2F + 1.5F : (this.random.nextFloat() - this.random.nextFloat()) * 0.2F + 1.0F; } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 68f5842cf..5ab4e01ed 100644 +index 68f5842cfe..5ab4e01edf 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -75,6 +75,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -257,7 +257,7 @@ index 68f5842cf..5ab4e01ed 100644 } } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftSound.java b/src/main/java/org/bukkit/craftbukkit/CraftSound.java -index 17fab031b..ee8219e3b 100644 +index 17fab031b4..ee8219e3ba 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftSound.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftSound.java @@ -674,6 +674,22 @@ public enum CraftSound { @@ -284,7 +284,7 @@ index 17fab031b..ee8219e3b 100644 this.minecraftKey = minecraftKey; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index b6cf96e18..96232aa07 100644 +index b6cf96e187..96232aa078 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1711,7 +1711,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -305,10 +305,10 @@ index b6cf96e18..96232aa07 100644 public void injectScaledMaxHealth(Collection collection, boolean force) { diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 64b34d262..dc8c3ea75 100644 +index ef8e7c6f64..83e9a60228 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -412,9 +412,16 @@ public class CraftEventFactory { +@@ -425,9 +425,16 @@ public class CraftEventFactory { public static EntityDeathEvent callEntityDeathEvent(EntityLiving victim, List drops) { CraftLivingEntity entity = (CraftLivingEntity) victim.getBukkitEntity(); EntityDeathEvent event = new EntityDeathEvent(entity, drops, victim.getExpReward()); @@ -325,7 +325,7 @@ index 64b34d262..dc8c3ea75 100644 victim.expToDrop = event.getDroppedExp(); for (org.bukkit.inventory.ItemStack stack : event.getDrops()) { -@@ -430,8 +437,15 @@ public class CraftEventFactory { +@@ -443,8 +450,15 @@ public class CraftEventFactory { CraftPlayer entity = victim.getBukkitEntity(); PlayerDeathEvent event = new PlayerDeathEvent(entity, drops, victim.getExpReward(), 0, deathMessage); event.setKeepInventory(keepInventory); @@ -341,7 +341,7 @@ index 64b34d262..dc8c3ea75 100644 victim.keepLevel = event.getKeepLevel(); victim.newLevel = event.getNewLevel(); -@@ -452,6 +466,31 @@ public class CraftEventFactory { +@@ -465,6 +479,31 @@ public class CraftEventFactory { return event; } @@ -374,5 +374,5 @@ index 64b34d262..dc8c3ea75 100644 * Server methods */ -- -2.18.0.windows.1 +2.18.0 diff --git a/work/Bukkit b/work/Bukkit index 310dc8098d..3e2858f6e6 160000 --- a/work/Bukkit +++ b/work/Bukkit @@ -1 +1 @@ -Subproject commit 310dc8098d95ca47e8d7f29fdf003757b9dcaace +Subproject commit 3e2858f6e680d43b85a760866df1fb4c1f9547b9 diff --git a/work/CraftBukkit b/work/CraftBukkit index 19d654bd5e..3123a069bf 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit 19d654bd5ee46d9827153c91b71dd806d7268085 +Subproject commit 3123a069bf04af331ae9194d223a7fd376535949 diff --git a/work/Spigot b/work/Spigot index b620c214c0..145a37ae8c 160000 --- a/work/Spigot +++ b/work/Spigot @@ -1 +1 @@ -Subproject commit b620c214c0dfd03b75358d0d63898fc427ee3ddb +Subproject commit 145a37ae8c1032ac0dd0ea0a9f93c235ab2a6423