diff --git a/Spigot-API-Patches/0130-Add-hand-to-bucket-events.patch b/Spigot-API-Patches/0130-Add-hand-to-bucket-events.patch index 81a3be1eb0..75b75f5369 100644 --- a/Spigot-API-Patches/0130-Add-hand-to-bucket-events.patch +++ b/Spigot-API-Patches/0130-Add-hand-to-bucket-events.patch @@ -1,11 +1,11 @@ -From 9d0aae54160140c3c5726b3541189b76e948d440 Mon Sep 17 00:00:00 2001 +From f4903a698923d47c5e8fc9b761fefd19d7646c1a Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Thu, 2 Aug 2018 08:44:20 -0500 Subject: [PATCH] Add hand to bucket events diff --git a/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java b/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java -index cdf2e2016..5e93f1bbb 100644 +index 7f225baa..25bd8153 100644 --- a/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java +++ b/src/main/java/org/bukkit/event/player/PlayerBucketEmptyEvent.java @@ -5,6 +5,7 @@ import org.bukkit.block.Block; @@ -16,21 +16,25 @@ index cdf2e2016..5e93f1bbb 100644 import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; -@@ -18,6 +19,12 @@ public class PlayerBucketEmptyEvent extends PlayerBucketEvent { - super(who, blockClicked, blockFace, bucket, itemInHand); +@@ -22,6 +23,16 @@ public class PlayerBucketEmptyEvent extends PlayerBucketEvent { + public PlayerBucketEmptyEvent(@NotNull final Player who, @NotNull final Block block, @NotNull final Block blockClicked, @NotNull final BlockFace blockFace, @NotNull final Material bucket, @NotNull final ItemStack itemInHand) { + super(who, block, blockClicked, blockFace, bucket, itemInHand); } - + // Paper start - add EquipmentSlot ++ @Deprecated + public PlayerBucketEmptyEvent(@NotNull final Player who, @NotNull final Block blockClicked, @NotNull final BlockFace blockFace, @NotNull final Material bucket, @NotNull final ItemStack itemInHand, @org.jetbrains.annotations.Nullable final EquipmentSlot hand) { + super(who, blockClicked, blockFace, bucket, itemInHand, hand); + } -+ // Paper end + ++ public PlayerBucketEmptyEvent(@NotNull final Player who, @NotNull final Block block, @NotNull final Block blockClicked, @NotNull final BlockFace blockFace, @NotNull final Material bucket, @NotNull final ItemStack itemInHand, @org.jetbrains.annotations.Nullable final EquipmentSlot hand) { ++ super(who, block, blockClicked, blockFace, bucket, itemInHand, hand); ++ } ++ // Paper end + @NotNull @Override - public HandlerList getHandlers() { diff --git a/src/main/java/org/bukkit/event/player/PlayerBucketEvent.java b/src/main/java/org/bukkit/event/player/PlayerBucketEvent.java -index d2990a20d..dfc76add1 100644 +index 0e4fa04e..1e0f7ee7 100644 --- a/src/main/java/org/bukkit/event/player/PlayerBucketEvent.java +++ b/src/main/java/org/bukkit/event/player/PlayerBucketEvent.java @@ -5,6 +5,7 @@ import org.bukkit.block.Block; @@ -41,20 +45,31 @@ index d2990a20d..dfc76add1 100644 import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -@@ -18,13 +19,21 @@ public abstract class PlayerBucketEvent extends PlayerEvent implements Cancellab +@@ -19,6 +20,7 @@ public abstract class PlayerBucketEvent extends PlayerEvent implements Cancellab private final Block blockClicked; private final BlockFace blockFace; private final Material bucket; + private final EquipmentSlot hand; // Paper - add EquipmentSlot + @Deprecated public PlayerBucketEvent(@NotNull final Player who, @NotNull final Block blockClicked, @NotNull final BlockFace blockFace, @NotNull final Material bucket, @NotNull final ItemStack itemInHand) { +@@ -26,12 +28,24 @@ public abstract class PlayerBucketEvent extends PlayerEvent implements Cancellab + } + + public PlayerBucketEvent(@NotNull final Player who, @NotNull final Block block, @NotNull final Block blockClicked, @NotNull final BlockFace blockFace, @NotNull final Material bucket, @NotNull final ItemStack itemInHand) { + // Paper start - add EquipmentSlot -+ this(who, blockClicked, blockFace, bucket, itemInHand, null); ++ this(who, block, blockClicked, blockFace, bucket, itemInHand, null); + } + -+ public PlayerBucketEvent(@NotNull final Player who, @NotNull final Block blockClicked, @NotNull final BlockFace blockFace, @NotNull final Material bucket, @NotNull final ItemStack itemInHand, @Nullable final EquipmentSlot hand) { ++ @Deprecated ++ public PlayerBucketEvent(@NotNull final Player who,@NotNull final Block blockClicked, @NotNull final BlockFace blockFace, @NotNull final Material bucket, @NotNull final ItemStack itemInHand, @Nullable final EquipmentSlot hand) { ++ this(who, null, blockClicked, blockFace, bucket, itemInHand, hand); ++ } ++ ++ public PlayerBucketEvent(@NotNull final Player who, @NotNull final Block block, @NotNull final Block blockClicked, @NotNull final BlockFace blockFace, @NotNull final Material bucket, @NotNull final ItemStack itemInHand, @Nullable final EquipmentSlot hand) { + // Paper end super(who); + this.block = block; this.blockClicked = blockClicked; this.blockFace = blockFace; this.itemStack = itemInHand; @@ -63,7 +78,7 @@ index d2990a20d..dfc76add1 100644 } /** -@@ -76,6 +85,18 @@ public abstract class PlayerBucketEvent extends PlayerEvent implements Cancellab +@@ -93,6 +107,18 @@ public abstract class PlayerBucketEvent extends PlayerEvent implements Cancellab return blockFace; } @@ -83,7 +98,7 @@ index d2990a20d..dfc76add1 100644 public boolean isCancelled() { return cancelled; diff --git a/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java b/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java -index cc1b03eb2..15be7128b 100644 +index 77c3a6e5..56f1cc2d 100644 --- a/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java +++ b/src/main/java/org/bukkit/event/player/PlayerBucketFillEvent.java @@ -5,6 +5,7 @@ import org.bukkit.block.Block; @@ -94,20 +109,25 @@ index cc1b03eb2..15be7128b 100644 import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; -@@ -18,6 +19,13 @@ public class PlayerBucketFillEvent extends PlayerBucketEvent { - super(who, blockClicked, blockFace, bucket, itemInHand); +@@ -23,6 +24,18 @@ public class PlayerBucketFillEvent extends PlayerBucketEvent { + super(who, block, blockClicked, blockFace, bucket, itemInHand); } -+ + // Paper start - add EquipmentSlot ++ @Deprecated + public PlayerBucketFillEvent(@NotNull final Player who, @NotNull final Block blockClicked, @NotNull final BlockFace blockFace, @NotNull final Material bucket, @NotNull final ItemStack itemInHand, @org.jetbrains.annotations.Nullable final EquipmentSlot hand) { + super(who, blockClicked, blockFace, bucket, itemInHand, hand); + } ++ ++ // Paper start - add EquipmentSlot ++ public PlayerBucketFillEvent(@NotNull final Player who, @NotNull Block block, @NotNull final Block blockClicked, @NotNull final BlockFace blockFace, @NotNull final Material bucket, @NotNull final ItemStack itemInHand, @org.jetbrains.annotations.Nullable final EquipmentSlot hand) { ++ super(who, block, blockClicked, blockFace, bucket, itemInHand, hand); ++ } + // Paper end + @NotNull @Override public HandlerList getHandlers() { -- -2.21.0 +2.23.0 diff --git a/Spigot-Server-Patches/0025-Entity-Origin-API.patch b/Spigot-Server-Patches/0025-Entity-Origin-API.patch index 2cfa60e7ee..a09338a7c5 100644 --- a/Spigot-Server-Patches/0025-Entity-Origin-API.patch +++ b/Spigot-Server-Patches/0025-Entity-Origin-API.patch @@ -1,11 +1,11 @@ -From 19e6103dad1ed608d71f9393209577447ffd480a Mon Sep 17 00:00:00 2001 +From 9e3518478df4aa3a756cb7abb94b4449f9ce5115 Mon Sep 17 00:00:00 2001 From: Byteflux Date: Tue, 1 Mar 2016 23:45:08 -0600 Subject: [PATCH] Entity Origin API diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 40dcb31258..5f85eb2ba2 100644 +index 40dcb3125..5f85eb2ba 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -163,6 +163,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -51,7 +51,7 @@ index 40dcb31258..5f85eb2ba2 100644 NBTTagList nbttaglist = new NBTTagList(); double[] adouble1 = adouble; diff --git a/src/main/java/net/minecraft/server/EntityFallingBlock.java b/src/main/java/net/minecraft/server/EntityFallingBlock.java -index f8d8d8f353..0f9fa41133 100644 +index f8d8d8f35..0f9fa4113 100644 --- a/src/main/java/net/minecraft/server/EntityFallingBlock.java +++ b/src/main/java/net/minecraft/server/EntityFallingBlock.java @@ -254,6 +254,14 @@ public class EntityFallingBlock extends Entity { @@ -70,7 +70,7 @@ index f8d8d8f353..0f9fa41133 100644 public void a(boolean flag) { diff --git a/src/main/java/net/minecraft/server/EntityTNTPrimed.java b/src/main/java/net/minecraft/server/EntityTNTPrimed.java -index e988abd67c..f2ee53ab90 100644 +index e988abd67..f2ee53ab9 100644 --- a/src/main/java/net/minecraft/server/EntityTNTPrimed.java +++ b/src/main/java/net/minecraft/server/EntityTNTPrimed.java @@ -104,6 +104,14 @@ public class EntityTNTPrimed extends Entity { @@ -89,7 +89,7 @@ index e988abd67c..f2ee53ab90 100644 @Nullable diff --git a/src/main/java/net/minecraft/server/NBTTagList.java b/src/main/java/net/minecraft/server/NBTTagList.java -index ce510c4867..b7c94fe238 100644 +index ce510c486..b7c94fe23 100644 --- a/src/main/java/net/minecraft/server/NBTTagList.java +++ b/src/main/java/net/minecraft/server/NBTTagList.java @@ -161,6 +161,7 @@ public class NBTTagList extends NBTList { @@ -101,10 +101,10 @@ index ce510c4867..b7c94fe238 100644 if (i >= 0 && i < this.list.size()) { NBTBase nbtbase = (NBTBase) this.list.get(i); diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index a28c97a889..aec67b9bc0 100644 +index 8a7e66647..8ec482c94 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1109,6 +1109,11 @@ public class WorldServer extends World { +@@ -1121,6 +1121,11 @@ public class WorldServer extends World { this.H.add(((EntityInsentient) entity).getNavigation()); } entity.valid = true; // CraftBukkit @@ -117,7 +117,7 @@ index a28c97a889..aec67b9bc0 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index a98f6f3389..d1d37c06bf 100644 +index a98f6f338..d1d37c06b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -1009,4 +1009,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -134,5 +134,5 @@ index a98f6f3389..d1d37c06bf 100644 + // Paper end } -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0075-Entity-AddTo-RemoveFrom-World-Events.patch b/Spigot-Server-Patches/0075-Entity-AddTo-RemoveFrom-World-Events.patch index d0f820bea6..dbcc864830 100644 --- a/Spigot-Server-Patches/0075-Entity-AddTo-RemoveFrom-World-Events.patch +++ b/Spigot-Server-Patches/0075-Entity-AddTo-RemoveFrom-World-Events.patch @@ -1,14 +1,14 @@ -From 0dfed2c9f792756621050fcae3fc81ef8de41d01 Mon Sep 17 00:00:00 2001 +From 28da537c21333472d003bba3210cdb2362f7a75b Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 28 Mar 2016 20:32:58 -0400 Subject: [PATCH] Entity AddTo/RemoveFrom World Events diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 81f8373985..f63cb1843f 100644 +index 362cb6bf8..2817b20b2 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1115,6 +1115,7 @@ public class WorldServer extends World { +@@ -1127,6 +1127,7 @@ public class WorldServer extends World { entity.origin = entity.getBukkitEntity().getLocation(); } // Paper end @@ -16,7 +16,7 @@ index 81f8373985..f63cb1843f 100644 } } -@@ -1123,6 +1124,7 @@ public class WorldServer extends World { +@@ -1135,6 +1136,7 @@ public class WorldServer extends World { if (this.tickingEntities) { throw new IllegalStateException("Removing entity while ticking!"); } else { @@ -25,5 +25,5 @@ index 81f8373985..f63cb1843f 100644 this.entitiesById.remove(entity.getId()); this.unregisterEntity(entity); -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0089-Remove-unused-World-Tile-Entity-List.patch b/Spigot-Server-Patches/0089-Remove-unused-World-Tile-Entity-List.patch index 96e2411462..4018d019b1 100644 --- a/Spigot-Server-Patches/0089-Remove-unused-World-Tile-Entity-List.patch +++ b/Spigot-Server-Patches/0089-Remove-unused-World-Tile-Entity-List.patch @@ -1,4 +1,4 @@ -From 088133cdf474306bd86db30e27b2345bef28687c Mon Sep 17 00:00:00 2001 +From 821d069eb55195b10f1438fbea12ac0001adb172 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 13 Apr 2016 00:25:28 -0400 Subject: [PATCH] Remove unused World Tile Entity List @@ -6,7 +6,7 @@ Subject: [PATCH] Remove unused World Tile Entity List Massive hit to performance and it is completely unnecessary. diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 07d1505867..ebeb48f6dc 100644 +index 07d150586..ebeb48f6d 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -40,7 +40,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -67,10 +67,10 @@ index 07d1505867..ebeb48f6dc 100644 } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index f63cb1843f..79f97f0de0 100644 +index 2817b20b2..fb377036b 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1564,7 +1564,7 @@ public class WorldServer extends World { +@@ -1576,7 +1576,7 @@ public class WorldServer extends World { } bufferedwriter.write(String.format("entities: %d\n", this.entitiesById.size())); @@ -79,7 +79,7 @@ index f63cb1843f..79f97f0de0 100644 bufferedwriter.write(String.format("block_ticks: %d\n", this.getBlockTickList().a())); bufferedwriter.write(String.format("fluid_ticks: %d\n", this.getFluidTickList().a())); bufferedwriter.write("distance_manager: " + playerchunkmap.e().c() + "\n"); -@@ -1727,7 +1727,7 @@ public class WorldServer extends World { +@@ -1739,7 +1739,7 @@ public class WorldServer extends World { private void a(Writer writer) throws IOException { CSVWriter csvwriter = CSVWriter.a().a("x").a("y").a("z").a("type").a(writer); @@ -89,5 +89,5 @@ index f63cb1843f..79f97f0de0 100644 while (iterator.hasNext()) { TileEntity tileentity = (TileEntity) iterator.next(); -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0095-Implement-PlayerLocaleChangeEvent.patch b/Spigot-Server-Patches/0095-Implement-PlayerLocaleChangeEvent.patch index b42e8cec6c..5db29f4863 100644 --- a/Spigot-Server-Patches/0095-Implement-PlayerLocaleChangeEvent.patch +++ b/Spigot-Server-Patches/0095-Implement-PlayerLocaleChangeEvent.patch @@ -1,11 +1,11 @@ -From 9c9d885ced2c7e1e66302b61ebb40c1e5eaa9a05 Mon Sep 17 00:00:00 2001 +From 3ef911ac360ce6670463d97aa074f747fa364716 Mon Sep 17 00:00:00 2001 From: Isaac Moore Date: Tue, 19 Apr 2016 14:09:31 -0500 Subject: [PATCH] Implement PlayerLocaleChangeEvent diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index accf20f03..9dfa92f88 100644 +index 6decbc1c2..894a8d860 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -37,7 +37,7 @@ import org.bukkit.inventory.MainHand; @@ -17,7 +17,7 @@ index accf20f03..9dfa92f88 100644 public PlayerConnection playerConnection; public final MinecraftServer server; public final PlayerInteractManager playerInteractManager; -@@ -1449,13 +1449,20 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1453,13 +1453,20 @@ public class EntityPlayer extends EntityHuman implements ICrafting { PlayerChangedMainHandEvent event = new PlayerChangedMainHandEvent(getBukkitEntity(), getMainHand() == EnumMainHand.LEFT ? MainHand.LEFT : MainHand.RIGHT); this.server.server.getPluginManager().callEvent(event); } @@ -66,5 +66,5 @@ index 881fa70b2..151dcf243 100644 @Override -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch b/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch index 4f2b134750..4fc8df5878 100644 --- a/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch +++ b/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch @@ -1,4 +1,4 @@ -From 2ac2035605a6efa20f0fc1f58d30532f611e4036 Mon Sep 17 00:00:00 2001 +From 8a82f8ccee640794c614900f956276e5e64cf3f0 Mon Sep 17 00:00:00 2001 From: AlphaBlend Date: Sun, 16 Oct 2016 23:19:30 -0700 Subject: [PATCH] Add EntityZapEvent @@ -39,10 +39,10 @@ index ba0386ad4..09d12d1fc 100644 entitywitch.prepare(this.world, this.world.getDamageScaler(new BlockPosition(entitywitch)), EnumMobSpawn.CONVERSION, (GroupDataEntity) null, (NBTTagCompound) null); entitywitch.setNoAI(this.isNoAI()); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 67076bdd1..31471999c 100644 +index 8a170c77c..562e692b2 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -1010,6 +1010,14 @@ public class CraftEventFactory { +@@ -1009,6 +1009,14 @@ public class CraftEventFactory { return event; } @@ -58,5 +58,5 @@ index 67076bdd1..31471999c 100644 HorseJumpEvent event = new HorseJumpEvent((AbstractHorse) horse.getBukkitEntity(), power); horse.getBukkitEntity().getServer().getPluginManager().callEvent(event); -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0126-Optimise-removeQueue.patch b/Spigot-Server-Patches/0126-Optimise-removeQueue.patch index c40d99ed58..b3d30a0acd 100644 --- a/Spigot-Server-Patches/0126-Optimise-removeQueue.patch +++ b/Spigot-Server-Patches/0126-Optimise-removeQueue.patch @@ -1,11 +1,11 @@ -From 669429b5aee9103951c2c3163b42193b8c7239b1 Mon Sep 17 00:00:00 2001 +From e7212fe8410265b5084a3c28274a895365b55774 Mon Sep 17 00:00:00 2001 From: Alfie Cleveland Date: Fri, 25 Nov 2016 13:22:40 +0000 Subject: [PATCH] Optimise removeQueue diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 3c67a03a9..d5344d5c8 100644 +index f4719dd87..9b9477884 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -4,7 +4,9 @@ import com.google.common.collect.Lists; @@ -50,7 +50,7 @@ index 3c67a03a9..d5344d5c8 100644 this.playerConnection.sendPacket(new PacketPlayOutEntityDestroy(aint)); } -@@ -1323,7 +1332,14 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1327,7 +1336,14 @@ public class EntityPlayer extends EntityHuman implements ICrafting { this.lastHealthSent = -1.0F; this.lastFoodSent = -1; // this.recipeBook.a((RecipeBook) entityplayer.recipeBook); // CraftBukkit @@ -67,5 +67,5 @@ index 3c67a03a9..d5344d5c8 100644 this.cu = entityplayer.cu; this.setShoulderEntityLeft(entityplayer.getShoulderEntityLeft()); -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0128-Add-source-to-PlayerExpChangeEvent.patch b/Spigot-Server-Patches/0128-Add-source-to-PlayerExpChangeEvent.patch index 8e61442075..2cc9bd82a0 100644 --- a/Spigot-Server-Patches/0128-Add-source-to-PlayerExpChangeEvent.patch +++ b/Spigot-Server-Patches/0128-Add-source-to-PlayerExpChangeEvent.patch @@ -1,14 +1,14 @@ -From bbe7c036e9fbe3279d8b87f75ec3a14d8b0c6ced Mon Sep 17 00:00:00 2001 +From c36c80530c089b059444fbfb983937b30010b9d4 Mon Sep 17 00:00:00 2001 From: AlphaBlend Date: Thu, 8 Sep 2016 08:48:33 -0700 Subject: [PATCH] Add source to PlayerExpChangeEvent diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -index 26a3a1d03..a4cd502bc 100644 +index 332dc0e53..eec6de9ad 100644 --- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java +++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -@@ -190,7 +190,7 @@ public class EntityExperienceOrb extends Entity { +@@ -193,7 +193,7 @@ public class EntityExperienceOrb extends Entity { } if (this.value > 0) { @@ -18,7 +18,7 @@ index 26a3a1d03..a4cd502bc 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 31471999c..7cc8b2392 100644 +index 562e692b2..e3d1135de 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -106,6 +106,7 @@ import org.bukkit.entity.ThrownPotion; @@ -29,7 +29,7 @@ index 31471999c..7cc8b2392 100644 import org.bukkit.event.Cancellable; import org.bukkit.event.Event; import org.bukkit.event.Event.Result; -@@ -969,6 +970,17 @@ public class CraftEventFactory { +@@ -968,6 +969,17 @@ public class CraftEventFactory { return event; } @@ -48,5 +48,5 @@ index 31471999c..7cc8b2392 100644 return handleBlockGrowEvent(world, pos, block, 3); } -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0131-Add-ProjectileCollideEvent.patch b/Spigot-Server-Patches/0131-Add-ProjectileCollideEvent.patch index f6375c57c7..87ed5d7497 100644 --- a/Spigot-Server-Patches/0131-Add-ProjectileCollideEvent.patch +++ b/Spigot-Server-Patches/0131-Add-ProjectileCollideEvent.patch @@ -1,11 +1,11 @@ -From 0965e2c25b8ba5b58ed14d8f66f96bba8b0c24e2 Mon Sep 17 00:00:00 2001 +From 52fe7dbe4a7ee6ec1e8f11d21e003e2f0b87b6f5 Mon Sep 17 00:00:00 2001 From: Techcable Date: Fri, 16 Dec 2016 21:25:39 -0600 Subject: [PATCH] Add ProjectileCollideEvent diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java -index 2b829abac..af0f5cb00 100644 +index 2b829abac..a9575d310 100644 --- a/src/main/java/net/minecraft/server/EntityArrow.java +++ b/src/main/java/net/minecraft/server/EntityArrow.java @@ -184,6 +184,17 @@ public abstract class EntityArrow extends Entity implements IProjectile { @@ -93,10 +93,10 @@ index d1710259c..5f0cb4c33 100644 this.c(((MovingObjectPositionBlock) movingobjectposition).getBlockPosition()); } else { diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 7cc8b2392..ad9c70b8d 100644 +index e3d1135de..a59e35040 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -1114,6 +1114,16 @@ public class CraftEventFactory { +@@ -1113,6 +1113,16 @@ public class CraftEventFactory { return CraftItemStack.asNMSCopy(bitem); } @@ -114,5 +114,5 @@ index 7cc8b2392..ad9c70b8d 100644 Projectile bukkitEntity = (Projectile) entity.getBukkitEntity(); ProjectileLaunchEvent event = new ProjectileLaunchEvent(bukkitEntity); -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0137-Properly-fix-item-duplication-bug.patch b/Spigot-Server-Patches/0137-Properly-fix-item-duplication-bug.patch index 8946a33d1c..ac2166576b 100644 --- a/Spigot-Server-Patches/0137-Properly-fix-item-duplication-bug.patch +++ b/Spigot-Server-Patches/0137-Properly-fix-item-duplication-bug.patch @@ -1,4 +1,4 @@ -From 9118f2d067a4a6703747aa90bf9998f93648dd82 Mon Sep 17 00:00:00 2001 +From 8f2e0cdfe2a08d5ed4b08446eb60b4e278a83afd Mon Sep 17 00:00:00 2001 From: Alfie Cleveland Date: Tue, 27 Dec 2016 01:57:57 +0000 Subject: [PATCH] Properly fix item duplication bug @@ -6,10 +6,10 @@ Subject: [PATCH] Properly fix item duplication bug Credit to prplz for figuring out the real issue diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index d5344d5c8..fc9899037 100644 +index 9b9477884..742489d39 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java -@@ -1796,7 +1796,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1800,7 +1800,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @Override protected boolean isFrozen() { @@ -32,5 +32,5 @@ index 13c1d9b91..068827e2e 100644 // CraftBukkit end -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0144-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch b/Spigot-Server-Patches/0144-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch index 1544b4d2e2..ac9865d638 100644 --- a/Spigot-Server-Patches/0144-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch +++ b/Spigot-Server-Patches/0144-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch @@ -1,4 +1,4 @@ -From 542dd258b6095eb43df13626a8ca40e3fd900332 Mon Sep 17 00:00:00 2001 +From af6b0e1caa5ecd670c1e88b8ee4f1a3161b4d2e1 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 19 Dec 2017 16:31:46 -0500 Subject: [PATCH] ExperienceOrbs API for Reason/Source/Triggering player @@ -54,7 +54,7 @@ index cf857b88d..5fae347db 100644 } diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -index a4cd502bc..214ecdb88 100644 +index eec6de9ad..35f03947d 100644 --- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java +++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java @@ -16,9 +16,59 @@ public class EntityExperienceOrb extends Entity { @@ -117,7 +117,7 @@ index a4cd502bc..214ecdb88 100644 this.setPosition(d0, d1, d2); this.yaw = (float) (this.random.nextDouble() * 360.0D); this.setMot((this.random.nextDouble() * 0.20000000298023224D - 0.10000000149011612D) * 2.0D, this.random.nextDouble() * 0.2D * 2.0D, (this.random.nextDouble() * 0.20000000298023224D - 0.10000000149011612D) * 2.0D); -@@ -155,6 +205,7 @@ public class EntityExperienceOrb extends Entity { +@@ -158,6 +208,7 @@ public class EntityExperienceOrb extends Entity { nbttagcompound.setShort("Health", (short) this.e); nbttagcompound.setShort("Age", (short) this.c); nbttagcompound.setShort("Value", (short) this.value); @@ -125,7 +125,7 @@ index a4cd502bc..214ecdb88 100644 } @Override -@@ -162,6 +213,7 @@ public class EntityExperienceOrb extends Entity { +@@ -165,6 +216,7 @@ public class EntityExperienceOrb extends Entity { this.e = nbttagcompound.getShort("Health"); this.c = nbttagcompound.getShort("Age"); this.value = nbttagcompound.getShort("Value"); @@ -301,5 +301,5 @@ index 1b512cc45..fbad04567 100644 public EntityExperienceOrb getHandle() { return (EntityExperienceOrb) entity; -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0160-Shoulder-Entities-Release-API.patch b/Spigot-Server-Patches/0160-Shoulder-Entities-Release-API.patch index 860c512084..25bcc825e3 100644 --- a/Spigot-Server-Patches/0160-Shoulder-Entities-Release-API.patch +++ b/Spigot-Server-Patches/0160-Shoulder-Entities-Release-API.patch @@ -1,14 +1,14 @@ -From ee388b6d2cceddbde1571cb932310c77d9c6b7af Mon Sep 17 00:00:00 2001 +From 13f64d403e4682edfec24772d8d52e3da5afedf5 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 17 Jun 2017 15:18:30 -0400 Subject: [PATCH] Shoulder Entities Release API diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index c7bb6cbcb..92569f934 100644 +index 28a8cfdd3..6acab2b97 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java -@@ -1800,20 +1800,44 @@ public abstract class EntityHuman extends EntityLiving { +@@ -1801,20 +1801,44 @@ public abstract class EntityHuman extends EntityLiving { } @@ -95,5 +95,5 @@ index 027063239..37b057c51 100644 public boolean discoverRecipe(NamespacedKey recipe) { return discoverRecipes(Arrays.asList(recipe)) != 0; -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0182-Send-attack-SoundEffects-only-to-players-who-can-see.patch b/Spigot-Server-Patches/0182-Send-attack-SoundEffects-only-to-players-who-can-see.patch index 35ccd5b471..1401c03fa0 100644 --- a/Spigot-Server-Patches/0182-Send-attack-SoundEffects-only-to-players-who-can-see.patch +++ b/Spigot-Server-Patches/0182-Send-attack-SoundEffects-only-to-players-who-can-see.patch @@ -1,4 +1,4 @@ -From 2367b8fc37274600701109e28bd28b6fe7f9ec73 Mon Sep 17 00:00:00 2001 +From b9256e9dff588622499e1f768a5ebefef50626db Mon Sep 17 00:00:00 2001 From: Brokkonaut Date: Tue, 31 Oct 2017 03:26:18 +0100 Subject: [PATCH] Send attack SoundEffects only to players who can see the @@ -6,10 +6,10 @@ Subject: [PATCH] Send attack SoundEffects only to players who can see the diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 9d1c3b0737..4cfe87d078 100644 +index 6acab2b97..50ded7483 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java -@@ -956,6 +956,15 @@ public abstract class EntityHuman extends EntityLiving { +@@ -957,6 +957,15 @@ public abstract class EntityHuman extends EntityLiving { return super.isFrozen() || this.isSleeping(); } @@ -25,7 +25,7 @@ index 9d1c3b0737..4cfe87d078 100644 public void attack(Entity entity) { if (entity.bs()) { if (!entity.t(this)) { -@@ -980,7 +989,7 @@ public abstract class EntityHuman extends EntityLiving { +@@ -981,7 +990,7 @@ public abstract class EntityHuman extends EntityLiving { int i = b0 + EnchantmentManager.b((EntityLiving) this); if (this.isSprinting() && flag) { @@ -34,7 +34,7 @@ index 9d1c3b0737..4cfe87d078 100644 ++i; flag1 = true; } -@@ -1055,7 +1064,7 @@ public abstract class EntityHuman extends EntityLiving { +@@ -1056,7 +1065,7 @@ public abstract class EntityHuman extends EntityLiving { } } @@ -43,7 +43,7 @@ index 9d1c3b0737..4cfe87d078 100644 this.dE(); } -@@ -1083,15 +1092,15 @@ public abstract class EntityHuman extends EntityLiving { +@@ -1084,15 +1093,15 @@ public abstract class EntityHuman extends EntityLiving { } if (flag2) { @@ -62,7 +62,7 @@ index 9d1c3b0737..4cfe87d078 100644 } } -@@ -1143,7 +1152,7 @@ public abstract class EntityHuman extends EntityLiving { +@@ -1144,7 +1153,7 @@ public abstract class EntityHuman extends EntityLiving { this.applyExhaustion(world.spigotConfig.combatExhaustion); // Spigot - Change to use configurable value } else { @@ -72,7 +72,7 @@ index 9d1c3b0737..4cfe87d078 100644 entity.extinguish(); } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 8add757cc8..22f1d9e27b 100644 +index 8add757cc..22f1d9e27 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -671,6 +671,11 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -88,5 +88,5 @@ index 8add757cc8..22f1d9e27b 100644 public abstract void playSound(@Nullable EntityHuman entityhuman, Entity entity, SoundEffect soundeffect, SoundCategory soundcategory, float f, float f1); -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0183-Option-for-maximum-exp-value-when-merging-orbs.patch b/Spigot-Server-Patches/0183-Option-for-maximum-exp-value-when-merging-orbs.patch index 13b388d37b..54004523c6 100644 --- a/Spigot-Server-Patches/0183-Option-for-maximum-exp-value-when-merging-orbs.patch +++ b/Spigot-Server-Patches/0183-Option-for-maximum-exp-value-when-merging-orbs.patch @@ -1,11 +1,11 @@ -From af6cb20df0f7dcebfd2b343029e087749c1cc4c3 Mon Sep 17 00:00:00 2001 +From 4818fe6917efb325af39b9b2b6a14128c75e1621 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 10 Nov 2017 23:03:12 -0500 Subject: [PATCH] Option for maximum exp value when merging orbs diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 4d0d4cbe4e..b3d8fe9c68 100644 +index 4d0d4cbe4..b3d8fe9c6 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -333,4 +333,10 @@ public class PaperWorldConfig { @@ -20,10 +20,10 @@ index 4d0d4cbe4e..b3d8fe9c68 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index af1be62e2b..715a4acef8 100644 +index a59e35040..81c0c8cf7 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -529,16 +529,32 @@ public class CraftEventFactory { +@@ -528,16 +528,32 @@ public class CraftEventFactory { EntityExperienceOrb xp = (EntityExperienceOrb) entity; double radius = world.spigotConfig.expMerge; if (radius > 0) { @@ -60,5 +60,5 @@ index af1be62e2b..715a4acef8 100644 // Spigot end } else if (!(entity instanceof EntityPlayer)) { -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0190-PlayerPickupExperienceEvent.patch b/Spigot-Server-Patches/0190-PlayerPickupExperienceEvent.patch index af2b1adf7b..50daa111a8 100644 --- a/Spigot-Server-Patches/0190-PlayerPickupExperienceEvent.patch +++ b/Spigot-Server-Patches/0190-PlayerPickupExperienceEvent.patch @@ -1,4 +1,4 @@ -From 7c4b40c1f1c8da1b1d5908549738a0a4206f0bdc Mon Sep 17 00:00:00 2001 +From 0b8205b527e5acfa6d114903d7f2c5f322871e34 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 19 Dec 2017 22:02:53 -0500 Subject: [PATCH] PlayerPickupExperienceEvent @@ -6,10 +6,10 @@ Subject: [PATCH] PlayerPickupExperienceEvent Allows plugins to cancel a player picking up an experience orb diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -index 214ecdb884..8c25695669 100644 +index 35f03947d..e6b810756 100644 --- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java +++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -@@ -219,7 +219,7 @@ public class EntityExperienceOrb extends Entity { +@@ -222,7 +222,7 @@ public class EntityExperienceOrb extends Entity { @Override public void pickup(EntityHuman entityhuman) { if (!this.world.isClientSide) { @@ -19,5 +19,5 @@ index 214ecdb884..8c25695669 100644 entityhuman.receive(this, 1); Entry entry = EnchantmentManager.b(Enchantments.MENDING, (EntityLiving) entityhuman); -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0191-ExperienceOrbMergeEvent.patch b/Spigot-Server-Patches/0191-ExperienceOrbMergeEvent.patch index d8d40d9ada..a13543768b 100644 --- a/Spigot-Server-Patches/0191-ExperienceOrbMergeEvent.patch +++ b/Spigot-Server-Patches/0191-ExperienceOrbMergeEvent.patch @@ -1,4 +1,4 @@ -From 5e9cdf789703c332afbdf0b57a6c1d645fe71cd9 Mon Sep 17 00:00:00 2001 +From f05b3edd7d2fe3bf084677bbe89f3ef983118838 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 19 Dec 2017 22:57:26 -0500 Subject: [PATCH] ExperienceOrbMergeEvent @@ -8,10 +8,10 @@ Plugins can cancel this if they want to ensure experience orbs do not lose impor metadata such as spawn reason, or conditionally move data from source to target. diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 715a4acef8..fa96ec3247 100644 +index 81c0c8cf7..95a0364f3 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -539,7 +539,7 @@ public class CraftEventFactory { +@@ -538,7 +538,7 @@ public class CraftEventFactory { if (e instanceof EntityExperienceOrb) { EntityExperienceOrb loopItem = (EntityExperienceOrb) e; // Paper start @@ -21,5 +21,5 @@ index 715a4acef8..fa96ec3247 100644 if ((int) newTotal < 0) continue; // Overflow if (maxValue > 0 && newTotal > (long)maxValue) { -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0192-Ability-to-apply-mending-to-XP-API.patch b/Spigot-Server-Patches/0192-Ability-to-apply-mending-to-XP-API.patch index c5cd552702..216440a036 100644 --- a/Spigot-Server-Patches/0192-Ability-to-apply-mending-to-XP-API.patch +++ b/Spigot-Server-Patches/0192-Ability-to-apply-mending-to-XP-API.patch @@ -1,4 +1,4 @@ -From e807780b68417c154becacdddecc01485b9e7966 Mon Sep 17 00:00:00 2001 +From d5fb0d436ef69748430a2bd4aefd7d74ccc57ff0 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 20 Dec 2017 17:36:49 -0500 Subject: [PATCH] Ability to apply mending to XP API @@ -10,7 +10,7 @@ of giving the player experience points. Both an API To standalone mend, and apply mending logic to .giveExp has been added. diff --git a/src/main/java/net/minecraft/server/EnchantmentManager.java b/src/main/java/net/minecraft/server/EnchantmentManager.java -index ed9aedc07c..1d16919e6b 100644 +index ed9aedc07..1d16919e6 100644 --- a/src/main/java/net/minecraft/server/EnchantmentManager.java +++ b/src/main/java/net/minecraft/server/EnchantmentManager.java @@ -241,6 +241,11 @@ public class EnchantmentManager { @@ -26,10 +26,10 @@ index ed9aedc07c..1d16919e6b 100644 public static Entry b(Enchantment enchantment, EntityLiving entityliving) { Map map = enchantment.a(entityliving); diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -index 8c25695669..6a5954889e 100644 +index e6b810756..ba3e66f9e 100644 --- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java +++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -@@ -251,10 +251,12 @@ public class EntityExperienceOrb extends Entity { +@@ -254,10 +254,12 @@ public class EntityExperienceOrb extends Entity { } } @@ -43,7 +43,7 @@ index 8c25695669..6a5954889e 100644 return i * 2; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index de43559647..854d6f7999 100644 +index 3e8979dfe..a1481c5b8 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1063,8 +1063,39 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -88,5 +88,5 @@ index de43559647..854d6f7999 100644 } -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0202-Toggleable-player-crits-helps-mitigate-hacked-client.patch b/Spigot-Server-Patches/0202-Toggleable-player-crits-helps-mitigate-hacked-client.patch index 6b25f857bc..272089192d 100644 --- a/Spigot-Server-Patches/0202-Toggleable-player-crits-helps-mitigate-hacked-client.patch +++ b/Spigot-Server-Patches/0202-Toggleable-player-crits-helps-mitigate-hacked-client.patch @@ -1,11 +1,11 @@ -From bc50bcf730d222bfbef8a6c34713d17108237c34 Mon Sep 17 00:00:00 2001 +From ad8729ec47c2d43f8740a8281437b0cee39798c2 Mon Sep 17 00:00:00 2001 From: MiniDigger Date: Sat, 10 Mar 2018 00:50:24 +0100 Subject: [PATCH] Toggleable player crits, helps mitigate hacked clients. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 7287bf7d9b..94ffba97b4 100644 +index 7287bf7d9..94ffba97b 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -182,6 +182,11 @@ public class PaperWorldConfig { @@ -21,10 +21,10 @@ index 7287bf7d9b..94ffba97b4 100644 private void allChunksAreSlimeChunks() { allChunksAreSlimeChunks = getBoolean("all-chunks-are-slime-chunks", false); diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 4cfe87d078..0ca5e7886b 100644 +index 50ded7483..0b27b7a27 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java -@@ -996,6 +996,7 @@ public abstract class EntityHuman extends EntityLiving { +@@ -997,6 +997,7 @@ public abstract class EntityHuman extends EntityLiving { boolean flag2 = flag && this.fallDistance > 0.0F && !this.onGround && !this.isClimbing() && !this.isInWater() && !this.hasEffect(MobEffects.BLINDNESS) && !this.isPassenger() && entity instanceof EntityLiving; @@ -33,5 +33,5 @@ index 4cfe87d078..0ca5e7886b 100644 if (flag2) { f *= 1.5F; -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0217-Configurable-sprint-interruption-on-attack.patch b/Spigot-Server-Patches/0217-Configurable-sprint-interruption-on-attack.patch index 4d5b0cf2c6..3c646a5001 100644 --- a/Spigot-Server-Patches/0217-Configurable-sprint-interruption-on-attack.patch +++ b/Spigot-Server-Patches/0217-Configurable-sprint-interruption-on-attack.patch @@ -1,4 +1,4 @@ -From 76ffd33135a20f2afca038b2b83f653dfcb7924a Mon Sep 17 00:00:00 2001 +From 075fd40696027b49c175eaadcfd3be4950de9d48 Mon Sep 17 00:00:00 2001 From: Brokkonaut Date: Sat, 14 Apr 2018 20:20:46 +0200 Subject: [PATCH] Configurable sprint interruption on attack @@ -6,7 +6,7 @@ Subject: [PATCH] Configurable sprint interruption on attack If the sprint interruption is disabled players continue sprinting when they attack entities. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 94ffba97b4..0b6e812d8d 100644 +index 94ffba97b..0b6e812d8 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -349,4 +349,9 @@ public class PaperWorldConfig { @@ -20,10 +20,10 @@ index 94ffba97b4..0b6e812d8d 100644 + } } diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 778356381d..494425e594 100644 +index 8b35443bd..dfd004f02 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java -@@ -1045,7 +1045,11 @@ public abstract class EntityHuman extends EntityLiving { +@@ -1046,7 +1046,11 @@ public abstract class EntityHuman extends EntityLiving { } this.setMot(this.getMot().d(0.6D, 1.0D, 0.6D)); @@ -37,5 +37,5 @@ index 778356381d..494425e594 100644 if (flag3) { -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0222-Expand-World.spawnParticle-API-and-add-Builder.patch b/Spigot-Server-Patches/0222-Expand-World.spawnParticle-API-and-add-Builder.patch index 360791e91a..d8be830a16 100644 --- a/Spigot-Server-Patches/0222-Expand-World.spawnParticle-API-and-add-Builder.patch +++ b/Spigot-Server-Patches/0222-Expand-World.spawnParticle-API-and-add-Builder.patch @@ -1,4 +1,4 @@ -From 35f0a2c4813ee62da2f8078175fff6fbc8259dbb Mon Sep 17 00:00:00 2001 +From 3d5c1c4a2c091d1c649e9c7756ecc8b7942b1d28 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 15 Aug 2017 22:29:12 -0400 Subject: [PATCH] Expand World.spawnParticle API and add Builder @@ -10,7 +10,7 @@ Adds an option to control the force mode of the particle. This adds a new Builder API which is much friendlier to use. diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 18e0455a3..55bb019ea 100644 +index 594401c39..cbabe7743 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -52,7 +52,7 @@ public class WorldServer extends World { @@ -22,7 +22,7 @@ index 18e0455a3..55bb019ea 100644 boolean tickingEntities; private final MinecraftServer server; private final WorldNBTStorage dataManager; -@@ -1336,12 +1336,17 @@ public class WorldServer extends World { +@@ -1348,12 +1348,17 @@ public class WorldServer extends World { } public int sendParticles(EntityPlayer sender, T t0, double d0, double d1, double d2, int i, double d3, double d4, double d5, double d6, boolean force) { @@ -66,5 +66,5 @@ index 75f5e752c..a0c5f7f91 100644 x, y, z, // Position count, // Count -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0236-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch b/Spigot-Server-Patches/0236-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch index a3f2491efc..d673efd968 100644 --- a/Spigot-Server-Patches/0236-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch +++ b/Spigot-Server-Patches/0236-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch @@ -1,4 +1,4 @@ -From be897005519da1a9a186db4e62d187dff83e58b5 Mon Sep 17 00:00:00 2001 +From b1e611afbfb191ac83c8ef7546facf7951a036f1 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 15 Jun 2013 19:51:17 -0400 Subject: [PATCH] EntityShootBowEvent consumeArrow and getArrowItem API @@ -72,7 +72,7 @@ index 874d9f500..f0d784108 100644 event.getProjectile().remove(); return; diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index fa96ec324..9e6ad82ba 100644 +index 95a0364f3..d423150ee 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -50,6 +50,7 @@ import net.minecraft.server.GeneratorAccess; @@ -83,7 +83,7 @@ index fa96ec324..9e6ad82ba 100644 import net.minecraft.server.ItemActionContext; import net.minecraft.server.ItemStack; import net.minecraft.server.Items; -@@ -457,16 +458,16 @@ public class CraftEventFactory { +@@ -456,16 +457,16 @@ public class CraftEventFactory { /** * EntityShootBowEvent */ @@ -104,5 +104,5 @@ index fa96ec324..9e6ad82ba 100644 return event; -- -2.22.0.windows.1 +2.23.0 diff --git a/Spigot-Server-Patches/0237-PlayerReadyArrowEvent.patch b/Spigot-Server-Patches/0237-PlayerReadyArrowEvent.patch index b6093a1643..694befaf4d 100644 --- a/Spigot-Server-Patches/0237-PlayerReadyArrowEvent.patch +++ b/Spigot-Server-Patches/0237-PlayerReadyArrowEvent.patch @@ -1,4 +1,4 @@ -From b7b0c7f334337b6d252361e7c3e0efab9a2a9e5c Mon Sep 17 00:00:00 2001 +From 8a68fc4ca19693cb47e182ac21fb3e1db11c2512 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 18 Jun 2018 01:12:53 -0400 Subject: [PATCH] PlayerReadyArrowEvent @@ -7,10 +7,10 @@ Called when a player is firing a bow and the server is choosing an arrow to use. Plugins can skip selection of certain arrows and control which is used. diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 494425e594..bae1cd65d0 100644 +index dfd004f02..5a95fe160 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java -@@ -2051,6 +2051,17 @@ public abstract class EntityHuman extends EntityLiving { +@@ -2052,6 +2052,17 @@ public abstract class EntityHuman extends EntityLiving { return (EntitySize) EntityHuman.b.getOrDefault(entitypose, EntityHuman.bs); } @@ -28,7 +28,7 @@ index 494425e594..bae1cd65d0 100644 @Override public ItemStack f(ItemStack itemstack) { if (!(itemstack.getItem() instanceof ItemProjectileWeapon)) { -@@ -2067,7 +2078,7 @@ public abstract class EntityHuman extends EntityLiving { +@@ -2068,7 +2079,7 @@ public abstract class EntityHuman extends EntityLiving { for (int i = 0; i < this.inventory.getSize(); ++i) { ItemStack itemstack2 = this.inventory.getItem(i); @@ -38,5 +38,5 @@ index 494425e594..bae1cd65d0 100644 } } -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0245-InventoryCloseEvent-Reason-API.patch b/Spigot-Server-Patches/0245-InventoryCloseEvent-Reason-API.patch index 7e396a3e31..469c208dc2 100644 --- a/Spigot-Server-Patches/0245-InventoryCloseEvent-Reason-API.patch +++ b/Spigot-Server-Patches/0245-InventoryCloseEvent-Reason-API.patch @@ -1,4 +1,4 @@ -From 6e19d4f7a9ee4e7cf3a90226fa3585d9e67a03c2 Mon Sep 17 00:00:00 2001 +From e48d87230262abe8b1e90084de518ab0bb3188f8 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/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 8bec59b8f..7d6a2e8d5 100644 +index 5a95fe160..9544039ab 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -164,7 +164,7 @@ public abstract class EntityHuman extends EntityLiving { @@ -34,7 +34,7 @@ index 8bec59b8f..7d6a2e8d5 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 fc9899037..dcd48d8b3 100644 +index 742489d39..7e37164c0 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -362,7 +362,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -64,7 +64,7 @@ index fc9899037..dcd48d8b3 100644 } this.nextContainerCounter(); -@@ -1111,7 +1111,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1115,7 +1115,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } // CraftBukkit end if (this.activeContainer != this.defaultContainer) { @@ -73,7 +73,7 @@ index fc9899037..dcd48d8b3 100644 } // this.nextContainerCounter(); // CraftBukkit - moved up -@@ -1175,7 +1175,12 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1179,7 +1179,12 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @Override public void closeInventory() { @@ -114,7 +114,7 @@ index a167843bf..9e5cd22d7 100644 PlayerQuitEvent playerQuitEvent = new PlayerQuitEvent(cserver.getPlayer(entityplayer), "\u00A7e" + entityplayer.getName() + " left the game"); cserver.getPluginManager().callEvent(playerQuitEvent); diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 55bb019ea..174fe985f 100644 +index cbabe7743..b67d1b36e 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -993,7 +993,7 @@ public class WorldServer extends World { @@ -168,10 +168,10 @@ index e610c8aae..ce35e6bbc 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 c440ddf53..b095abedb 100644 +index d423150ee..d30392205 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -1255,8 +1255,19 @@ public class CraftEventFactory { +@@ -1254,8 +1254,19 @@ public class CraftEventFactory { return event; } @@ -193,5 +193,5 @@ index c440ddf53..b095abedb 100644 human.activeContainer.transferTo(human.defaultContainer, human.getBukkitEntity()); } -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0254-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch b/Spigot-Server-Patches/0254-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch index 380d88e341..033d4b172e 100644 --- a/Spigot-Server-Patches/0254-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch +++ b/Spigot-Server-Patches/0254-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch @@ -1,4 +1,4 @@ -From 25dd8434749412dffeb0e19d91868e66355c0f78 Mon Sep 17 00:00:00 2001 +From bdf611bc41a27e6ef6b508a55227a76a09d0f3d4 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 21 Jul 2018 08:25:40 -0400 Subject: [PATCH] Add Debug Entities option to debug dupe uuid issues @@ -6,7 +6,7 @@ Subject: [PATCH] Add Debug Entities option to debug dupe uuid issues Add -Ddebug.entities=true to your JVM flags to gain more information diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 6ada923797..9241874139 100644 +index 6ada92379..924187413 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -75,6 +75,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -19,7 +19,7 @@ index 6ada923797..9241874139 100644 if (bukkitEntity == null) { bukkitEntity = CraftEntity.getEntity(world.getServer(), this); diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index e6c55d87b4..6379d2d84f 100644 +index e6c55d87b..6379d2d84 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java @@ -1014,6 +1014,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { @@ -40,7 +40,7 @@ index e6c55d87b4..6379d2d84f 100644 protected void g() { diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index e780f7af40..627fec10a8 100644 +index e780f7af4..627fec10a 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -68,6 +68,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -52,7 +52,7 @@ index e780f7af40..627fec10a8 100644 public boolean captureBlockStates = false; public boolean captureTreeGeneration = false; diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index d8c49d95e1..97049aba9d 100644 +index 7605292ad..281cde519 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -72,6 +72,9 @@ public class WorldServer extends World { @@ -95,7 +95,7 @@ index d8c49d95e1..97049aba9d 100644 // WorldServer.LOGGER.warn("Tried to add entity {} but it was marked as removed already", EntityTypes.getName(entity.getEntityType())); // CraftBukkit return false; } else if (this.isUUIDTaken(entity)) { -@@ -1107,7 +1130,24 @@ public class WorldServer extends World { +@@ -1113,7 +1136,24 @@ public class WorldServer extends World { } } @@ -119,8 +119,8 @@ index d8c49d95e1..97049aba9d 100644 + } + this.getChunkProvider().addEntity(entity); - if (entity instanceof EntityInsentient) { - this.H.add(((EntityInsentient) entity).getNavigation()); + // CraftBukkit start - SPIGOT-5278 + if (entity instanceof EntityDrowned) { -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0261-Vanished-players-don-t-have-rights.patch b/Spigot-Server-Patches/0261-Vanished-players-don-t-have-rights.patch index 54b27797f0..7aef6f38ee 100644 --- a/Spigot-Server-Patches/0261-Vanished-players-don-t-have-rights.patch +++ b/Spigot-Server-Patches/0261-Vanished-players-don-t-have-rights.patch @@ -1,4 +1,4 @@ -From 442793995643e0aae62c4cceaba2664e0c0d6c63 Mon Sep 17 00:00:00 2001 +From 4f3585c6277c3f8a03a695b37f6e06bafaf46e66 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 @@ -129,10 +129,10 @@ index cacc18ca4..c60279da8 100644 public BiomeBase getBiome(BlockPosition blockposition) { IChunkProvider ichunkprovider = this.getChunkProvider(); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index b095abedb..12aa6f78a 100644 +index d30392205..ea6c538ef 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -1136,6 +1136,14 @@ public class CraftEventFactory { +@@ -1135,6 +1135,14 @@ public class CraftEventFactory { Projectile projectile = (Projectile) entity.getBukkitEntity(); org.bukkit.entity.Entity collided = position.getEntity().getBukkitEntity(); com.destroystokyo.paper.event.entity.ProjectileCollideEvent event = new com.destroystokyo.paper.event.entity.ProjectileCollideEvent(projectile, collided); @@ -148,5 +148,5 @@ index b095abedb..12aa6f78a 100644 return event; } -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0268-Ignore-Dead-Entities-in-entityList-iteration.patch b/Spigot-Server-Patches/0268-Ignore-Dead-Entities-in-entityList-iteration.patch index 873aeac15d..8075175fc3 100644 --- a/Spigot-Server-Patches/0268-Ignore-Dead-Entities-in-entityList-iteration.patch +++ b/Spigot-Server-Patches/0268-Ignore-Dead-Entities-in-entityList-iteration.patch @@ -1,4 +1,4 @@ -From 70028bc603ddfaa666f1043c99ad384c882dd250 Mon Sep 17 00:00:00 2001 +From 1a692f9358bd968a46dbb821e0b050731e2de7e0 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 28 Jul 2018 12:18:27 -0400 Subject: [PATCH] Ignore Dead Entities in entityList iteration @@ -63,7 +63,7 @@ index 701090c11..7d579c119 100644 private float av; private float aw; diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 97049aba9..24f1a6442 100644 +index 281cde519..a0465c85f 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -851,7 +851,7 @@ public class WorldServer extends World { @@ -75,7 +75,7 @@ index 97049aba9..24f1a6442 100644 if (entity instanceof EntityInsentient) { EntityInsentient entityinsentient = (EntityInsentient) entity; -@@ -1158,6 +1158,7 @@ public class WorldServer extends World { +@@ -1170,6 +1170,7 @@ public class WorldServer extends World { entity.origin = entity.getBukkitEntity().getLocation(); } // Paper end @@ -83,7 +83,7 @@ index 97049aba9..24f1a6442 100644 new com.destroystokyo.paper.event.entity.EntityAddToWorldEvent(entity.getBukkitEntity()).callEvent(); // Paper - fire while valid } -@@ -1171,6 +1172,7 @@ public class WorldServer extends World { +@@ -1183,6 +1184,7 @@ public class WorldServer extends World { this.removeEntityFromChunk(entity); this.entitiesById.remove(entity.getId()); this.unregisterEntity(entity); @@ -92,7 +92,7 @@ index 97049aba9..24f1a6442 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 601265fb5..4ed4dfdde 100644 +index 5e53ee010..766bb4bc1 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -944,6 +944,7 @@ public class CraftWorld implements World { @@ -128,5 +128,5 @@ index 601265fb5..4ed4dfdde 100644 if (bukkitEntity == null) { -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0275-Add-hand-to-bucket-events.patch b/Spigot-Server-Patches/0275-Add-hand-to-bucket-events.patch index 22c141e47a..8cd1ef847e 100644 --- a/Spigot-Server-Patches/0275-Add-hand-to-bucket-events.patch +++ b/Spigot-Server-Patches/0275-Add-hand-to-bucket-events.patch @@ -1,32 +1,32 @@ -From 04c5c10babc2a9dc7617f1da00274afdc049d092 Mon Sep 17 00:00:00 2001 +From 6eb6609e2c631380c8754d9fa87aac479ab51b7a Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Thu, 2 Aug 2018 08:44:35 -0500 Subject: [PATCH] Add hand to bucket events diff --git a/src/main/java/net/minecraft/server/EntityCow.java b/src/main/java/net/minecraft/server/EntityCow.java -index a17738f9ff..d2c2e3cc33 100644 +index 6e385b530..2c8bbf20a 100644 --- a/src/main/java/net/minecraft/server/EntityCow.java +++ b/src/main/java/net/minecraft/server/EntityCow.java -@@ -62,7 +62,7 @@ public class EntityCow extends EntityAnimal { +@@ -61,7 +61,7 @@ public class EntityCow extends EntityAnimal { + if (itemstack.getItem() == Items.BUCKET && !entityhuman.abilities.canInstantlyBuild && !this.isBaby()) { // CraftBukkit start - Got milk? - org.bukkit.Location loc = this.getBukkitEntity().getLocation(); -- org.bukkit.event.player.PlayerBucketFillEvent event = CraftEventFactory.callPlayerBucketFillEvent(entityhuman, loc.getBlockX(), loc.getBlockY(), loc.getBlockZ(), null, itemstack, Items.MILK_BUCKET); -+ org.bukkit.event.player.PlayerBucketFillEvent event = CraftEventFactory.callPlayerBucketFillEvent(entityhuman, loc.getBlockX(), loc.getBlockY(), loc.getBlockZ(), null, itemstack, Items.MILK_BUCKET, enumhand); // Paper - add enumHand +- org.bukkit.event.player.PlayerBucketFillEvent event = CraftEventFactory.callPlayerBucketFillEvent(entityhuman.world, entityhuman, this.getChunkCoordinates(), this.getChunkCoordinates(), null, itemstack, Items.MILK_BUCKET); ++ org.bukkit.event.player.PlayerBucketFillEvent event = CraftEventFactory.callPlayerBucketFillEvent(entityhuman.world, entityhuman, this.getChunkCoordinates(), this.getChunkCoordinates(), null, itemstack, Items.MILK_BUCKET, enumhand); // Paper - add enumHand if (event.isCancelled()) { return false; diff --git a/src/main/java/net/minecraft/server/ItemBucket.java b/src/main/java/net/minecraft/server/ItemBucket.java -index 6f8a116c06..731f117065 100644 +index 59e239e9d..91ff811d8 100644 --- a/src/main/java/net/minecraft/server/ItemBucket.java +++ b/src/main/java/net/minecraft/server/ItemBucket.java @@ -39,7 +39,7 @@ public class ItemBucket extends Item { if (iblockdata.getBlock() instanceof IFluidSource) { // CraftBukkit start FluidType dummyFluid = ((IFluidSource) iblockdata.getBlock()).removeFluid(DummyGeneratorAccess.INSTANCE, blockposition, iblockdata); -- PlayerBucketFillEvent event = CraftEventFactory.callPlayerBucketFillEvent(entityhuman, blockposition.getX(), blockposition.getY(), blockposition.getZ(), null, itemstack, dummyFluid.b()); -+ PlayerBucketFillEvent event = CraftEventFactory.callPlayerBucketFillEvent(entityhuman, blockposition.getX(), blockposition.getY(), blockposition.getZ(), null, itemstack, dummyFluid.b(), enumhand); // Paper - add enumHand +- PlayerBucketFillEvent event = CraftEventFactory.callPlayerBucketFillEvent(world, entityhuman, blockposition, blockposition, movingobjectpositionblock.getDirection(), itemstack, dummyFluid.b()); ++ PlayerBucketFillEvent event = CraftEventFactory.callPlayerBucketFillEvent(world, entityhuman, blockposition, blockposition, movingobjectpositionblock.getDirection(), itemstack, dummyFluid.b(), enumhand); // Paper - add enumHand if (event.isCancelled()) { ((EntityPlayer) entityhuman).playerConnection.sendPacket(new PacketPlayOutBlockChange(world, blockposition)); // SPIGOT-5163 (see PlayerInteractManager) @@ -61,49 +61,50 @@ index 6f8a116c06..731f117065 100644 } else { // CraftBukkit start if (entityhuman != null) { -- PlayerBucketEmptyEvent event = CraftEventFactory.callPlayerBucketEmptyEvent(entityhuman, clicked.getX(), clicked.getY(), clicked.getZ(), enumdirection, itemstack); -+ PlayerBucketEmptyEvent event = CraftEventFactory.callPlayerBucketEmptyEvent(entityhuman, clicked.getX(), clicked.getY(), clicked.getZ(), enumdirection, itemstack, enumhand); // Paper - add enumHand +- PlayerBucketEmptyEvent event = CraftEventFactory.callPlayerBucketEmptyEvent(world, entityhuman, blockposition, clicked, enumdirection, itemstack); ++ PlayerBucketEmptyEvent event = CraftEventFactory.callPlayerBucketEmptyEvent(world, entityhuman, blockposition, clicked, enumdirection, itemstack, enumhand); // Paper - add enumHand if (event.isCancelled()) { ((EntityPlayer) entityhuman).playerConnection.sendPacket(new PacketPlayOutBlockChange(world, blockposition)); // SPIGOT-4238: needed when looking through entity ((EntityPlayer) entityhuman).getBukkitEntity().updateInventory(); // SPIGOT-4541 diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 379838fd60..02536db14a 100644 +index ea6c538ef..d9679f77c 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -360,6 +360,20 @@ public class CraftEventFactory { - } +@@ -360,6 +360,21 @@ public class CraftEventFactory { - private static PlayerEvent getPlayerBucketEvent(boolean isFilling, EntityHuman who, int clickedX, int clickedY, int clickedZ, EnumDirection clickedFace, ItemStack itemstack, net.minecraft.server.Item item) { + private static PlayerEvent getPlayerBucketEvent(boolean isFilling, World world, EntityHuman who, BlockPosition changed, BlockPosition clicked, EnumDirection clickedFace, ItemStack itemstack, net.minecraft.server.Item item) { + Player player = (Player) who.getBukkitEntity(); + // Paper start - add EnumHand -+ return getPlayerBucketEvent(isFilling, who, clickedX, clickedY, clickedZ, clickedFace, itemstack, item, null); ++ return getPlayerBucketEvent(isFilling, world, who, changed, clicked, clickedFace, itemstack, item, null); + } + -+ public static PlayerBucketEmptyEvent callPlayerBucketEmptyEvent(EntityHuman who, int clickedX, int clickedY, int clickedZ, EnumDirection clickedFace, ItemStack itemInHand, EnumHand enumHand) { -+ return (PlayerBucketEmptyEvent) getPlayerBucketEvent(false, who, clickedX, clickedY, clickedZ, clickedFace, itemInHand, Items.BUCKET, enumHand); ++ public static PlayerBucketEmptyEvent callPlayerBucketEmptyEvent(World world, EntityHuman who, BlockPosition changed, BlockPosition clicked, EnumDirection clickedFace, ItemStack itemstack, EnumHand enumHand) { ++ return (PlayerBucketEmptyEvent) getPlayerBucketEvent(false, world, who, changed, clicked, clickedFace, itemstack, Items.BUCKET, enumHand); + } + -+ public static PlayerBucketFillEvent callPlayerBucketFillEvent(EntityHuman who, int clickedX, int clickedY, int clickedZ, EnumDirection clickedFace, ItemStack itemInHand, net.minecraft.server.Item bucket, EnumHand enumHand) { -+ return (PlayerBucketFillEvent) getPlayerBucketEvent(true, who, clickedX, clickedY, clickedZ, clickedFace, itemInHand, bucket, enumHand); ++ public static PlayerBucketFillEvent callPlayerBucketFillEvent(World world, EntityHuman who, BlockPosition changed, BlockPosition clicked, EnumDirection clickedFace, ItemStack itemInHand, net.minecraft.server.Item bucket, EnumHand enumHand) { ++ return (PlayerBucketFillEvent) getPlayerBucketEvent(true, world, who, clicked, changed, clickedFace, itemInHand, bucket, enumHand); + } + -+ private static PlayerEvent getPlayerBucketEvent(boolean isFilling, EntityHuman who, int clickedX, int clickedY, int clickedZ, EnumDirection clickedFace, ItemStack itemstack, net.minecraft.server.Item item, EnumHand enumHand) { ++ private static PlayerEvent getPlayerBucketEvent(boolean isFilling, World world, EntityHuman who, BlockPosition changed, BlockPosition clicked, EnumDirection clickedFace, ItemStack itemstack, net.minecraft.server.Item item, EnumHand enumHand) { + // Paper end - Player player = (who == null) ? null : (Player) who.getBukkitEntity(); ++ Player player = (who == null) ? null : (Player) who.getBukkitEntity(); CraftItemStack itemInHand = CraftItemStack.asNewCraftStack(item); Material bucket = CraftMagicNumbers.getMaterial(itemstack.getItem()); -@@ -372,10 +386,10 @@ public class CraftEventFactory { - PlayerEvent event = null; +@@ -371,10 +386,10 @@ public class CraftEventFactory { + + PlayerEvent event; if (isFilling) { -- event = new PlayerBucketFillEvent(player, blockClicked, blockFace, bucket, itemInHand); -+ event = new PlayerBucketFillEvent(player, blockClicked, blockFace, bucket, itemInHand, enumHand == null ? null : enumHand == EnumHand.OFF_HAND ? EquipmentSlot.OFF_HAND : EquipmentSlot.HAND); // Paper - add enumHand - ((PlayerBucketFillEvent) event).setCancelled(!canBuild(craftWorld, player, clickedX, clickedZ)); +- event = new PlayerBucketFillEvent(player, block, blockClicked, blockFace, bucket, itemInHand); ++ event = new PlayerBucketFillEvent(player, block, blockClicked, blockFace, bucket, itemInHand, enumHand == null ? null : enumHand == EnumHand.OFF_HAND ? EquipmentSlot.OFF_HAND : EquipmentSlot.HAND); // Paper - add enumHand + ((PlayerBucketFillEvent) event).setCancelled(!canBuild(world, player, changed.getX(), changed.getZ())); } else { -- event = new PlayerBucketEmptyEvent(player, blockClicked, blockFace, bucket, itemInHand); -+ event = new PlayerBucketEmptyEvent(player, blockClicked, blockFace, bucket, itemInHand, enumHand == null ? null : enumHand == EnumHand.OFF_HAND ? EquipmentSlot.OFF_HAND : EquipmentSlot.HAND); // Paper - add enumHand - ((PlayerBucketEmptyEvent) event).setCancelled(!canBuild(craftWorld, player, clickedX, clickedZ)); +- event = new PlayerBucketEmptyEvent(player, block, blockClicked, blockFace, bucket, itemInHand); ++ event = new PlayerBucketEmptyEvent(player, block, blockClicked, blockFace, bucket, itemInHand, enumHand == null ? null : enumHand == EnumHand.OFF_HAND ? EquipmentSlot.OFF_HAND : EquipmentSlot.HAND); // Paper - add enumHand + ((PlayerBucketEmptyEvent) event).setCancelled(!canBuild(world, player, changed.getX(), changed.getZ())); } -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0276-MC-135506-Experience-should-save-as-Integers.patch b/Spigot-Server-Patches/0276-MC-135506-Experience-should-save-as-Integers.patch index b173a0020e..76fdcab029 100644 --- a/Spigot-Server-Patches/0276-MC-135506-Experience-should-save-as-Integers.patch +++ b/Spigot-Server-Patches/0276-MC-135506-Experience-should-save-as-Integers.patch @@ -1,14 +1,14 @@ -From de854b3c9dd85dcb9eac1030d8965da684085c56 Mon Sep 17 00:00:00 2001 +From e4803aa2bf42cc66ff99b28bf62e87b77e08046b Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 3 Aug 2018 00:04:54 -0400 Subject: [PATCH] MC-135506: Experience should save as Integers diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -index 6a5954889e..1a98442e08 100644 +index ba3e66f9e..d8f23ff02 100644 --- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java +++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -@@ -204,7 +204,7 @@ public class EntityExperienceOrb extends Entity { +@@ -207,7 +207,7 @@ public class EntityExperienceOrb extends Entity { public void b(NBTTagCompound nbttagcompound) { nbttagcompound.setShort("Health", (short) this.e); nbttagcompound.setShort("Age", (short) this.c); @@ -17,7 +17,7 @@ index 6a5954889e..1a98442e08 100644 this.savePaperNBT(nbttagcompound); // Paper } -@@ -212,7 +212,7 @@ public class EntityExperienceOrb extends Entity { +@@ -215,7 +215,7 @@ public class EntityExperienceOrb extends Entity { public void a(NBTTagCompound nbttagcompound) { this.e = nbttagcompound.getShort("Health"); this.c = nbttagcompound.getShort("Age"); @@ -27,5 +27,5 @@ index 6a5954889e..1a98442e08 100644 } -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0286-Send-nearby-packets-from-world-player-list-not-serve.patch b/Spigot-Server-Patches/0286-Send-nearby-packets-from-world-player-list-not-serve.patch index 23973d3f89..aeecdf40c0 100644 --- a/Spigot-Server-Patches/0286-Send-nearby-packets-from-world-player-list-not-serve.patch +++ b/Spigot-Server-Patches/0286-Send-nearby-packets-from-world-player-list-not-serve.patch @@ -1,4 +1,4 @@ -From a39029faa699a3aeb16dae5e275a9c09a8ff5e2b Mon Sep 17 00:00:00 2001 +From 41148d70a24ea6d749e0cd2d771950bbbd743531 Mon Sep 17 00:00:00 2001 From: Mystiflow Date: Fri, 6 Jul 2018 13:21:30 +0100 Subject: [PATCH] Send nearby packets from world player list not server list @@ -46,10 +46,10 @@ index 9e5cd22d7..049d702cb 100644 double d5 = d1 - entityplayer.locY; double d6 = d2 - entityplayer.locZ; diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 24f1a6442..0025e4ecf 100644 +index a0465c85f..55d469e37 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1205,7 +1205,7 @@ public class WorldServer extends World { +@@ -1217,7 +1217,7 @@ public class WorldServer extends World { } // CraftBukkit end this.globalEntityList.add(entitylightning); @@ -58,7 +58,7 @@ index 24f1a6442..0025e4ecf 100644 } @Override -@@ -1337,7 +1337,7 @@ public class WorldServer extends World { +@@ -1349,7 +1349,7 @@ public class WorldServer extends World { BlockActionData blockactiondata = (BlockActionData) this.I.removeFirst(); if (this.a(blockactiondata)) { @@ -81,5 +81,5 @@ index 766bb4bc1..88186aac8 100644 private static Map> gamerules; -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0299-Expose-attack-cooldown-methods-for-Player.patch b/Spigot-Server-Patches/0299-Expose-attack-cooldown-methods-for-Player.patch index 2a4e832e6b..6d61fe5e39 100644 --- a/Spigot-Server-Patches/0299-Expose-attack-cooldown-methods-for-Player.patch +++ b/Spigot-Server-Patches/0299-Expose-attack-cooldown-methods-for-Player.patch @@ -1,14 +1,14 @@ -From ea563991707d6ac4b67e0ebd02bf6f6892ac0a56 Mon Sep 17 00:00:00 2001 +From fbeb62a3e4fe1b9a23b2181e90e611fdbc767dfc Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Tue, 4 Sep 2018 15:02:00 -0500 Subject: [PATCH] Expose attack cooldown methods for Player diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index d2b228d0a8..598df2239b 100644 +index 9544039ab..2342ea481 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java -@@ -2022,14 +2022,17 @@ public abstract class EntityHuman extends EntityLiving { +@@ -2023,14 +2023,17 @@ public abstract class EntityHuman extends EntityLiving { this.datawatcher.set(EntityHuman.bw, nbttagcompound); } @@ -27,7 +27,7 @@ index d2b228d0a8..598df2239b 100644 this.aD = 0; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 39285c92c4..23897f8ca0 100644 +index ce35e6bbc..2c99a1e9d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1929,6 +1929,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -52,5 +52,5 @@ index 39285c92c4..23897f8ca0 100644 private final Player.Spigot spigot = new Player.Spigot() { -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0322-Limit-lightning-strike-effect-distance.patch b/Spigot-Server-Patches/0322-Limit-lightning-strike-effect-distance.patch index 393a2e38c0..86812a160e 100644 --- a/Spigot-Server-Patches/0322-Limit-lightning-strike-effect-distance.patch +++ b/Spigot-Server-Patches/0322-Limit-lightning-strike-effect-distance.patch @@ -1,11 +1,11 @@ -From c05bb2b751ecc6bc634dce146db5724df08e139b Mon Sep 17 00:00:00 2001 +From e67da0dbb682fc754406f55ee184f670219f84c8 Mon Sep 17 00:00:00 2001 From: Trigary Date: Fri, 14 Sep 2018 17:42:08 +0200 Subject: [PATCH] Limit lightning strike effect distance diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 7e031d18e0..63f313a92d 100644 +index 7e031d18e..63f313a92 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -234,6 +234,28 @@ public class PaperWorldConfig { @@ -38,7 +38,7 @@ index 7e031d18e0..63f313a92d 100644 public int fixedInhabitedTime; private void fixedInhabitedTime() { diff --git a/src/main/java/net/minecraft/server/EntityLightning.java b/src/main/java/net/minecraft/server/EntityLightning.java -index 2ceee79cf2..27bf271bb5 100644 +index 2ceee79cf..27bf271bb 100644 --- a/src/main/java/net/minecraft/server/EntityLightning.java +++ b/src/main/java/net/minecraft/server/EntityLightning.java @@ -64,6 +64,17 @@ public class EntityLightning extends Entity { @@ -69,10 +69,10 @@ index 2ceee79cf2..27bf271bb5 100644 --this.lifeTicks; diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 0025e4ecfc..b01af00c86 100644 +index 55d469e37..62f9a068f 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1205,7 +1205,7 @@ public class WorldServer extends World { +@@ -1217,7 +1217,7 @@ public class WorldServer extends World { } // CraftBukkit end this.globalEntityList.add(entitylightning); @@ -82,5 +82,5 @@ index 0025e4ecfc..b01af00c86 100644 @Override -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0324-Call-player-spectator-target-events.patch b/Spigot-Server-Patches/0324-Call-player-spectator-target-events.patch index 237d38b7c4..ffdff3b025 100644 --- a/Spigot-Server-Patches/0324-Call-player-spectator-target-events.patch +++ b/Spigot-Server-Patches/0324-Call-player-spectator-target-events.patch @@ -1,11 +1,11 @@ -From 8056f68d64f872c38de30c74d87b31f8baec1f36 Mon Sep 17 00:00:00 2001 +From 60711802ff648aadcdae6ab21f060ef552c2532a Mon Sep 17 00:00:00 2001 From: Caleb Bassham Date: Fri, 28 Sep 2018 02:32:19 -0500 Subject: [PATCH] Call player spectator target events diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index d7bc6e329..0ef57535e 100644 +index 1b35e6c47..eed8bcf03 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -60,7 +60,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -17,7 +17,7 @@ index d7bc6e329..0ef57535e 100644 public boolean worldChangeInvuln; private boolean cp; private void setHasSeenCredits(boolean has) { this.cp = has; } // Paper - OBFHELPER private final RecipeBookServer recipeBook; -@@ -1574,15 +1574,35 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1578,15 +1578,35 @@ public class EntityPlayer extends EntityHuman implements ICrafting { return (Entity) (this.spectatedEntity == null ? this : this.spectatedEntity); } @@ -59,5 +59,5 @@ index d7bc6e329..0ef57535e 100644 @Override -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0329-Reset-players-airTicks-on-respawn.patch b/Spigot-Server-Patches/0329-Reset-players-airTicks-on-respawn.patch index de447d9857..919e82e161 100644 --- a/Spigot-Server-Patches/0329-Reset-players-airTicks-on-respawn.patch +++ b/Spigot-Server-Patches/0329-Reset-players-airTicks-on-respawn.patch @@ -1,4 +1,4 @@ -From a6b43f8f267090c95b2ab702b8328cfded060584 Mon Sep 17 00:00:00 2001 +From 20b9514747f9c827c27d47bf688849fed72c1459 Mon Sep 17 00:00:00 2001 From: GreenMeanie Date: Sat, 20 Oct 2018 22:34:02 -0400 Subject: [PATCH] Reset players airTicks on respawn @@ -17,10 +17,10 @@ index 4833a9652..19bbcc043 100644 return 300; } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 0ef57535e..965f1c279 100644 +index eed8bcf03..517bbf602 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java -@@ -1862,6 +1862,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1866,6 +1866,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { } this.setHealth(this.getMaxHealth()); @@ -29,5 +29,5 @@ index 0ef57535e..965f1c279 100644 this.fallDistance = 0; this.foodData = new FoodMetaData(this); -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0340-force-entity-dismount-during-teleportation.patch b/Spigot-Server-Patches/0340-force-entity-dismount-during-teleportation.patch index 8a2d0051af..443afa398b 100644 --- a/Spigot-Server-Patches/0340-force-entity-dismount-during-teleportation.patch +++ b/Spigot-Server-Patches/0340-force-entity-dismount-during-teleportation.patch @@ -1,4 +1,4 @@ -From 0a711dbbea913e930e4f34e1bdbe3ad46161deaf Mon Sep 17 00:00:00 2001 +From 6e02846e06a944ed0bd1612330a2edee3e68a319 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Thu, 15 Nov 2018 13:38:37 +0000 Subject: [PATCH] force entity dismount during teleportation @@ -20,7 +20,7 @@ this is going to be the best soultion all around. Improvements/suggestions welcome! diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 19bbcc043f..75da085969 100644 +index 19bbcc043..75da08596 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -2045,12 +2045,15 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -72,10 +72,10 @@ index 19bbcc043f..75da085969 100644 if (event.isCancelled()) { return false; diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 8887c24a9b..5d3e48ba61 100644 +index 2342ea481..8a66b1dc5 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java -@@ -952,9 +952,11 @@ public abstract class EntityHuman extends EntityLiving { +@@ -953,9 +953,11 @@ public abstract class EntityHuman extends EntityLiving { return -0.35D; } @@ -91,7 +91,7 @@ index 8887c24a9b..5d3e48ba61 100644 } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 1e53af2cce..d23968a7c9 100644 +index 1e53af2cc..d23968a7c 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2673,11 +2673,13 @@ public abstract class EntityLiving extends Entity { @@ -112,7 +112,7 @@ index 1e53af2cce..d23968a7c9 100644 this.B(entity); } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 965f1c279b..0a6fdd383f 100644 +index 517bbf602..8eb662cef 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -1002,11 +1002,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -133,5 +133,5 @@ index 965f1c279b..0a6fdd383f 100644 if (entity1 != entity && this.playerConnection != null) { -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0351-Workaround-for-vehicle-tracking-issue-on-disconnect.patch b/Spigot-Server-Patches/0351-Workaround-for-vehicle-tracking-issue-on-disconnect.patch index 7b7b091f53..2115dba39b 100644 --- a/Spigot-Server-Patches/0351-Workaround-for-vehicle-tracking-issue-on-disconnect.patch +++ b/Spigot-Server-Patches/0351-Workaround-for-vehicle-tracking-issue-on-disconnect.patch @@ -1,14 +1,14 @@ -From 1e454ceca6edabaa552b773433802acbef6040cb Mon Sep 17 00:00:00 2001 +From 16e1eddb17053706cc06be25bb80881a8fcba6d3 Mon Sep 17 00:00:00 2001 From: connorhartley Date: Mon, 7 Jan 2019 14:43:48 -0600 Subject: [PATCH] Workaround for vehicle tracking issue on disconnect diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 75fddac7d..a191d6246 100644 +index 6161e9d23..a09b5af0e 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java -@@ -1285,6 +1285,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1289,6 +1289,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting { public void n() { this.ct = true; this.ejectPassengers(); @@ -23,5 +23,5 @@ index 75fddac7d..a191d6246 100644 this.wakeup(true, false, false); } -- -2.22.0 +2.23.0 diff --git a/Spigot-Server-Patches/0384-Duplicate-UUID-Resolve-Option.patch b/Spigot-Server-Patches/0384-Duplicate-UUID-Resolve-Option.patch index 7fb07c4ed2..af61863497 100644 --- a/Spigot-Server-Patches/0384-Duplicate-UUID-Resolve-Option.patch +++ b/Spigot-Server-Patches/0384-Duplicate-UUID-Resolve-Option.patch @@ -1,4 +1,4 @@ -From a55ea9fd05f0520b014878afb447c0a092fc0a93 Mon Sep 17 00:00:00 2001 +From 49178a3ce45aee1bb899329fa26d782c53579a62 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 91c809b7ce..d8bb13693d 100644 +index 91c809b7c..d8bb13693 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -444,4 +444,43 @@ public class PaperWorldConfig { @@ -81,7 +81,7 @@ index 91c809b7ce..d8bb13693d 100644 + } } diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 09e010e670..ee8f801745 100644 +index 09e010e67..ee8f80174 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -397,6 +397,7 @@ public class Chunk implements IChunkAccess { @@ -93,7 +93,7 @@ index 09e010e670..ee8f801745 100644 int k = MathHelper.floor(entity.locY / 16.0D); diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index f87514a200..55c73ffcaa 100644 +index f87514a20..55c73ffca 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -2728,6 +2728,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -105,7 +105,7 @@ index f87514a200..55c73ffcaa 100644 this.uniqueID = uuid; this.ap = this.uniqueID.toString(); diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index 6379d2d84f..67d011745f 100644 +index 6379d2d84..67d011745 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java @@ -1,6 +1,7 @@ @@ -196,7 +196,7 @@ index 6379d2d84f..67d011745f 100644 if (list != null) { diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 82c3bc60d0..a6d0635ec1 100644 +index 55ae4abc1..0f8f54d8e 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -2,6 +2,8 @@ package net.minecraft.server; @@ -234,7 +234,7 @@ index 82c3bc60d0..a6d0635ec1 100644 return true; } } -@@ -1136,7 +1153,7 @@ public class WorldServer extends World { +@@ -1142,7 +1159,7 @@ public class WorldServer extends World { } Entity old = this.entitiesByUUID.put(entity.getUniqueID(), entity); @@ -244,5 +244,5 @@ index 82c3bc60d0..a6d0635ec1 100644 logger.error("Overwrote an existing entity " + old + " with " + entity); if (DEBUG_ENTITIES) { -- -2.22.1 +2.23.0 diff --git a/Spigot-Server-Patches/0386-Configurable-Keep-Spawn-Loaded-range-per-world.patch b/Spigot-Server-Patches/0386-Configurable-Keep-Spawn-Loaded-range-per-world.patch index 33ab22446a..157e680ae7 100644 --- a/Spigot-Server-Patches/0386-Configurable-Keep-Spawn-Loaded-range-per-world.patch +++ b/Spigot-Server-Patches/0386-Configurable-Keep-Spawn-Loaded-range-per-world.patch @@ -1,4 +1,4 @@ -From 1f10b9fd531350980dd9ff08281228be6f16f939 Mon Sep 17 00:00:00 2001 +From 913c2e4cbc7dce4c56d2efea4869acac83b227e6 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 13 Sep 2014 23:14:43 -0400 Subject: [PATCH] Configurable Keep Spawn Loaded range per world @@ -6,7 +6,7 @@ Subject: [PATCH] Configurable Keep Spawn Loaded range per world This lets you disable it for some worlds and lower it for others. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index d8bb13693d..de11a91af6 100644 +index d8bb13693..de11a91af 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -483,4 +483,10 @@ public class PaperWorldConfig { @@ -21,7 +21,7 @@ index d8bb13693d..de11a91af6 100644 + } } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index c70ab3caf0..c58f6f50d3 100644 +index c70ab3caf..c58f6f50d 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -577,6 +577,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Sun, 28 Jul 2019 00:51:11 +0100 Subject: [PATCH] Mark entities as being ticked when notifying navigation diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 1e5b15c2e..84c16e275 100644 +index 8b95da3da..6220af6b4 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1325,6 +1325,7 @@ public class WorldServer extends World { +@@ -1337,6 +1337,7 @@ public class WorldServer extends World { VoxelShape voxelshape1 = iblockdata1.getCollisionShape(this, blockposition); if (VoxelShapes.c(voxelshape, voxelshape1, OperatorBoolean.NOT_SAME)) { @@ -16,7 +16,7 @@ index 1e5b15c2e..84c16e275 100644 Iterator iterator = this.H.iterator(); while (iterator.hasNext()) { -@@ -1335,6 +1336,7 @@ public class WorldServer extends World { +@@ -1347,6 +1348,7 @@ public class WorldServer extends World { } } diff --git a/Spigot-Server-Patches/0412-implement-optional-per-player-mob-spawns.patch b/Spigot-Server-Patches/0412-implement-optional-per-player-mob-spawns.patch index 8c1c03c7c7..d10614c64d 100644 --- a/Spigot-Server-Patches/0412-implement-optional-per-player-mob-spawns.patch +++ b/Spigot-Server-Patches/0412-implement-optional-per-player-mob-spawns.patch @@ -1,4 +1,4 @@ -From 7feffe7b8be9bb6667f6bb02078642d2b8b6aee1 Mon Sep 17 00:00:00 2001 +From 685da5100db38159cdf751d13fc229a9676e304b Mon Sep 17 00:00:00 2001 From: kickash32 Date: Mon, 19 Aug 2019 01:27:58 +0500 Subject: [PATCH] implement optional per player mob spawns @@ -601,7 +601,7 @@ index 17f04fb81..bc5011312 100644 } } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 18695d9b5..5c4a4be1b 100644 +index 0e29858c0..7801879c8 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -80,6 +80,11 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -624,7 +624,7 @@ index 18695d9b5..5c4a4be1b 100644 } // Yes, this doesn't match Vanilla, but it's the best we can do for now. -@@ -1766,6 +1772,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { +@@ -1770,6 +1776,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { this.playerConnection.sendPacket(new PacketPlayOutUnloadChunk(chunkcoordintpair.x, chunkcoordintpair.z)); } @@ -757,7 +757,7 @@ index c6ea37ffb..9d4a96ae4 100644 @Nullable diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index cf981632c..5eff278e7 100644 +index 0c1f4e6e1..4ffcb15af 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -958,7 +958,20 @@ public class WorldServer extends World { diff --git a/work/Bukkit b/work/Bukkit index bde198c9e9..e970fd7273 160000 --- a/work/Bukkit +++ b/work/Bukkit @@ -1 +1 @@ -Subproject commit bde198c9e927cc58b4773dc343825f15f7a8add6 +Subproject commit e970fd7273a9408f0207bfc9da7add4ecb801017 diff --git a/work/CraftBukkit b/work/CraftBukkit index 2012f1e048..b2bcde89d9 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit 2012f1e048773ef777a97dd3ebf138e20004f6c8 +Subproject commit b2bcde89d9267709f81fda53afa7cd3d7204c7b6