From e8c82f4eeeb511b7bfa974ddd2cc5d58779c8805 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Tue, 8 Oct 2019 19:37:02 +0100 Subject: [PATCH] Updated Upstream (Bukkit/CraftBukkit) 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: 0399d9d6 SPIGOT-5341: Add Material.isAir 547f5709 SPIGOT-5353: Expand explosion API by adding source entity CraftBukkit Changes: 7deb3728 SPIGOT-5309: Call cancelled EntityDamageEvent when damaging invisible armor stands 46351e17 SPIGOT-5341: Add Material.isAir 683bae06 SPIGOT-5342: Lore lost when deserializing items with no version stored c2d12011 SPIGOT-5353: Expand explosion API by adding source entity --- ...upstream-javadoc-warnings-and-errors.patch | 28 +++++++------- ...ld.spawnParticle-API-and-add-Builder.patch | 12 +++--- .../0112-Expand-Explosions-API.patch | 28 ++++---------- ...c-custom-world-gen-plugin-class-that.patch | 6 +-- ...064-Handle-Item-Meta-Inconsistencies.patch | 16 ++++---- .../0122-Add-EntityZapEvent.patch | 10 ++--- ...8-Add-source-to-PlayerExpChangeEvent.patch | 8 ++-- .../0131-Add-ProjectileCollideEvent.patch | 14 +++---- ...rovide-E-TE-Chunk-count-stat-methods.patch | 6 +-- ...PI-for-Reason-Source-Triggering-play.patch | 38 +++++++++---------- .../0199-Add-ArmorStand-Item-Meta.patch | 12 +++--- ...ld.spawnParticle-API-and-add-Builder.patch | 10 ++--- ...Item-entities-with-World.spawnEntity.patch | 8 ++-- .../0240-Expand-Explosions-API.patch | 10 ++--- ...4-Implement-World.getEntity-UUID-API.patch | 8 ++-- .../0245-InventoryCloseEvent-Reason-API.patch | 20 +++++----- ...1-Vanished-players-don-t-have-rights.patch | 18 ++++----- ...ead-Entities-in-entityList-iteration.patch | 20 +++++----- ...ets-from-world-player-list-not-serve.patch | 12 +++--- ...loadChunk-int-int-false-load-unconve.patch | 6 +-- .../0300-Improve-death-events.patch | 24 ++++++------ ...-for-CanPlaceOn-and-CanDestroy-NBT-v.patch | 22 +++++------ .../0318-Add-sun-related-API.patch | 12 +++--- .../0375-Add-Heightmap-API.patch | 8 ++-- ...384-improve-CraftWorld-isChunkLoaded.patch | 6 +-- ...le-Keep-Spawn-Loaded-range-per-world.patch | 8 ++-- ...393-Fix-World-isChunkGenerated-calls.patch | 22 +++++------ ...09-Asynchronous-chunk-IO-and-loading.patch | 10 ++--- work/Bukkit | 2 +- work/CraftBukkit | 2 +- 30 files changed, 196 insertions(+), 210 deletions(-) diff --git a/Spigot-API-Patches/0051-Fix-upstream-javadoc-warnings-and-errors.patch b/Spigot-API-Patches/0051-Fix-upstream-javadoc-warnings-and-errors.patch index a25bd36528..27c23040df 100644 --- a/Spigot-API-Patches/0051-Fix-upstream-javadoc-warnings-and-errors.patch +++ b/Spigot-API-Patches/0051-Fix-upstream-javadoc-warnings-and-errors.patch @@ -1,4 +1,4 @@ -From bb553c5f1fecc0bde9c2adf69e47645a07389865 Mon Sep 17 00:00:00 2001 +From 6a79e6167bb1cb6969b6953abe148343e8fa0b1c Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Sat, 10 Jun 2017 16:59:40 -0500 Subject: [PATCH] Fix upstream javadoc warnings and errors @@ -6,10 +6,10 @@ Subject: [PATCH] Fix upstream javadoc warnings and errors Upstream still refuses to use Java 8 with the API so they are likely unaware these are even issues. diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index 58414e01..3cd4bff1 100644 +index 767cdf0aa..3858b0576 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -1746,6 +1746,7 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1786,6 +1786,7 @@ public interface World extends PluginMessageRecipient, Metadatable { * @param count the number of particles * @param data the data to use for the particle or null, * the type of this depends on {@link Particle#getDataType()} @@ -17,7 +17,7 @@ index 58414e01..3cd4bff1 100644 */ public void spawnParticle(@NotNull Particle particle, @NotNull Location location, int count, @Nullable T data); -@@ -1762,6 +1763,7 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1802,6 +1803,7 @@ public interface World extends PluginMessageRecipient, Metadatable { * @param count the number of particles * @param data the data to use for the particle or null, * the type of this depends on {@link Particle#getDataType()} @@ -25,7 +25,7 @@ index 58414e01..3cd4bff1 100644 */ public void spawnParticle(@NotNull Particle particle, double x, double y, double z, int count, @Nullable T data); -@@ -1812,6 +1814,7 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1852,6 +1854,7 @@ public interface World extends PluginMessageRecipient, Metadatable { * @param offsetZ the maximum random offset on the Z axis * @param data the data to use for the particle or null, * the type of this depends on {@link Particle#getDataType()} @@ -33,7 +33,7 @@ index 58414e01..3cd4bff1 100644 */ public void spawnParticle(@NotNull Particle particle, @NotNull Location location, int count, double offsetX, double offsetY, double offsetZ, @Nullable T data); -@@ -1832,6 +1835,7 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1872,6 +1875,7 @@ public interface World extends PluginMessageRecipient, Metadatable { * @param offsetZ the maximum random offset on the Z axis * @param data the data to use for the particle or null, * the type of this depends on {@link Particle#getDataType()} @@ -41,7 +41,7 @@ index 58414e01..3cd4bff1 100644 */ public void spawnParticle(@NotNull Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, @Nullable T data); -@@ -1888,6 +1892,7 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1928,6 +1932,7 @@ public interface World extends PluginMessageRecipient, Metadatable { * particle used (normally speed) * @param data the data to use for the particle or null, * the type of this depends on {@link Particle#getDataType()} @@ -49,7 +49,7 @@ index 58414e01..3cd4bff1 100644 */ public void spawnParticle(@NotNull Particle particle, @NotNull Location location, int count, double offsetX, double offsetY, double offsetZ, double extra, @Nullable T data); -@@ -1910,6 +1915,7 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1950,6 +1955,7 @@ public interface World extends PluginMessageRecipient, Metadatable { * particle used (normally speed) * @param data the data to use for the particle or null, * the type of this depends on {@link Particle#getDataType()} @@ -57,7 +57,7 @@ index 58414e01..3cd4bff1 100644 */ public void spawnParticle(@NotNull Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, @Nullable T data); -@@ -1933,6 +1939,7 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1973,6 +1979,7 @@ public interface World extends PluginMessageRecipient, Metadatable { * @param force whether to send the particle to players within an extended * range and encourage their client to render it regardless of * settings @@ -65,7 +65,7 @@ index 58414e01..3cd4bff1 100644 */ public void spawnParticle(@NotNull Particle particle, @NotNull Location location, int count, double offsetX, double offsetY, double offsetZ, double extra, @Nullable T data, boolean force); -@@ -1958,6 +1965,7 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1998,6 +2005,7 @@ public interface World extends PluginMessageRecipient, Metadatable { * @param force whether to send the particle to players within an extended * range and encourage their client to render it regardless of * settings @@ -74,7 +74,7 @@ index 58414e01..3cd4bff1 100644 public void spawnParticle(@NotNull Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, @Nullable T data, boolean force); diff --git a/src/main/java/org/bukkit/entity/AreaEffectCloud.java b/src/main/java/org/bukkit/entity/AreaEffectCloud.java -index c2096b53..bca9d365 100644 +index c2096b534..bca9d3659 100644 --- a/src/main/java/org/bukkit/entity/AreaEffectCloud.java +++ b/src/main/java/org/bukkit/entity/AreaEffectCloud.java @@ -142,6 +142,7 @@ public interface AreaEffectCloud extends Entity { @@ -86,7 +86,7 @@ index c2096b53..bca9d365 100644 void setParticle(@NotNull Particle particle, @Nullable T data); diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index f41545c5..576ad2c6 100644 +index f41545c52..576ad2c68 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java @@ -461,7 +461,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @@ -179,7 +179,7 @@ index f41545c5..576ad2c6 100644 public void spawnParticle(@NotNull Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, @Nullable T data); diff --git a/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java b/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java -index 1b2267f4..1a58734d 100644 +index 1b2267f4e..1a58734d9 100644 --- a/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java +++ b/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java @@ -78,7 +78,7 @@ public class PlayerMoveEvent extends PlayerEvent implements Cancellable { @@ -192,5 +192,5 @@ index 1b2267f4..1a58734d 100644 return to; } -- -2.22.0 +2.23.0 diff --git a/Spigot-API-Patches/0097-Expand-World.spawnParticle-API-and-add-Builder.patch b/Spigot-API-Patches/0097-Expand-World.spawnParticle-API-and-add-Builder.patch index e8442a60ba..7aa516791e 100644 --- a/Spigot-API-Patches/0097-Expand-World.spawnParticle-API-and-add-Builder.patch +++ b/Spigot-API-Patches/0097-Expand-World.spawnParticle-API-and-add-Builder.patch @@ -1,4 +1,4 @@ -From 23f4f165f9e35104affa80198efc5aaddcc1fc22 Mon Sep 17 00:00:00 2001 +From 01d4f9b7ba0c84a9fdfb0d5836cfe72149053842 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 29 Aug 2017 23:58:48 -0400 Subject: [PATCH] Expand World.spawnParticle API and add Builder @@ -10,7 +10,7 @@ This adds a new Builder API which is much friendlier to use. diff --git a/src/main/java/com/destroystokyo/paper/ParticleBuilder.java b/src/main/java/com/destroystokyo/paper/ParticleBuilder.java new file mode 100644 -index 00000000..06f1602f +index 000000000..06f1602f5 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/ParticleBuilder.java @@ -0,0 +1,478 @@ @@ -493,7 +493,7 @@ index 00000000..06f1602f + } +} diff --git a/src/main/java/org/bukkit/Particle.java b/src/main/java/org/bukkit/Particle.java -index 68cb7442..69aae30a 100644 +index 68cb74420..69aae30a3 100644 --- a/src/main/java/org/bukkit/Particle.java +++ b/src/main/java/org/bukkit/Particle.java @@ -92,6 +92,17 @@ public enum Particle { @@ -515,10 +515,10 @@ index 68cb7442..69aae30a 100644 * Options which can be applied to redstone dust particles - a particle * color and size. diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index 36ec897f..57cc72a1 100644 +index c0158a369..fee0f5211 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -2170,7 +2170,57 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -2210,7 +2210,57 @@ public interface World extends PluginMessageRecipient, Metadatable { * the type of this depends on {@link Particle#getDataType()} * @param Type */ @@ -578,5 +578,5 @@ index 36ec897f..57cc72a1 100644 /** * Spawns the particle (the number of times specified by count) -- -2.22.0 +2.23.0 diff --git a/Spigot-API-Patches/0112-Expand-Explosions-API.patch b/Spigot-API-Patches/0112-Expand-Explosions-API.patch index 4d4e9c1332..e711300660 100644 --- a/Spigot-API-Patches/0112-Expand-Explosions-API.patch +++ b/Spigot-API-Patches/0112-Expand-Explosions-API.patch @@ -1,4 +1,4 @@ -From 3fa86b529ef58e6c6640f2e5706ba66fbce7aa72 Mon Sep 17 00:00:00 2001 +From 3e08720f1ab03046c754262078e033268f5cef8c Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 19 Dec 2017 16:24:42 -0500 Subject: [PATCH] Expand Explosions API @@ -6,7 +6,7 @@ Subject: [PATCH] Expand Explosions API Add Entity as a Source capability, and add more API choices, and on Location. diff --git a/src/main/java/org/bukkit/Location.java b/src/main/java/org/bukkit/Location.java -index 5730d5f4..b226d7e4 100644 +index 5730d5f46..b226d7e4c 100644 --- a/src/main/java/org/bukkit/Location.java +++ b/src/main/java/org/bukkit/Location.java @@ -7,6 +7,7 @@ import java.util.HashMap; @@ -106,10 +106,10 @@ index 5730d5f4..b226d7e4 100644 * Returns a list of entities within a bounding box centered around a Location. * diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index 57cc72a1..8c767a0b 100644 +index fee0f5211..af5aba4e5 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -1290,6 +1290,102 @@ public interface World extends PluginMessageRecipient, Metadatable { +@@ -1305,6 +1305,88 @@ public interface World extends PluginMessageRecipient, Metadatable { */ public boolean createExplosion(@NotNull Location loc, float power, boolean setFire); @@ -193,25 +193,11 @@ index 57cc72a1..8c767a0b 100644 + public default boolean createExplosion(@NotNull Entity source, float power) { + return createExplosion(source, source.getLocation(), power, true, true); + } -+ -+ /** -+ * Creates explosion at given location with given power and optionally -+ * setting blocks on fire or breaking blocks. -+ * -+ * @param loc Location to blow up -+ * @param power The power of explosion, where 4F is TNT -+ * @param setFire Whether or not to set blocks on fire -+ * @param breakBlocks Whether or not to have blocks be destroyed -+ * @return false if explosion was canceled, otherwise true -+ */ -+ public default boolean createExplosion(@NotNull Location loc, float power, boolean setFire, boolean breakBlocks) { -+ return createExplosion(loc.getX(), loc.getY(), loc.getZ(), power, setFire, breakBlocks); -+ } + // Paper end + /** - * Gets the {@link Environment} type of this world - * + * Creates explosion at given coordinates with given power and optionally + * setting blocks on fire or breaking blocks. -- -2.22.0 +2.23.0 diff --git a/Spigot-API-Patches/0185-Name-the-specific-custom-world-gen-plugin-class-that.patch b/Spigot-API-Patches/0185-Name-the-specific-custom-world-gen-plugin-class-that.patch index fa3083726c..335e1afaee 100644 --- a/Spigot-API-Patches/0185-Name-the-specific-custom-world-gen-plugin-class-that.patch +++ b/Spigot-API-Patches/0185-Name-the-specific-custom-world-gen-plugin-class-that.patch @@ -1,4 +1,4 @@ -From 33d30a4d9fb9124f46d6bac21f5f8d6f7fbb2ff7 Mon Sep 17 00:00:00 2001 +From 2db66ce160d3196ba61e28518479a0a679dc0274 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Wed, 2 Oct 2019 21:24:28 -0500 Subject: [PATCH] Name the specific custom world gen plugin class that throws a @@ -6,10 +6,10 @@ Subject: [PATCH] Name the specific custom world gen plugin class that throws a diff --git a/src/main/java/org/bukkit/generator/ChunkGenerator.java b/src/main/java/org/bukkit/generator/ChunkGenerator.java -index 9a18a05b..ccac5710 100644 +index dd0123338..3fe6a22e0 100644 --- a/src/main/java/org/bukkit/generator/ChunkGenerator.java +++ b/src/main/java/org/bukkit/generator/ChunkGenerator.java -@@ -76,7 +76,10 @@ public abstract class ChunkGenerator { +@@ -84,7 +84,10 @@ public abstract class ChunkGenerator { */ @NotNull public ChunkData generateChunkData(@NotNull World world, @NotNull Random random, int x, int z, @NotNull BiomeGrid biome) { diff --git a/Spigot-Server-Patches/0064-Handle-Item-Meta-Inconsistencies.patch b/Spigot-Server-Patches/0064-Handle-Item-Meta-Inconsistencies.patch index 9fbf092f58..7c1fb3a4e1 100644 --- a/Spigot-Server-Patches/0064-Handle-Item-Meta-Inconsistencies.patch +++ b/Spigot-Server-Patches/0064-Handle-Item-Meta-Inconsistencies.patch @@ -1,4 +1,4 @@ -From d00d86703dd6469a144ab9ef3d7337a87ff2713a Mon Sep 17 00:00:00 2001 +From 9c94c4d666dd012a9143703a7e8c4f5f727fc684 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 28 May 2015 23:00:19 -0400 Subject: [PATCH] Handle Item Meta Inconsistencies @@ -18,7 +18,7 @@ For consistency, the old API methods now forward to use the ItemMeta API equivalents, and should deprecate the old API's. diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java -index 9ebfbff46..b1dfd64d1 100644 +index 9ebfbff46b..b1dfd64d15 100644 --- a/src/main/java/net/minecraft/server/ItemStack.java +++ b/src/main/java/net/minecraft/server/ItemStack.java @@ -7,6 +7,8 @@ import com.mojang.brigadier.StringReader; @@ -78,7 +78,7 @@ index 9ebfbff46..b1dfd64d1 100644 public boolean hasEnchantments() { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index b0f9fa0ec..9c9852f7a 100644 +index b0f9fa0ecd..9c9852f7a2 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -178,28 +178,11 @@ public final class CraftItemStack extends ItemStack { @@ -193,7 +193,7 @@ index b0f9fa0ec..9c9852f7a 100644 static Map getEnchantments(net.minecraft.server.ItemStack item) { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 9dabe313c..79ab6e167 100644 +index 33c988ead3..479a5686aa 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -6,6 +6,7 @@ import com.google.common.collect.ImmutableList; @@ -279,7 +279,7 @@ index 9dabe313c..79ab6e167 100644 for (Map.Entry entry : ench.entrySet()) { // Doctor older enchants String enchantKey = entry.getKey().toString(); -@@ -814,14 +817,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -815,14 +818,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public Map getEnchants() { @@ -296,7 +296,7 @@ index 9dabe313c..79ab6e167 100644 } if (ignoreRestrictions || level >= ench.getStartLevel() && level <= ench.getMaxLevel()) { -@@ -1202,7 +1205,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1203,7 +1206,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { clone.customModelData = this.customModelData; clone.blockData = this.blockData; if (this.enchantments != null) { @@ -305,7 +305,7 @@ index 9dabe313c..79ab6e167 100644 } if (this.hasAttributeModifiers()) { clone.attributeModifiers = LinkedHashMultimap.create(this.attributeModifiers); -@@ -1431,6 +1434,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1432,6 +1435,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } } @@ -330,5 +330,5 @@ index 9dabe313c..79ab6e167 100644 private final Spigot spigot = new Spigot() { -- -2.22.1 +2.23.0 diff --git a/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch b/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch index 424afefb94..9364a5bdf8 100644 --- a/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch +++ b/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch @@ -1,11 +1,11 @@ -From 336ebd0ca73ac288512ec519770bc0f371b811a7 Mon Sep 17 00:00:00 2001 +From cab0f672ad4486733d5c31352b443b59ad4572ab Mon Sep 17 00:00:00 2001 From: AlphaBlend Date: Sun, 16 Oct 2016 23:19:30 -0700 Subject: [PATCH] Add EntityZapEvent diff --git a/src/main/java/net/minecraft/server/EntityPig.java b/src/main/java/net/minecraft/server/EntityPig.java -index ee5bfd6f0..7136e274a 100644 +index ee5bfd6f0c..7136e274af 100644 --- a/src/main/java/net/minecraft/server/EntityPig.java +++ b/src/main/java/net/minecraft/server/EntityPig.java @@ -167,6 +167,12 @@ public class EntityPig extends EntityAnimal { @@ -22,7 +22,7 @@ index ee5bfd6f0..7136e274a 100644 if (CraftEventFactory.callPigZapEvent(this, entitylightning, entitypigzombie).isCancelled()) { return; diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java -index 89065deb4..dcd02930d 100644 +index 89065deb4f..dcd02930d9 100644 --- a/src/main/java/net/minecraft/server/EntityVillager.java +++ b/src/main/java/net/minecraft/server/EntityVillager.java @@ -693,6 +693,12 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation @@ -39,10 +39,10 @@ index 89065deb4..dcd02930d 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 4623201ee..aa0048b57 100644 +index 7936180b47..9af320a562 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -1018,6 +1018,14 @@ public class CraftEventFactory { +@@ -1040,6 +1040,14 @@ public class CraftEventFactory { return event; } diff --git a/Spigot-Server-Patches/0128-Add-source-to-PlayerExpChangeEvent.patch b/Spigot-Server-Patches/0128-Add-source-to-PlayerExpChangeEvent.patch index aae56d6e36..0c1bfa4b1b 100644 --- a/Spigot-Server-Patches/0128-Add-source-to-PlayerExpChangeEvent.patch +++ b/Spigot-Server-Patches/0128-Add-source-to-PlayerExpChangeEvent.patch @@ -1,11 +1,11 @@ -From 4de4e4b1b22b8739b092ced032b1c33414828f9a Mon Sep 17 00:00:00 2001 +From 144c47833db03fc0dc276696b61a9cecb506785f 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 332dc0e53..eec6de9ad 100644 +index 332dc0e53a..eec6de9ad7 100644 --- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java +++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java @@ -193,7 +193,7 @@ public class EntityExperienceOrb extends Entity { @@ -18,7 +18,7 @@ index 332dc0e53..eec6de9ad 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 aa0048b57..b3939c0f2 100644 +index 9af320a562..30492170b5 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -111,6 +111,7 @@ import org.bukkit.entity.ThrownPotion; @@ -29,7 +29,7 @@ index aa0048b57..b3939c0f2 100644 import org.bukkit.event.Cancellable; import org.bukkit.event.Event; import org.bukkit.event.Event.Result; -@@ -977,6 +978,17 @@ public class CraftEventFactory { +@@ -999,6 +1000,17 @@ public class CraftEventFactory { return event; } diff --git a/Spigot-Server-Patches/0131-Add-ProjectileCollideEvent.patch b/Spigot-Server-Patches/0131-Add-ProjectileCollideEvent.patch index e15d994c0c..a5582ef77f 100644 --- a/Spigot-Server-Patches/0131-Add-ProjectileCollideEvent.patch +++ b/Spigot-Server-Patches/0131-Add-ProjectileCollideEvent.patch @@ -1,11 +1,11 @@ -From 62cf55a377acc3950a4485dcd2a5389f3096cd6b Mon Sep 17 00:00:00 2001 +From 486d30c530a76c840f613c62d703fae42aa0ff95 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..a9575d310 100644 +index 2b829abac6..a9575d310b 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 { @@ -27,7 +27,7 @@ index 2b829abac..a9575d310 100644 this.a((MovingObjectPosition) object); this.impulse = true; diff --git a/src/main/java/net/minecraft/server/EntityFireball.java b/src/main/java/net/minecraft/server/EntityFireball.java -index 1a9fee8da..14c439493 100644 +index 1a9fee8da1..14c4394933 100644 --- a/src/main/java/net/minecraft/server/EntityFireball.java +++ b/src/main/java/net/minecraft/server/EntityFireball.java @@ -67,7 +67,16 @@ public abstract class EntityFireball extends Entity { @@ -49,7 +49,7 @@ index 1a9fee8da..14c439493 100644 // CraftBukkit start - Fire ProjectileHitEvent diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java -index 390f1a24d..758559d35 100644 +index 390f1a24d0..758559d35d 100644 --- a/src/main/java/net/minecraft/server/EntityFishingHook.java +++ b/src/main/java/net/minecraft/server/EntityFishingHook.java @@ -217,7 +217,16 @@ public class EntityFishingHook extends Entity { @@ -71,7 +71,7 @@ index 390f1a24d..758559d35 100644 if (movingobjectposition.getType() == MovingObjectPosition.EnumMovingObjectType.ENTITY) { this.hooked = ((MovingObjectPositionEntity) movingobjectposition).getEntity(); diff --git a/src/main/java/net/minecraft/server/EntityProjectile.java b/src/main/java/net/minecraft/server/EntityProjectile.java -index d1710259c..5f0cb4c33 100644 +index d1710259ce..5f0cb4c33d 100644 --- a/src/main/java/net/minecraft/server/EntityProjectile.java +++ b/src/main/java/net/minecraft/server/EntityProjectile.java @@ -102,7 +102,16 @@ public abstract class EntityProjectile 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 b3939c0f2..0202c7662 100644 +index 30492170b5..7f38d82a61 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -1122,6 +1122,16 @@ public class CraftEventFactory { +@@ -1144,6 +1144,16 @@ public class CraftEventFactory { return CraftItemStack.asNMSCopy(bitem); } diff --git a/Spigot-Server-Patches/0141-Provide-E-TE-Chunk-count-stat-methods.patch b/Spigot-Server-Patches/0141-Provide-E-TE-Chunk-count-stat-methods.patch index a7fa78902c..007ecf26ae 100644 --- a/Spigot-Server-Patches/0141-Provide-E-TE-Chunk-count-stat-methods.patch +++ b/Spigot-Server-Patches/0141-Provide-E-TE-Chunk-count-stat-methods.patch @@ -1,4 +1,4 @@ -From e611d31aee9dacc9acc8871e1a1df9d403f941aa Mon Sep 17 00:00:00 2001 +From 66248ba62555ea5329f7a91875e29baa69650ba9 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 7 Jan 2017 15:24:46 -0500 Subject: [PATCH] Provide E/TE/Chunk count stat methods @@ -7,10 +7,10 @@ Provides counts without the ineffeciency of using .getEntities().size() which creates copy of the collections. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index a5abc0717..75a3a8a88 100644 +index 253177d1b6..63ef42d860 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -273,6 +273,48 @@ public class CraftWorld implements World { +@@ -274,6 +274,48 @@ public class CraftWorld implements World { private int waterAnimalSpawn = -1; private int ambientSpawn = -1; 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 75c8991760..f915bdf367 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 49715ed5eb6e4374ec3c60a9e86f439b3253ccbc Mon Sep 17 00:00:00 2001 +From 81a7559230ad173c9c710bfbc2e21200b6218cc1 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 @@ -8,7 +8,7 @@ Adds lots of information about why this orb exists. Replaces isFromBottle() with logic that persists entity reloads too. diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java -index 1426bd01a..880fc5270 100644 +index 1426bd01ad..880fc52703 100644 --- a/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java @@ -511,13 +511,13 @@ public class Block implements IMaterial { @@ -28,7 +28,7 @@ index 1426bd01a..880fc5270 100644 } diff --git a/src/main/java/net/minecraft/server/ContainerGrindstone.java b/src/main/java/net/minecraft/server/ContainerGrindstone.java -index 2d2cd09ad..ed88e208d 100644 +index 2d2cd09ad1..ed88e208d0 100644 --- a/src/main/java/net/minecraft/server/ContainerGrindstone.java +++ b/src/main/java/net/minecraft/server/ContainerGrindstone.java @@ -81,7 +81,7 @@ public class ContainerGrindstone extends Container { @@ -41,7 +41,7 @@ index 2d2cd09ad..ed88e208d 100644 world.triggerEffect(1042, blockposition, 0); diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java -index cf857b88d..5fae347db 100644 +index cf857b88de..5fae347db2 100644 --- a/src/main/java/net/minecraft/server/EntityEnderDragon.java +++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java @@ -607,7 +607,7 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster { @@ -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 eec6de9ad..35f03947d 100644 +index eec6de9ad7..35f03947d6 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 { @@ -134,7 +134,7 @@ index eec6de9ad..35f03947d 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java -index 758559d35..2a351701b 100644 +index 758559d35d..2a351701b4 100644 --- a/src/main/java/net/minecraft/server/EntityFishingHook.java +++ b/src/main/java/net/minecraft/server/EntityFishingHook.java @@ -404,7 +404,7 @@ public class EntityFishingHook extends Entity { @@ -147,7 +147,7 @@ index 758559d35..2a351701b 100644 // CraftBukkit end if (itemstack1.getItem().a(TagsItem.FISHES)) { diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 5fa937aea..6ba5e9840 100644 +index 5fa937aeae..6ba5e98400 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -385,7 +385,8 @@ public abstract class EntityLiving extends Entity { @@ -161,7 +161,7 @@ index 5fa937aea..6ba5e9840 100644 this.expToDrop = 0; // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/EntityThrownExpBottle.java b/src/main/java/net/minecraft/server/EntityThrownExpBottle.java -index 4ac5cce06..05970c564 100644 +index 4ac5cce062..05970c5644 100644 --- a/src/main/java/net/minecraft/server/EntityThrownExpBottle.java +++ b/src/main/java/net/minecraft/server/EntityThrownExpBottle.java @@ -43,7 +43,7 @@ public class EntityThrownExpBottle extends EntityProjectileThrowable { @@ -174,7 +174,7 @@ index 4ac5cce06..05970c564 100644 this.die(); diff --git a/src/main/java/net/minecraft/server/EntityTurtle.java b/src/main/java/net/minecraft/server/EntityTurtle.java -index 25c7214de..594cc70de 100644 +index 25c7214ded..594cc70def 100644 --- a/src/main/java/net/minecraft/server/EntityTurtle.java +++ b/src/main/java/net/minecraft/server/EntityTurtle.java @@ -508,7 +508,7 @@ public class EntityTurtle extends EntityAnimal { @@ -187,7 +187,7 @@ index 25c7214de..594cc70de 100644 } diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java -index dcd02930d..8a5127c5d 100644 +index dcd02930d9..8a5127c5d1 100644 --- a/src/main/java/net/minecraft/server/EntityVillager.java +++ b/src/main/java/net/minecraft/server/EntityVillager.java @@ -504,7 +504,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation @@ -200,7 +200,7 @@ index dcd02930d..8a5127c5d 100644 } diff --git a/src/main/java/net/minecraft/server/EntityVillagerTrader.java b/src/main/java/net/minecraft/server/EntityVillagerTrader.java -index 1753c67aa..a24e7127d 100644 +index 1753c67aa9..a24e7127d7 100644 --- a/src/main/java/net/minecraft/server/EntityVillagerTrader.java +++ b/src/main/java/net/minecraft/server/EntityVillagerTrader.java @@ -147,7 +147,7 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { @@ -213,7 +213,7 @@ index 1753c67aa..a24e7127d 100644 } diff --git a/src/main/java/net/minecraft/server/PathfinderGoalBreed.java b/src/main/java/net/minecraft/server/PathfinderGoalBreed.java -index 363a98bec..0cc34400b 100644 +index 363a98bece..0cc34400be 100644 --- a/src/main/java/net/minecraft/server/PathfinderGoalBreed.java +++ b/src/main/java/net/minecraft/server/PathfinderGoalBreed.java @@ -117,7 +117,7 @@ public class PathfinderGoalBreed extends PathfinderGoal { @@ -226,7 +226,7 @@ index 363a98bec..0cc34400b 100644 // CraftBukkit end } diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java -index d4df76611..bce3844dd 100644 +index d4df766111..bce3844dd5 100644 --- a/src/main/java/net/minecraft/server/PlayerInteractManager.java +++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java @@ -364,7 +364,7 @@ public class PlayerInteractManager { @@ -239,7 +239,7 @@ index d4df76611..bce3844dd 100644 return true; diff --git a/src/main/java/net/minecraft/server/SlotFurnaceResult.java b/src/main/java/net/minecraft/server/SlotFurnaceResult.java -index d2698e847..edc4a5c34 100644 +index d2698e847c..edc4a5c34e 100644 --- a/src/main/java/net/minecraft/server/SlotFurnaceResult.java +++ b/src/main/java/net/minecraft/server/SlotFurnaceResult.java @@ -2,7 +2,7 @@ package net.minecraft.server; @@ -252,7 +252,7 @@ index d2698e847..edc4a5c34 100644 public SlotFurnaceResult(EntityHuman entityhuman, IInventory iinventory, int i, int j, int k) { diff --git a/src/main/java/net/minecraft/server/TileEntityFurnace.java b/src/main/java/net/minecraft/server/TileEntityFurnace.java -index 0cb2e6d87..2bbd3663a 100644 +index 0cb2e6d874..2bbd3663a7 100644 --- a/src/main/java/net/minecraft/server/TileEntityFurnace.java +++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java @@ -554,7 +554,7 @@ public abstract class TileEntityFurnace extends TileEntityContainer implements I @@ -265,10 +265,10 @@ index 0cb2e6d87..2bbd3663a 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 6addb271c..4180ec7ae 100644 +index 63ef42d860..0e4f4cda0b 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1714,7 +1714,7 @@ public class CraftWorld implements World { +@@ -1733,7 +1733,7 @@ public class CraftWorld implements World { } else if (TNTPrimed.class.isAssignableFrom(clazz)) { entity = new EntityTNTPrimed(world, x, y, z, null); } else if (ExperienceOrb.class.isAssignableFrom(clazz)) { @@ -278,7 +278,7 @@ index 6addb271c..4180ec7ae 100644 entity = new EntityLightning(world, x, y, z, false); } else if (Firework.class.isAssignableFrom(clazz)) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java -index 1b512cc45..fbad04567 100644 +index 1b512cc45c..fbad045675 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java @@ -20,6 +20,18 @@ public class CraftExperienceOrb extends CraftEntity implements ExperienceOrb { @@ -301,5 +301,5 @@ index 1b512cc45..fbad04567 100644 public EntityExperienceOrb getHandle() { return (EntityExperienceOrb) entity; -- -2.22.1 +2.23.0 diff --git a/Spigot-Server-Patches/0199-Add-ArmorStand-Item-Meta.patch b/Spigot-Server-Patches/0199-Add-ArmorStand-Item-Meta.patch index 852c9df151..f178ac16a2 100644 --- a/Spigot-Server-Patches/0199-Add-ArmorStand-Item-Meta.patch +++ b/Spigot-Server-Patches/0199-Add-ArmorStand-Item-Meta.patch @@ -1,4 +1,4 @@ -From 30fb8da83a3ed927d1654c99de8a26013719a7c6 Mon Sep 17 00:00:00 2001 +From 8566c6907149379db72cac436dc270dc320039e0 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Sat, 27 Jan 2018 17:04:14 -0500 Subject: [PATCH] Add ArmorStand Item Meta @@ -13,7 +13,7 @@ starting point for future additions in this area. Fixes GH-559 diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java -index f70052284..3723facca 100644 +index f700522840..3723faccac 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java @@ -8,13 +8,39 @@ import org.bukkit.Material; @@ -267,10 +267,10 @@ index f70052284..3723facca 100644 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 79ab6e167..ac6ff834c 100644 +index 479a5686aa..6a6b80b5bd 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -1427,7 +1427,15 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1428,7 +1428,15 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { CraftMetaTropicalFishBucket.VARIANT.NBT, CraftMetaCrossbow.CHARGED.NBT, CraftMetaCrossbow.CHARGED_PROJECTILES.NBT, @@ -288,7 +288,7 @@ index 79ab6e167..ac6ff834c 100644 } return HANDLED_TAGS; diff --git a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java -index b07a3051c..919f2ffa9 100644 +index b07a3051ca..919f2ffa91 100644 --- a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java +++ b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java @@ -6,6 +6,7 @@ import java.util.ArrayList; @@ -308,5 +308,5 @@ index b07a3051c..919f2ffa9 100644 return cleanStack; } -- -2.22.1 +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 44ee3f3ca2..b7c4324b85 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 d48b6279df2a21e61a47ef09ee4b66fd73b071f5 Mon Sep 17 00:00:00 2001 +From a983334e9e52ea7951edb8e9f06d328f70422b55 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 594401c39..cbabe7743 100644 +index 594401c39e..cbabe7743d 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 { @@ -43,10 +43,10 @@ index 594401c39..cbabe7743 100644 if (this.a(entityplayer, force, d0, d1, d2, packetplayoutworldparticles)) { // CraftBukkit diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 4180ec7ae..3c7b54802 100644 +index 0e4f4cda0b..3726f240ce 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -2180,11 +2180,17 @@ public class CraftWorld implements World { +@@ -2199,11 +2199,17 @@ public class CraftWorld implements World { @Override public void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, T data, boolean force) { @@ -66,5 +66,5 @@ index 4180ec7ae..3c7b54802 100644 x, y, z, // Position count, // Count -- -2.22.1 +2.23.0 diff --git a/Spigot-Server-Patches/0226-Allow-spawning-Item-entities-with-World.spawnEntity.patch b/Spigot-Server-Patches/0226-Allow-spawning-Item-entities-with-World.spawnEntity.patch index 6a7b8b9a0d..d99ef586dd 100644 --- a/Spigot-Server-Patches/0226-Allow-spawning-Item-entities-with-World.spawnEntity.patch +++ b/Spigot-Server-Patches/0226-Allow-spawning-Item-entities-with-World.spawnEntity.patch @@ -1,4 +1,4 @@ -From 8e7d16b57c518d616a82aba17dd8102319886ede Mon Sep 17 00:00:00 2001 +From 415ac6f8e3ed38ff117a4acb97fcb0425a8244a0 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 4 Jun 2018 20:39:20 -0400 Subject: [PATCH] Allow spawning Item entities with World.spawnEntity @@ -8,10 +8,10 @@ This API has more capabilities than .dropItem with the Consumer function Item can be set inside of the Consumer pre spawn function. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 3c7b54802..ebc47aec7 100644 +index 3726f240ce..515f94aa5d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1408,6 +1408,10 @@ public class CraftWorld implements World { +@@ -1427,6 +1427,10 @@ public class CraftWorld implements World { if (Boat.class.isAssignableFrom(clazz)) { entity = new EntityBoat(world, x, y, z); entity.setPositionRotation(x, y, z, yaw, pitch); @@ -23,5 +23,5 @@ index 3c7b54802..ebc47aec7 100644 entity = new EntityFallingBlock(world, x, y, z, world.getType(new BlockPosition(x, y, z))); } else if (Projectile.class.isAssignableFrom(clazz)) { -- -2.22.1 +2.23.0 diff --git a/Spigot-Server-Patches/0240-Expand-Explosions-API.patch b/Spigot-Server-Patches/0240-Expand-Explosions-API.patch index 3d2f3fe2e0..cd20622e1a 100644 --- a/Spigot-Server-Patches/0240-Expand-Explosions-API.patch +++ b/Spigot-Server-Patches/0240-Expand-Explosions-API.patch @@ -1,4 +1,4 @@ -From f17bffdb081dd11064ea387f1c03793cd9387d29 Mon Sep 17 00:00:00 2001 +From 5e701e3ec843d8589968c7e24eb5708c1cb89a97 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 20 Jun 2018 23:17:24 -0400 Subject: [PATCH] Expand Explosions API @@ -6,12 +6,12 @@ Subject: [PATCH] Expand Explosions API Add Entity as a Source capability, and add more API choices, and on Location. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 00ce2fecf..50a49f59b 100644 +index 515f94aa5d..5db2a4cca2 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -853,6 +853,11 @@ public class CraftWorld implements World { - public boolean createExplosion(double x, double y, double z, float power, boolean setFire, boolean breakBlocks) { - return !world.createExplosion(null, x, y, z, power, setFire, breakBlocks ? Explosion.Effect.BREAK : Explosion.Effect.NONE).wasCanceled; +@@ -859,6 +859,11 @@ public class CraftWorld implements World { + public boolean createExplosion(double x, double y, double z, float power, boolean setFire, boolean breakBlocks, Entity source) { + return !world.createExplosion(source == null ? null : ((CraftEntity) source).getHandle(), x, y, z, power, setFire, breakBlocks ? Explosion.Effect.BREAK : Explosion.Effect.NONE).wasCanceled; } + // Paper start + public boolean createExplosion(Entity source, Location loc, float power, boolean setFire, boolean breakBlocks) { diff --git a/Spigot-Server-Patches/0244-Implement-World.getEntity-UUID-API.patch b/Spigot-Server-Patches/0244-Implement-World.getEntity-UUID-API.patch index 5bca84b99d..93f9361f96 100644 --- a/Spigot-Server-Patches/0244-Implement-World.getEntity-UUID-API.patch +++ b/Spigot-Server-Patches/0244-Implement-World.getEntity-UUID-API.patch @@ -1,14 +1,14 @@ -From ef5ce2cb4f6018432b53a8520088165d6c002570 Mon Sep 17 00:00:00 2001 +From 045ec7846dc1a311822fa3e963365fc2f41d070e Mon Sep 17 00:00:00 2001 From: Brokkonaut Date: Tue, 3 Jul 2018 16:08:14 +0200 Subject: [PATCH] Implement World.getEntity(UUID) API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 21baee319..2d1c2049b 100644 +index 5db2a4cca2..67137d69c1 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1210,6 +1210,15 @@ public class CraftWorld implements World { +@@ -1229,6 +1229,15 @@ public class CraftWorld implements World { return list; } @@ -25,5 +25,5 @@ index 21baee319..2d1c2049b 100644 public void save() { org.spigotmc.AsyncCatcher.catchOp("world save"); // Spigot -- -2.22.1 +2.23.0 diff --git a/Spigot-Server-Patches/0245-InventoryCloseEvent-Reason-API.patch b/Spigot-Server-Patches/0245-InventoryCloseEvent-Reason-API.patch index 747f85a7df..8e4e873d7d 100644 --- a/Spigot-Server-Patches/0245-InventoryCloseEvent-Reason-API.patch +++ b/Spigot-Server-Patches/0245-InventoryCloseEvent-Reason-API.patch @@ -1,4 +1,4 @@ -From 248e1e4123112a83ab0016d5cd39bde1bce46469 Mon Sep 17 00:00:00 2001 +From ab5b9cd90656ebcaabff0c78318838e7b93854ad 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 e1bd10579..89915b359 100644 +index e1bd10579e..89915b3599 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 e1bd10579..89915b359 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 742489d39..7e37164c0 100644 +index 742489d397..7e37164c0e 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 { @@ -88,7 +88,7 @@ index 742489d39..7e37164c0 100644 this.m(); } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 89beac63a..b9793d4cc 100644 +index 89beac63aa..b9793d4cc6 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -2025,7 +2025,7 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -101,7 +101,7 @@ index 89beac63a..b9793d4cc 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 a167843bf..9e5cd22d7 100644 +index a167843bfb..9e5cd22d7d 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -402,7 +402,7 @@ public abstract class PlayerList { @@ -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 cbabe7743..b67d1b36e 100644 +index cbabe7743d..b67d1b36ea 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 { @@ -136,7 +136,7 @@ index cbabe7743..b67d1b36e 100644 } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index 77efc43a5..81cf5f47a 100644 +index 77efc43a5d..81cf5f47a7 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java @@ -619,8 +619,13 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { @@ -155,7 +155,7 @@ index 77efc43a5..81cf5f47a 100644 @Override public boolean isBlocking() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index e610c8aae..ce35e6bbc 100644 +index e610c8aaed..ce35e6bbc2 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -781,7 +781,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -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 87de825d5..f6e17986b 100644 +index 8bd1dedcca..ade1d42f7e 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -1266,8 +1266,19 @@ public class CraftEventFactory { +@@ -1288,8 +1288,19 @@ public class CraftEventFactory { return event; } 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 ab8aca5ad7..50f722c15e 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,11 +1,11 @@ -From 18d0bdedeb33895bbc7a2162f2010607894e8313 Mon Sep 17 00:00:00 2001 +From f877fd71860241598d881907e582804237b726cc 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 924187413..9776a2992 100644 +index 9241874139..9776a29923 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -97,7 +97,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -18,7 +18,7 @@ index 924187413..9776a2992 100644 protected int j; private Entity vehicle; diff --git a/src/main/java/net/minecraft/server/IBlockData.java b/src/main/java/net/minecraft/server/IBlockData.java -index 3328a8479..367b02800 100644 +index 3328a84792..367b02800a 100644 --- a/src/main/java/net/minecraft/server/IBlockData.java +++ b/src/main/java/net/minecraft/server/IBlockData.java @@ -146,6 +146,7 @@ public class IBlockData extends BlockDataAbstract implements @@ -30,7 +30,7 @@ index 3328a8479..367b02800 100644 return this.getBlock().b(this, iblockaccess, blockposition, voxelshapecollision); } diff --git a/src/main/java/net/minecraft/server/ItemBlock.java b/src/main/java/net/minecraft/server/ItemBlock.java -index c34c635a8..0c8b11bbe 100644 +index c34c635a85..0c8b11bbec 100644 --- a/src/main/java/net/minecraft/server/ItemBlock.java +++ b/src/main/java/net/minecraft/server/ItemBlock.java @@ -136,7 +136,8 @@ public class ItemBlock extends Item { @@ -44,7 +44,7 @@ index c34c635a8..0c8b11bbe 100644 BlockCanBuildEvent event = new BlockCanBuildEvent(CraftBlock.at(blockactioncontext.getWorld(), blockactioncontext.getClickPosition()), player, CraftBlockData.fromData(iblockdata), defaultReturn); diff --git a/src/main/java/net/minecraft/server/VoxelShape.java b/src/main/java/net/minecraft/server/VoxelShape.java -index 3801b3f21..092f02cc2 100644 +index 3801b3f21d..092f02cc2f 100644 --- a/src/main/java/net/minecraft/server/VoxelShape.java +++ b/src/main/java/net/minecraft/server/VoxelShape.java @@ -46,6 +46,7 @@ public abstract class VoxelShape { @@ -56,7 +56,7 @@ index 3801b3f21..092f02cc2 100644 return (VoxelShape) (this.isEmpty() ? VoxelShapes.a() : new VoxelShapeArray(this.a, new DoubleListOffset(this.a(EnumDirection.EnumAxis.X), d0), new DoubleListOffset(this.a(EnumDirection.EnumAxis.Y), d1), new DoubleListOffset(this.a(EnumDirection.EnumAxis.Z), d2))); } diff --git a/src/main/java/net/minecraft/server/VoxelShapes.java b/src/main/java/net/minecraft/server/VoxelShapes.java -index b8659f703..c8bd4b703 100644 +index b8659f703c..c8bd4b7034 100644 --- a/src/main/java/net/minecraft/server/VoxelShapes.java +++ b/src/main/java/net/minecraft/server/VoxelShapes.java @@ -33,6 +33,7 @@ public final class VoxelShapes { @@ -76,7 +76,7 @@ index b8659f703..c8bd4b703 100644 if (operatorboolean.apply(false, false)) { throw new IllegalArgumentException(); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index cacc18ca4..c60279da8 100644 +index cacc18ca41..c60279da8f 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -164,6 +164,48 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -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 9f39cfa45..f4db17759 100644 +index ade1d42f7e..ac4369dcef 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -1144,6 +1144,14 @@ public class CraftEventFactory { +@@ -1166,6 +1166,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); 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 ae35ab55d5..9a8d52959e 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 e91de6db766758109c53194621c3b0933fd85bf2 Mon Sep 17 00:00:00 2001 +From b5727c52fd546ba87d048eae7f600dc44ac55e43 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 @@ -11,7 +11,7 @@ This will ensure that dead entities are skipped from iteration since they shouldn't of been in the list in the first place. diff --git a/src/main/java/com/destroystokyo/paper/PaperCommand.java b/src/main/java/com/destroystokyo/paper/PaperCommand.java -index eecf27370..d704fc79c 100644 +index eecf27370b..d704fc79c0 100644 --- a/src/main/java/com/destroystokyo/paper/PaperCommand.java +++ b/src/main/java/com/destroystokyo/paper/PaperCommand.java @@ -179,6 +179,7 @@ public class PaperCommand extends Command { @@ -23,7 +23,7 @@ index eecf27370..d704fc79c 100644 MutablePair> info = list.computeIfAbsent(key, k -> MutablePair.of(0, Maps.newHashMap())); ChunkCoordIntPair chunk = new ChunkCoordIntPair(e.getChunkX(), e.getChunkZ()); diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index a74e389d1..09e010e67 100644 +index a74e389d14..09e010e670 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -678,6 +678,7 @@ public class Chunk implements IChunkAccess { @@ -51,7 +51,7 @@ index a74e389d1..09e010e67 100644 if (oclass.isInstance(t0) && t0.getBoundingBox().c(axisalignedbb) && (predicate == null || predicate.test(t0))) { // Spigot - instance check list.add(t0); diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 701090c11..7d579c119 100644 +index 701090c11e..7d579c119b 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -126,6 +126,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -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 281cde519..a0465c85f 100644 +index 281cde519a..a0465c85fe 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 { @@ -92,10 +92,10 @@ index 281cde519..a0465c85f 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index d57aafb6a..1adc71021 100644 +index 67137d69c1..01b869a06f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -946,6 +946,7 @@ public class CraftWorld implements World { +@@ -965,6 +965,7 @@ public class CraftWorld implements World { for (Object o : world.entitiesById.values()) { if (o instanceof net.minecraft.server.Entity) { net.minecraft.server.Entity mcEnt = (net.minecraft.server.Entity) o; @@ -103,7 +103,7 @@ index d57aafb6a..1adc71021 100644 Entity bukkitEntity = mcEnt.getBukkitEntity(); // Assuming that bukkitEntity isn't null -@@ -965,6 +966,7 @@ public class CraftWorld implements World { +@@ -984,6 +985,7 @@ public class CraftWorld implements World { for (Object o : world.entitiesById.values()) { if (o instanceof net.minecraft.server.Entity) { net.minecraft.server.Entity mcEnt = (net.minecraft.server.Entity) o; @@ -111,7 +111,7 @@ index d57aafb6a..1adc71021 100644 Entity bukkitEntity = mcEnt.getBukkitEntity(); // Assuming that bukkitEntity isn't null -@@ -991,6 +993,7 @@ public class CraftWorld implements World { +@@ -1010,6 +1012,7 @@ public class CraftWorld implements World { for (Object entity: world.entitiesById.values()) { if (entity instanceof net.minecraft.server.Entity) { @@ -119,7 +119,7 @@ index d57aafb6a..1adc71021 100644 Entity bukkitEntity = ((net.minecraft.server.Entity) entity).getBukkitEntity(); if (bukkitEntity == null) { -@@ -1014,6 +1017,7 @@ public class CraftWorld implements World { +@@ -1033,6 +1036,7 @@ public class CraftWorld implements World { for (Object entity: world.entitiesById.values()) { if (entity instanceof net.minecraft.server.Entity) { 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 24ae1aecf9..6811f300b6 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,11 +1,11 @@ -From 86f8e6890dfd2a556738602dcdccd2ecfb66eb23 Mon Sep 17 00:00:00 2001 +From 4f1ba6f2c5e47de7c00bb6d89463f478fb86962d 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 diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 9e5cd22d7..049d702cb 100644 +index 9e5cd22d7d..049d702cb9 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -922,8 +922,25 @@ public abstract class PlayerList { @@ -46,7 +46,7 @@ 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 a0465c85f..55d469e37 100644 +index a0465c85fe..55d469e372 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -1217,7 +1217,7 @@ public class WorldServer extends World { @@ -68,10 +68,10 @@ index a0465c85f..55d469e37 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 501040d02..bf19f0530 100644 +index 01b869a06f..f57023529d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -2015,7 +2015,7 @@ public class CraftWorld implements World { +@@ -2034,7 +2034,7 @@ public class CraftWorld implements World { double z = loc.getZ(); PacketPlayOutCustomSoundEffect packet = new PacketPlayOutCustomSoundEffect(new MinecraftKey(sound), SoundCategory.valueOf(category.name()), new Vec3D(x, y, z), volume, pitch); @@ -81,5 +81,5 @@ index 501040d02..bf19f0530 100644 private static Map> gamerules; -- -2.22.1 +2.23.0 diff --git a/Spigot-Server-Patches/0297-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch b/Spigot-Server-Patches/0297-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch index 09fc97307e..d5a37fc382 100644 --- a/Spigot-Server-Patches/0297-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch +++ b/Spigot-Server-Patches/0297-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch @@ -1,4 +1,4 @@ -From c3d01d0c1a1da22dca1cc88fa0cc6457e4227e93 Mon Sep 17 00:00:00 2001 +From 07d2c1580badd47e46be14fd4d9f1cad5704b3fd Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Sun, 2 Sep 2018 19:34:33 -0700 Subject: [PATCH] Make CraftWorld#loadChunk(int, int, false) load unconverted @@ -6,10 +6,10 @@ Subject: [PATCH] Make CraftWorld#loadChunk(int, int, false) load unconverted diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index d74ec389a..c0dca07b6 100644 +index f57023529d..dc0a07c7cd 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -498,7 +498,7 @@ public class CraftWorld implements World { +@@ -499,7 +499,7 @@ public class CraftWorld implements World { @Override public boolean loadChunk(int x, int z, boolean generate) { org.spigotmc.AsyncCatcher.catchOp("chunk load"); // Spigot diff --git a/Spigot-Server-Patches/0300-Improve-death-events.patch b/Spigot-Server-Patches/0300-Improve-death-events.patch index 1207205b57..2d56625555 100644 --- a/Spigot-Server-Patches/0300-Improve-death-events.patch +++ b/Spigot-Server-Patches/0300-Improve-death-events.patch @@ -1,4 +1,4 @@ -From 808e7819999eaa9241cb08623263349328435165 Mon Sep 17 00:00:00 2001 +From a6322d454a796a41b41c58f049dcbcda5ace0fcf 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 84c3ea9d0..f563a7b63 100644 +index 84c3ea9d00..f563a7b630 100644 --- a/src/main/java/net/minecraft/server/CombatTracker.java +++ b/src/main/java/net/minecraft/server/CombatTracker.java @@ -175,6 +175,7 @@ public class CombatTracker { @@ -27,7 +27,7 @@ index 84c3ea9d0..f563a7b63 100644 int i = this.f ? 300 : 100; diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 7811beb80..f9b097fd6 100644 +index 7811beb807..f9b097fd6f 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -1517,6 +1517,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -47,10 +47,10 @@ index 7811beb80..f9b097fd6 100644 protected void i(double d0, double d1, double d2) { diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java -index aa9e69bce..75ac07537 100644 +index 85fc48371d..02595cfccd 100644 --- a/src/main/java/net/minecraft/server/EntityArmorStand.java +++ b/src/main/java/net/minecraft/server/EntityArmorStand.java -@@ -688,7 +688,8 @@ public class EntityArmorStand extends EntityLiving { +@@ -690,7 +690,8 @@ public class EntityArmorStand extends EntityLiving { @Override public void killEntity() { @@ -61,7 +61,7 @@ index aa9e69bce..75ac07537 100644 } diff --git a/src/main/java/net/minecraft/server/EntityFox.java b/src/main/java/net/minecraft/server/EntityFox.java -index e22e99df3..ca38ccf76 100644 +index e22e99df38..ca38ccf768 100644 --- a/src/main/java/net/minecraft/server/EntityFox.java +++ b/src/main/java/net/minecraft/server/EntityFox.java @@ -597,15 +597,25 @@ public class EntityFox extends EntityAnimal { @@ -94,7 +94,7 @@ index e22e99df3..ca38ccf76 100644 public static boolean a(EntityFox entityfox, EntityLiving entityliving) { diff --git a/src/main/java/net/minecraft/server/EntityHorseChestedAbstract.java b/src/main/java/net/minecraft/server/EntityHorseChestedAbstract.java -index 2483cfd28..2a988366c 100644 +index 2483cfd28a..2a988366cd 100644 --- a/src/main/java/net/minecraft/server/EntityHorseChestedAbstract.java +++ b/src/main/java/net/minecraft/server/EntityHorseChestedAbstract.java @@ -55,11 +55,19 @@ public abstract class EntityHorseChestedAbstract extends EntityHorseAbstract { @@ -119,7 +119,7 @@ index 2483cfd28..2a988366c 100644 public void b(NBTTagCompound nbttagcompound) { super.b(nbttagcompound); diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index b09712ca9..1e53af2cc 100644 +index b09712ca91..1e53af2cce 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -85,7 +85,7 @@ public abstract class EntityLiving extends Entity { @@ -273,7 +273,7 @@ index b09712ca9..1e53af2cc 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 7e37164c0..1b35e6c47 100644 +index 7e37164c0e..1b35e6c478 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 { @@ -324,7 +324,7 @@ index 7e37164c0..1b35e6c47 100644 } } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftSound.java b/src/main/java/org/bukkit/craftbukkit/CraftSound.java -index 73cb64e09..9f317ff2e 100644 +index 73cb64e09d..9f317ff2e8 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftSound.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftSound.java @@ -806,6 +806,22 @@ public enum CraftSound { @@ -351,7 +351,7 @@ index 73cb64e09..9f317ff2e 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 2c99a1e9d..e9458dc65 100644 +index 2c99a1e9df..e9458dc65f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1722,7 +1722,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -372,7 +372,7 @@ index 2c99a1e9d..e9458dc65 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 e22389457..6eee86dc8 100644 +index 84c292168e..dc15703fd4 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -745,9 +745,16 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/0304-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch b/Spigot-Server-Patches/0304-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch index 3f62955390..def9fe6a24 100644 --- a/Spigot-Server-Patches/0304-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch +++ b/Spigot-Server-Patches/0304-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch @@ -1,11 +1,11 @@ -From 724171bb537ec24550e0e1623515e1c1f083a78a Mon Sep 17 00:00:00 2001 +From 34de30524211d83dc0fd34cab29214ee64d1e9a5 Mon Sep 17 00:00:00 2001 From: Mark Vainomaa Date: Wed, 12 Sep 2018 18:53:55 +0300 Subject: [PATCH] Implement an API for CanPlaceOn and CanDestroy NBT values diff --git a/src/main/java/net/minecraft/server/ArgumentBlock.java b/src/main/java/net/minecraft/server/ArgumentBlock.java -index 005ebec26..97d85f845 100644 +index 005ebec266..97d85f8451 100644 --- a/src/main/java/net/minecraft/server/ArgumentBlock.java +++ b/src/main/java/net/minecraft/server/ArgumentBlock.java @@ -43,7 +43,7 @@ public class ArgumentBlock { @@ -32,7 +32,7 @@ index 005ebec26..97d85f845 100644 this.s = this::l; if (this.i.canRead() && this.i.peek() == '#') { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index ac6ff834c..e96960d27 100644 +index 6a6b80b5bd..dbb4e5258c 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -87,6 +87,12 @@ import org.bukkit.persistence.PersistentDataContainer; @@ -199,7 +199,7 @@ index ac6ff834c..e96960d27 100644 NBTTagList createStringList(List list) { if (list == null || list.isEmpty()) { return null; -@@ -756,7 +864,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -757,7 +865,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Overridden boolean isEmpty() { @@ -208,7 +208,7 @@ index ac6ff834c..e96960d27 100644 } @Override -@@ -1156,7 +1264,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1157,7 +1265,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { && (this.hideFlag == that.hideFlag) && (this.isUnbreakable() == that.isUnbreakable()) && (this.hasDamage() ? that.hasDamage() && this.damage == that.damage : !that.hasDamage()) @@ -221,7 +221,7 @@ index ac6ff834c..e96960d27 100644 } /** -@@ -1191,6 +1303,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1192,6 +1304,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { hash = 61 * hash + (hasDamage() ? this.damage : 0); hash = 61 * hash + (hasAttributeModifiers() ? this.attributeModifiers.hashCode() : 0); hash = 61 * hash + version; @@ -232,7 +232,7 @@ index ac6ff834c..e96960d27 100644 return hash; } -@@ -1214,6 +1330,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1215,6 +1331,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { clone.unbreakable = this.unbreakable; clone.damage = this.damage; clone.version = this.version; @@ -247,7 +247,7 @@ index ac6ff834c..e96960d27 100644 return clone; } catch (CloneNotSupportedException e) { throw new Error(e); -@@ -1271,6 +1395,24 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1272,6 +1396,24 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { builder.put(DAMAGE.BUKKIT, damage); } @@ -272,7 +272,7 @@ index ac6ff834c..e96960d27 100644 final Map internalTags = new HashMap(unhandledTags); serializeInternal(internalTags); if (!internalTags.isEmpty()) { -@@ -1434,7 +1576,9 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1435,7 +1577,9 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { CraftMetaArmorStand.NO_BASE_PLATE.NBT, CraftMetaArmorStand.SHOW_ARMS.NBT, CraftMetaArmorStand.SMALL.NBT, @@ -283,7 +283,7 @@ index ac6ff834c..e96960d27 100644 // Paper end )); } -@@ -1481,4 +1625,147 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1482,4 +1626,147 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return spigot; } // Spigot end @@ -432,5 +432,5 @@ index ac6ff834c..e96960d27 100644 + // Paper end } -- -2.22.1 +2.23.0 diff --git a/Spigot-Server-Patches/0318-Add-sun-related-API.patch b/Spigot-Server-Patches/0318-Add-sun-related-API.patch index e531477f3b..e3a11834dd 100644 --- a/Spigot-Server-Patches/0318-Add-sun-related-API.patch +++ b/Spigot-Server-Patches/0318-Add-sun-related-API.patch @@ -1,11 +1,11 @@ -From 72e4d2214ccb12a300545872fbeef8dfb54e54b8 Mon Sep 17 00:00:00 2001 +From 0c04ae960b9a3046050c46705f321599882c1353 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sun, 7 Oct 2018 00:54:21 -0500 Subject: [PATCH] Add sun related API diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java -index a14d490ad..09112a8b0 100644 +index a14d490ade..09112a8b0e 100644 --- a/src/main/java/net/minecraft/server/EntityInsentient.java +++ b/src/main/java/net/minecraft/server/EntityInsentient.java @@ -1327,6 +1327,7 @@ public abstract class EntityInsentient extends EntityLiving { @@ -17,7 +17,7 @@ index a14d490ad..09112a8b0 100644 if (this.world.J() && !this.world.isClientSide) { float f = this.aF(); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index c60279da8..1c3285f5c 100644 +index c60279da8f..1c3285f5c0 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -705,6 +705,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -29,10 +29,10 @@ index c60279da8..1c3285f5c 100644 return this.u < 4; } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index c0dca07b6..0b891cd0f 100644 +index dc0a07c7cd..78a2c47c5a 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -839,6 +839,13 @@ public class CraftWorld implements World { +@@ -840,6 +840,13 @@ public class CraftWorld implements World { } } @@ -47,7 +47,7 @@ index c0dca07b6..0b891cd0f 100644 public boolean createExplosion(double x, double y, double z, float power) { return createExplosion(x, y, z, power, false, true); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java -index 53c2d154e..56c233872 100644 +index 53c2d154ed..56c233872b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java @@ -68,4 +68,11 @@ public abstract class CraftMob extends CraftLivingEntity implements Mob { diff --git a/Spigot-Server-Patches/0375-Add-Heightmap-API.patch b/Spigot-Server-Patches/0375-Add-Heightmap-API.patch index c74e00f8c1..4ba08ee37a 100644 --- a/Spigot-Server-Patches/0375-Add-Heightmap-API.patch +++ b/Spigot-Server-Patches/0375-Add-Heightmap-API.patch @@ -1,11 +1,11 @@ -From f06f54d764843bcf4bbf02061fbc9cea4a0bbe63 Mon Sep 17 00:00:00 2001 +From 8cf24e97fb891543763665534d39638d6b324a0d Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Tue, 1 Jan 2019 02:22:01 -0800 Subject: [PATCH] Add Heightmap API diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index dd2a9c6e5..e3b4e30e6 100644 +index dd2a9c6e59..e3b4e30e65 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -663,8 +663,8 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -20,10 +20,10 @@ index dd2a9c6e5..e3b4e30e6 100644 if (i >= -30000000 && j >= -30000000 && i < 30000000 && j < 30000000) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 89e86c2cd..ab357095d 100644 +index 78a2c47c5a..95fdc3bf64 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -338,6 +338,29 @@ public class CraftWorld implements World { +@@ -339,6 +339,29 @@ public class CraftWorld implements World { return world.getHighestBlockYAt(HeightMap.Type.MOTION_BLOCKING, new BlockPosition(x, 0, z)).getY(); } diff --git a/Spigot-Server-Patches/0384-improve-CraftWorld-isChunkLoaded.patch b/Spigot-Server-Patches/0384-improve-CraftWorld-isChunkLoaded.patch index 20645ad09e..86a9539f7a 100644 --- a/Spigot-Server-Patches/0384-improve-CraftWorld-isChunkLoaded.patch +++ b/Spigot-Server-Patches/0384-improve-CraftWorld-isChunkLoaded.patch @@ -1,4 +1,4 @@ -From baa3dd45ad57cf4059302cee17998fa773a5bb22 Mon Sep 17 00:00:00 2001 +From f84670030019a4d9d6287a8dbdcc63e25d7f50f0 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Tue, 21 May 2019 02:34:04 +0100 Subject: [PATCH] improve CraftWorld#isChunkLoaded @@ -9,10 +9,10 @@ waiting for the execution queue to get to our request; We can just query the chunk status and get a response now, vs having to wait diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index ab357095d..38939ce81 100644 +index 95fdc3bf64..f2a68ec360 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -402,14 +402,13 @@ public class CraftWorld implements World { +@@ -403,14 +403,13 @@ public class CraftWorld implements World { @Override public boolean isChunkLoaded(int x, int z) { diff --git a/Spigot-Server-Patches/0385-Configurable-Keep-Spawn-Loaded-range-per-world.patch b/Spigot-Server-Patches/0385-Configurable-Keep-Spawn-Loaded-range-per-world.patch index efeb226fa1..b67a4cfb02 100644 --- a/Spigot-Server-Patches/0385-Configurable-Keep-Spawn-Loaded-range-per-world.patch +++ b/Spigot-Server-Patches/0385-Configurable-Keep-Spawn-Loaded-range-per-world.patch @@ -1,4 +1,4 @@ -From e33d861d00db79f27822b8fdb5dff1184282f8f6 Mon Sep 17 00:00:00 2001 +From b733af73fae8acf616390197f9f28140335e569d 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 @@ -207,10 +207,10 @@ index 0f8f54d8e9..8a3124fed4 100644 public LongSet getForceLoadedChunks() { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 38939ce81e..0c31c349ab 100644 +index f2a68ec360..e42bd26380 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1853,15 +1853,21 @@ public class CraftWorld implements World { +@@ -1872,15 +1872,21 @@ public class CraftWorld implements World { @Override public void setKeepSpawnInMemory(boolean keepLoaded) { @@ -237,5 +237,5 @@ index 38939ce81e..0c31c349ab 100644 @Override -- -2.22.1 +2.23.0 diff --git a/Spigot-Server-Patches/0393-Fix-World-isChunkGenerated-calls.patch b/Spigot-Server-Patches/0393-Fix-World-isChunkGenerated-calls.patch index f3b7930fa8..1bffc40074 100644 --- a/Spigot-Server-Patches/0393-Fix-World-isChunkGenerated-calls.patch +++ b/Spigot-Server-Patches/0393-Fix-World-isChunkGenerated-calls.patch @@ -1,4 +1,4 @@ -From 169cff9d2e106cf7ab54e52714a6731053f2cbfa Mon Sep 17 00:00:00 2001 +From e75dd6f49cefb63386cd758f1ac5d5b94086a093 Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Sat, 15 Jun 2019 08:54:33 -0700 Subject: [PATCH] Fix World#isChunkGenerated calls @@ -8,7 +8,7 @@ This patch also adds a chunk status cache on region files (note that its only purpose is to cache the status on DISK) diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index 535c2258b..e0bd03b3b 100644 +index 8689e0f9f0..56761afdf4 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -28,7 +28,7 @@ public class ChunkProviderServer extends IChunkProvider { @@ -43,7 +43,7 @@ index 535c2258b..e0bd03b3b 100644 @Nullable diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index e778c2e85..73f93e494 100644 +index e778c2e857..73f93e4948 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java @@ -410,6 +410,17 @@ public class ChunkRegionLoader { @@ -65,7 +65,7 @@ index e778c2e85..73f93e494 100644 if (nbttagcompound != null) { ChunkStatus chunkstatus = ChunkStatus.a(nbttagcompound.getCompound("Level").getString("Status")); diff --git a/src/main/java/net/minecraft/server/ChunkStatus.java b/src/main/java/net/minecraft/server/ChunkStatus.java -index dd1822d6f..e324989b4 100644 +index dd1822d6ff..e324989b46 100644 --- a/src/main/java/net/minecraft/server/ChunkStatus.java +++ b/src/main/java/net/minecraft/server/ChunkStatus.java @@ -176,6 +176,7 @@ public class ChunkStatus { @@ -95,7 +95,7 @@ index dd1822d6f..e324989b4 100644 return (ChunkStatus) IRegistry.CHUNK_STATUS.get(MinecraftKey.a(s)); } diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java -index 14a176d61..98590e233 100644 +index 14a176d61d..98590e233a 100644 --- a/src/main/java/net/minecraft/server/PlayerChunk.java +++ b/src/main/java/net/minecraft/server/PlayerChunk.java @@ -70,6 +70,19 @@ public class PlayerChunk { @@ -119,7 +119,7 @@ index 14a176d61..98590e233 100644 public CompletableFuture> getStatusFutureUnchecked(ChunkStatus chunkstatus) { diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index 2be6fa0f0..bdadbd436 100644 +index 2be6fa0f07..bdadbd436e 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java @@ -891,11 +891,61 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { @@ -187,7 +187,7 @@ index 2be6fa0f0..bdadbd436 100644 boolean isOutsideOfRange(ChunkCoordIntPair chunkcoordintpair) { // Spigot start diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index ccc3d6c7a..b487e8060 100644 +index ccc3d6c7ad..b487e80602 100644 --- a/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java @@ -31,6 +31,30 @@ public class RegionFile implements AutoCloseable { @@ -246,7 +246,7 @@ index ccc3d6c7a..b487e8060 100644 } diff --git a/src/main/java/net/minecraft/server/RegionFileCache.java b/src/main/java/net/minecraft/server/RegionFileCache.java -index 6f34d8aea..d2b328945 100644 +index 6f34d8aea0..d2b3289450 100644 --- a/src/main/java/net/minecraft/server/RegionFileCache.java +++ b/src/main/java/net/minecraft/server/RegionFileCache.java @@ -47,6 +47,12 @@ public abstract class RegionFileCache implements AutoCloseable { @@ -279,7 +279,7 @@ index 6f34d8aea..d2b328945 100644 printOversizedLog("ChunkTooLarge even after reduction. Trying in overzealous mode.", regionfile.file, chunkX, chunkZ); // Eek, major fail. We have retry logic, so reduce threshholds and fall back diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 0c31c349a..4a035f0f0 100644 +index e42bd26380..2227de3bf1 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -18,6 +18,7 @@ import java.util.Objects; @@ -290,7 +290,7 @@ index 0c31c349a..4a035f0f0 100644 import java.util.function.Predicate; import java.util.stream.Collectors; import it.unimi.dsi.fastutil.longs.Long2ObjectMap; -@@ -407,8 +408,22 @@ public class CraftWorld implements World { +@@ -408,8 +409,22 @@ public class CraftWorld implements World { @Override public boolean isChunkGenerated(int x, int z) { @@ -314,7 +314,7 @@ index 0c31c349a..4a035f0f0 100644 } catch (IOException ex) { throw new RuntimeException(ex); } -@@ -520,20 +535,49 @@ public class CraftWorld implements World { +@@ -521,20 +536,49 @@ public class CraftWorld implements World { @Override public boolean loadChunk(int x, int z, boolean generate) { org.spigotmc.AsyncCatcher.catchOp("chunk load"); // Spigot diff --git a/Spigot-Server-Patches/0409-Asynchronous-chunk-IO-and-loading.patch b/Spigot-Server-Patches/0409-Asynchronous-chunk-IO-and-loading.patch index 63ec0d377a..9147ea9b95 100644 --- a/Spigot-Server-Patches/0409-Asynchronous-chunk-IO-and-loading.patch +++ b/Spigot-Server-Patches/0409-Asynchronous-chunk-IO-and-loading.patch @@ -1,4 +1,4 @@ -From 25eb4ce4491f0ab4ed97614dc5de32690bd815fb Mon Sep 17 00:00:00 2001 +From ae661062cff3c42c981166ace8b1e63eaa43595d Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Sat, 13 Jul 2019 09:23:10 -0700 Subject: [PATCH] Asynchronous chunk IO and loading @@ -3801,10 +3801,10 @@ index f1ad7be754..0c1f4e6e1e 100644 public void doTick(BooleanSupplier booleansupplier) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 4a035f0f0b..3d5aa7e8d9 100644 +index 2227de3bf1..243722b672 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -553,22 +553,23 @@ public class CraftWorld implements World { +@@ -554,22 +554,23 @@ public class CraftWorld implements World { return true; } @@ -3836,7 +3836,7 @@ index 4a035f0f0b..3d5aa7e8d9 100644 // fall through to load // we do this so we do not re-read the chunk data on disk -@@ -2325,6 +2326,25 @@ public class CraftWorld implements World { +@@ -2344,6 +2345,25 @@ public class CraftWorld implements World { return persistentRaid.a.values().stream().map(CraftRaid::new).collect(Collectors.toList()); } @@ -3891,5 +3891,5 @@ index a1d93200e6..6ca0ebfdee 100644 log.log( Level.SEVERE, "------------------------------" ); // -- -2.22.1 +2.23.0 diff --git a/work/Bukkit b/work/Bukkit index a439ce02dc..0399d9d6b6 160000 --- a/work/Bukkit +++ b/work/Bukkit @@ -1 +1 @@ -Subproject commit a439ce02dc649961ce23012301141a139e9d373d +Subproject commit 0399d9d6b6d894c9527cc0fbb4feadfbbb1af8b7 diff --git a/work/CraftBukkit b/work/CraftBukkit index a3fdef8c32..7deb3728e3 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit a3fdef8c3242a62668948d9384acb6760800b6a9 +Subproject commit 7deb3728e3697c4123ce2addce4bc27bf9e0a652