From 329fb0f5cee58d4f9e971538a80416842627ed4b Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Sun, 5 Jul 2020 02:45:06 -0500 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appears to apply and compile correctly Paper Changes: 97f920bf Fix suggest-player-names-when-null-tab-completions - Fixes #3803 166e52b5 [CI-SKIP] [Auto] Rebuild Patches 5a17ba07 Implements #3761 - Add entity liquid API (#3762) e0cae289 Fix anvils bug - Fixes #3802 4793f774 Move bedrock config under unsupported, add comments to these configs adf1de58 Allow delegation to vanilla chunk gen 40ace3f7 Allow delegation to vanilla chunk gen 178a6e50 Add PrepareResultEvent (#3776) 57697cd5 Report proxy onlinde mode to bstats as online (#3093) 6579ce05 Fix #3701 - Loottables erasing on viewing 030da7b8 [CI-SKIP] [Auto] Rebuild Patches d43def79 Incorrect spawn reason for monsters from spawner - Fixes #3708 (#3764) 97b59df9 [Auto] Updated Upstream (CraftBukkit) 0543f051 [CI-SKIP] [Auto] Rebuild Patches f3cd94c4 Remove streams from classes related to villager gossip (#3748) b49104db add EntityTargetLivingEntityEvent for new 1.16 mobs (#3782) 4faf9703 Fix /plugins list not alphabetical to players (#3790) 7e03e44e [CI-SKIP] [Auto] Rebuild Patches 8bb00272 Update itemstack legacy name and lore (#3741) 6c87b6a0 [Auto] Updated Upstream (CraftBukkit) --- Paper | 2 +- current-paper | 2 +- patches/api/0001-Tuinity-API-Changes.patch | 6 +- patches/api/0003-Purpur-config-files.patch | 4 +- patches/api/0010-Bring-back-server-name.patch | 8 +- patches/api/0014-Lagging-threshold.patch | 8 +- ...lugins-list-for-player-commandsender.patch | 33 ---- .../server/0001-Tuinity-Server-Changes.patch | 178 +++++++++--------- patches/server/0003-Purpur-config-files.patch | 25 ++- patches/server/0009-AFK-API.patch | 24 +-- .../server/0010-Bring-back-server-name.patch | 6 +- patches/server/0014-Lagging-threshold.patch | 8 +- patches/server/0050-Cows-eat-mushrooms.patch | 10 +- .../server/0059-Controllable-Minecarts.patch | 22 +-- ...ug-stick-should-not-update-neighbors.patch | 4 +- ...0066-Fix-the-dead-lagging-the-server.patch | 6 +- .../0086-Add-obfhelpers-for-plugin-use.patch | 16 +- ...g-mends-most-damages-equipment-first.patch | 10 +- ...-should-not-bypass-cramming-gamerule.patch | 24 +-- ...0090-Add-5-second-tps-average-in-tps.patch | 8 +- .../0091-Implement-elytra-settings.patch | 14 +- .../server/0092-Add-item-entity-options.patch | 8 +- ...ed-to-crystals-and-crystals-shoot-ph.patch | 14 +- .../0096-Convert-legacy-item-text.patch | 77 -------- ...096-Customizable-EnderDragon-Health.patch} | 4 +- ...tural-spawns-per-biome-configurable.patch} | 6 +- ...> 0098-Add-phantom-spawning-options.patch} | 14 +- ...099-Implement-bed-explosion-options.patch} | 0 ...nt-respawn-anchor-explosion-options.patch} | 0 ...PR-Fix-loottables-erasing-on-viewing.patch | 32 ---- ...tity-lookups-paper.yml-setting-not-.patch} | 0 31 files changed, 203 insertions(+), 370 deletions(-) delete mode 100644 patches/api/0029-Correctly-sort-plugins-list-for-player-commandsender.patch delete mode 100644 patches/server/0096-Convert-legacy-item-text.patch rename patches/server/{0097-Customizable-EnderDragon-Health.patch => 0096-Customizable-EnderDragon-Health.patch} (96%) rename patches/server/{0098-Make-natural-spawns-per-biome-configurable.patch => 0097-Make-natural-spawns-per-biome-configurable.patch} (99%) rename patches/server/{0099-Add-phantom-spawning-options.patch => 0098-Add-phantom-spawning-options.patch} (98%) rename patches/server/{0101-Implement-bed-explosion-options.patch => 0099-Implement-bed-explosion-options.patch} (100%) rename patches/server/{0102-Implement-respawn-anchor-explosion-options.patch => 0100-Implement-respawn-anchor-explosion-options.patch} (100%) delete mode 100644 patches/server/0100-PaperPR-Fix-loottables-erasing-on-viewing.patch rename patches/server/{0103-Fix-armorstand-entity-lookups-paper.yml-setting-not-.patch => 0101-Fix-armorstand-entity-lookups-paper.yml-setting-not-.patch} (100%) diff --git a/Paper b/Paper index ad52d2118..97f920bf1 160000 --- a/Paper +++ b/Paper @@ -1 +1 @@ -Subproject commit ad52d2118ccdecd12879a7af3e26e1dfb2685998 +Subproject commit 97f920bf19bb87c89cdeac8fa53a69a96e178b24 diff --git a/current-paper b/current-paper index 37c1261b1..78cd3352f 100644 --- a/current-paper +++ b/current-paper @@ -1 +1 @@ -1.16.1--62fe4ab7a34e268daedde3318a61e55b6627686c +1.16.1--7a5917b56dcff970f65177685061a963e10198a2 diff --git a/patches/api/0001-Tuinity-API-Changes.patch b/patches/api/0001-Tuinity-API-Changes.patch index d4ceb9c35..75c923186 100644 --- a/patches/api/0001-Tuinity-API-Changes.patch +++ b/patches/api/0001-Tuinity-API-Changes.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Tuinity API Changes diff --git a/pom.xml b/pom.xml -index dfc7c2f3..12a5e929 100644 +index 06aa32269..d04593fee 100644 --- a/pom.xml +++ b/pom.xml @@ -3,18 +3,18 @@ @@ -34,10 +34,10 @@ index dfc7c2f3..12a5e929 100644 diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index b464cc1a..959e4e7e 100644 +index 0653e0ffe..65a40c4a9 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1424,6 +1424,14 @@ public interface Server extends PluginMessageRecipient { +@@ -1438,6 +1438,14 @@ public interface Server extends PluginMessageRecipient { } // Paper end diff --git a/patches/api/0003-Purpur-config-files.patch b/patches/api/0003-Purpur-config-files.patch index 62fb63c2e..d7bcb313b 100644 --- a/patches/api/0003-Purpur-config-files.patch +++ b/patches/api/0003-Purpur-config-files.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Purpur config files diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 959e4e7e..a5262420 100644 +index 65a40c4a9..9d18c3d3b 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1432,6 +1432,18 @@ public interface Server extends PluginMessageRecipient { +@@ -1446,6 +1446,18 @@ public interface Server extends PluginMessageRecipient { } // Tuinity end - add config to timings report diff --git a/patches/api/0010-Bring-back-server-name.patch b/patches/api/0010-Bring-back-server-name.patch index 4f3e722ab..01b10f68d 100644 --- a/patches/api/0010-Bring-back-server-name.patch +++ b/patches/api/0010-Bring-back-server-name.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Bring back server name diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 329e2dd1..4f6f0193 100644 +index 4e92ce182..40c8de479 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1749,4 +1749,15 @@ public final class Bukkit { +@@ -1765,4 +1765,15 @@ public final class Bukkit { public static Server.Spigot spigot() { return server.spigot(); } @@ -25,10 +25,10 @@ index 329e2dd1..4f6f0193 100644 + // Purpur end } diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index a5262420..e3808a79 100644 +index 9d18c3d3b..e21ce51d5 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1544,4 +1544,13 @@ public interface Server extends PluginMessageRecipient { +@@ -1558,4 +1558,13 @@ public interface Server extends PluginMessageRecipient { @NotNull com.destroystokyo.paper.entity.ai.MobGoals getMobGoals(); // Paper end diff --git a/patches/api/0014-Lagging-threshold.patch b/patches/api/0014-Lagging-threshold.patch index 50bca2c42..611dc2995 100644 --- a/patches/api/0014-Lagging-threshold.patch +++ b/patches/api/0014-Lagging-threshold.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Lagging threshold diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 4f6f0193..4c410f6e 100644 +index 40c8de479..be99ddd5e 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1759,5 +1759,14 @@ public final class Bukkit { +@@ -1775,5 +1775,14 @@ public final class Bukkit { public static String getServerName() { return server.getServerName(); } @@ -24,10 +24,10 @@ index 4f6f0193..4c410f6e 100644 // Purpur end } diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index e3808a79..d8c81767 100644 +index e21ce51d5..cde8376e2 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1552,5 +1552,12 @@ public interface Server extends PluginMessageRecipient { +@@ -1566,5 +1566,12 @@ public interface Server extends PluginMessageRecipient { */ @NotNull String getServerName(); diff --git a/patches/api/0029-Correctly-sort-plugins-list-for-player-commandsender.patch b/patches/api/0029-Correctly-sort-plugins-list-for-player-commandsender.patch deleted file mode 100644 index 1c11fcbdd..000000000 --- a/patches/api/0029-Correctly-sort-plugins-list-for-player-commandsender.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: William Blake Galbreath -Date: Sat, 4 Jul 2020 13:49:56 -0500 -Subject: [PATCH] Correctly sort /plugins list for player commandsenders - - -diff --git a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java -index 665211cb1..fb58bdc81 100644 ---- a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java -+++ b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java -@@ -90,11 +90,19 @@ public class PluginsCommand extends BukkitCommand { - // Spigot start - @NotNull - private BaseComponent[] getPluginListSpigot() { -- Plugin[] plugins = Bukkit.getPluginManager().getPlugins(); -- ComponentBuilder pluginList = new ComponentBuilder("Plugins (" + plugins.length + "): "); -+ // Purpur start -+ TreeMap plugins = new TreeMap<>(String.CASE_INSENSITIVE_ORDER); -+ for (Plugin plugin : Bukkit.getPluginManager().getPlugins()) { -+ plugins.put(plugin.getDescription().getName(), plugin); -+ } -+ ComponentBuilder pluginList = new ComponentBuilder("Plugins (" + plugins.size() + "): "); -+ // Purpur end - - int index = 0; -- for (Plugin plugin : plugins) { -+ // Purpur start -+ for (Map.Entry entry : plugins.entrySet()) { -+ Plugin plugin = entry.getValue(); -+ // Purpur end - if (index++ > 0) { - pluginList.append(", ", FormatRetention.NONE).color(net.md_5.bungee.api.ChatColor.WHITE); - } diff --git a/patches/server/0001-Tuinity-Server-Changes.patch b/patches/server/0001-Tuinity-Server-Changes.patch index b25892816..efa1d1660 100644 --- a/patches/server/0001-Tuinity-Server-Changes.patch +++ b/patches/server/0001-Tuinity-Server-Changes.patch @@ -218,7 +218,7 @@ Happens when breaking a waterlogged chest. Fix is to just not validate the TE while the chest is being removed. diff --git a/pom.xml b/pom.xml -index ef8ee637a..6fd596817 100644 +index ef8ee637a8..6fd5968178 100644 --- a/pom.xml +++ b/pom.xml @@ -1,11 +1,11 @@ @@ -278,7 +278,7 @@ index ef8ee637a..6fd596817 100644 diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java -index dd0722397..2966c5731 100644 +index dd07223978..2966c57317 100644 --- a/src/main/java/co/aikar/timings/MinecraftTimings.java +++ b/src/main/java/co/aikar/timings/MinecraftTimings.java @@ -43,6 +43,8 @@ public final class MinecraftTimings { @@ -291,7 +291,7 @@ index dd0722397..2966c5731 100644 private MinecraftTimings() {} diff --git a/src/main/java/co/aikar/timings/TimingsExport.java b/src/main/java/co/aikar/timings/TimingsExport.java -index e33e889c2..5dfa06588 100644 +index e33e889c29..5dfa065883 100644 --- a/src/main/java/co/aikar/timings/TimingsExport.java +++ b/src/main/java/co/aikar/timings/TimingsExport.java @@ -229,7 +229,8 @@ public class TimingsExport extends Thread { @@ -305,7 +305,7 @@ index e33e889c2..5dfa06588 100644 new TimingsExport(listeners, parent, history).start(); diff --git a/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java b/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java -index 49a38c660..255bbd6e4 100644 +index 49a38c6608..255bbd6e48 100644 --- a/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java +++ b/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java @@ -24,8 +24,8 @@ public class PaperVersionFetcher implements VersionFetcher { @@ -336,7 +336,7 @@ index 49a38c660..255bbd6e4 100644 switch (distance) { case -1: diff --git a/src/main/java/com/destroystokyo/paper/server/ticklist/PaperTickList.java b/src/main/java/com/destroystokyo/paper/server/ticklist/PaperTickList.java -index 0692fe33b..4263eb917 100644 +index 0692fe33bb..4263eb9172 100644 --- a/src/main/java/com/destroystokyo/paper/server/ticklist/PaperTickList.java +++ b/src/main/java/com/destroystokyo/paper/server/ticklist/PaperTickList.java @@ -188,6 +188,7 @@ public final class PaperTickList extends TickListServer { // extend to avo @@ -413,7 +413,7 @@ index 0692fe33b..4263eb917 100644 diff --git a/src/main/java/com/tuinity/tuinity/chunk/SingleThreadChunkRegionManager.java b/src/main/java/com/tuinity/tuinity/chunk/SingleThreadChunkRegionManager.java new file mode 100644 -index 000000000..97c4100c5 +index 0000000000..97c4100c5d --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/chunk/SingleThreadChunkRegionManager.java @@ -0,0 +1,159 @@ @@ -579,7 +579,7 @@ index 000000000..97c4100c5 \ No newline at end of file diff --git a/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java new file mode 100644 -index 000000000..1ae1fd750 +index 0000000000..1ae1fd7505 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/config/TuinityConfig.java @@ -0,0 +1,277 @@ @@ -863,7 +863,7 @@ index 000000000..1ae1fd750 \ No newline at end of file diff --git a/src/main/java/com/tuinity/tuinity/util/CachedLists.java b/src/main/java/com/tuinity/tuinity/util/CachedLists.java new file mode 100644 -index 000000000..a54f516ba +index 0000000000..a54f516ba7 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/util/CachedLists.java @@ -0,0 +1,53 @@ @@ -922,7 +922,7 @@ index 000000000..a54f516ba +} diff --git a/src/main/java/com/tuinity/tuinity/util/TickThread.java b/src/main/java/com/tuinity/tuinity/util/TickThread.java new file mode 100644 -index 000000000..08ed24325 +index 0000000000..08ed243259 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/util/TickThread.java @@ -0,0 +1,41 @@ @@ -970,7 +970,7 @@ index 000000000..08ed24325 \ No newline at end of file diff --git a/src/main/java/com/tuinity/tuinity/util/maplist/IteratorSafeOrderedReferenceSet.java b/src/main/java/com/tuinity/tuinity/util/maplist/IteratorSafeOrderedReferenceSet.java new file mode 100644 -index 000000000..e12d09645 +index 0000000000..e12d096456 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/util/maplist/IteratorSafeOrderedReferenceSet.java @@ -0,0 +1,265 @@ @@ -1241,7 +1241,7 @@ index 000000000..e12d09645 +} diff --git a/src/main/java/com/tuinity/tuinity/voxel/AABBVoxelShape.java b/src/main/java/com/tuinity/tuinity/voxel/AABBVoxelShape.java new file mode 100644 -index 000000000..76593df29 +index 0000000000..76593df295 --- /dev/null +++ b/src/main/java/com/tuinity/tuinity/voxel/AABBVoxelShape.java @@ -0,0 +1,246 @@ @@ -1492,7 +1492,7 @@ index 000000000..76593df29 + } +} diff --git a/src/main/java/net/minecraft/server/AxisAlignedBB.java b/src/main/java/net/minecraft/server/AxisAlignedBB.java -index ed9b2f9ad..d54bf7140 100644 +index ed9b2f9adf..d54bf71409 100644 --- a/src/main/java/net/minecraft/server/AxisAlignedBB.java +++ b/src/main/java/net/minecraft/server/AxisAlignedBB.java @@ -13,6 +13,119 @@ public class AxisAlignedBB { @@ -1640,7 +1640,7 @@ index ed9b2f9ad..d54bf7140 100644 return d0 >= this.minX && d0 < this.maxX && d1 >= this.minY && d1 < this.maxY && d2 >= this.minZ && d2 < this.maxZ; } diff --git a/src/main/java/net/minecraft/server/BiomeBase.java b/src/main/java/net/minecraft/server/BiomeBase.java -index db198811d..52ebdfcc0 100644 +index db198811dd..52ebdfcc03 100644 --- a/src/main/java/net/minecraft/server/BiomeBase.java +++ b/src/main/java/net/minecraft/server/BiomeBase.java @@ -92,6 +92,18 @@ public class BiomeBase { @@ -1663,7 +1663,7 @@ index db198811d..52ebdfcc0 100644 if (biomebase_a.a != null && biomebase_a.b != null && biomebase_a.c != null && biomebase_a.d != null && biomebase_a.e != null && biomebase_a.f != null && biomebase_a.g != null && biomebase_a.j != null) { this.m = biomebase_a.a; diff --git a/src/main/java/net/minecraft/server/BlockBase.java b/src/main/java/net/minecraft/server/BlockBase.java -index ff770a3b0..c4ad88b7e 100644 +index ff770a3b0e..c4ad88b7e0 100644 --- a/src/main/java/net/minecraft/server/BlockBase.java +++ b/src/main/java/net/minecraft/server/BlockBase.java @@ -371,6 +371,7 @@ public abstract class BlockBase { @@ -1675,7 +1675,7 @@ index ff770a3b0..c4ad88b7e 100644 return this.a == null || this.a.c; } diff --git a/src/main/java/net/minecraft/server/BlockChest.java b/src/main/java/net/minecraft/server/BlockChest.java -index 44b9bfcdc..dba774018 100644 +index 44b9bfcdc7..dba774018c 100644 --- a/src/main/java/net/minecraft/server/BlockChest.java +++ b/src/main/java/net/minecraft/server/BlockChest.java @@ -10,7 +10,7 @@ import javax.annotation.Nullable; @@ -1697,7 +1697,7 @@ index 44b9bfcdc..dba774018 100644 if (tileentity instanceof IInventory) { InventoryUtils.dropInventory(world, blockposition, (IInventory) tileentity); diff --git a/src/main/java/net/minecraft/server/BlockPiston.java b/src/main/java/net/minecraft/server/BlockPiston.java -index c3133814f..4f10ca5ad 100644 +index c3133814f1..4f10ca5ada 100644 --- a/src/main/java/net/minecraft/server/BlockPiston.java +++ b/src/main/java/net/minecraft/server/BlockPiston.java @@ -270,7 +270,10 @@ public class BlockPiston extends BlockDirectional { @@ -1754,7 +1754,7 @@ index c3133814f..4f10ca5ad 100644 aiblockdata[j++] = iblockdata1; } diff --git a/src/main/java/net/minecraft/server/BlockPistonMoving.java b/src/main/java/net/minecraft/server/BlockPistonMoving.java -index 4bf66420f..bf76615d7 100644 +index 4bf66420f5..bf76615d72 100644 --- a/src/main/java/net/minecraft/server/BlockPistonMoving.java +++ b/src/main/java/net/minecraft/server/BlockPistonMoving.java @@ -21,7 +21,12 @@ public class BlockPistonMoving extends BlockTileEntity { @@ -1772,7 +1772,7 @@ index 4bf66420f..bf76615d7 100644 @Override diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 84dc89d96..996438b00 100644 +index 84dc89d961..996438b00f 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -510,8 +510,35 @@ public class Chunk implements IChunkAccess { @@ -1871,7 +1871,7 @@ index 84dc89d96..996438b00 100644 int j = MathHelper.floor((axisalignedbb.maxY + 2.0D) / 16.0D); diff --git a/src/main/java/net/minecraft/server/ChunkMapDistance.java b/src/main/java/net/minecraft/server/ChunkMapDistance.java -index 893c0085b..d83d3b54d 100644 +index 893c0085bc..d83d3b54d3 100644 --- a/src/main/java/net/minecraft/server/ChunkMapDistance.java +++ b/src/main/java/net/minecraft/server/ChunkMapDistance.java @@ -31,7 +31,7 @@ public abstract class ChunkMapDistance { @@ -2040,7 +2040,7 @@ index 893c0085b..d83d3b54d 100644 for (java.util.Iterator>>> iterator = this.tickets.long2ObjectEntrySet().fastIterator(); iterator.hasNext();) { diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index ef980f985..507105a2c 100644 +index ef980f9859..507105a2cd 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -120,7 +120,7 @@ public class ChunkProviderServer extends IChunkProvider { @@ -2440,7 +2440,7 @@ index ef980f985..507105a2c 100644 try { boolean execChunkTask = com.destroystokyo.paper.io.chunk.ChunkTaskManager.pollChunkWaitQueue() || ChunkProviderServer.this.world.asyncChunkTaskManager.pollNextChunkTask(); // Paper diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index ac58fcb79..742c59cb0 100644 +index ac58fcb798..742c59cb05 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java @@ -24,6 +24,14 @@ public class ChunkRegionLoader { @@ -2472,7 +2472,7 @@ index ac58fcb79..742c59cb0 100644 nbttagcompound1.setString("Status", ichunkaccess.getChunkStatus().d()); ChunkConverter chunkconverter = ichunkaccess.p(); diff --git a/src/main/java/net/minecraft/server/ChunkSection.java b/src/main/java/net/minecraft/server/ChunkSection.java -index 8d45588ec..4ab741985 100644 +index 8d45588ecf..4ab7419855 100644 --- a/src/main/java/net/minecraft/server/ChunkSection.java +++ b/src/main/java/net/minecraft/server/ChunkSection.java @@ -96,6 +96,7 @@ public class ChunkSection { @@ -2484,7 +2484,7 @@ index 8d45588ec..4ab741985 100644 return this.nonEmptyBlockCount == 0; } diff --git a/src/main/java/net/minecraft/server/ChunkStatus.java b/src/main/java/net/minecraft/server/ChunkStatus.java -index 36c265122..dd8a3dc4f 100644 +index 36c2651229..dd8a3dc4fe 100644 --- a/src/main/java/net/minecraft/server/ChunkStatus.java +++ b/src/main/java/net/minecraft/server/ChunkStatus.java @@ -109,7 +109,7 @@ public class ChunkStatus { @@ -2506,7 +2506,7 @@ index 36c265122..dd8a3dc4f 100644 } diff --git a/src/main/java/net/minecraft/server/DataPaletteBlock.java b/src/main/java/net/minecraft/server/DataPaletteBlock.java -index 1cb45f97b..e60ad41b2 100644 +index 1cb45f97b6..e60ad41b22 100644 --- a/src/main/java/net/minecraft/server/DataPaletteBlock.java +++ b/src/main/java/net/minecraft/server/DataPaletteBlock.java @@ -163,6 +163,7 @@ public class DataPaletteBlock implements DataPaletteExpandable { @@ -2518,7 +2518,7 @@ index 1cb45f97b..e60ad41b2 100644 T t0 = this.h.a(this.a.a(i)); diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java -index 8b2755a3b..578f7809c 100644 +index 8b2755a3b9..578f7809cb 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -170,6 +170,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -2530,7 +2530,7 @@ index 8b2755a3b..578f7809c 100644 this.setPVP(dedicatedserverproperties.pvp); this.setAllowFlight(dedicatedserverproperties.allowFlight); diff --git a/src/main/java/net/minecraft/server/EULA.java b/src/main/java/net/minecraft/server/EULA.java -index 550232cb3..229c3b0f0 100644 +index 550232cb38..229c3b0f0c 100644 --- a/src/main/java/net/minecraft/server/EULA.java +++ b/src/main/java/net/minecraft/server/EULA.java @@ -70,7 +70,7 @@ public class EULA { @@ -2543,7 +2543,7 @@ index 550232cb3..229c3b0f0 100644 throwable = throwable1; throw throwable1; diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index fcb3d3ada..f8ca56be8 100644 +index 9c4b02d776..17afddf4f4 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -136,7 +136,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -2794,7 +2794,7 @@ index fcb3d3ada..f8ca56be8 100644 @Nullable public AxisAlignedBB ay() { return null; } -@@ -1971,8 +2158,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1974,8 +2161,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } public final AxisAlignedBB getHardCollisionBox(Entity entity){ return j(entity);}//Paper - OBFHELPER @@ -2805,7 +2805,7 @@ index fcb3d3ada..f8ca56be8 100644 return null; } -@@ -3296,12 +3483,16 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -3299,12 +3486,16 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.locBlock; } @@ -2822,7 +2822,7 @@ index fcb3d3ada..f8ca56be8 100644 } public void setMot(double d0, double d1, double d2) { -@@ -3358,7 +3549,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -3361,7 +3552,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } // Paper end if (this.loc.x != d0 || this.loc.y != d1 || this.loc.z != d2) { @@ -2833,7 +2833,7 @@ index fcb3d3ada..f8ca56be8 100644 int j = MathHelper.floor(d1); int k = MathHelper.floor(d2); diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 7a2140e4b..70c2be22b 100644 +index 7a2140e4b9..70c2be22b7 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2835,7 +2835,11 @@ public abstract class EntityLiving extends Entity { @@ -2860,7 +2860,7 @@ index 7a2140e4b..70c2be22b 100644 } diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java -index f75c09d44..bfb931268 100644 +index f75c09d44a..bfb931268d 100644 --- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java +++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java @@ -74,6 +74,7 @@ public class EntityTrackerEntry { @@ -2872,7 +2872,7 @@ index f75c09d44..bfb931268 100644 if (!list.equals(this.p)) { diff --git a/src/main/java/net/minecraft/server/HeightMap.java b/src/main/java/net/minecraft/server/HeightMap.java -index 068b92c5c..476da43b9 100644 +index 068b92c5c4..476da43b9f 100644 --- a/src/main/java/net/minecraft/server/HeightMap.java +++ b/src/main/java/net/minecraft/server/HeightMap.java @@ -101,6 +101,7 @@ public class HeightMap { @@ -2902,7 +2902,7 @@ index 068b92c5c..476da43b9 100644 this.i = heightmap_use; this.j = predicate; diff --git a/src/main/java/net/minecraft/server/IBlockData.java b/src/main/java/net/minecraft/server/IBlockData.java -index 10a5901db..911750476 100644 +index 10a5901db1..9117504767 100644 --- a/src/main/java/net/minecraft/server/IBlockData.java +++ b/src/main/java/net/minecraft/server/IBlockData.java @@ -8,6 +8,19 @@ public class IBlockData extends BlockBase.BlockData { @@ -2926,7 +2926,7 @@ index 10a5901db..911750476 100644 super(block, immutablemap, mapcodec); } diff --git a/src/main/java/net/minecraft/server/IChunkLoader.java b/src/main/java/net/minecraft/server/IChunkLoader.java -index 582a5695b..5601088cd 100644 +index 582a5695ba..5601088cd5 100644 --- a/src/main/java/net/minecraft/server/IChunkLoader.java +++ b/src/main/java/net/minecraft/server/IChunkLoader.java @@ -21,7 +21,7 @@ public class IChunkLoader implements AutoCloseable { @@ -2939,7 +2939,7 @@ index 582a5695b..5601088cd 100644 // Paper - nuke IOWorker } diff --git a/src/main/java/net/minecraft/server/ICollisionAccess.java b/src/main/java/net/minecraft/server/ICollisionAccess.java -index 1cc40b1f0..3ce2f7497 100644 +index 1cc40b1f0a..3ce2f7497a 100644 --- a/src/main/java/net/minecraft/server/ICollisionAccess.java +++ b/src/main/java/net/minecraft/server/ICollisionAccess.java @@ -46,6 +46,11 @@ public interface ICollisionAccess extends IBlockAccess { @@ -2955,7 +2955,7 @@ index 1cc40b1f0..3ce2f7497 100644 return this.d(entity, axisalignedbb, predicate).allMatch(VoxelShape::isEmpty); } finally { if (entity != null) entity.collisionLoadChunks = false; } // Paper diff --git a/src/main/java/net/minecraft/server/IEntityAccess.java b/src/main/java/net/minecraft/server/IEntityAccess.java -index 267a6baae..0edcb775e 100644 +index 267a6baae8..0edcb775e9 100644 --- a/src/main/java/net/minecraft/server/IEntityAccess.java +++ b/src/main/java/net/minecraft/server/IEntityAccess.java @@ -69,6 +69,7 @@ public interface IEntityAccess { @@ -2967,7 +2967,7 @@ index 267a6baae..0edcb775e 100644 return entity == null || !entity.isSameVehicle(entity1); }); diff --git a/src/main/java/net/minecraft/server/LightEngineStorage.java b/src/main/java/net/minecraft/server/LightEngineStorage.java -index b98e60772..e0bbfe142 100644 +index b98e60772b..e0bbfe1422 100644 --- a/src/main/java/net/minecraft/server/LightEngineStorage.java +++ b/src/main/java/net/minecraft/server/LightEngineStorage.java @@ -23,7 +23,8 @@ public abstract class LightEngineStorage> e @@ -2999,7 +2999,7 @@ index b98e60772..e0bbfe142 100644 while (objectiterator.hasNext()) { entry = (Entry) objectiterator.next(); diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java -index e9cedbc8b..a29d54c77 100644 +index e9cedbc8b6..a29d54c775 100644 --- a/src/main/java/net/minecraft/server/MCUtil.java +++ b/src/main/java/net/minecraft/server/MCUtil.java @@ -48,6 +48,20 @@ public final class MCUtil { @@ -3024,7 +3024,7 @@ index e9cedbc8b..a29d54c77 100644 diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 26f230a80..eb71fa6e3 100644 +index 26f230a801..eb71fa6e39 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -986,7 +986,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant> { @@ -3336,7 +3336,7 @@ index bd33f85cf..fa208a195 100644 } return true; diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java -index 8335d0033..e0ee52409 100644 +index 8335d00336..e0ee524093 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java @@ -19,7 +19,7 @@ public class PacketPlayOutMapChunk implements Packet { @@ -3506,7 +3506,7 @@ index 8335d0033..e0ee52409 100644 } } diff --git a/src/main/java/net/minecraft/server/PathfinderNormal.java b/src/main/java/net/minecraft/server/PathfinderNormal.java -index d7f0df123..ec55785af 100644 +index d7f0df123b..ec55785af2 100644 --- a/src/main/java/net/minecraft/server/PathfinderNormal.java +++ b/src/main/java/net/minecraft/server/PathfinderNormal.java @@ -538,7 +538,7 @@ public class PathfinderNormal extends PathfinderAbstract { @@ -3519,7 +3519,7 @@ index d7f0df123..ec55785af 100644 return fluid.a((Tag) TagsFluid.WATER) ? PathType.WATER : (fluid.a((Tag) TagsFluid.LAVA) ? PathType.LAVA : PathType.OPEN); } diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java -index a3bce8f13..a483ec0e2 100644 +index a3bce8f13b..a483ec0e2b 100644 --- a/src/main/java/net/minecraft/server/PlayerChunk.java +++ b/src/main/java/net/minecraft/server/PlayerChunk.java @@ -494,6 +494,7 @@ public class PlayerChunk { @@ -3620,7 +3620,7 @@ index a3bce8f13..a483ec0e2 100644 if (chunk != null) { playerchunkmap.callbackExecutor.execute(() -> { diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index 8c5639fa5..4dd6f48ca 100644 +index 8c5639fa55..4dd6f48caf 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java @@ -119,31 +119,28 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { @@ -3787,7 +3787,7 @@ index 8c5639fa5..4dd6f48ca 100644 // Paper end - optimised tracker diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index cf83059fe..37f55c66b 100644 +index cf83059fec..37f55c66b6 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -322,19 +322,24 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -3892,7 +3892,7 @@ index cf83059fe..37f55c66b 100644 } else { // CraftBukkit start - fire PlayerMoveEvent diff --git a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java -index eb3269e0e..d9c9d01ae 100644 +index eb3269e0ea..d9c9d01aef 100644 --- a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java +++ b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java @@ -13,10 +13,30 @@ public class PlayerConnectionUtils { @@ -3940,7 +3940,7 @@ index eb3269e0e..d9c9d01ae 100644 }); throw CancelledPacketHandleException.INSTANCE; diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java -index 6d192b274..f5de49e3e 100644 +index 6d192b2744..f5de49e3e3 100644 --- a/src/main/java/net/minecraft/server/PlayerInteractManager.java +++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java @@ -21,14 +21,29 @@ public class PlayerInteractManager { @@ -4075,7 +4075,7 @@ index 6d192b274..f5de49e3e 100644 this.player.playerConnection.sendPacket(new PacketPlayOutBlockChange(this.world, blockposition)); // CraftBukkit - SPIGOT-5196 } diff --git a/src/main/java/net/minecraft/server/ProtoChunk.java b/src/main/java/net/minecraft/server/ProtoChunk.java -index 3b03c28ee..6ac9f437e 100644 +index 3b03c28ee5..6ac9f437e8 100644 --- a/src/main/java/net/minecraft/server/ProtoChunk.java +++ b/src/main/java/net/minecraft/server/ProtoChunk.java @@ -179,14 +179,11 @@ public class ProtoChunk implements IChunkAccess { @@ -4111,7 +4111,7 @@ index 3b03c28ee..6ac9f437e 100644 } diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index 93797395c..6928b1730 100644 +index 93797395c3..6928b1730f 100644 --- a/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java @@ -28,14 +28,349 @@ public class RegionFile implements AutoCloseable { @@ -4673,7 +4673,7 @@ index 93797395c..6928b1730 100644 ((java.nio.Buffer) this.f).position(0); this.dataFile.write(this.f, 0L); diff --git a/src/main/java/net/minecraft/server/RegionFileBitSet.java b/src/main/java/net/minecraft/server/RegionFileBitSet.java -index 1ebdf73cc..cfa3ecb03 100644 +index 1ebdf73cc9..cfa3ecb031 100644 --- a/src/main/java/net/minecraft/server/RegionFileBitSet.java +++ b/src/main/java/net/minecraft/server/RegionFileBitSet.java @@ -4,18 +4,42 @@ import java.util.BitSet; @@ -4721,7 +4721,7 @@ index 1ebdf73cc..cfa3ecb03 100644 int j = 0; diff --git a/src/main/java/net/minecraft/server/RegionFileCache.java b/src/main/java/net/minecraft/server/RegionFileCache.java -index 867dc074b..60b4171a3 100644 +index 867dc074bc..60b4171a3a 100644 --- a/src/main/java/net/minecraft/server/RegionFileCache.java +++ b/src/main/java/net/minecraft/server/RegionFileCache.java @@ -14,12 +14,43 @@ public class RegionFileCache implements AutoCloseable { // Paper - no final @@ -4812,7 +4812,7 @@ index 867dc074b..60b4171a3 100644 } diff --git a/src/main/java/net/minecraft/server/RegionFileCompression.java b/src/main/java/net/minecraft/server/RegionFileCompression.java -index 3382d678e..29137f495 100644 +index 3382d678e6..29137f4959 100644 --- a/src/main/java/net/minecraft/server/RegionFileCompression.java +++ b/src/main/java/net/minecraft/server/RegionFileCompression.java @@ -13,7 +13,7 @@ import javax.annotation.Nullable; @@ -4844,7 +4844,7 @@ index 3382d678e..29137f495 100644 return (InputStream) this.f.wrap(inputstream); } diff --git a/src/main/java/net/minecraft/server/Ticket.java b/src/main/java/net/minecraft/server/Ticket.java -index e41cb8613..c19ffb925 100644 +index e41cb8613e..c19ffb925a 100644 --- a/src/main/java/net/minecraft/server/Ticket.java +++ b/src/main/java/net/minecraft/server/Ticket.java @@ -5,17 +5,17 @@ import java.util.Objects; @@ -4881,7 +4881,7 @@ index e41cb8613..c19ffb925 100644 return j != 0L && i - this.d > j; } diff --git a/src/main/java/net/minecraft/server/TicketType.java b/src/main/java/net/minecraft/server/TicketType.java -index 5c789b25f..4657b05a4 100644 +index 5c789b25f1..4657b05a42 100644 --- a/src/main/java/net/minecraft/server/TicketType.java +++ b/src/main/java/net/minecraft/server/TicketType.java @@ -26,7 +26,8 @@ public class TicketType { @@ -4895,7 +4895,7 @@ index 5c789b25f..4657b05a4 100644 public static TicketType a(String s, Comparator comparator) { return new TicketType<>(s, comparator, 0L); diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index 67fda8bd5..e1f1d6e33 100644 +index 67fda8bd5a..e1f1d6e33f 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java @@ -12,7 +12,7 @@ import org.bukkit.inventory.InventoryHolder; @@ -4969,7 +4969,7 @@ index 67fda8bd5..e1f1d6e33 100644 private String tileEntityKeyString = null; private MinecraftKey tileEntityKey = null; diff --git a/src/main/java/net/minecraft/server/TileEntityBeacon.java b/src/main/java/net/minecraft/server/TileEntityBeacon.java -index 2858ea1f3..453f1301b 100644 +index 2858ea1f3e..453f1301b4 100644 --- a/src/main/java/net/minecraft/server/TileEntityBeacon.java +++ b/src/main/java/net/minecraft/server/TileEntityBeacon.java @@ -35,7 +35,7 @@ public class TileEntityBeacon extends TileEntity implements ITileInventory, ITic @@ -5020,7 +5020,7 @@ index 2858ea1f3..453f1301b 100644 public void tick() { int i = this.position.getX(); diff --git a/src/main/java/net/minecraft/server/TileEntityBeehive.java b/src/main/java/net/minecraft/server/TileEntityBeehive.java -index 66ac41db7..016b06364 100644 +index 66ac41db79..016b063645 100644 --- a/src/main/java/net/minecraft/server/TileEntityBeehive.java +++ b/src/main/java/net/minecraft/server/TileEntityBeehive.java @@ -12,6 +12,13 @@ public class TileEntityBeehive extends TileEntity implements ITickable { @@ -5038,7 +5038,7 @@ index 66ac41db7..016b06364 100644 super(TileEntityTypes.BEEHIVE); } diff --git a/src/main/java/net/minecraft/server/TileEntityBrewingStand.java b/src/main/java/net/minecraft/server/TileEntityBrewingStand.java -index 276eba954..e38a494d7 100644 +index 276eba954b..e38a494d7b 100644 --- a/src/main/java/net/minecraft/server/TileEntityBrewingStand.java +++ b/src/main/java/net/minecraft/server/TileEntityBrewingStand.java @@ -24,7 +24,7 @@ public class TileEntityBrewingStand extends TileEntityContainer implements IWorl @@ -5089,7 +5089,7 @@ index 276eba954..e38a494d7 100644 protected IChatBaseComponent getContainerName() { return new ChatMessage("container.brewing"); diff --git a/src/main/java/net/minecraft/server/TileEntityChest.java b/src/main/java/net/minecraft/server/TileEntityChest.java -index f6f274389..f9a878bd0 100644 +index f6f2743892..f9a878bd0b 100644 --- a/src/main/java/net/minecraft/server/TileEntityChest.java +++ b/src/main/java/net/minecraft/server/TileEntityChest.java @@ -45,6 +45,22 @@ public class TileEntityChest extends TileEntityLootable { // Paper - Remove ITic @@ -5116,7 +5116,7 @@ index f6f274389..f9a878bd0 100644 super(tileentitytypes); this.items = NonNullList.a(27, ItemStack.b); diff --git a/src/main/java/net/minecraft/server/TileEntityConduit.java b/src/main/java/net/minecraft/server/TileEntityConduit.java -index ade830122..7e9470caa 100644 +index ade8301227..7e9470caa5 100644 --- a/src/main/java/net/minecraft/server/TileEntityConduit.java +++ b/src/main/java/net/minecraft/server/TileEntityConduit.java @@ -16,15 +16,32 @@ public class TileEntityConduit extends TileEntity implements ITickable { @@ -5155,7 +5155,7 @@ index ade830122..7e9470caa 100644 this(TileEntityTypes.CONDUIT); } diff --git a/src/main/java/net/minecraft/server/TileEntityFurnace.java b/src/main/java/net/minecraft/server/TileEntityFurnace.java -index f4f50fb83..59aa2f8a7 100644 +index f4f50fb837..59aa2f8a79 100644 --- a/src/main/java/net/minecraft/server/TileEntityFurnace.java +++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java @@ -32,14 +32,14 @@ public abstract class TileEntityFurnace extends TileEntityContainer implements I @@ -5203,7 +5203,7 @@ index f4f50fb83..59aa2f8a7 100644 } diff --git a/src/main/java/net/minecraft/server/TileEntityJukeBox.java b/src/main/java/net/minecraft/server/TileEntityJukeBox.java -index 33c7dc56d..75eb1b8b2 100644 +index 33c7dc56da..75eb1b8b29 100644 --- a/src/main/java/net/minecraft/server/TileEntityJukeBox.java +++ b/src/main/java/net/minecraft/server/TileEntityJukeBox.java @@ -4,6 +4,13 @@ public class TileEntityJukeBox extends TileEntity implements Clearable { @@ -5221,7 +5221,7 @@ index 33c7dc56d..75eb1b8b2 100644 super(TileEntityTypes.JUKEBOX); this.a = ItemStack.b; diff --git a/src/main/java/net/minecraft/server/TileEntityLectern.java b/src/main/java/net/minecraft/server/TileEntityLectern.java -index b2ceb6c17..b955d5d66 100644 +index b2ceb6c179..b955d5d661 100644 --- a/src/main/java/net/minecraft/server/TileEntityLectern.java +++ b/src/main/java/net/minecraft/server/TileEntityLectern.java @@ -17,7 +17,7 @@ import org.bukkit.inventory.InventoryHolder; @@ -5298,7 +5298,7 @@ index b2ceb6c17..b955d5d66 100644 super(TileEntityTypes.LECTERN); this.book = ItemStack.b; diff --git a/src/main/java/net/minecraft/server/TileEntityPiston.java b/src/main/java/net/minecraft/server/TileEntityPiston.java -index e7b7e468f..38d0e841c 100644 +index e7b7e468fc..38d0e841ca 100644 --- a/src/main/java/net/minecraft/server/TileEntityPiston.java +++ b/src/main/java/net/minecraft/server/TileEntityPiston.java @@ -5,10 +5,10 @@ import java.util.List; @@ -5428,7 +5428,7 @@ index e7b7e468f..38d0e841c 100644 } diff --git a/src/main/java/net/minecraft/server/Vec3D.java b/src/main/java/net/minecraft/server/Vec3D.java -index 3048ba008..84858ba39 100644 +index 3048ba0081..84858ba392 100644 --- a/src/main/java/net/minecraft/server/Vec3D.java +++ b/src/main/java/net/minecraft/server/Vec3D.java @@ -4,7 +4,7 @@ import java.util.EnumSet; @@ -5462,7 +5462,7 @@ index 3048ba008..84858ba39 100644 return this.x * this.x + this.y * this.y + this.z * this.z; } diff --git a/src/main/java/net/minecraft/server/VillagePlace.java b/src/main/java/net/minecraft/server/VillagePlace.java -index 303f6b095..c1e149f20 100644 +index 303f6b0953..c1e149f204 100644 --- a/src/main/java/net/minecraft/server/VillagePlace.java +++ b/src/main/java/net/minecraft/server/VillagePlace.java @@ -155,7 +155,7 @@ public class VillagePlace extends RegionFileSection { @@ -5475,7 +5475,7 @@ index 303f6b095..c1e149f20 100644 } // Paper end diff --git a/src/main/java/net/minecraft/server/VoxelShape.java b/src/main/java/net/minecraft/server/VoxelShape.java -index c2b8c9820..3a98e242e 100644 +index c2b8c98206..3a98e242e0 100644 --- a/src/main/java/net/minecraft/server/VoxelShape.java +++ b/src/main/java/net/minecraft/server/VoxelShape.java @@ -8,11 +8,11 @@ import javax.annotation.Nullable; @@ -5514,7 +5514,7 @@ index c2b8c9820..3a98e242e 100644 List list = Lists.newArrayList(); diff --git a/src/main/java/net/minecraft/server/VoxelShapeArray.java b/src/main/java/net/minecraft/server/VoxelShapeArray.java -index caf297fe9..8d68c783f 100644 +index caf297fe97..8d68c783f6 100644 --- a/src/main/java/net/minecraft/server/VoxelShapeArray.java +++ b/src/main/java/net/minecraft/server/VoxelShapeArray.java @@ -3,6 +3,7 @@ package net.minecraft.server; @@ -5621,7 +5621,7 @@ index caf297fe9..8d68c783f 100644 + // Tuinity end - optimise multi-aabb shapes } diff --git a/src/main/java/net/minecraft/server/VoxelShapes.java b/src/main/java/net/minecraft/server/VoxelShapes.java -index 1fa7061f7..f6f3bdc61 100644 +index 1fa7061f7a..f6f3bdc61d 100644 --- a/src/main/java/net/minecraft/server/VoxelShapes.java +++ b/src/main/java/net/minecraft/server/VoxelShapes.java @@ -17,18 +17,81 @@ public final class VoxelShapes { @@ -5734,7 +5734,7 @@ index 1fa7061f7..f6f3bdc61 100644 throw (IllegalArgumentException) SystemUtils.c(new IllegalArgumentException()); } else if (voxelshape == voxelshape1) { diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index b598c4869..8df4ef488 100644 +index b598c48692..8df4ef4881 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -94,6 +94,8 @@ public abstract class World implements GeneratorAccess, AutoCloseable { @@ -5856,7 +5856,7 @@ index b598c4869..8df4ef488 100644 int j = MathHelper.floor((axisalignedbb.maxX + 2.0D) / 16.0D); int k = MathHelper.floor((axisalignedbb.minZ - 2.0D) / 16.0D); diff --git a/src/main/java/net/minecraft/server/WorldBorder.java b/src/main/java/net/minecraft/server/WorldBorder.java -index b651eb87b..5cba3b0e6 100644 +index b651eb87bb..5cba3b0e61 100644 --- a/src/main/java/net/minecraft/server/WorldBorder.java +++ b/src/main/java/net/minecraft/server/WorldBorder.java @@ -47,11 +47,43 @@ public class WorldBorder { @@ -5928,7 +5928,7 @@ index b651eb87b..5cba3b0e6 100644 return this.j.d(); } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 3a740f566..6d37bbfeb 100644 +index 3a740f5669..6d37bbfeb7 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -55,7 +55,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { @@ -6622,7 +6622,7 @@ index 3a740f566..6d37bbfeb 100644 this.tickingEntities = wasTicking; // Paper } diff --git a/src/main/java/net/minecraft/server/WorldUpgrader.java b/src/main/java/net/minecraft/server/WorldUpgrader.java -index 5ccdc0b87..888dae2d5 100644 +index 5ccdc0b87b..888dae2d5e 100644 --- a/src/main/java/net/minecraft/server/WorldUpgrader.java +++ b/src/main/java/net/minecraft/server/WorldUpgrader.java @@ -218,7 +218,7 @@ public class WorldUpgrader { @@ -6635,7 +6635,7 @@ index 5ccdc0b87..888dae2d5 100644 try { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftChunkSnapshot.java b/src/main/java/org/bukkit/craftbukkit/CraftChunkSnapshot.java -index 4ec53a54e..31c81b4b5 100644 +index 4ec53a54e3..31c81b4b52 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftChunkSnapshot.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftChunkSnapshot.java @@ -77,7 +77,7 @@ public class CraftChunkSnapshot implements ChunkSnapshot { @@ -6648,7 +6648,7 @@ index 4ec53a54e..31c81b4b5 100644 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 56bf840e3..2d042e058 100644 +index d8103ab0d5..ba42171096 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -231,7 +231,7 @@ import javax.annotation.Nullable; // Paper @@ -6688,7 +6688,7 @@ index 56bf840e3..2d042e058 100644 } @Override -@@ -2208,6 +2213,14 @@ public final class CraftServer implements Server { +@@ -2231,6 +2236,14 @@ public final class CraftServer implements Server { return com.destroystokyo.paper.PaperConfig.config; } @@ -6704,7 +6704,7 @@ index 56bf840e3..2d042e058 100644 public void restart() { org.spigotmc.RestartCommand.restart(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 724c0816d..21bd9f14e 100644 +index 724c0816d8..21bd9f14e1 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -336,6 +336,13 @@ public class CraftWorld implements World { @@ -6755,7 +6755,7 @@ index 724c0816d..21bd9f14e 100644 }, MinecraftServer.getServer()); } diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index a8cd55d3c..a216b1336 100644 +index bac292e6d8..b4e65963ef 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -138,6 +138,13 @@ public class Main { @@ -6782,7 +6782,7 @@ index a8cd55d3c..a216b1336 100644 //Thread.sleep(TimeUnit.SECONDS.toMillis(20)); // Paper End diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java -index 9b0e868f0..ee53060b1 100644 +index 9b0e868f00..ee53060b11 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java @@ -207,7 +207,7 @@ public class CraftBlock implements Block { @@ -6828,7 +6828,7 @@ index 9b0e868f0..ee53060b1 100644 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java -index 11aa2dc18..c51c43573 100644 +index 11aa2dc18c..c51c43573f 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockState.java @@ -136,7 +136,7 @@ public class CraftBlockState implements BlockState { @@ -6841,7 +6841,7 @@ index 11aa2dc18..c51c43573 100644 public void setFlag(int flag) { diff --git a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java -index bbded5671..980890153 100644 +index bbded5671e..9808901532 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java +++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java @@ -44,7 +44,7 @@ public class CraftBlockData implements BlockData { @@ -6854,7 +6854,7 @@ index bbded5671..980890153 100644 public IBlockData getState() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 821417610..db330f573 100644 +index 8002a38bcc..309e7f6ee7 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -527,6 +527,37 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -6896,7 +6896,7 @@ index 821417610..db330f573 100644 public boolean teleport(org.bukkit.entity.Entity destination) { return teleport(destination.getLocation()); diff --git a/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java b/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java -index bb18740eb..b048ec8ea 100644 +index 948a59217c..ab43c97e8f 100644 --- a/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java +++ b/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java @@ -73,7 +73,7 @@ public final class CraftChunkData implements ChunkGenerator.ChunkData { @@ -6909,7 +6909,7 @@ index bb18740eb..b048ec8ea 100644 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java -index ca2be3060..2c5701376 100644 +index ca2be30609..2c57013765 100644 --- a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java +++ b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java @@ -100,9 +100,18 @@ public final class CraftScoreboardManager implements ScoreboardManager { @@ -6932,7 +6932,7 @@ index ca2be3060..2c5701376 100644 } } diff --git a/src/main/java/org/bukkit/craftbukkit/util/UnsafeList.java b/src/main/java/org/bukkit/craftbukkit/util/UnsafeList.java -index f72c13bed..50f855b93 100644 +index f72c13beda..50f855b931 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/UnsafeList.java +++ b/src/main/java/org/bukkit/craftbukkit/util/UnsafeList.java @@ -119,6 +119,32 @@ public class UnsafeList extends AbstractList implements List, RandomAcc @@ -6969,7 +6969,7 @@ index f72c13bed..50f855b93 100644 public void clear() { // Create new array to reset memory usage to initial capacity diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java -index 674096cab..001b1e519 100644 +index 674096cab1..001b1e5197 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java @@ -11,7 +11,7 @@ public final class Versioning { @@ -6982,7 +6982,7 @@ index 674096cab..001b1e519 100644 if (stream != null) { diff --git a/src/main/java/org/spigotmc/AsyncCatcher.java b/src/main/java/org/spigotmc/AsyncCatcher.java -index 9f7d2ef93..c3ac1a46c 100644 +index 9f7d2ef932..c3ac1a46c3 100644 --- a/src/main/java/org/spigotmc/AsyncCatcher.java +++ b/src/main/java/org/spigotmc/AsyncCatcher.java @@ -10,7 +10,7 @@ public class AsyncCatcher @@ -6995,7 +6995,7 @@ index 9f7d2ef93..c3ac1a46c 100644 throw new IllegalStateException( "Asynchronous " + reason + "!" ); } diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java -index 513c1041c..4d3109084 100644 +index 513c1041c3..4d31090848 100644 --- a/src/main/java/org/spigotmc/WatchdogThread.java +++ b/src/main/java/org/spigotmc/WatchdogThread.java @@ -61,6 +61,84 @@ public class WatchdogThread extends Thread diff --git a/patches/server/0003-Purpur-config-files.patch b/patches/server/0003-Purpur-config-files.patch index 5ae969e60..a437818b4 100644 --- a/patches/server/0003-Purpur-config-files.patch +++ b/patches/server/0003-Purpur-config-files.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Purpur config files diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java -index 24641501a..78369e670 100644 +index 8a19c96499..de75e33a68 100644 --- a/src/main/java/com/destroystokyo/paper/Metrics.java +++ b/src/main/java/com/destroystokyo/paper/Metrics.java @@ -581,7 +581,7 @@ public class Metrics { @@ -17,20 +17,19 @@ index 24641501a..78369e670 100644 metrics.addCustomChart(new Metrics.SimplePie("minecraft_version", () -> { String minecraftVersion = Bukkit.getVersion(); -@@ -590,8 +590,9 @@ public class Metrics { +@@ -590,8 +590,8 @@ public class Metrics { })); metrics.addCustomChart(new Metrics.SingleLineChart("players", () -> Bukkit.getOnlinePlayers().size())); -- metrics.addCustomChart(new Metrics.SimplePie("online_mode", () -> Bukkit.getOnlineMode() ? "online" : "offline")); +- metrics.addCustomChart(new Metrics.SimplePie("online_mode", () -> Bukkit.getOnlineMode() || PaperConfig.isProxyOnlineMode() ? "online" : "offline")); - metrics.addCustomChart(new Metrics.SimplePie("paper_version", () -> (Metrics.class.getPackage().getImplementationVersion() != null) ? Metrics.class.getPackage().getImplementationVersion() : "unknown")); -+ metrics.addCustomChart(new Metrics.SimplePie("online_mode", () -> Bukkit.getOnlineMode() ? "online" : (Bukkit.spigot().getSpigotConfig().getBoolean("settings.bungeecord") ? "bungee" : "offline"))); // Purpur ++ metrics.addCustomChart(new Metrics.SimplePie("online_mode", () -> Bukkit.getOnlineMode() ? "online" : (PaperConfig.isProxyOnlineMode() ? "bungee" : "offline"))); // Purpur + metrics.addCustomChart(new Metrics.SimplePie("purpur_version", () -> (Metrics.class.getPackage().getImplementationVersion() != null) ? Metrics.class.getPackage().getImplementationVersion() : "unknown")); // Purpur -+ metrics.addCustomChart(new Metrics.DrilldownPie("java_version", () -> { Map> map = new HashMap<>(); diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java -index 578f7809c..21dc3b9a6 100644 +index 578f7809cb..21dc3b9a63 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -168,6 +168,15 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -50,7 +49,7 @@ index 578f7809c..21dc3b9a6 100644 // Paper end com.tuinity.tuinity.config.TuinityConfig.init((java.io.File) options.valueOf("tuinity-settings")); // Tuinity - Server Config diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 8df4ef488..aaef3bf59 100644 +index 8df4ef4881..aaef3bf595 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -95,6 +95,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable { @@ -71,7 +70,7 @@ index 8df4ef488..aaef3bf59 100644 this.ticksPerAnimalSpawns = this.getServer().getTicksPerAnimalSpawns(); // CraftBukkit diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java new file mode 100644 -index 000000000..333c880bf +index 0000000000..333c880bf2 --- /dev/null +++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java @@ -0,0 +1,130 @@ @@ -207,7 +206,7 @@ index 000000000..333c880bf +} diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java new file mode 100644 -index 000000000..361f7857e +index 0000000000..361f7857e4 --- /dev/null +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -0,0 +1,59 @@ @@ -272,7 +271,7 @@ index 000000000..361f7857e +} diff --git a/src/main/java/net/pl3x/purpur/command/PurpurCommand.java b/src/main/java/net/pl3x/purpur/command/PurpurCommand.java new file mode 100644 -index 000000000..4904be939 +index 0000000000..4904be939c --- /dev/null +++ b/src/main/java/net/pl3x/purpur/command/PurpurCommand.java @@ -0,0 +1,65 @@ @@ -342,7 +341,7 @@ index 000000000..4904be939 + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index a083aeb5d..efa1b59fa 100644 +index 6aa60eb602..e6bac82668 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -849,6 +849,7 @@ public final class CraftServer implements Server { @@ -369,7 +368,7 @@ index a083aeb5d..efa1b59fa 100644 overrideAllCommandBlockCommands = commandsConfiguration.getStringList("command-block-overrides").contains("*"); ignoreVanillaPermissions = commandsConfiguration.getBoolean("ignore-vanilla-permissions"); -@@ -2221,6 +2224,18 @@ public final class CraftServer implements Server { +@@ -2244,6 +2247,18 @@ public final class CraftServer implements Server { } // Tuinity end - add config to timings report @@ -389,7 +388,7 @@ index a083aeb5d..efa1b59fa 100644 public void restart() { org.spigotmc.RestartCommand.restart(); diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index a216b1336..c1e7e6a45 100644 +index b4e65963ef..3261d22558 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -146,6 +146,14 @@ public class Main { diff --git a/patches/server/0009-AFK-API.patch b/patches/server/0009-AFK-API.patch index 246f3e302..82c7fe23a 100644 --- a/patches/server/0009-AFK-API.patch +++ b/patches/server/0009-AFK-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] AFK API diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index f8ca56be8..3ba812843 100644 +index 17afddf4f4..a6a44a6030 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1571,6 +1571,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1574,6 +1574,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return MathHelper.c(f * f + f1 * f1 + f2 * f2); } @@ -17,7 +17,7 @@ index f8ca56be8..3ba812843 100644 double d3 = this.locX() - d0; double d4 = this.locY() - d1; diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 2cada09ce..a69a69859 100644 +index 2cada09ced..a69a698594 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -84,6 +84,15 @@ public abstract class EntityHuman extends EntityLiving { @@ -37,7 +37,7 @@ index 2cada09ce..a69a69859 100644 super(EntityTypes.PLAYER, world); this.bS = ItemStack.b; diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index eeed8edfd..508a91418 100644 +index 8fd3c913ac..fa090422da 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -1752,8 +1752,54 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -96,7 +96,7 @@ index eeed8edfd..508a91418 100644 return this.serverStatisticManager; } diff --git a/src/main/java/net/minecraft/server/IEntityAccess.java b/src/main/java/net/minecraft/server/IEntityAccess.java -index 0edcb775e..dfa8f3439 100644 +index 0edcb775e9..dfa8f3439b 100644 --- a/src/main/java/net/minecraft/server/IEntityAccess.java +++ b/src/main/java/net/minecraft/server/IEntityAccess.java @@ -144,28 +144,18 @@ public interface IEntityAccess { @@ -141,7 +141,7 @@ index 0edcb775e..dfa8f3439 100644 @Nullable diff --git a/src/main/java/net/minecraft/server/IEntitySelector.java b/src/main/java/net/minecraft/server/IEntitySelector.java -index a52dd0c02..9b4795f3b 100644 +index a52dd0c021..9b4795f3bd 100644 --- a/src/main/java/net/minecraft/server/IEntitySelector.java +++ b/src/main/java/net/minecraft/server/IEntitySelector.java @@ -7,6 +7,7 @@ import javax.annotation.Nullable; @@ -161,7 +161,7 @@ index a52dd0c02..9b4795f3b 100644 // Paper start public static final Predicate affectsSpawning = (entity) -> { diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 37f55c66b..aa6855c35 100644 +index 37f55c66b6..aa6855c356 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -232,6 +232,12 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -205,7 +205,7 @@ index 37f55c66b..aa6855c35 100644 if (from.getX() != Double.MAX_VALUE) { Location oldTo = to.clone(); diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 6d37bbfeb..578cc6888 100644 +index 6d37bbfeb7..578cc68886 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -862,7 +862,7 @@ public class WorldServer extends World implements GeneratorAccessSeed { @@ -227,7 +227,7 @@ index 6d37bbfeb..578cc6888 100644 } else if (entityplayer.isSleeping()) { ++j; diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java -index fc38163b1..cc08ad33e 100644 +index fc38163b19..cc08ad33e4 100644 --- a/src/main/java/net/pl3x/purpur/PurpurConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java @@ -1,6 +1,7 @@ @@ -253,7 +253,7 @@ index fc38163b1..cc08ad33e 100644 private static void timingsSettings() { timingsUrl = getString("settings.timings.url", timingsUrl); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 361f7857e..2578a4677 100644 +index 361f7857e4..2578a4677d 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -56,4 +56,15 @@ public class PurpurWorldConfig { @@ -273,7 +273,7 @@ index 361f7857e..2578a4677 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 8f2b84a84..e8c8ba74b 100644 +index 8f2b84a84a..e8c8ba74b9 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2149,4 +2149,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -299,7 +299,7 @@ index 8f2b84a84..e8c8ba74b 100644 + // Purpur end } diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index f78e44e05..da4c49daf 100644 +index f78e44e05f..da4c49daf4 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java @@ -207,6 +207,7 @@ public class ActivationRange diff --git a/patches/server/0010-Bring-back-server-name.patch b/patches/server/0010-Bring-back-server-name.patch index ee5368eaa..8030be769 100644 --- a/patches/server/0010-Bring-back-server-name.patch +++ b/patches/server/0010-Bring-back-server-name.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Bring back server name diff --git a/src/main/java/net/minecraft/server/DedicatedServerProperties.java b/src/main/java/net/minecraft/server/DedicatedServerProperties.java -index 6786fd094..8a9be3fdb 100644 +index 6786fd0947..8a9be3fdbf 100644 --- a/src/main/java/net/minecraft/server/DedicatedServerProperties.java +++ b/src/main/java/net/minecraft/server/DedicatedServerProperties.java @@ -10,6 +10,7 @@ public class DedicatedServerProperties extends PropertyManager 0) { @@ -58,7 +58,7 @@ index 51e70db21..54421c56c 100644 int k = 0; for (int l = 0; j > 0 && l < i; ++l) { -@@ -457,6 +457,12 @@ public final class ItemStack { +@@ -504,6 +504,12 @@ public final class ItemStack { if (this.isDamaged(i, t0.getRandom(), t0 instanceof EntityPlayer ? (EntityPlayer) t0 : null)) { consumer.accept(t0); Item item = this.getItem(); @@ -72,7 +72,7 @@ index 51e70db21..54421c56c 100644 if (this.count == 1 && t0 instanceof EntityHuman) { org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerItemBreakEvent((EntityHuman) t0, this); diff --git a/src/main/java/net/minecraft/server/ItemTrident.java b/src/main/java/net/minecraft/server/ItemTrident.java -index 32982bb47..a0e4d46ab 100644 +index 32982bb477..a0e4d46abf 100644 --- a/src/main/java/net/minecraft/server/ItemTrident.java +++ b/src/main/java/net/minecraft/server/ItemTrident.java @@ -102,6 +102,16 @@ public class ItemTrident extends Item implements ItemVanishable { @@ -93,7 +93,7 @@ index 32982bb47..a0e4d46ab 100644 entityhuman.r(20); if (entityhuman.isOnGround()) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 860e25dfd..d1b0d4030 100644 +index 860e25dfd8..d1b0d40307 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -131,6 +131,19 @@ public class PurpurWorldConfig { diff --git a/patches/server/0092-Add-item-entity-options.patch b/patches/server/0092-Add-item-entity-options.patch index 1c6237644..fd339be39 100644 --- a/patches/server/0092-Add-item-entity-options.patch +++ b/patches/server/0092-Add-item-entity-options.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add item entity options diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 7a4cc7c30..476ca65a4 100644 +index 04f732428b..e9aab0de76 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1471,6 +1471,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1473,6 +1473,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke } @@ -17,7 +17,7 @@ index 7a4cc7c30..476ca65a4 100644 return this.O == tag; } diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java -index a7860cb4d..77e970c30 100644 +index a7860cb4de..77e970c307 100644 --- a/src/main/java/net/minecraft/server/EntityItem.java +++ b/src/main/java/net/minecraft/server/EntityItem.java @@ -258,7 +258,7 @@ public class EntityItem extends Entity { @@ -39,7 +39,7 @@ index a7860cb4d..77e970c30 100644 // CraftBukkit start if (org.bukkit.craftbukkit.event.CraftEventFactory.handleNonLivingEntityDamageEvent(this, damagesource, f)) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index d1b0d4030..9de724686 100644 +index d1b0d40307..9de7246862 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -99,6 +99,21 @@ public class PurpurWorldConfig { diff --git a/patches/server/0095-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch b/patches/server/0095-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch index dc9a68da0..161cb0b43 100644 --- a/patches/server/0095-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch +++ b/patches/server/0095-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Phantoms attracted to crystals and crystals shoot phantoms diff --git a/src/main/java/net/minecraft/server/DamageSource.java b/src/main/java/net/minecraft/server/DamageSource.java -index 6fe5678cf..bd0267ee4 100644 +index 6fe5678cff..bd0267ee4b 100644 --- a/src/main/java/net/minecraft/server/DamageSource.java +++ b/src/main/java/net/minecraft/server/DamageSource.java @@ -88,6 +88,7 @@ public class DamageSource { @@ -17,10 +17,10 @@ index 6fe5678cf..bd0267ee4 100644 return (new EntityDamageSourceIndirect("indirectMagic", entity, entity1)).setIgnoreArmor().setMagic(); } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 476ca65a4..6f12615d3 100644 +index e9aab0de76..fe1c6f0c1b 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1588,6 +1588,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -1590,6 +1590,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return d3 * d3 + d4 * d4 + d5 * d5; } @@ -28,7 +28,7 @@ index 476ca65a4..6f12615d3 100644 public double h(Entity entity) { return this.d(entity.getPositionVector()); } -@@ -2115,8 +2116,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke +@@ -2117,8 +2118,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke return this.a(new ItemStack(imaterial), (float) i); } @@ -40,7 +40,7 @@ index 476ca65a4..6f12615d3 100644 } diff --git a/src/main/java/net/minecraft/server/EntityEnderCrystal.java b/src/main/java/net/minecraft/server/EntityEnderCrystal.java -index 21dfe7f42..71a440d69 100644 +index 21dfe7f425..71a440d69d 100644 --- a/src/main/java/net/minecraft/server/EntityEnderCrystal.java +++ b/src/main/java/net/minecraft/server/EntityEnderCrystal.java @@ -13,6 +13,12 @@ public class EntityEnderCrystal extends Entity { @@ -108,7 +108,7 @@ index 21dfe7f42..71a440d69 100644 @Override protected void saveData(NBTTagCompound nbttagcompound) { diff --git a/src/main/java/net/minecraft/server/EntityPhantom.java b/src/main/java/net/minecraft/server/EntityPhantom.java -index 3cb78924d..ec09ec241 100644 +index 3cb78924da..ec09ec241a 100644 --- a/src/main/java/net/minecraft/server/EntityPhantom.java +++ b/src/main/java/net/minecraft/server/EntityPhantom.java @@ -9,9 +9,10 @@ import javax.annotation.Nullable; @@ -329,7 +329,7 @@ index 3cb78924d..ec09ec241 100644 return entityliving != null ? EntityPhantom.this.a(EntityPhantom.this.getGoalTarget(), PathfinderTargetCondition.a) : false; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 3e067c832..f2ca515c9 100644 +index 3e067c832f..f2ca515c9b 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -324,6 +324,15 @@ public class PurpurWorldConfig { diff --git a/patches/server/0096-Convert-legacy-item-text.patch b/patches/server/0096-Convert-legacy-item-text.patch deleted file mode 100644 index 11b6eaf0c..000000000 --- a/patches/server/0096-Convert-legacy-item-text.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: William Blake Galbreath -Date: Mon, 29 Jun 2020 08:56:53 -0500 -Subject: [PATCH] Convert legacy item text - - -diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java -index 54421c56c..bb369c822 100644 ---- a/src/main/java/net/minecraft/server/ItemStack.java -+++ b/src/main/java/net/minecraft/server/ItemStack.java -@@ -127,6 +127,7 @@ public final class ItemStack { - if (nbttagcompound.hasKeyOfType("tag", 10)) { - // CraftBukkit start - make defensive copy as this data may be coming from the save thread - this.tag = (NBTTagCompound) nbttagcompound.getCompound("tag").clone(); -+ processText(); // Purpur - processEnchantOrder(this.tag); // Paper - this.getItem().b(this.tag); - // CraftBukkit end -@@ -138,6 +139,50 @@ public final class ItemStack { - - } - -+ // Purpur start -+ private void processText() { -+ NBTTagCompound display = getSubTag("display"); -+ if (display != null) { -+ if (display.hasKeyOfType("Name", 8)) { -+ String json = display.getString("Name"); -+ if (json != null && json.contains("\u00A7")) { -+ try { -+ display.set("Name", convert(json)); -+ } catch (JsonParseException jsonparseexception) { -+ display.remove("Name"); -+ } -+ } -+ } -+ if (display.hasKeyOfType("Lore", 9)) { -+ NBTTagList lore = new NBTTagList(); -+ NBTTagList list = display.getList("Lore", 8); -+ boolean legacy = false; -+ for (int index = 0; index < list.size(); index++) { -+ String json = list.getString(index); -+ if (json != null && json.contains("\u00A7")) { -+ legacy = true; -+ } -+ try { -+ lore.add(convert(json)); -+ } catch (JsonParseException ignore) { -+ } -+ } -+ if (legacy) { -+ display.set("Lore", lore); -+ } -+ } -+ } -+ } -+ -+ private NBTTagString convert(String json) { -+ IChatBaseComponent component = IChatBaseComponent.ChatSerializer.jsonToComponent(json); -+ if (component != null) { -+ component = org.bukkit.craftbukkit.util.CraftChatMessage.fromString(component.getText())[0]; -+ } -+ return NBTTagString.create(org.bukkit.craftbukkit.util.CraftChatMessage.toJSON(component)); -+ } -+ // Purpur end -+ - private ItemStack(NBTTagCompound nbttagcompound) { - this.load(nbttagcompound); - // CraftBukkit end -@@ -632,6 +677,7 @@ public final class ItemStack { - } - } - -+ @Nullable public NBTTagCompound getSubTag(String s) { return b(s); } // Purpur - OBFHELPER - @Nullable - public NBTTagCompound b(String s) { - return this.tag != null && this.tag.hasKeyOfType(s, 10) ? this.tag.getCompound(s) : null; diff --git a/patches/server/0097-Customizable-EnderDragon-Health.patch b/patches/server/0096-Customizable-EnderDragon-Health.patch similarity index 96% rename from patches/server/0097-Customizable-EnderDragon-Health.patch rename to patches/server/0096-Customizable-EnderDragon-Health.patch index 5853b9ced..4b1ded822 100644 --- a/patches/server/0097-Customizable-EnderDragon-Health.patch +++ b/patches/server/0096-Customizable-EnderDragon-Health.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Customizable EnderDragon Health diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java -index 08fa5a975..e08e6014f 100644 +index 08fa5a9756..e08e6014f8 100644 --- a/src/main/java/net/minecraft/server/EntityEnderDragon.java +++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java @@ -66,6 +66,16 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster { @@ -26,7 +26,7 @@ index 08fa5a975..e08e6014f 100644 protected void initDatawatcher() { super.initDatawatcher(); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index f2ca515c9..e6b41ab92 100644 +index f2ca515c9b..e6b41ab924 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -269,9 +269,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0098-Make-natural-spawns-per-biome-configurable.patch b/patches/server/0097-Make-natural-spawns-per-biome-configurable.patch similarity index 99% rename from patches/server/0098-Make-natural-spawns-per-biome-configurable.patch rename to patches/server/0097-Make-natural-spawns-per-biome-configurable.patch index e75cb1fbd..4f01151bb 100644 --- a/patches/server/0098-Make-natural-spawns-per-biome-configurable.patch +++ b/patches/server/0097-Make-natural-spawns-per-biome-configurable.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Make natural spawns per biome configurable diff --git a/src/main/java/net/minecraft/server/BiomeBase.java b/src/main/java/net/minecraft/server/BiomeBase.java -index 52ebdfcc0..9259ba1af 100644 +index 52ebdfcc03..9259ba1af5 100644 --- a/src/main/java/net/minecraft/server/BiomeBase.java +++ b/src/main/java/net/minecraft/server/BiomeBase.java @@ -25,6 +25,23 @@ import org.apache.logging.log4j.Logger; @@ -51,7 +51,7 @@ index 52ebdfcc0..9259ba1af 100644 protected void a(EntityTypes entitytypes, double d0, double d1) { diff --git a/src/main/java/net/minecraft/server/Biomes.java b/src/main/java/net/minecraft/server/Biomes.java -index eaa527f4f..d39b19f79 100644 +index eaa527f4fe..d39b19f798 100644 --- a/src/main/java/net/minecraft/server/Biomes.java +++ b/src/main/java/net/minecraft/server/Biomes.java @@ -91,6 +91,35 @@ public abstract class Biomes { @@ -92,7 +92,7 @@ index eaa527f4f..d39b19f79 100644 diff --git a/src/main/resources/biomes.yml b/src/main/resources/biomes.yml new file mode 100644 -index 000000000..ff48801c3 +index 0000000000..ff48801c32 --- /dev/null +++ b/src/main/resources/biomes.yml @@ -0,0 +1,1065 @@ diff --git a/patches/server/0099-Add-phantom-spawning-options.patch b/patches/server/0098-Add-phantom-spawning-options.patch similarity index 98% rename from patches/server/0099-Add-phantom-spawning-options.patch rename to patches/server/0098-Add-phantom-spawning-options.patch index 24b0b67af..f57b0e6a4 100644 --- a/patches/server/0099-Add-phantom-spawning-options.patch +++ b/patches/server/0098-Add-phantom-spawning-options.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add phantom spawning options diff --git a/src/main/java/net/minecraft/server/DifficultyDamageScaler.java b/src/main/java/net/minecraft/server/DifficultyDamageScaler.java -index 75745af34..84c0ec1b5 100644 +index 75745af343..84c0ec1b50 100644 --- a/src/main/java/net/minecraft/server/DifficultyDamageScaler.java +++ b/src/main/java/net/minecraft/server/DifficultyDamageScaler.java @@ -13,6 +13,7 @@ public class DifficultyDamageScaler { @@ -25,7 +25,7 @@ index 75745af34..84c0ec1b5 100644 return this.b > f; } diff --git a/src/main/java/net/minecraft/server/EnumDifficulty.java b/src/main/java/net/minecraft/server/EnumDifficulty.java -index e0e72779c..386eae71a 100644 +index e0e72779c0..386eae71a1 100644 --- a/src/main/java/net/minecraft/server/EnumDifficulty.java +++ b/src/main/java/net/minecraft/server/EnumDifficulty.java @@ -19,6 +19,7 @@ public enum EnumDifficulty { @@ -37,7 +37,7 @@ index e0e72779c..386eae71a 100644 return this.f; } diff --git a/src/main/java/net/minecraft/server/IBlockLightAccess.java b/src/main/java/net/minecraft/server/IBlockLightAccess.java -index 3f187f349..c678e6fe9 100644 +index 3f187f3494..c678e6fe96 100644 --- a/src/main/java/net/minecraft/server/IBlockLightAccess.java +++ b/src/main/java/net/minecraft/server/IBlockLightAccess.java @@ -12,6 +12,7 @@ public interface IBlockLightAccess extends IBlockAccess { @@ -49,7 +49,7 @@ index 3f187f349..c678e6fe9 100644 return this.getBrightness(EnumSkyBlock.SKY, blockposition) >= this.H(); } diff --git a/src/main/java/net/minecraft/server/MobSpawnerPhantom.java b/src/main/java/net/minecraft/server/MobSpawnerPhantom.java -index bf4fa1710..ac1ea2f0c 100644 +index bf4fa17101..ac1ea2f0c1 100644 --- a/src/main/java/net/minecraft/server/MobSpawnerPhantom.java +++ b/src/main/java/net/minecraft/server/MobSpawnerPhantom.java @@ -1,85 +1,99 @@ @@ -221,7 +221,7 @@ index bf4fa1710..ac1ea2f0c 100644 } } diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java -index c5845013a..bc63beb3c 100644 +index c5845013a7..bc63beb3c7 100644 --- a/src/main/java/net/minecraft/server/SpawnerCreature.java +++ b/src/main/java/net/minecraft/server/SpawnerCreature.java @@ -385,6 +385,7 @@ public final class SpawnerCreature { @@ -233,7 +233,7 @@ index c5845013a..bc63beb3c 100644 return iblockdata.r(iblockaccess, blockposition) ? false : (iblockdata.isPowerSource() ? false : (!fluid.isEmpty() ? false : (iblockdata.a((Tag) TagsBlock.PREVENT_MOB_SPAWNING_INSIDE) ? false : !entitytypes.a(iblockdata)))); } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index aaef3bf59..fd31212e0 100644 +index aaef3bf595..fd31212e0b 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -1501,6 +1501,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable { @@ -245,7 +245,7 @@ index aaef3bf59..fd31212e0 100644 public int c() { return this.d; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index e6b41ab92..80d772e02 100644 +index e6b41ab924..80d772e021 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -329,10 +329,34 @@ public class PurpurWorldConfig { diff --git a/patches/server/0101-Implement-bed-explosion-options.patch b/patches/server/0099-Implement-bed-explosion-options.patch similarity index 100% rename from patches/server/0101-Implement-bed-explosion-options.patch rename to patches/server/0099-Implement-bed-explosion-options.patch diff --git a/patches/server/0102-Implement-respawn-anchor-explosion-options.patch b/patches/server/0100-Implement-respawn-anchor-explosion-options.patch similarity index 100% rename from patches/server/0102-Implement-respawn-anchor-explosion-options.patch rename to patches/server/0100-Implement-respawn-anchor-explosion-options.patch diff --git a/patches/server/0100-PaperPR-Fix-loottables-erasing-on-viewing.patch b/patches/server/0100-PaperPR-Fix-loottables-erasing-on-viewing.patch deleted file mode 100644 index 75df1877a..000000000 --- a/patches/server/0100-PaperPR-Fix-loottables-erasing-on-viewing.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: William Blake Galbreath -Date: Sat, 4 Jul 2020 11:23:46 -0500 -Subject: [PATCH] PaperPR - Fix loottables erasing on viewing - - -diff --git a/src/main/java/net/minecraft/server/EntityMinecartContainer.java b/src/main/java/net/minecraft/server/EntityMinecartContainer.java -index fca0fb871e..72411faa14 100644 ---- a/src/main/java/net/minecraft/server/EntityMinecartContainer.java -+++ b/src/main/java/net/minecraft/server/EntityMinecartContainer.java -@@ -223,7 +223,7 @@ public abstract class EntityMinecartContainer extends EntityMinecartAbstract imp - CriterionTriggers.N.a((EntityPlayer) entityhuman, this.lootTable); - } - -- this.lootTable = null; -+ //this.lootTable = null; // Purpur - this.lootableData.processRefill(entityhuman); // Paper - LootTableInfo.Builder loottableinfo_builder = (new LootTableInfo.Builder((WorldServer) this.world)).set(LootContextParameters.POSITION, this.getChunkCoordinates()).a(this.lootTableSeed); - -diff --git a/src/main/java/net/minecraft/server/TileEntityLootable.java b/src/main/java/net/minecraft/server/TileEntityLootable.java -index d017904561..7fd2b0e838 100644 ---- a/src/main/java/net/minecraft/server/TileEntityLootable.java -+++ b/src/main/java/net/minecraft/server/TileEntityLootable.java -@@ -56,7 +56,7 @@ public abstract class TileEntityLootable extends TileEntityContainer { - CriterionTriggers.N.a((EntityPlayer) entityhuman, this.lootTable); - } - -- this.lootTable = null; -+ //this.lootTable = null; // Purpur - this.lootableData.processRefill(entityhuman); // Paper - LootTableInfo.Builder loottableinfo_builder = (new LootTableInfo.Builder((WorldServer) this.world)).set(LootContextParameters.POSITION, new BlockPosition(this.position)).a(this.lootTableSeed); - diff --git a/patches/server/0103-Fix-armorstand-entity-lookups-paper.yml-setting-not-.patch b/patches/server/0101-Fix-armorstand-entity-lookups-paper.yml-setting-not-.patch similarity index 100% rename from patches/server/0103-Fix-armorstand-entity-lookups-paper.yml-setting-not-.patch rename to patches/server/0101-Fix-armorstand-entity-lookups-paper.yml-setting-not-.patch