diff --git a/Spigot-API-Patches/0001-POM-changes.patch b/Spigot-API-Patches/0001-POM-changes.patch index f0fef5d12..5354846e9 100644 --- a/Spigot-API-Patches/0001-POM-changes.patch +++ b/Spigot-API-Patches/0001-POM-changes.patch @@ -1,28 +1,28 @@ -From eeda55e4929215bdae08f66dcbb3a4e9c02b3da3 Mon Sep 17 00:00:00 2001 +From f90b7c9822f8711fafde9773238ec4703aaf9b35 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 1 Mar 2016 00:16:08 +0100 Subject: [PATCH] POM changes diff --git a/pom.xml b/pom.xml -index 0bc8d481..be4e1ca5 100644 +index 0d4ef897..69866193 100644 --- a/pom.xml +++ b/pom.xml -@@ -3,33 +3,29 @@ +@@ -2,34 +2,29 @@ + 4.0.0 - -- org.spigotmc -- spigot-api + + com.destroystokyo.paper + paper-parent + dev-SNAPSHOT + -+ + +- org.spigotmc +- spigot-api + com.destroystokyo.paper + paper-api - 1.14-R0.1-SNAPSHOT + 1.14.1-R0.1-SNAPSHOT jar - Spigot-API @@ -54,7 +54,7 @@ index 0bc8d481..be4e1ca5 100644 com.google.guava -@@ -113,15 +127,12 @@ +@@ -113,15 +126,12 @@ @@ -103,7 +103,7 @@ index 0bc8d481..be4e1ca5 100644 -@@ -156,6 +167,7 @@ +@@ -156,6 +166,7 @@ diff --git a/Spigot-API-Patches/0002-Add-FastUtil-to-Bukkit.patch b/Spigot-API-Patches/0002-Add-FastUtil-to-Bukkit.patch index 700fb9906..33508d531 100644 --- a/Spigot-API-Patches/0002-Add-FastUtil-to-Bukkit.patch +++ b/Spigot-API-Patches/0002-Add-FastUtil-to-Bukkit.patch @@ -1,4 +1,4 @@ -From 38757c176090c45b72d90314edbd83d5be3cdffb Mon Sep 17 00:00:00 2001 +From ba48d41f6fb7072f60e80b0bf683b3f1650b2aeb Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 1 Apr 2016 00:02:47 -0400 Subject: [PATCH] Add FastUtil to Bukkit @@ -6,10 +6,10 @@ Subject: [PATCH] Add FastUtil to Bukkit Doesn't expose to plugins, just allows Paper-API to use it for optimization diff --git a/pom.xml b/pom.xml -index 2e261925..545af460 100644 +index 69866193..3dac66d3 100644 --- a/pom.xml +++ b/pom.xml -@@ -51,6 +51,12 @@ +@@ -50,6 +50,12 @@ diff --git a/Spigot-API-Patches/0004-Timings-v2.patch b/Spigot-API-Patches/0004-Timings-v2.patch index e023612c2..3458dddd6 100644 --- a/Spigot-API-Patches/0004-Timings-v2.patch +++ b/Spigot-API-Patches/0004-Timings-v2.patch @@ -1,4 +1,4 @@ -From 9932b11d3b8b9e6d252020d261cc20342b9343b2 Mon Sep 17 00:00:00 2001 +From cb9aa21c2fd11a5f9775048e79cd86369fd5fe78 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 29 Feb 2016 18:48:17 -0600 Subject: [PATCH] Timings v2 @@ -6,7 +6,7 @@ Subject: [PATCH] Timings v2 diff --git a/src/main/java/co/aikar/timings/FullServerTickHandler.java b/src/main/java/co/aikar/timings/FullServerTickHandler.java new file mode 100644 -index 000000000..64531fcce +index 00000000..64531fcc --- /dev/null +++ b/src/main/java/co/aikar/timings/FullServerTickHandler.java @@ -0,0 +1,84 @@ @@ -96,7 +96,7 @@ index 000000000..64531fcce +} diff --git a/src/main/java/co/aikar/timings/NullTimingHandler.java b/src/main/java/co/aikar/timings/NullTimingHandler.java new file mode 100644 -index 000000000..9b45ce887 +index 00000000..9b45ce88 --- /dev/null +++ b/src/main/java/co/aikar/timings/NullTimingHandler.java @@ -0,0 +1,68 @@ @@ -170,7 +170,7 @@ index 000000000..9b45ce887 +} diff --git a/src/main/java/co/aikar/timings/TimedEventExecutor.java b/src/main/java/co/aikar/timings/TimedEventExecutor.java new file mode 100644 -index 000000000..933ecf9bd +index 00000000..933ecf9b --- /dev/null +++ b/src/main/java/co/aikar/timings/TimedEventExecutor.java @@ -0,0 +1,83 @@ @@ -259,7 +259,7 @@ index 000000000..933ecf9bd +} diff --git a/src/main/java/co/aikar/timings/Timing.java b/src/main/java/co/aikar/timings/Timing.java new file mode 100644 -index 000000000..a21e5ead5 +index 00000000..a21e5ead --- /dev/null +++ b/src/main/java/co/aikar/timings/Timing.java @@ -0,0 +1,83 @@ @@ -348,7 +348,7 @@ index 000000000..a21e5ead5 +} diff --git a/src/main/java/co/aikar/timings/TimingData.java b/src/main/java/co/aikar/timings/TimingData.java new file mode 100644 -index 000000000..a5d13a1e4 +index 00000000..a5d13a1e --- /dev/null +++ b/src/main/java/co/aikar/timings/TimingData.java @@ -0,0 +1,122 @@ @@ -476,7 +476,7 @@ index 000000000..a5d13a1e4 +} diff --git a/src/main/java/co/aikar/timings/TimingHandler.java b/src/main/java/co/aikar/timings/TimingHandler.java new file mode 100644 -index 000000000..cc0390c06 +index 00000000..cc0390c0 --- /dev/null +++ b/src/main/java/co/aikar/timings/TimingHandler.java @@ -0,0 +1,227 @@ @@ -709,7 +709,7 @@ index 000000000..cc0390c06 +} diff --git a/src/main/java/co/aikar/timings/TimingHistory.java b/src/main/java/co/aikar/timings/TimingHistory.java new file mode 100644 -index 000000000..ddaed8127 +index 00000000..ddaed812 --- /dev/null +++ b/src/main/java/co/aikar/timings/TimingHistory.java @@ -0,0 +1,354 @@ @@ -1069,7 +1069,7 @@ index 000000000..ddaed8127 +} diff --git a/src/main/java/co/aikar/timings/TimingHistoryEntry.java b/src/main/java/co/aikar/timings/TimingHistoryEntry.java new file mode 100644 -index 000000000..86d5ac6bd +index 00000000..86d5ac6b --- /dev/null +++ b/src/main/java/co/aikar/timings/TimingHistoryEntry.java @@ -0,0 +1,58 @@ @@ -1133,7 +1133,7 @@ index 000000000..86d5ac6bd +} diff --git a/src/main/java/co/aikar/timings/TimingIdentifier.java b/src/main/java/co/aikar/timings/TimingIdentifier.java new file mode 100644 -index 000000000..df142a89b +index 00000000..df142a89 --- /dev/null +++ b/src/main/java/co/aikar/timings/TimingIdentifier.java @@ -0,0 +1,116 @@ @@ -1255,7 +1255,7 @@ index 000000000..df142a89b +} diff --git a/src/main/java/co/aikar/timings/Timings.java b/src/main/java/co/aikar/timings/Timings.java new file mode 100644 -index 000000000..0b34e0d01 +index 00000000..0b34e0d0 --- /dev/null +++ b/src/main/java/co/aikar/timings/Timings.java @@ -0,0 +1,293 @@ @@ -1554,7 +1554,7 @@ index 000000000..0b34e0d01 +} diff --git a/src/main/java/co/aikar/timings/TimingsCommand.java b/src/main/java/co/aikar/timings/TimingsCommand.java new file mode 100644 -index 000000000..c0d8f2016 +index 00000000..c0d8f201 --- /dev/null +++ b/src/main/java/co/aikar/timings/TimingsCommand.java @@ -0,0 +1,122 @@ @@ -1682,7 +1682,7 @@ index 000000000..c0d8f2016 +} diff --git a/src/main/java/co/aikar/timings/TimingsExport.java b/src/main/java/co/aikar/timings/TimingsExport.java new file mode 100644 -index 000000000..5923adfe6 +index 00000000..5923adfe --- /dev/null +++ b/src/main/java/co/aikar/timings/TimingsExport.java @@ -0,0 +1,355 @@ @@ -2043,7 +2043,7 @@ index 000000000..5923adfe6 +} diff --git a/src/main/java/co/aikar/timings/TimingsManager.java b/src/main/java/co/aikar/timings/TimingsManager.java new file mode 100644 -index 000000000..ef824d701 +index 00000000..ef824d70 --- /dev/null +++ b/src/main/java/co/aikar/timings/TimingsManager.java @@ -0,0 +1,188 @@ @@ -2237,7 +2237,7 @@ index 000000000..ef824d701 +} diff --git a/src/main/java/co/aikar/timings/TimingsReportListener.java b/src/main/java/co/aikar/timings/TimingsReportListener.java new file mode 100644 -index 000000000..bf3e059fe +index 00000000..bf3e059f --- /dev/null +++ b/src/main/java/co/aikar/timings/TimingsReportListener.java @@ -0,0 +1,75 @@ @@ -2318,7 +2318,7 @@ index 000000000..bf3e059fe +} diff --git a/src/main/java/co/aikar/timings/UnsafeTimingHandler.java b/src/main/java/co/aikar/timings/UnsafeTimingHandler.java new file mode 100644 -index 000000000..632c49615 +index 00000000..632c4961 --- /dev/null +++ b/src/main/java/co/aikar/timings/UnsafeTimingHandler.java @@ -0,0 +1,53 @@ @@ -2377,7 +2377,7 @@ index 000000000..632c49615 +} diff --git a/src/main/java/co/aikar/util/Counter.java b/src/main/java/co/aikar/util/Counter.java new file mode 100644 -index 000000000..80155072d +index 00000000..80155072 --- /dev/null +++ b/src/main/java/co/aikar/util/Counter.java @@ -0,0 +1,38 @@ @@ -2421,7 +2421,7 @@ index 000000000..80155072d +} diff --git a/src/main/java/co/aikar/util/JSONUtil.java b/src/main/java/co/aikar/util/JSONUtil.java new file mode 100644 -index 000000000..190bf0598 +index 00000000..190bf059 --- /dev/null +++ b/src/main/java/co/aikar/util/JSONUtil.java @@ -0,0 +1,140 @@ @@ -2567,7 +2567,7 @@ index 000000000..190bf0598 +} diff --git a/src/main/java/co/aikar/util/LoadingIntMap.java b/src/main/java/co/aikar/util/LoadingIntMap.java new file mode 100644 -index 000000000..63a899c7d +index 00000000..63a899c7 --- /dev/null +++ b/src/main/java/co/aikar/util/LoadingIntMap.java @@ -0,0 +1,76 @@ @@ -2649,7 +2649,7 @@ index 000000000..63a899c7d +} diff --git a/src/main/java/co/aikar/util/LoadingMap.java b/src/main/java/co/aikar/util/LoadingMap.java new file mode 100644 -index 000000000..aedbb0332 +index 00000000..aedbb033 --- /dev/null +++ b/src/main/java/co/aikar/util/LoadingMap.java @@ -0,0 +1,368 @@ @@ -3023,7 +3023,7 @@ index 000000000..aedbb0332 +} diff --git a/src/main/java/co/aikar/util/MRUMapCache.java b/src/main/java/co/aikar/util/MRUMapCache.java new file mode 100644 -index 000000000..5989ee212 +index 00000000..5989ee21 --- /dev/null +++ b/src/main/java/co/aikar/util/MRUMapCache.java @@ -0,0 +1,111 @@ @@ -3139,7 +3139,7 @@ index 000000000..5989ee212 + } +} diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 1c1f650d8..8f46899fd 100644 +index 0822b8e5..940c643d 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java @@ -574,7 +574,6 @@ public final class Bukkit { @@ -3151,10 +3151,10 @@ index 1c1f650d8..8f46899fd 100644 /** diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 2a55a9548..0f9e5ba72 100644 +index 11c5c205..c197e381 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1252,6 +1252,26 @@ public interface Server extends PluginMessageRecipient { +@@ -1250,6 +1250,26 @@ public interface Server extends PluginMessageRecipient { throw new UnsupportedOperationException( "Not supported yet." ); } @@ -3182,7 +3182,7 @@ index 2a55a9548..0f9e5ba72 100644 * Sends the component to the player * diff --git a/src/main/java/org/bukkit/UnsafeValues.java b/src/main/java/org/bukkit/UnsafeValues.java -index 247d194f8..72c5501e8 100644 +index 247d194f..72c5501e 100644 --- a/src/main/java/org/bukkit/UnsafeValues.java +++ b/src/main/java/org/bukkit/UnsafeValues.java @@ -69,4 +69,12 @@ public interface UnsafeValues { @@ -3200,7 +3200,7 @@ index 247d194f8..72c5501e8 100644 } diff --git a/src/main/java/org/bukkit/command/BufferedCommandSender.java b/src/main/java/org/bukkit/command/BufferedCommandSender.java new file mode 100644 -index 000000000..f9a00aecc +index 00000000..f9a00aec --- /dev/null +++ b/src/main/java/org/bukkit/command/BufferedCommandSender.java @@ -0,0 +1,21 @@ @@ -3226,7 +3226,7 @@ index 000000000..f9a00aecc + } +} diff --git a/src/main/java/org/bukkit/command/Command.java b/src/main/java/org/bukkit/command/Command.java -index 4bfc21468..03bdc1622 100644 +index 4bfc2146..03bdc162 100644 --- a/src/main/java/org/bukkit/command/Command.java +++ b/src/main/java/org/bukkit/command/Command.java @@ -33,7 +33,8 @@ public abstract class Command { @@ -3256,7 +3256,7 @@ index 4bfc21468..03bdc1622 100644 return true; } diff --git a/src/main/java/org/bukkit/command/FormattedCommandAlias.java b/src/main/java/org/bukkit/command/FormattedCommandAlias.java -index d6c8938b1..a6ad94ef9 100644 +index d6c8938b..a6ad94ef 100644 --- a/src/main/java/org/bukkit/command/FormattedCommandAlias.java +++ b/src/main/java/org/bukkit/command/FormattedCommandAlias.java @@ -9,6 +9,7 @@ public class FormattedCommandAlias extends Command { @@ -3280,7 +3280,7 @@ index d6c8938b1..a6ad94ef9 100644 } diff --git a/src/main/java/org/bukkit/command/MessageCommandSender.java b/src/main/java/org/bukkit/command/MessageCommandSender.java new file mode 100644 -index 000000000..ca1893e9f +index 00000000..ca1893e9 --- /dev/null +++ b/src/main/java/org/bukkit/command/MessageCommandSender.java @@ -0,0 +1,114 @@ @@ -3399,7 +3399,7 @@ index 000000000..ca1893e9f + +} diff --git a/src/main/java/org/bukkit/command/SimpleCommandMap.java b/src/main/java/org/bukkit/command/SimpleCommandMap.java -index 81e4fa573..f020cb04e 100644 +index 81e4fa57..f020cb04 100644 --- a/src/main/java/org/bukkit/command/SimpleCommandMap.java +++ b/src/main/java/org/bukkit/command/SimpleCommandMap.java @@ -15,7 +15,6 @@ import org.bukkit.command.defaults.BukkitCommand; @@ -3456,7 +3456,7 @@ index 81e4fa573..f020cb04e 100644 diff --git a/src/main/java/org/bukkit/command/defaults/TimingsCommand.java b/src/main/java/org/bukkit/command/defaults/TimingsCommand.java deleted file mode 100644 -index 6023e4f61..000000000 +index 6023e4f6..00000000 --- a/src/main/java/org/bukkit/command/defaults/TimingsCommand.java +++ /dev/null @@ -1,253 +0,0 @@ @@ -3714,7 +3714,7 @@ index 6023e4f61..000000000 - // Spigot end -} diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 06762a696..4f8ae7a83 100644 +index 06762a69..4f8ae7a8 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java @@ -1566,6 +1566,11 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @@ -3730,7 +3730,7 @@ index 06762a696..4f8ae7a83 100644 @NotNull diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java -index f648c5989..78a2d2f8d 100644 +index f648c598..78a2d2f8 100644 --- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java +++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java @@ -297,7 +297,6 @@ public final class SimplePluginManager implements PluginManager { @@ -3787,7 +3787,7 @@ index f648c5989..78a2d2f8d 100644 } } diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java -index 1173e433a..82e379d16 100644 +index 1173e433..82e379d1 100644 --- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java +++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java @@ -53,7 +53,6 @@ public final class JavaPluginLoader implements PluginLoader { @@ -3830,7 +3830,7 @@ index 1173e433a..82e379d16 100644 eventSet.add(new TimedRegisteredListener(listener, executor, eh.priority(), plugin, eh.ignoreCancelled())); } else { diff --git a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java -index 0ffc1dfdb..b859796b4 100644 +index 0ffc1dfd..b859796b 100644 --- a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java +++ b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java @@ -24,7 +24,8 @@ import org.jetbrains.annotations.Nullable; @@ -3844,7 +3844,7 @@ index 0ffc1dfdb..b859796b4 100644 private final Map> classes = new ConcurrentHashMap>(); private final PluginDescriptionFile description; diff --git a/src/main/java/org/bukkit/util/CachedServerIcon.java b/src/main/java/org/bukkit/util/CachedServerIcon.java -index 5ca863b36..612958a33 100644 +index 5ca863b3..612958a3 100644 --- a/src/main/java/org/bukkit/util/CachedServerIcon.java +++ b/src/main/java/org/bukkit/util/CachedServerIcon.java @@ -2,6 +2,7 @@ package org.bukkit.util; @@ -3867,7 +3867,7 @@ index 5ca863b36..612958a33 100644 + +} diff --git a/src/main/java/org/spigotmc/CustomTimingsHandler.java b/src/main/java/org/spigotmc/CustomTimingsHandler.java -index 6a8f7f551..3cbe5c2bb 100644 +index 6a8f7f55..3cbe5c2b 100644 --- a/src/main/java/org/spigotmc/CustomTimingsHandler.java +++ b/src/main/java/org/spigotmc/CustomTimingsHandler.java @@ -1,3 +1,26 @@ diff --git a/Spigot-API-Patches/0006-Add-getTPS-method.patch b/Spigot-API-Patches/0006-Add-getTPS-method.patch index e1d0ca5b2..f34d8cc9b 100644 --- a/Spigot-API-Patches/0006-Add-getTPS-method.patch +++ b/Spigot-API-Patches/0006-Add-getTPS-method.patch @@ -1,14 +1,14 @@ -From f14a06e28d6591edd48b1b57a6709a8cf93112c4 Mon Sep 17 00:00:00 2001 +From 3dc036320c5c47452a57756953fb08f509c98008 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 29 Feb 2016 17:24:57 -0600 Subject: [PATCH] Add getTPS method diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 8f46899f..62b120ef 100644 +index 940c643d..9f87f333 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1313,6 +1313,17 @@ public final class Bukkit { +@@ -1311,6 +1311,17 @@ public final class Bukkit { return server.getEntity(uuid); } @@ -27,10 +27,10 @@ index 8f46899f..62b120ef 100644 * Get the advancement specified by this key. * diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 0f9e5ba7..3912c434 100644 +index c197e381..e1dfa92a 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1098,6 +1098,16 @@ public interface Server extends PluginMessageRecipient { +@@ -1096,6 +1096,16 @@ public interface Server extends PluginMessageRecipient { @Nullable Entity getEntity(@NotNull UUID uuid); diff --git a/Spigot-API-Patches/0014-Expose-server-CommandMap.patch b/Spigot-API-Patches/0014-Expose-server-CommandMap.patch index 00a0a8a91..79c072cfb 100644 --- a/Spigot-API-Patches/0014-Expose-server-CommandMap.patch +++ b/Spigot-API-Patches/0014-Expose-server-CommandMap.patch @@ -1,14 +1,14 @@ -From 8359b55e6f3fabe4f725ca31005c4cad376d4a23 Mon Sep 17 00:00:00 2001 +From 3a982ed3a1fb226be1a1a7cc29f0aa77a91e6c8b Mon Sep 17 00:00:00 2001 From: kashike Date: Mon, 29 Feb 2016 19:48:59 -0600 Subject: [PATCH] Expose server CommandMap diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 62b120ef..e4e1c980 100644 +index 9f87f333..63e48ef3 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1487,6 +1487,19 @@ public final class Bukkit { +@@ -1485,6 +1485,19 @@ public final class Bukkit { return server.getUnsafe(); } @@ -29,10 +29,10 @@ index 62b120ef..e4e1c980 100644 public static Server.Spigot spigot() { diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 3912c434..f0850919 100644 +index e1dfa92a..87300a5d 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1108,6 +1108,15 @@ public interface Server extends PluginMessageRecipient { +@@ -1106,6 +1106,15 @@ public interface Server extends PluginMessageRecipient { public double[] getTPS(); // Paper end diff --git a/Spigot-API-Patches/0022-Use-ASM-for-event-executors.patch b/Spigot-API-Patches/0022-Use-ASM-for-event-executors.patch index 4ad015879..52db57805 100644 --- a/Spigot-API-Patches/0022-Use-ASM-for-event-executors.patch +++ b/Spigot-API-Patches/0022-Use-ASM-for-event-executors.patch @@ -1,4 +1,4 @@ -From b3a2a2cac156b3ed3a36ba449e95547aced6dfb7 Mon Sep 17 00:00:00 2001 +From 39aa81607372199ad89fe66301dc008dc4326e30 Mon Sep 17 00:00:00 2001 From: Techcable Date: Thu, 3 Mar 2016 13:20:33 -0700 Subject: [PATCH] Use ASM for event executors. @@ -6,10 +6,10 @@ Subject: [PATCH] Use ASM for event executors. Uses method handles for private or static methods. diff --git a/pom.xml b/pom.xml -index b7f7eeff..8f2730df 100644 +index 3dac66d3..aceb6bbb 100644 --- a/pom.xml +++ b/pom.xml -@@ -130,6 +130,17 @@ +@@ -129,6 +129,17 @@ 7.1 test diff --git a/Spigot-API-Patches/0025-Add-command-to-reload-permissions.yml-and-require-co.patch b/Spigot-API-Patches/0025-Add-command-to-reload-permissions.yml-and-require-co.patch index aa21d35fc..567c12a27 100644 --- a/Spigot-API-Patches/0025-Add-command-to-reload-permissions.yml-and-require-co.patch +++ b/Spigot-API-Patches/0025-Add-command-to-reload-permissions.yml-and-require-co.patch @@ -1,4 +1,4 @@ -From 013b14c932a46c9220116f86f42ee2980735e963 Mon Sep 17 00:00:00 2001 +From 6df33d108c315e2684b89eaed4eb335c049684a3 Mon Sep 17 00:00:00 2001 From: William Date: Fri, 18 Mar 2016 03:28:07 -0400 Subject: [PATCH] Add command to reload permissions.yml and require confirm to @@ -6,10 +6,10 @@ Subject: [PATCH] Add command to reload permissions.yml and require confirm to diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 3c76d5a8..d1845cf3 100644 +index b92304e9..a3682b29 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1518,6 +1518,13 @@ public final class Bukkit { +@@ -1516,6 +1516,13 @@ public final class Bukkit { public static org.bukkit.command.CommandMap getCommandMap() { return server.getCommandMap(); } @@ -24,10 +24,10 @@ index 3c76d5a8..d1845cf3 100644 @NotNull diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 3359434b..41731a28 100644 +index d35d2def..18faba0e 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1340,4 +1340,6 @@ public interface Server extends PluginMessageRecipient { +@@ -1338,4 +1338,6 @@ public interface Server extends PluginMessageRecipient { @NotNull Spigot spigot(); // Spigot end diff --git a/Spigot-API-Patches/0039-Allow-Reloading-of-Command-Aliases.patch b/Spigot-API-Patches/0039-Allow-Reloading-of-Command-Aliases.patch index 65dabd40a..ddb176726 100644 --- a/Spigot-API-Patches/0039-Allow-Reloading-of-Command-Aliases.patch +++ b/Spigot-API-Patches/0039-Allow-Reloading-of-Command-Aliases.patch @@ -1,4 +1,4 @@ -From 5ecb0a4ced346f99f3fe3b209ec4b6bf6bd7b2c8 Mon Sep 17 00:00:00 2001 +From 8e06e63bd85cca024c4e38e35741ddac6f809b48 Mon Sep 17 00:00:00 2001 From: willies952002 Date: Mon, 28 Nov 2016 10:16:39 -0500 Subject: [PATCH] Allow Reloading of Command Aliases @@ -6,10 +6,10 @@ Subject: [PATCH] Allow Reloading of Command Aliases Reload the aliases stored in commands.yml diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index d1845cf3..bef53644 100644 +index a3682b29..a0a8b540 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1525,6 +1525,15 @@ public final class Bukkit { +@@ -1523,6 +1523,15 @@ public final class Bukkit { public static void reloadPermissions() { server.reloadPermissions(); } @@ -26,10 +26,10 @@ index d1845cf3..bef53644 100644 @NotNull diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 41731a28..54da4d99 100644 +index 18faba0e..d20e044d 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1342,4 +1342,6 @@ public interface Server extends PluginMessageRecipient { +@@ -1340,4 +1340,6 @@ public interface Server extends PluginMessageRecipient { // Spigot end void reloadPermissions(); // Paper diff --git a/Spigot-API-Patches/0050-Add-configuration-option-to-prevent-player-names-fro.patch b/Spigot-API-Patches/0050-Add-configuration-option-to-prevent-player-names-fro.patch index 7eef9fbc2..517302e1e 100644 --- a/Spigot-API-Patches/0050-Add-configuration-option-to-prevent-player-names-fro.patch +++ b/Spigot-API-Patches/0050-Add-configuration-option-to-prevent-player-names-fro.patch @@ -1,4 +1,4 @@ -From 46135ee897ecabd5085a6fbd6c82780ac61731e1 Mon Sep 17 00:00:00 2001 +From 7070e4f10451715c06c1766937634f1b7f4ab98d Mon Sep 17 00:00:00 2001 From: kashike Date: Fri, 9 Jun 2017 07:24:24 -0700 Subject: [PATCH] Add configuration option to prevent player names from being @@ -6,10 +6,10 @@ Subject: [PATCH] Add configuration option to prevent player names from being diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index bef53644..30142250 100644 +index a0a8b540..b5b77b2d 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1534,6 +1534,16 @@ public final class Bukkit { +@@ -1532,6 +1532,16 @@ public final class Bukkit { public static boolean reloadCommandAliases() { return server.reloadCommandAliases(); } @@ -27,10 +27,10 @@ index bef53644..30142250 100644 @NotNull diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 54da4d99..e91f74b7 100644 +index d20e044d..103897fb 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1344,4 +1344,14 @@ public interface Server extends PluginMessageRecipient { +@@ -1342,4 +1342,14 @@ public interface Server extends PluginMessageRecipient { void reloadPermissions(); // Paper boolean reloadCommandAliases(); // Paper diff --git a/Spigot-API-Patches/0056-Basic-PlayerProfile-API.patch b/Spigot-API-Patches/0056-Basic-PlayerProfile-API.patch index 2947e9d15..cc324ab04 100644 --- a/Spigot-API-Patches/0056-Basic-PlayerProfile-API.patch +++ b/Spigot-API-Patches/0056-Basic-PlayerProfile-API.patch @@ -1,4 +1,4 @@ -From 950b96830a04000914d9a8dce07953090dccec2f Mon Sep 17 00:00:00 2001 +From 70559f747cdfd82b811d7b2e356669afc267f9e7 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 15 Jan 2018 21:46:46 -0500 Subject: [PATCH] Basic PlayerProfile API @@ -235,10 +235,10 @@ index 00000000..7b3b6ef5 + } +} diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 30142250..24b761fe 100644 +index b5b77b2d..161a714e 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1544,6 +1544,40 @@ public final class Bukkit { +@@ -1542,6 +1542,40 @@ public final class Bukkit { public static boolean suggestPlayerNamesWhenNullTabCompletions() { return server.suggestPlayerNamesWhenNullTabCompletions(); } @@ -280,10 +280,10 @@ index 30142250..24b761fe 100644 @NotNull diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index e91f74b7..9b767d7c 100644 +index 103897fb..463724e4 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1353,5 +1353,33 @@ public interface Server extends PluginMessageRecipient { +@@ -1351,5 +1351,33 @@ public interface Server extends PluginMessageRecipient { * @return true if player names should be suggested */ boolean suggestPlayerNamesWhenNullTabCompletions(); diff --git a/Spigot-API-Patches/0067-Allow-plugins-to-use-SLF4J-for-logging.patch b/Spigot-API-Patches/0067-Allow-plugins-to-use-SLF4J-for-logging.patch index 944ba65ec..ebb97a2c2 100644 --- a/Spigot-API-Patches/0067-Allow-plugins-to-use-SLF4J-for-logging.patch +++ b/Spigot-API-Patches/0067-Allow-plugins-to-use-SLF4J-for-logging.patch @@ -1,4 +1,4 @@ -From f40e94e3adcc3372c06c1cec02bce37804413e93 Mon Sep 17 00:00:00 2001 +From f7a220fa4c20104eba993f5b963526ae0b91cdaa Mon Sep 17 00:00:00 2001 From: Minecrell Date: Thu, 21 Sep 2017 16:33:12 +0200 Subject: [PATCH] Allow plugins to use SLF4J for logging @@ -14,10 +14,10 @@ it without having to shade it in the plugin and going through several layers of logging abstraction. diff --git a/pom.xml b/pom.xml -index 2f68fba2..4f394580 100644 +index aceb6bbb..dbbb5c72 100644 --- a/pom.xml +++ b/pom.xml -@@ -111,6 +111,13 @@ +@@ -110,6 +110,13 @@ 17.0.0 provided diff --git a/Spigot-API-Patches/0165-Make-the-default-permission-message-configurable.patch b/Spigot-API-Patches/0165-Make-the-default-permission-message-configurable.patch index a9debbf0e..6ad6f1d39 100644 --- a/Spigot-API-Patches/0165-Make-the-default-permission-message-configurable.patch +++ b/Spigot-API-Patches/0165-Make-the-default-permission-message-configurable.patch @@ -1,14 +1,14 @@ -From b0f277640259a7705d3bcdc87349f0c91a93388f Mon Sep 17 00:00:00 2001 +From cb587e0bd55df4951e9a4cb976fc2e48aad27cc5 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Sun, 18 Nov 2018 19:44:54 +0000 Subject: [PATCH] Make the default permission message configurable diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index de42be5b..64955c6e 100644 +index 0c519c41..2148a3c2 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1559,6 +1559,15 @@ public final class Bukkit { +@@ -1557,6 +1557,15 @@ public final class Bukkit { return server.suggestPlayerNamesWhenNullTabCompletions(); } @@ -25,10 +25,10 @@ index de42be5b..64955c6e 100644 * Creates a PlayerProfile for the specified uuid, with name as null * @param uuid UUID to create profile for diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 9c92517b..d0b2ab61 100644 +index 8a76df52..1cbb9bc6 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1366,6 +1366,13 @@ public interface Server extends PluginMessageRecipient { +@@ -1364,6 +1364,13 @@ public interface Server extends PluginMessageRecipient { */ boolean suggestPlayerNamesWhenNullTabCompletions(); diff --git a/Spigot-API-Patches/0179-Flip-some-Spigot-API-null-annotations.patch b/Spigot-API-Patches/0179-Flip-some-Spigot-API-null-annotations.patch index 7cb81f0ef..bb1a768c4 100644 --- a/Spigot-API-Patches/0179-Flip-some-Spigot-API-null-annotations.patch +++ b/Spigot-API-Patches/0179-Flip-some-Spigot-API-null-annotations.patch @@ -1,4 +1,4 @@ -From 1ae0dd77c2f3a864593862c9d25c9c9cbc9e1339 Mon Sep 17 00:00:00 2001 +From 4227a867264d348f9ba7eecf6e1a5623287a56e2 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 24 Mar 2019 18:39:01 -0400 Subject: [PATCH] Flip some Spigot API null annotations @@ -9,10 +9,10 @@ a ton of noise to plugin developers. These do not help plugin developers if they bring moise noise than value. diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 64955c6e..bb03a0f4 100644 +index 2148a3c2..6db69159 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -1155,7 +1155,7 @@ public final class Bukkit { +@@ -1153,7 +1153,7 @@ public final class Bukkit { * * @return the scoreboard manager or null if no worlds are loaded. */ @@ -21,7 +21,7 @@ index 64955c6e..bb03a0f4 100644 public static ScoreboardManager getScoreboardManager() { return server.getScoreboardManager(); } -@@ -1452,7 +1452,7 @@ public final class Bukkit { +@@ -1450,7 +1450,7 @@ public final class Bukkit { * @param clazz the class of the tag entries * @return the tag or null */ @@ -62,10 +62,10 @@ index 4e69f277..2a40da99 100644 if (this.world == null) { return null; diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index d0b2ab61..0e7b48f2 100644 +index 1cbb9bc6..27d3b5ad 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -964,7 +964,7 @@ public interface Server extends PluginMessageRecipient { +@@ -962,7 +962,7 @@ public interface Server extends PluginMessageRecipient { * * @return the scoreboard manager or null if no worlds are loaded. */ @@ -74,7 +74,7 @@ index d0b2ab61..0e7b48f2 100644 ScoreboardManager getScoreboardManager(); /** -@@ -1234,7 +1234,7 @@ public interface Server extends PluginMessageRecipient { +@@ -1232,7 +1232,7 @@ public interface Server extends PluginMessageRecipient { * @param clazz the class of the tag entries * @return the tag or null */ diff --git a/Spigot-Server-Patches/0001-POM-Changes.patch b/Spigot-Server-Patches/0001-POM-Changes.patch index 2c4f6cf1b..99cfe2cbf 100644 --- a/Spigot-Server-Patches/0001-POM-Changes.patch +++ b/Spigot-Server-Patches/0001-POM-Changes.patch @@ -1,11 +1,11 @@ -From f754c4b64a90c21d79e2cfa1dc797acd66be8d59 Mon Sep 17 00:00:00 2001 +From 4bbae6ad58eb4e2328787bc1bc4eaf98bee9d13b Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Mon, 29 Feb 2016 20:40:33 -0600 Subject: [PATCH] POM Changes diff --git a/pom.xml b/pom.xml -index 982ac22e8e..099d7218c9 100644 +index 6a1ba9149..7b9fcb2c0 100644 --- a/pom.xml +++ b/pom.xml @@ -1,15 +1,14 @@ @@ -16,7 +16,7 @@ index 982ac22e8e..099d7218c9 100644 - spigot + paper jar - 1.14-R0.1-SNAPSHOT + 1.14.1-R0.1-SNAPSHOT - Spigot - https://www.spigotmc.org/ + Paper @@ -27,7 +27,7 @@ index 982ac22e8e..099d7218c9 100644 + UTF-8 unknown - 1.14 + 1.14.1 @@ -22,16 +21,16 @@ @@ -146,7 +146,7 @@ index 982ac22e8e..099d7218c9 100644 diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java -index 93046379d0..674096cab1 100644 +index 93046379d..674096cab 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 { diff --git a/Spigot-Server-Patches/0002-Paper-config-files.patch b/Spigot-Server-Patches/0002-Paper-config-files.patch index 641e3b876..c22f4771f 100644 --- a/Spigot-Server-Patches/0002-Paper-config-files.patch +++ b/Spigot-Server-Patches/0002-Paper-config-files.patch @@ -1,4 +1,4 @@ -From 3a8d4c91477d6a37245f9de40cc06933b187a23d Mon Sep 17 00:00:00 2001 +From d4985c027b143f266a5f6aed5f3786189b01d347 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Mon, 29 Feb 2016 21:02:09 -0600 Subject: [PATCH] Paper config files @@ -535,12 +535,12 @@ index e1ba833f3..b60956218 100644 this.setSpawnAnimals(dedicatedserverproperties.spawnAnimals); this.setSpawnNPCs(dedicatedserverproperties.spawnNpcs); diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index fd8397bd4..77015bc06 100644 +index 36e42f900..8371631db 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -134,9 +134,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener { private static final DataWatcherObject aC = DataWatcher.a(Entity.class, DataWatcherRegistry.i); - protected static final DataWatcherObject X = DataWatcher.a(Entity.class, DataWatcherRegistry.s); + protected static final DataWatcherObject POSE = DataWatcher.a(Entity.class, DataWatcherRegistry.s); public boolean inChunk; - public int chunkX; - public int chunkY; @@ -552,7 +552,7 @@ index fd8397bd4..77015bc06 100644 public boolean impulse; public int portalCooldown; diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java -index ee43aa24d..01d9ed69c 100644 +index 659e0ea50..8c918d0d6 100644 --- a/src/main/java/net/minecraft/server/EntityTypes.java +++ b/src/main/java/net/minecraft/server/EntityTypes.java @@ -4,6 +4,7 @@ import com.mojang.datafixers.DataFixUtils; @@ -575,7 +575,7 @@ index ee43aa24d..01d9ed69c 100644 + // Paper end } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 84155573d..83fdea893 100644 +index cc3f201c9..923d8e28e 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -86,6 +86,8 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -596,7 +596,7 @@ index 84155573d..83fdea893 100644 this.world = new CraftWorld((WorldServer) this, gen, env); this.ticksPerAnimalSpawns = this.getServer().getTicksPerAnimalSpawns(); // CraftBukkit diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index be03fe24b..5dc2bb124 100644 +index 3edc623a7..7fe76b8d5 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -751,6 +751,7 @@ public final class CraftServer implements Server { diff --git a/Spigot-Server-Patches/0003-MC-Dev-fixes.patch b/Spigot-Server-Patches/0003-MC-Dev-fixes.patch index ae138bece..8894be9ad 100644 --- a/Spigot-Server-Patches/0003-MC-Dev-fixes.patch +++ b/Spigot-Server-Patches/0003-MC-Dev-fixes.patch @@ -1,4 +1,4 @@ -From 2947fccbf09877c62048ba716cd3a027a5e8954e Mon Sep 17 00:00:00 2001 +From f1cff95a232b546bacd9800d360813d6f0cdffa3 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 30 Mar 2016 19:36:20 -0400 Subject: [PATCH] MC Dev fixes @@ -75,8 +75,50 @@ index c973ab607..30701fd7f 100644 + return this.blockIds.a(iblockdata); // Paper - decompile fix } } +diff --git a/src/main/java/net/minecraft/server/EntityFox.java b/src/main/java/net/minecraft/server/EntityFox.java +index 4faec95a3..87091d804 100644 +--- a/src/main/java/net/minecraft/server/EntityFox.java ++++ b/src/main/java/net/minecraft/server/EntityFox.java +@@ -97,7 +97,7 @@ public class EntityFox extends EntityAnimal { + this.goalSelector.a(11, new EntityFox.j(this, EntityHuman.class, 24.0F)); + this.goalSelector.a(12, new EntityFox.r()); + this.targetSelector.a(3, new EntityFox.a(EntityLiving.class, false, false, (entityliving) -> { +- return EntityFox.bF.test(entityliving) && !this.c(entityliving.getUniqueID()); ++ return EntityFox.bF.test((EntityLiving) entityliving) && !this.c(((EntityLiving) entityliving).getUniqueID()); // Paper - decompile fix + })); + } + +@@ -267,8 +267,8 @@ public class EntityFox extends EntityAnimal { + private List ek() { + List list = Lists.newArrayList(); + +- list.add(((Optional) this.datawatcher.get(EntityFox.bB)).orElse((Object) null)); +- list.add(((Optional) this.datawatcher.get(EntityFox.bD)).orElse((Object) null)); ++ list.add((this.datawatcher.get(EntityFox.bB)).orElse(null)); // Paper - decompiler fix ++ list.add((this.datawatcher.get(EntityFox.bD)).orElse(null)); // Paper - decompiler fix + return list; + } + +@@ -983,7 +983,7 @@ public class EntityFox extends EntityAnimal { + private int f; + + public r() { +- super(null); ++ super(); // Paper - decompiler fix + this.a(EnumSet.of(PathfinderGoal.Type.MOVE, PathfinderGoal.Type.LOOK)); + } + +@@ -1035,7 +1035,7 @@ public class EntityFox extends EntityAnimal { + private int c; + + public t() { +- super(null); ++ super(); // Paper - decompiler fix + this.c = EntityFox.this.random.nextInt(140); + this.a(EnumSet.of(PathfinderGoal.Type.MOVE, PathfinderGoal.Type.LOOK, PathfinderGoal.Type.JUMP)); + } diff --git a/src/main/java/net/minecraft/server/EntityVindicator.java b/src/main/java/net/minecraft/server/EntityVindicator.java -index 45370ad5d..b566e7786 100644 +index 1692e6b47..dbd189afe 100644 --- a/src/main/java/net/minecraft/server/EntityVindicator.java +++ b/src/main/java/net/minecraft/server/EntityVindicator.java @@ -25,7 +25,7 @@ public class EntityVindicator extends EntityIllagerAbstract { @@ -111,10 +153,19 @@ index d8d226708..3de9d264d 100644 this.e = bifunction; } diff --git a/src/main/java/net/minecraft/server/IAsyncTaskHandler.java b/src/main/java/net/minecraft/server/IAsyncTaskHandler.java -index 85c28ec8e..7016b03f6 100644 +index 053d408d3..4510018d6 100644 --- a/src/main/java/net/minecraft/server/IAsyncTaskHandler.java +++ b/src/main/java/net/minecraft/server/IAsyncTaskHandler.java -@@ -77,14 +77,14 @@ public abstract class IAsyncTaskHandler implements Mailbox implements Mailbox implements Mailbox> a = (Map) SystemUtils.a((Object) Maps.newHashMap(), (hashmap) -> { + public static final Map> a = SystemUtils.a(Maps.newHashMap(), (hashmap) -> { // Paper - decompile fix hashmap.put(VillagerProfession.FARMER, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.WHEAT, 20, 8, 2), new VillagerTrades.b(Items.POTATO, 26, 8, 2), new VillagerTrades.b(Items.CARROT, 22, 8, 2), new VillagerTrades.b(Items.BEETROOT, 15, 8, 2), new VillagerTrades.h(Items.BREAD, 1, 6, 8, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Blocks.PUMPKIN, 6, 6, 10), new VillagerTrades.h(Items.PUMPKIN_PIE, 1, 4, 5), new VillagerTrades.h(Items.APPLE, 1, 4, 8, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.h(Items.COOKIE, 3, 18, 10), new VillagerTrades.b(Blocks.MELON, 4, 6, 20)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.h(Blocks.CAKE, 1, 1, 6, 15), new VillagerTrades.i(MobEffects.FASTER_MOVEMENT, 160, 15), new VillagerTrades.i(MobEffects.JUMP, 160, 15), new VillagerTrades.i(MobEffects.WEAKNESS, 140, 15), new VillagerTrades.i(MobEffects.BLINDNESS, 120, 15), new VillagerTrades.i(MobEffects.POISON, 280, 15), new VillagerTrades.i(MobEffects.SATURATION, 7, 15)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.h(Items.GOLDEN_CARROT, 3, 3, 30), new VillagerTrades.h(Items.GLISTERING_MELON_SLICE, 4, 3, 30)}))); -- hashmap.put(VillagerProfession.FISHERMAN, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.STRING, 20, 8, 2), new VillagerTrades.b(Items.COAL, 10, 8, 2), new VillagerTrades.g(Items.COD, 6, Items.COOKED_COD, 6, 8, 1), new VillagerTrades.h(Items.COD_BUCKET, 3, 1, 8, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.COD, 15, 8, 10), new VillagerTrades.g(Items.SALMON, 6, Items.COOKED_SALMON, 6, 8, 5), new VillagerTrades.h(Items.pS, 2, 1, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.SALMON, 13, 8, 20), new VillagerTrades.e(Items.FISHING_ROD, 3, 2, 10, 0.2F)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.TROPICAL_FISH, 6, 6, 30)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.PUFFERFISH, 4, 6, 30), new VillagerTrades.c(1, 6, 30, ImmutableMap.builder().put(VillagerType.c, Items.OAK_BOAT).put(VillagerType.g, Items.SPRUCE_BOAT).put(VillagerType.e, Items.SPRUCE_BOAT).put(VillagerType.a, Items.JUNGLE_BOAT).put(VillagerType.b, Items.JUNGLE_BOAT).put(VillagerType.d, Items.ACACIA_BOAT).put(VillagerType.f, Items.DARK_OAK_BOAT).build())}))); -+ hashmap.put(VillagerProfession.FISHERMAN, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.STRING, 20, 8, 2), new VillagerTrades.b(Items.COAL, 10, 8, 2), new VillagerTrades.g(Items.COD, 6, Items.COOKED_COD, 6, 8, 1), new VillagerTrades.h(Items.COD_BUCKET, 3, 1, 8, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.COD, 15, 8, 10), new VillagerTrades.g(Items.SALMON, 6, Items.COOKED_SALMON, 6, 8, 5), new VillagerTrades.h(Items.pS, 2, 1, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.SALMON, 13, 8, 20), new VillagerTrades.e(Items.FISHING_ROD, 3, 2, 10, 0.2F)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.TROPICAL_FISH, 6, 6, 30)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.PUFFERFISH, 4, 6, 30), new VillagerTrades.c(1, 6, 30, ImmutableMap.builder().put(VillagerType.c, Items.OAK_BOAT).put(VillagerType.g, Items.SPRUCE_BOAT).put(VillagerType.e, Items.SPRUCE_BOAT).put(VillagerType.a, Items.JUNGLE_BOAT).put(VillagerType.b, Items.JUNGLE_BOAT).put(VillagerType.d, Items.ACACIA_BOAT).put(VillagerType.f, Items.DARK_OAK_BOAT).build())}))); // Paper - decompile fix +- hashmap.put(VillagerProfession.FISHERMAN, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.STRING, 20, 8, 2), new VillagerTrades.b(Items.COAL, 10, 8, 2), new VillagerTrades.g(Items.COD, 6, Items.COOKED_COD, 6, 8, 1), new VillagerTrades.h(Items.COD_BUCKET, 3, 1, 8, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.COD, 15, 8, 10), new VillagerTrades.g(Items.SALMON, 6, Items.COOKED_SALMON, 6, 8, 5), new VillagerTrades.h(Items.pS, 2, 1, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.SALMON, 13, 8, 20), new VillagerTrades.e(Items.FISHING_ROD, 3, 2, 10, 0.2F)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.TROPICAL_FISH, 6, 6, 30)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.PUFFERFISH, 4, 6, 30), new VillagerTrades.c(1, 6, 30, ImmutableMap.builder().put(VillagerType.PLAINS, Items.OAK_BOAT).put(VillagerType.TAIGA, Items.SPRUCE_BOAT).put(VillagerType.SNOW, Items.SPRUCE_BOAT).put(VillagerType.DESERT, Items.JUNGLE_BOAT).put(VillagerType.JUNGLE, Items.JUNGLE_BOAT).put(VillagerType.SAVANNA, Items.ACACIA_BOAT).put(VillagerType.SWAMP, Items.DARK_OAK_BOAT).build())}))); ++ hashmap.put(VillagerProfession.FISHERMAN, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.STRING, 20, 8, 2), new VillagerTrades.b(Items.COAL, 10, 8, 2), new VillagerTrades.g(Items.COD, 6, Items.COOKED_COD, 6, 8, 1), new VillagerTrades.h(Items.COD_BUCKET, 3, 1, 8, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.COD, 15, 8, 10), new VillagerTrades.g(Items.SALMON, 6, Items.COOKED_SALMON, 6, 8, 5), new VillagerTrades.h(Items.pS, 2, 1, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.SALMON, 13, 8, 20), new VillagerTrades.e(Items.FISHING_ROD, 3, 2, 10, 0.2F)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.TROPICAL_FISH, 6, 6, 30)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.PUFFERFISH, 4, 6, 30), new VillagerTrades.c(1, 6, 30, ImmutableMap.builder().put(VillagerType.PLAINS, Items.OAK_BOAT).put(VillagerType.TAIGA, Items.SPRUCE_BOAT).put(VillagerType.SNOW, Items.SPRUCE_BOAT).put(VillagerType.DESERT, Items.JUNGLE_BOAT).put(VillagerType.JUNGLE, Items.JUNGLE_BOAT).put(VillagerType.SAVANNA, Items.ACACIA_BOAT).put(VillagerType.SWAMP, Items.DARK_OAK_BOAT).build())}))); // Paper - decompile fix hashmap.put(VillagerProfession.SHEPHERD, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Blocks.WHITE_WOOL, 18, 8, 2), new VillagerTrades.b(Blocks.BROWN_WOOL, 18, 8, 2), new VillagerTrades.b(Blocks.BLACK_WOOL, 18, 8, 2), new VillagerTrades.b(Blocks.GRAY_WOOL, 18, 8, 2), new VillagerTrades.h(Items.SHEARS, 2, 1, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.WHITE_DYE, 12, 8, 10), new VillagerTrades.b(Items.GRAY_DYE, 12, 8, 10), new VillagerTrades.b(Items.BLACK_DYE, 12, 8, 10), new VillagerTrades.b(Items.LIGHT_BLUE_DYE, 12, 8, 10), new VillagerTrades.b(Items.LIME_DYE, 12, 8, 10), new VillagerTrades.h(Blocks.WHITE_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.ORANGE_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.MAGENTA_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.LIGHT_BLUE_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.YELLOW_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.LIME_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.PINK_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.GRAY_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.LIGHT_GRAY_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.CYAN_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.PURPLE_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.BLUE_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.BROWN_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.GREEN_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.RED_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.BLACK_WOOL, 1, 1, 8, 5), new VillagerTrades.h(Blocks.WHITE_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.ORANGE_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.MAGENTA_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.LIGHT_BLUE_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.YELLOW_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.LIME_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.PINK_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.GRAY_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.LIGHT_GRAY_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.CYAN_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.PURPLE_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.BLUE_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.BROWN_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.GREEN_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.RED_CARPET, 1, 4, 8, 5), new VillagerTrades.h(Blocks.BLACK_CARPET, 1, 4, 8, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.YELLOW_DYE, 12, 8, 20), new VillagerTrades.b(Items.LIGHT_GRAY_DYE, 12, 8, 20), new VillagerTrades.b(Items.ORANGE_DYE, 12, 8, 20), new VillagerTrades.b(Items.RED_DYE, 12, 8, 20), new VillagerTrades.b(Items.PINK_DYE, 12, 8, 20), new VillagerTrades.h(Blocks.WHITE_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.YELLOW_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.RED_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.BLACK_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.BLUE_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.BROWN_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.CYAN_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.GRAY_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.GREEN_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.LIGHT_BLUE_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.LIGHT_GRAY_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.LIME_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.MAGENTA_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.ORANGE_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.PINK_BED, 3, 1, 6, 10), new VillagerTrades.h(Blocks.PURPLE_BED, 3, 1, 6, 10)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.BROWN_DYE, 12, 8, 30), new VillagerTrades.b(Items.PURPLE_DYE, 12, 8, 30), new VillagerTrades.b(Items.BLUE_DYE, 12, 8, 30), new VillagerTrades.b(Items.GREEN_DYE, 12, 8, 30), new VillagerTrades.b(Items.MAGENTA_DYE, 12, 8, 30), new VillagerTrades.b(Items.CYAN_DYE, 12, 8, 30), new VillagerTrades.h(Items.WHITE_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.BLUE_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.LIGHT_BLUE_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.RED_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.PINK_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.GREEN_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.LIME_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.GRAY_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.BLACK_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.PURPLE_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.MAGENTA_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.CYAN_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.BROWN_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.YELLOW_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.ORANGE_BANNER, 3, 1, 6, 15), new VillagerTrades.h(Items.LIGHT_GRAY_BANNER, 3, 1, 6, 15)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.h(Items.PAINTING, 2, 3, 30)}))); hashmap.put(VillagerProfession.FLETCHER, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.STICK, 32, 8, 2), new VillagerTrades.h(Items.ARROW, 1, 16, 1), new VillagerTrades.g(Blocks.GRAVEL, 10, Items.FLINT, 10, 6, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.FLINT, 26, 6, 10), new VillagerTrades.h(Items.BOW, 2, 1, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.STRING, 14, 8, 20), new VillagerTrades.h(Items.CROSSBOW, 3, 1, 10)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.FEATHER, 24, 8, 30), new VillagerTrades.e(Items.BOW, 2, 2, 15)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.dE, 8, 6, 30), new VillagerTrades.e(Items.CROSSBOW, 3, 2, 15), new VillagerTrades.j(Items.ARROW, 5, Items.TIPPED_ARROW, 5, 2, 6, 30)}))); - hashmap.put(VillagerProfession.LIBRARIAN, a(ImmutableMap.builder().put(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.PAPER, 24, 8, 2), new VillagerTrades.d(1), new VillagerTrades.h(Blocks.BOOKSHELF, 6, 3, 6, 1)}).put(2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.BOOK, 4, 6, 10), new VillagerTrades.d(5), new VillagerTrades.h(Items.pQ, 1, 1, 5)}).put(3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.INK_SAC, 5, 6, 20), new VillagerTrades.d(10), new VillagerTrades.h(Items.am, 1, 4, 10)}).put(4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.WRITABLE_BOOK, 2, 6, 30), new VillagerTrades.d(15), new VillagerTrades.h(Items.CLOCK, 5, 1, 15), new VillagerTrades.h(Items.COMPASS, 4, 1, 15)}).put(5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.h(Items.NAME_TAG, 20, 1, 30)}).build())); + hashmap.put(VillagerProfession.LIBRARIAN, a(ImmutableMap.builder().put(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.PAPER, 24, 8, 2), new VillagerTrades.d(1), new VillagerTrades.h(Blocks.BOOKSHELF, 6, 3, 6, 1)}).put(2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.BOOK, 4, 6, 10), new VillagerTrades.d(5), new VillagerTrades.h(Items.pQ, 1, 1, 5)}).put(3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.INK_SAC, 5, 6, 20), new VillagerTrades.d(10), new VillagerTrades.h(Items.am, 1, 4, 10)}).put(4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.WRITABLE_BOOK, 2, 6, 30), new VillagerTrades.d(15), new VillagerTrades.h(Items.CLOCK, 5, 1, 15), new VillagerTrades.h(Items.COMPASS, 4, 1, 15)}).put(5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.h(Items.NAME_TAG, 20, 1, 30)}).build())); // Paper - decompile fix - hashmap.put(VillagerProfession.CARTOGRAPHER, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.PAPER, 24, 8, 2), new VillagerTrades.h(Items.MAP, 7, 1, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.df, 10, 8, 10), new VillagerTrades.k(13, "Monument", MapIcon.Type.MONUMENT, 6, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.COMPASS, 1, 6, 20), new VillagerTrades.k(14, "Mansion", MapIcon.Type.MANSION, 6, 10)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.h(Items.ITEM_FRAME, 7, 1, 15), new VillagerTrades.h(Items.WHITE_BANNER, 3, 1, 15), new VillagerTrades.h(Items.BLUE_BANNER, 3, 1, 15), new VillagerTrades.h(Items.LIGHT_BLUE_BANNER, 3, 1, 15), new VillagerTrades.h(Items.RED_BANNER, 3, 1, 15), new VillagerTrades.h(Items.PINK_BANNER, 3, 1, 15), new VillagerTrades.h(Items.GREEN_BANNER, 3, 1, 15), new VillagerTrades.h(Items.LIME_BANNER, 3, 1, 15), new VillagerTrades.h(Items.GRAY_BANNER, 3, 1, 15), new VillagerTrades.h(Items.BLACK_BANNER, 3, 1, 15), new VillagerTrades.h(Items.PURPLE_BANNER, 3, 1, 15), new VillagerTrades.h(Items.MAGENTA_BANNER, 3, 1, 15), new VillagerTrades.h(Items.CYAN_BANNER, 3, 1, 15), new VillagerTrades.h(Items.BROWN_BANNER, 3, 1, 15), new VillagerTrades.h(Items.YELLOW_BANNER, 3, 1, 15), new VillagerTrades.h(Items.ORANGE_BANNER, 3, 1, 15), new VillagerTrades.h(Items.LIGHT_GRAY_BANNER, 3, 1, 15)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.h(Items.GLOBE_BANNER_PATTERN, 8, 1, 30)}))); + hashmap.put(VillagerProfession.CARTOGRAPHER, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.PAPER, 24, 8, 2), new VillagerTrades.h(Items.MAP, 7, 1, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.df, 11, 8, 10), new VillagerTrades.k(13, "Monument", MapIcon.Type.MONUMENT, 6, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.COMPASS, 1, 6, 20), new VillagerTrades.k(14, "Mansion", MapIcon.Type.MANSION, 6, 10)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.h(Items.ITEM_FRAME, 7, 1, 15), new VillagerTrades.h(Items.WHITE_BANNER, 3, 1, 15), new VillagerTrades.h(Items.BLUE_BANNER, 3, 1, 15), new VillagerTrades.h(Items.LIGHT_BLUE_BANNER, 3, 1, 15), new VillagerTrades.h(Items.RED_BANNER, 3, 1, 15), new VillagerTrades.h(Items.PINK_BANNER, 3, 1, 15), new VillagerTrades.h(Items.GREEN_BANNER, 3, 1, 15), new VillagerTrades.h(Items.LIME_BANNER, 3, 1, 15), new VillagerTrades.h(Items.GRAY_BANNER, 3, 1, 15), new VillagerTrades.h(Items.BLACK_BANNER, 3, 1, 15), new VillagerTrades.h(Items.PURPLE_BANNER, 3, 1, 15), new VillagerTrades.h(Items.MAGENTA_BANNER, 3, 1, 15), new VillagerTrades.h(Items.CYAN_BANNER, 3, 1, 15), new VillagerTrades.h(Items.BROWN_BANNER, 3, 1, 15), new VillagerTrades.h(Items.YELLOW_BANNER, 3, 1, 15), new VillagerTrades.h(Items.ORANGE_BANNER, 3, 1, 15), new VillagerTrades.h(Items.LIGHT_GRAY_BANNER, 3, 1, 15)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.h(Items.GLOBE_BANNER_PATTERN, 8, 1, 30)}))); hashmap.put(VillagerProfession.CLERIC, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.ROTTEN_FLESH, 32, 8, 2), new VillagerTrades.h(Items.REDSTONE, 1, 2, 1)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.GOLD_INGOT, 3, 6, 10), new VillagerTrades.h(Items.LAPIS_LAZULI, 1, 1, 5)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.RABBIT_FOOT, 2, 6, 20), new VillagerTrades.h(Blocks.GLOWSTONE, 4, 1, 6, 10)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.SCUTE, 4, 6, 30), new VillagerTrades.b(Items.GLASS_BOTTLE, 9, 6, 30), new VillagerTrades.h(Items.ENDER_PEARL, 5, 1, 15)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.NETHER_WART, 22, 6, 30), new VillagerTrades.h(Items.EXPERIENCE_BOTTLE, 3, 1, 30)}))); hashmap.put(VillagerProfession.ARMORER, a(ImmutableMap.of(1, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.COAL, 15, 8, 2), new VillagerTrades.h(new ItemStack(Items.IRON_LEGGINGS), 7, 1, 6, 1, 0.2F), new VillagerTrades.h(new ItemStack(Items.IRON_BOOTS), 4, 1, 6, 1, 0.2F), new VillagerTrades.h(new ItemStack(Items.IRON_HELMET), 5, 1, 6, 1, 0.2F), new VillagerTrades.h(new ItemStack(Items.IRON_CHESTPLATE), 9, 1, 6, 1, 0.2F)}, 2, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.IRON_INGOT, 4, 6, 10), new VillagerTrades.h(new ItemStack(Items.pP), 36, 1, 6, 5, 0.2F), new VillagerTrades.h(new ItemStack(Items.CHAINMAIL_BOOTS), 1, 1, 6, 5, 0.2F), new VillagerTrades.h(new ItemStack(Items.CHAINMAIL_LEGGINGS), 3, 1, 6, 5, 0.2F)}, 3, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.b(Items.LAVA_BUCKET, 1, 6, 20), new VillagerTrades.b(Items.DIAMOND, 1, 6, 20), new VillagerTrades.h(new ItemStack(Items.CHAINMAIL_HELMET), 1, 1, 6, 10, 0.2F), new VillagerTrades.h(new ItemStack(Items.CHAINMAIL_CHESTPLATE), 4, 1, 6, 10, 0.2F), new VillagerTrades.h(new ItemStack(Items.SHIELD), 5, 1, 6, 10, 0.2F)}, 4, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.e(Items.DIAMOND_LEGGINGS, 14, 2, 15, 0.2F), new VillagerTrades.e(Items.DIAMOND_BOOTS, 8, 2, 15, 0.2F)}, 5, new VillagerTrades.IMerchantRecipeOption[] { new VillagerTrades.e(Items.DIAMOND_HELMET, 8, 2, 30, 0.2F), new VillagerTrades.e(Items.DIAMOND_CHESTPLATE, 16, 2, 30, 0.2F)}))); diff --git a/src/main/java/net/minecraft/server/WorldPersistentData.java b/src/main/java/net/minecraft/server/WorldPersistentData.java diff --git a/Spigot-Server-Patches/0004-MC-Utils.patch b/Spigot-Server-Patches/0004-MC-Utils.patch index 84f0535f5..f6de93dab 100644 --- a/Spigot-Server-Patches/0004-MC-Utils.patch +++ b/Spigot-Server-Patches/0004-MC-Utils.patch @@ -1,4 +1,4 @@ -From 8be0f9b0ebf8cb9794ed83d22dc5aaa3874e1a1a Mon Sep 17 00:00:00 2001 +From c823984a165a1eefe3a7387eb0816ed663a311bf Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 28 Mar 2016 20:55:47 -0400 Subject: [PATCH] MC Utils @@ -57,7 +57,7 @@ index dd47e9cbe..c927d524a 100644 return this.d(MathHelper.floor(d0), MathHelper.floor(d1), MathHelper.floor(d2)); } diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index fc54888fa..8f789c91f 100644 +index 0fe575349..aa13028d0 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -32,7 +32,7 @@ import org.bukkit.event.entity.CreatureSpawnEvent; @@ -69,7 +69,7 @@ index fc54888fa..8f789c91f 100644 private final ChunkSection[] sections; private final BiomeBase[] d; private final Map e; -@@ -403,6 +403,7 @@ public class Chunk implements IChunkAccess { +@@ -407,6 +407,7 @@ public class Chunk implements IChunkAccess { return this.a(blockposition, Chunk.EnumTileEntityState.CHECK); } @@ -164,7 +164,7 @@ index 4411d5640..28a6be7ab 100644 this.a(); packetdataserializer.writeByte(this.i); diff --git a/src/main/java/net/minecraft/server/EntityCreature.java b/src/main/java/net/minecraft/server/EntityCreature.java -index 7636358a7..852068081 100644 +index 4f69e2327..8f5f61f60 100644 --- a/src/main/java/net/minecraft/server/EntityCreature.java +++ b/src/main/java/net/minecraft/server/EntityCreature.java @@ -6,6 +6,8 @@ import org.bukkit.event.entity.EntityUnleashEvent; @@ -189,7 +189,7 @@ index 472063264..afa03ce6f 100644 // CraftBukkit start - fire event setGoalTarget(entityliving, EntityTargetEvent.TargetReason.UNKNOWN, true); diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index c1bb7a88a..f86e6a4c5 100644 +index 2b856727d..1a33b7048 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -126,6 +126,7 @@ public abstract class EntityLiving extends Entity { @@ -213,7 +213,7 @@ index 6ab4c78b3..76142d5dc 100644 super(entitytypes, world); this.f = 5; diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java -index 01d9ed69c..3217a8ed1 100644 +index 8c918d0d6..56a2d7df5 100644 --- a/src/main/java/net/minecraft/server/EntityTypes.java +++ b/src/main/java/net/minecraft/server/EntityTypes.java @@ -5,6 +5,7 @@ import com.mojang.datafixers.types.Type; @@ -236,10 +236,10 @@ index 01d9ed69c..3217a8ed1 100644 } diff --git a/src/main/java/net/minecraft/server/IAsyncTaskHandler.java b/src/main/java/net/minecraft/server/IAsyncTaskHandler.java -index 7016b03f6..c22128953 100644 +index 4510018d6..c0d511244 100644 --- a/src/main/java/net/minecraft/server/IAsyncTaskHandler.java +++ b/src/main/java/net/minecraft/server/IAsyncTaskHandler.java -@@ -55,6 +55,15 @@ public abstract class IAsyncTaskHandler implements Mailbox implements Mailbox Date: Wed, 4 Jul 2018 01:40:13 -0400 Subject: [PATCH] Add MinecraftKey Information to Objects @@ -19,7 +19,7 @@ index b5f318c00..ce190d88d 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/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 77015bc06..01e486389 100644 +index 8371631db..033cddf8e 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -49,7 +49,7 @@ import org.bukkit.event.player.PlayerTeleportEvent; @@ -65,7 +65,7 @@ index 77015bc06..01e486389 100644 protected abstract void a(NBTTagCompound nbttagcompound); diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java -index 3217a8ed1..c7fb8f513 100644 +index 56a2d7df5..98eb0d24c 100644 --- a/src/main/java/net/minecraft/server/EntityTypes.java +++ b/src/main/java/net/minecraft/server/EntityTypes.java @@ -238,6 +238,7 @@ public class EntityTypes { @@ -92,10 +92,10 @@ index 000000000..743142d03 + } +} diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index 080fd819b..77d77fcb8 100644 +index 8d868d84c..b511fe263 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java -@@ -10,7 +10,7 @@ import org.bukkit.inventory.InventoryHolder; +@@ -11,7 +11,7 @@ import org.bukkit.inventory.InventoryHolder; // CraftBukkit end import org.spigotmc.CustomTimingsHandler; // Spigot @@ -104,7 +104,7 @@ index 080fd819b..77d77fcb8 100644 public CustomTimingsHandler tickTimer = org.bukkit.craftbukkit.SpigotTimings.getTileEntityTimings(this); // Spigot // CraftBukkit start - data containers -@@ -18,7 +18,7 @@ public abstract class TileEntity { +@@ -19,7 +19,7 @@ public abstract class TileEntity { public final CraftPersistentDataContainer persistentDataContainer = new CraftPersistentDataContainer(DATA_TYPE_REGISTRY); // CraftBukkit end private static final Logger LOGGER = LogManager.getLogger(); @@ -113,7 +113,7 @@ index 080fd819b..77d77fcb8 100644 @Nullable protected World world; protected BlockPosition position; -@@ -31,6 +31,26 @@ public abstract class TileEntity { +@@ -33,6 +33,26 @@ public abstract class TileEntity { this.b = tileentitytypes; } diff --git a/Spigot-Server-Patches/0007-Store-reference-to-current-Chunk-for-Entity-and-Bloc.patch b/Spigot-Server-Patches/0007-Store-reference-to-current-Chunk-for-Entity-and-Bloc.patch index 41bb3625c..120fd3824 100644 --- a/Spigot-Server-Patches/0007-Store-reference-to-current-Chunk-for-Entity-and-Bloc.patch +++ b/Spigot-Server-Patches/0007-Store-reference-to-current-Chunk-for-Entity-and-Bloc.patch @@ -1,4 +1,4 @@ -From 43fe880530ba71a467d76e1a5d6ad57ba9fed5d5 Mon Sep 17 00:00:00 2001 +From 850bdbebc31a1756bdcd70dfa677cd0f3a447262 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 4 Jul 2018 02:10:36 -0400 Subject: [PATCH] Store reference to current Chunk for Entity and Block @@ -8,7 +8,7 @@ This enables us a fast reference to the entities current chunk instead of having to look it up by hashmap lookups. diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 8f789c91f7..15be6bb33f 100644 +index aa13028d0..6d75bf220 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -36,7 +36,7 @@ public class Chunk implements IChunkAccess { @@ -20,13 +20,10 @@ index 8f789c91f7..15be6bb33f 100644 public final World world; public final Map heightMap; private final ChunkConverter i; -@@ -58,11 +58,39 @@ public class Chunk implements IChunkAccess { - private final ChunkCoordIntPair loc; - private volatile boolean x; +@@ -62,11 +62,36 @@ public class Chunk implements IChunkAccess { + this(world, chunkcoordintpair, abiomebase, ChunkConverter.a, TickListEmpty.a(), TickListEmpty.a(), 0L, (ChunkSection[]) null, (Consumer) null); + } -+ // CraftBukkit start - Neighbor loaded cache for chunk lighting and entity ticking -+ private int neighbors = 0x1 << 12; -+ public long chunkKey; + // Paper start + private class TileEntityHashMap extends java.util.HashMap { + @Override @@ -61,7 +58,7 @@ index 8f789c91f7..15be6bb33f 100644 this.l = Maps.newHashMap(); this.m = Maps.newHashMap(); this.n = new ShortList[16]; -@@ -357,6 +385,7 @@ public class Chunk implements IChunkAccess { +@@ -361,6 +386,7 @@ public class Chunk implements IChunkAccess { } entity.inChunk = true; @@ -69,7 +66,7 @@ index 8f789c91f7..15be6bb33f 100644 entity.chunkX = this.loc.x; entity.chunkY = k; entity.chunkZ = this.loc.z; -@@ -368,6 +397,7 @@ public class Chunk implements IChunkAccess { +@@ -372,6 +398,7 @@ public class Chunk implements IChunkAccess { ((HeightMap) this.heightMap.get(heightmap_type)).a(along); } @@ -77,7 +74,7 @@ index 8f789c91f7..15be6bb33f 100644 public void b(Entity entity) { this.a(entity, entity.chunkY); } -@@ -380,8 +410,12 @@ public class Chunk implements IChunkAccess { +@@ -384,8 +411,12 @@ public class Chunk implements IChunkAccess { if (i >= this.entitySlices.length) { i = this.entitySlices.length - 1; } @@ -93,13 +90,13 @@ index 8f789c91f7..15be6bb33f 100644 @Override diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 01e4863899..14c3f04170 100644 +index 033cddf8e..7fc4af565 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -133,7 +133,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke private static final DataWatcherObject aB = DataWatcher.a(Entity.class, DataWatcherRegistry.i); private static final DataWatcherObject aC = DataWatcher.a(Entity.class, DataWatcherRegistry.i); - protected static final DataWatcherObject X = DataWatcher.a(Entity.class, DataWatcherRegistry.s); + protected static final DataWatcherObject POSE = DataWatcher.a(Entity.class, DataWatcherRegistry.s); - public boolean inChunk; + public boolean inChunk; public boolean isAddedToChunk() { return inChunk; } // Paper - OBFHELPER public int chunkX; public int getChunkX() { return chunkX; } // Paper - OBFHELPER @@ -146,10 +143,10 @@ index 01e4863899..14c3f04170 100644 private String entityKeyString; diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index 77d77fcb8b..4c811325c3 100644 +index b511fe263..7546f6690 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java -@@ -49,6 +49,15 @@ public abstract class TileEntity implements KeyedObject { // Paper +@@ -51,6 +51,15 @@ public abstract class TileEntity implements KeyedObject { // Paper getMinecraftKey(); // Try to load if it doesn't exists. return tileEntityKeyString; } @@ -166,7 +163,7 @@ index 77d77fcb8b..4c811325c3 100644 @Nullable diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index eddac6ed95..049641db06 100644 +index 5b72b3633..b2a16bb36 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -137,6 +137,7 @@ import net.minecraft.server.EntityZombieVillager; diff --git a/Spigot-Server-Patches/0008-Store-counts-for-each-Entity-Block-Entity-Type.patch b/Spigot-Server-Patches/0008-Store-counts-for-each-Entity-Block-Entity-Type.patch index 8ea613836..bcccfd1d3 100644 --- a/Spigot-Server-Patches/0008-Store-counts-for-each-Entity-Block-Entity-Type.patch +++ b/Spigot-Server-Patches/0008-Store-counts-for-each-Entity-Block-Entity-Type.patch @@ -1,4 +1,4 @@ -From 2976aeb8835db3b9c38ccc891e1b011dca486d42 Mon Sep 17 00:00:00 2001 +From 4f96ee0c29856941cb17de02ffd7c007acd7ac30 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 4 Jul 2018 02:13:59 -0400 Subject: [PATCH] Store counts for each Entity/Block Entity Type @@ -6,12 +6,12 @@ Subject: [PATCH] Store counts for each Entity/Block Entity Type Opens door for future patches to optimize performance diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 7fa141f52c..2b29fe837b 100644 +index 6d75bf220..937fcd7fa 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -62,15 +62,19 @@ public class Chunk implements IChunkAccess { - private int neighbors = 0x1 << 12; - public long chunkKey; +@@ -63,15 +63,19 @@ public class Chunk implements IChunkAccess { + } + // Paper start + public final co.aikar.util.Counter entityCounts = new co.aikar.util.Counter<>(); + public final co.aikar.util.Counter tileEntityCounts = new co.aikar.util.Counter<>(); @@ -29,7 +29,7 @@ index 7fa141f52c..2b29fe837b 100644 } return replaced; } -@@ -80,6 +84,7 @@ public class Chunk implements IChunkAccess { +@@ -81,6 +85,7 @@ public class Chunk implements IChunkAccess { TileEntity removed = super.remove(key); if (removed != null) { removed.setCurrentChunk(null); @@ -37,7 +37,7 @@ index 7fa141f52c..2b29fe837b 100644 } return removed; } -@@ -384,6 +389,7 @@ public class Chunk implements IChunkAccess { +@@ -385,6 +390,7 @@ public class Chunk implements IChunkAccess { k = this.entitySlices.length - 1; } @@ -45,7 +45,7 @@ index 7fa141f52c..2b29fe837b 100644 entity.inChunk = true; entity.setCurrentChunk(this); // Paper entity.chunkX = this.loc.x; -@@ -415,6 +421,7 @@ public class Chunk implements IChunkAccess { +@@ -416,6 +422,7 @@ public class Chunk implements IChunkAccess { if (!this.entitySlices[i].remove(entity)) { return; } diff --git a/Spigot-Server-Patches/0009-Timings-v2.patch b/Spigot-Server-Patches/0009-Timings-v2.patch index a48132678..220d30fd5 100644 --- a/Spigot-Server-Patches/0009-Timings-v2.patch +++ b/Spigot-Server-Patches/0009-Timings-v2.patch @@ -1,4 +1,4 @@ -From 94debd73b26dbfff556ce7f3dfc51334b48efeb3 Mon Sep 17 00:00:00 2001 +From 4e211b4edbac7f732678a856dd62fb6aace2e605 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 3 Mar 2016 04:00:11 -0600 Subject: [PATCH] Timings v2 @@ -6,7 +6,7 @@ Subject: [PATCH] Timings v2 diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java new file mode 100644 -index 0000000000..3f9fb6f906 +index 000000000..3f9fb6f90 --- /dev/null +++ b/src/main/java/co/aikar/timings/MinecraftTimings.java @@ -0,0 +1,133 @@ @@ -145,7 +145,7 @@ index 0000000000..3f9fb6f906 +} diff --git a/src/main/java/co/aikar/timings/WorldTimingsHandler.java b/src/main/java/co/aikar/timings/WorldTimingsHandler.java new file mode 100644 -index 0000000000..d5d3b2a20c +index 000000000..d5d3b2a20 --- /dev/null +++ b/src/main/java/co/aikar/timings/WorldTimingsHandler.java @@ -0,0 +1,105 @@ @@ -255,7 +255,7 @@ index 0000000000..d5d3b2a20c + } +} diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 5518ec1e54..0c65afccfd 100644 +index 5518ec1e5..0c65afccf 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -14,11 +14,14 @@ import java.util.concurrent.TimeUnit; @@ -302,10 +302,10 @@ index 5518ec1e54..0c65afccfd 100644 + } } diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java -index 8b91e27c66..fd23d45346 100644 +index afa9f0c1e..85a5776b0 100644 --- a/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java -@@ -24,6 +24,15 @@ public class Block implements IMaterial { +@@ -32,6 +32,15 @@ public class Block implements IMaterial { protected final boolean q; protected final SoundEffectType stepSound; protected final Material material; @@ -322,10 +322,10 @@ index 8b91e27c66..fd23d45346 100644 private final float frictionFactor; protected final BlockStateList blockStateList; diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 9cce929c3e..5c34fe52a4 100644 +index 937fcd7fa..b317a9800 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -546,6 +546,7 @@ public class Chunk implements IChunkAccess { +@@ -547,6 +547,7 @@ public class Chunk implements IChunkAccess { server.getPluginManager().callEvent(new org.bukkit.event.world.ChunkLoadEvent(this.bukkitChunk, this.needsDecoration)); if (this.needsDecoration) { @@ -333,7 +333,7 @@ index 9cce929c3e..5c34fe52a4 100644 java.util.Random random = new java.util.Random(); random.setSeed(world.getSeed()); long xRand = random.nextLong() / 2L * 2L + 1L; -@@ -564,6 +565,7 @@ public class Chunk implements IChunkAccess { +@@ -565,6 +566,7 @@ public class Chunk implements IChunkAccess { } } server.getPluginManager().callEvent(new org.bukkit.event.world.ChunkPopulateEvent(bukkitChunk)); @@ -342,10 +342,10 @@ index 9cce929c3e..5c34fe52a4 100644 } } diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index 845ad7427b..4f0fbe4a0d 100644 +index 4cc3e1217..cbe1353ac 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java -@@ -186,7 +186,9 @@ public class ChunkProviderServer extends IChunkProvider { +@@ -234,7 +234,9 @@ public class ChunkProviderServer extends IChunkProvider { } public void save(boolean flag) { @@ -355,21 +355,20 @@ index 845ad7427b..4f0fbe4a0d 100644 } @Override -@@ -296,10 +298,9 @@ public class ChunkProviderServer extends IChunkProvider { - this.world.timings.mobSpawn.stopTiming(); // Spigot +@@ -352,9 +354,9 @@ public class ChunkProviderServer extends IChunkProvider { this.world.getMethodProfiler().exit(); } -- + - this.world.timings.doTickTiles.startTiming(); // Spigot + this.world.timings.chunkTicks.startTiming(); // Spigot // Paper - this.world.a(chunk, l); + this.world.a(chunk, k); - this.world.timings.doTickTiles.stopTiming(); // Spigot + this.world.timings.chunkTicks.stopTiming(); // Spigot // Paper } } } -@@ -310,9 +311,7 @@ public class ChunkProviderServer extends IChunkProvider { - } +@@ -368,9 +370,7 @@ public class ChunkProviderServer extends IChunkProvider { + this.world.getMethodProfiler().exit(); } - this.world.timings.tracker.startTiming(); // Spigot @@ -379,7 +378,7 @@ index 845ad7427b..4f0fbe4a0d 100644 @Override diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index d084d24a01..0fed039f34 100644 +index e4c021a45..2b8148fbd 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java @@ -1,5 +1,6 @@ @@ -389,7 +388,7 @@ index d084d24a01..0fed039f34 100644 import com.google.common.collect.Maps; import it.unimi.dsi.fastutil.longs.LongOpenHashSet; import it.unimi.dsi.fastutil.longs.LongSet; -@@ -412,7 +413,7 @@ public class ChunkRegionLoader { +@@ -435,7 +436,7 @@ public class ChunkRegionLoader { private static void loadEntities(NBTTagCompound nbttagcompound, Chunk chunk) { NBTTagList nbttaglist = nbttagcompound.getList("Entities", 10); World world = chunk.getWorld(); @@ -398,7 +397,7 @@ index d084d24a01..0fed039f34 100644 for (int i = 0; i < nbttaglist.size(); ++i) { NBTTagCompound nbttagcompound1 = nbttaglist.getCompound(i); -@@ -424,8 +425,6 @@ public class ChunkRegionLoader { +@@ -447,8 +448,6 @@ public class ChunkRegionLoader { chunk.d(true); } @@ -407,26 +406,17 @@ index d084d24a01..0fed039f34 100644 NBTTagList nbttaglist1 = nbttagcompound.getList("TileEntities", 10); for (int j = 0; j < nbttaglist1.size(); ++j) { -@@ -442,8 +441,6 @@ public class ChunkRegionLoader { +@@ -465,7 +464,7 @@ public class ChunkRegionLoader { } } } - world.timings.syncChunkLoadTileEntitiesTimer.stopTiming(); // Spigot -- world.timings.syncChunkLoadTileTicksTimer.startTiming(); // Spigot - - if (nbttagcompound.hasKeyOfType("TileTicks", 9) && world.getBlockTickList() instanceof TickListServer) { - ((TickListServer) world.getBlockTickList()).a(nbttagcompound.getList("TileTicks", 10)); -@@ -452,7 +449,7 @@ public class ChunkRegionLoader { - if (nbttagcompound.hasKeyOfType("LiquidTicks", 9) && world.getFluidTickList() instanceof TickListServer) { - ((TickListServer) world.getFluidTickList()).a(nbttagcompound.getList("LiquidTicks", 10)); - } -- world.timings.syncChunkLoadTileTicksTimer.stopTiming(); // Spigot -+ world.timings.chunkLoadLevelTimer.stopTiming(); // Spigot ++ world.timings.chunkLoadLevelTimer.stopTiming(); // Paper } diff --git a/src/main/java/net/minecraft/server/CustomFunction.java b/src/main/java/net/minecraft/server/CustomFunction.java -index 46e7737ca3..a3ef943066 100644 +index 46e7737ca..a3ef94306 100644 --- a/src/main/java/net/minecraft/server/CustomFunction.java +++ b/src/main/java/net/minecraft/server/CustomFunction.java @@ -13,12 +13,22 @@ public class CustomFunction { @@ -453,20 +443,20 @@ index 46e7737ca3..a3ef943066 100644 return this.b; } diff --git a/src/main/java/net/minecraft/server/CustomFunctionData.java b/src/main/java/net/minecraft/server/CustomFunctionData.java -index 42e01136d9..b7c1d7671e 100644 +index 9c9eef0ad..b42fbf2c6 100644 --- a/src/main/java/net/minecraft/server/CustomFunctionData.java +++ b/src/main/java/net/minecraft/server/CustomFunctionData.java -@@ -100,7 +100,7 @@ public class CustomFunctionData implements IResourcePackListener { +@@ -101,7 +101,7 @@ public class CustomFunctionData implements IResourcePackListener { return 0; } else { - try { + try (co.aikar.timings.Timing timing = customfunction.getTiming().startTiming()) { // Paper - this.i = true; + this.h = true; int j = 0; CustomFunction.c[] acustomfunction_c = customfunction.b(); diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java -index b60956218d..19e2df3098 100644 +index b60956218..19e2df309 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -31,7 +31,7 @@ import org.apache.logging.log4j.Level; @@ -519,7 +509,7 @@ index b60956218d..19e2df3098 100644 return waitable.get(); } catch (java.util.concurrent.ExecutionException e) { diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 14c3f04170..6127f9ba96 100644 +index 7fc4af565..e52f0610f 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -29,7 +29,8 @@ import org.bukkit.command.CommandSender; @@ -558,7 +548,7 @@ index 14c3f04170..6127f9ba96 100644 protected Vec3D a(Vec3D vec3d, EnumMoveType enummovetype) { diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index f86e6a4c51..85567a7072 100644 +index 1a33b7048..7c72fb918 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -35,7 +35,7 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -634,7 +624,7 @@ index f86e6a4c51..85567a7072 100644 } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 472e8e852f..df9098955c 100644 +index 25972072f..581ecf71d 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1,5 +1,7 @@ @@ -762,7 +752,7 @@ index 472e8e852f..df9098955c 100644 this.methodProfiler.exit(); } diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index 755c0406e1..036577dd0e 100644 +index 2e17358ed..e7019d8ae 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java @@ -1,6 +1,8 @@ @@ -774,7 +764,7 @@ index 755c0406e1..036577dd0e 100644 import com.google.common.collect.Lists; import com.google.common.collect.Sets; import com.mojang.datafixers.DataFixer; -@@ -402,7 +404,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { +@@ -423,7 +425,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { }); return completablefuture.thenComposeAsync((either) -> { @@ -782,8 +772,8 @@ index 755c0406e1..036577dd0e 100644 + return either.map((list) -> { // Paper - Shut up. try { CompletableFuture> completablefuture1 = chunkstatus.a(this.world, this.chunkGenerator, this.definedStructureManager, this.lightEngine, (ichunkaccess) -> { - return this.b(playerchunk); -@@ -879,6 +881,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { + return this.c(playerchunk); +@@ -916,6 +918,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { PlayerChunkMap.EntityTracker playerchunkmap_entitytracker; ObjectIterator objectiterator; @@ -791,7 +781,7 @@ index 755c0406e1..036577dd0e 100644 for (objectiterator = this.trackedEntities.values().iterator(); objectiterator.hasNext(); playerchunkmap_entitytracker.trackerEntry.a()) { playerchunkmap_entitytracker = (PlayerChunkMap.EntityTracker) objectiterator.next(); -@@ -896,13 +899,16 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { +@@ -933,13 +936,16 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { playerchunkmap_entitytracker.e = sectionposition1; } } @@ -809,7 +799,7 @@ index 755c0406e1..036577dd0e 100644 } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 78a090ac75..e07f4a9680 100644 +index 5757dd6fb..a7104e966 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -58,6 +58,7 @@ import org.bukkit.inventory.CraftingInventory; @@ -864,7 +854,7 @@ index 78a090ac75..e07f4a9680 100644 // this.minecraftServer.getCommandDispatcher().a(this.player.getCommandListener(), s); // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java -index cb6d50ea70..9ba03f8ed0 100644 +index cb6d50ea7..9ba03f8ed 100644 --- a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java +++ b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java @@ -1,5 +1,8 @@ @@ -890,7 +880,7 @@ index cb6d50ea70..9ba03f8ed0 100644 throw CancelledPacketHandleException.INSTANCE; } diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 56e36c8668..7a837ec0fc 100644 +index 6171b369c..bab32af46 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -1,5 +1,6 @@ @@ -900,7 +890,7 @@ index 56e36c8668..7a837ec0fc 100644 import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; -@@ -894,10 +895,11 @@ public abstract class PlayerList { +@@ -895,10 +896,11 @@ public abstract class PlayerList { } public void savePlayers() { @@ -914,21 +904,20 @@ index 56e36c8668..7a837ec0fc 100644 public WhiteList getWhitelist() { diff --git a/src/main/java/net/minecraft/server/TickListServer.java b/src/main/java/net/minecraft/server/TickListServer.java -index 537e610797..b48e5b51a0 100644 +index a99618099..972b1c0d2 100644 --- a/src/main/java/net/minecraft/server/TickListServer.java +++ b/src/main/java/net/minecraft/server/TickListServer.java -@@ -25,13 +25,19 @@ public class TickListServer implements TickList { - private final List> g = Lists.newArrayList(); - private final Consumer> h; +@@ -25,13 +25,18 @@ public class TickListServer implements TickList { + private final List> i = Lists.newArrayList(); + private final Consumer> j; - public TickListServer(WorldServer worldserver, Predicate predicate, Function function, Function function1, Consumer> consumer) { + public TickListServer(WorldServer worldserver, Predicate predicate, Function function, Function function1, Consumer> consumer, String timingsType) { // Paper this.a = predicate; this.b = function; this.c = function1; - this.f = worldserver; - this.h = consumer; -+ // Paper start + this.h = worldserver; + this.j = consumer; + timingCleanup = co.aikar.timings.WorldTimingsHandler.getTickList(worldserver, timingsType + " - Cleanup"); + timingTicking = co.aikar.timings.WorldTimingsHandler.getTickList(worldserver, timingsType + " - Ticking"); } @@ -937,40 +926,38 @@ index 537e610797..b48e5b51a0 100644 + // Paper end public void a() { - int i = this.nextTickList.size(); -@@ -51,6 +57,7 @@ public class TickListServer implements TickList { - - this.f.getMethodProfiler().enter("cleaning"); + this.b(); +@@ -53,6 +58,7 @@ public class TickListServer implements TickList { + this.h.getMethodProfiler().enter("selecting"); + Iterator iterator = this.nextTickList.iterator(); + timingCleanup.startTiming(); // Paper - NextTickListEntry nextticklistentry; // CraftBukkit - decompile error + NextTickListEntry nextticklistentry; - for (int j = 0; j < i; ++j) { -@@ -63,9 +70,11 @@ public class TickListServer implements TickList { - // this.nextTickListHash.remove(nextticklistentry); // CraftBukkit - use nextTickList - this.g.add(nextticklistentry); + while (iterator.hasNext()) { +@@ -66,7 +72,9 @@ public class TickListServer implements TickList { + --i; + } } + timingCleanup.stopTiming(); // Paper - this.f.getMethodProfiler().exit(); - this.f.getMethodProfiler().enter("ticking"); + timingTicking.startTiming(); // Paper - Iterator iterator = this.g.iterator(); + this.h.getMethodProfiler().exitEnter("ticking"); + iterator = this.i.iterator(); - while (iterator.hasNext()) { -@@ -88,6 +97,7 @@ public class TickListServer implements TickList { - - this.f.getMethodProfiler().exit(); +@@ -94,6 +102,7 @@ public class TickListServer implements TickList { + this.i.clear(); this.g.clear(); + this.h.getMethodProfiler().exit(); + timingTicking.stopTiming(); // Paper } } diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index 4c811325c3..da30d2cf86 100644 +index 7546f6690..095ef9ba5 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java -@@ -8,11 +8,12 @@ import org.bukkit.craftbukkit.persistence.CraftPersistentDataContainer; +@@ -9,11 +9,12 @@ import org.bukkit.craftbukkit.persistence.CraftPersistentDataContainer; import org.bukkit.craftbukkit.persistence.CraftPersistentDataTypeRegistry; import org.bukkit.inventory.InventoryHolder; // CraftBukkit end @@ -986,7 +973,7 @@ index 4c811325c3..da30d2cf86 100644 private static final CraftPersistentDataTypeRegistry DATA_TYPE_REGISTRY = new CraftPersistentDataTypeRegistry(); public final CraftPersistentDataContainer persistentDataContainer = new CraftPersistentDataContainer(DATA_TYPE_REGISTRY); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index cbe87a3389..db50066096 100644 +index 404d3d8c8..93fa09121 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -1,5 +1,7 @@ @@ -1023,7 +1010,7 @@ index cbe87a3389..db50066096 100644 this.entityLimiter = new org.spigotmc.TickLimiter(spigotConfig.entityMaxTickTime); this.tileLimiter = new org.spigotmc.TickLimiter(spigotConfig.tileMaxTickTime); } -@@ -734,14 +735,14 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -739,21 +740,26 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose } timings.tileEntityPending.stopTiming(); // Spigot @@ -1034,23 +1021,26 @@ index cbe87a3389..db50066096 100644 public void a(Consumer consumer, Entity entity) { try { -- // Spigot start -- SpigotTimings.tickEntityTimer.startTiming(); +- SpigotTimings.tickEntityTimer.startTiming(); // Spigot + timings.tickEntities.startTiming(); - entity.tickTimer.startTiming(); - // Spigot end ++ entity.tickTimer.startTiming(); ++ // Spigot end consumer.accept(entity); -@@ -755,7 +756,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose - // Spigot start - finally { - entity.tickTimer.stopTiming(); -- SpigotTimings.tickEntityTimer.startTiming(); +- SpigotTimings.tickEntityTimer.stopTiming(); // Spigot + } catch (Throwable throwable) { + CrashReport crashreport = CrashReport.a(throwable, "Ticking entity"); + CrashReportSystemDetails crashreportsystemdetails = crashreport.a("Entity being ticked"); + + entity.appendEntityCrashDetails(crashreportsystemdetails); + throw new ReportedException(crashreport); ++ } finally { ++ entity.tickTimer.stopTiming(); + timings.tickEntities.stopTiming(); } - // Spigot end } + diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index d08c5fc93b..a8527784ae 100644 +index 36c517d8f..5a0d940be 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -1,5 +1,7 @@ @@ -1061,15 +1051,15 @@ index d08c5fc93b..a8527784ae 100644 import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Queues; -@@ -37,7 +39,6 @@ import org.bukkit.Bukkit; - +@@ -33,7 +35,6 @@ import org.apache.logging.log4j.Logger; + // CraftBukkit start + import org.bukkit.Bukkit; import org.bukkit.WeatherType; - import org.bukkit.block.BlockState; -import org.bukkit.craftbukkit.SpigotTimings; // Spigot import org.bukkit.craftbukkit.event.CraftEventFactory; - import org.bukkit.craftbukkit.util.HashTreeSet; - -@@ -99,10 +100,10 @@ public class WorldServer extends World { + import org.bukkit.event.entity.CreatureSpawnEvent; + import org.bukkit.event.server.MapInitializeEvent; +@@ -90,10 +91,10 @@ public class WorldServer extends World { // CraftBukkit end this.nextTickListBlock = new TickListServer<>(this, (block) -> { return block == null || block.getBlockData().isAir(); @@ -1082,7 +1072,7 @@ index d08c5fc93b..a8527784ae 100644 this.I = Sets.newHashSet(); this.siegeManager = new VillageSiege(this); this.J = new ObjectLinkedOpenHashSet(); -@@ -265,12 +266,12 @@ public class WorldServer extends World { +@@ -256,12 +257,12 @@ public class WorldServer extends World { gameprofilerfiller.exitEnter("chunkSource"); this.getChunkProvider().tick(booleansupplier); gameprofilerfiller.exitEnter("tickPending"); @@ -1097,7 +1087,7 @@ index d08c5fc93b..a8527784ae 100644 gameprofilerfiller.exitEnter("village"); timings.doVillages.startTiming(); // Spigot -@@ -327,6 +328,7 @@ public class WorldServer extends World { +@@ -318,6 +319,7 @@ public class WorldServer extends World { org.spigotmc.ActivationRange.activateEntities(this); // Spigot timings.entityTick.startTiming(); // Spigot @@ -1105,7 +1095,7 @@ index d08c5fc93b..a8527784ae 100644 while (objectiterator.hasNext()) { Entry entry = (Entry) objectiterator.next(); Entity entity1 = (Entity) entry.getValue(); -@@ -430,6 +432,7 @@ public class WorldServer extends World { +@@ -421,6 +423,7 @@ public class WorldServer extends World { } gameprofilerfiller.exitEnter("tickBlocks"); @@ -1113,7 +1103,7 @@ index d08c5fc93b..a8527784ae 100644 if (i > 0) { ChunkSection[] achunksection = chunk.getSections(); int l = achunksection.length; -@@ -461,7 +464,7 @@ public class WorldServer extends World { +@@ -452,7 +455,7 @@ public class WorldServer extends World { } } } @@ -1122,7 +1112,7 @@ index d08c5fc93b..a8527784ae 100644 gameprofilerfiller.exit(); } -@@ -754,6 +757,7 @@ public class WorldServer extends World { +@@ -747,6 +750,7 @@ public class WorldServer extends World { if (!flag1) { org.bukkit.Bukkit.getPluginManager().callEvent(new org.bukkit.event.world.WorldSaveEvent(getWorld())); // CraftBukkit @@ -1130,7 +1120,7 @@ index d08c5fc93b..a8527784ae 100644 if (iprogressupdate != null) { iprogressupdate.a(new ChatMessage("menu.savingLevel", new Object[0])); } -@@ -763,7 +767,10 @@ public class WorldServer extends World { +@@ -756,7 +760,10 @@ public class WorldServer extends World { iprogressupdate.c(new ChatMessage("menu.savingChunks", new Object[0])); } @@ -1142,7 +1132,7 @@ index d08c5fc93b..a8527784ae 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 5dc2bb1246..8e877055c3 100644 +index 7fe76b8d5..b43888592 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1926,12 +1926,31 @@ public final class CraftServer implements Server { @@ -1179,7 +1169,7 @@ index 5dc2bb1246..8e877055c3 100644 org.spigotmc.RestartCommand.restart(); diff --git a/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java b/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java deleted file mode 100644 -index 38f211526b..0000000000 +index 38f211526..000000000 --- a/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java +++ /dev/null @@ -1,166 +0,0 @@ @@ -1350,7 +1340,7 @@ index 38f211526b..0000000000 - } -} diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 6806ada495..e45fd0028b 100644 +index 5b58b1a96..8980de820 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1728,6 +1728,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -1369,7 +1359,7 @@ index 6806ada495..e45fd0028b 100644 public Player.Spigot spigot() diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java -index b90979c7ba..8823f94f7b 100644 +index b90979c7b..8823f94f7 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java @@ -1,5 +1,6 @@ @@ -1435,7 +1425,7 @@ index b90979c7ba..8823f94f7b 100644 private boolean isReady(final int currentTick) { diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java -index 3f55381c15..0d9a466809 100644 +index 3f55381c1..0d9a46680 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java @@ -1,9 +1,11 @@ @@ -1520,7 +1510,7 @@ index 3f55381c15..0d9a466809 100644 - // Spigot end } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java b/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java -index e52ef47b78..3d90b34268 100644 +index e52ef47b7..3d90b3426 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java @@ -5,6 +5,7 @@ import org.bukkit.util.CachedServerIcon; @@ -1532,7 +1522,7 @@ index e52ef47b78..3d90b34268 100644 this.value = value; } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 06728e53d5..783676b747 100644 +index bed971921..6775bf043 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java @@ -271,6 +271,13 @@ public final class CraftMagicNumbers implements UnsafeValues { @@ -1550,7 +1540,7 @@ index 06728e53d5..783676b747 100644 * This helper class represents the different NBT Tags. *

diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 76b060a126..2daecf5049 100644 +index 76b060a12..2daecf504 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java @@ -30,7 +30,7 @@ import net.minecraft.server.EntityWither; diff --git a/Spigot-Server-Patches/0019-Remove-invalid-mob-spawner-tile-entities.patch b/Spigot-Server-Patches/0019-Remove-invalid-mob-spawner-tile-entities.patch index 5970c7079..d3293b17e 100644 --- a/Spigot-Server-Patches/0019-Remove-invalid-mob-spawner-tile-entities.patch +++ b/Spigot-Server-Patches/0019-Remove-invalid-mob-spawner-tile-entities.patch @@ -1,14 +1,14 @@ -From 5107f10a7d0b494d3974f0b55e0fb1b7d1afb31c Mon Sep 17 00:00:00 2001 +From 9a31a787065e13ef9a984b049773edada78db672 Mon Sep 17 00:00:00 2001 From: Byteflux Date: Tue, 1 Mar 2016 15:08:03 -0600 Subject: [PATCH] Remove invalid mob spawner tile entities diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 5c34fe52a4..8e71c8af11 100644 +index b317a9800..5a19dc756 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -500,6 +500,10 @@ public class Chunk implements IChunkAccess { +@@ -501,6 +501,10 @@ public class Chunk implements IChunkAccess { } // CraftBukkit start diff --git a/Spigot-Server-Patches/0023-Entity-Origin-API.patch b/Spigot-Server-Patches/0023-Entity-Origin-API.patch index 7ec9d7476..1e6256479 100644 --- a/Spigot-Server-Patches/0023-Entity-Origin-API.patch +++ b/Spigot-Server-Patches/0023-Entity-Origin-API.patch @@ -1,11 +1,11 @@ -From 70bd27dafcbb7673fa92e6ac6909bc1479626d75 Mon Sep 17 00:00:00 2001 +From a2e424aa76b6978f878c936cf549d2c3b67c8cde Mon Sep 17 00:00:00 2001 From: Byteflux Date: Tue, 1 Mar 2016 23:45:08 -0600 Subject: [PATCH] Entity Origin API diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index ffad35a61f..7b7a437b93 100644 +index 9a17badc2..d40b0cd3f 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -163,6 +163,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -51,7 +51,7 @@ index ffad35a61f..7b7a437b93 100644 NBTTagList nbttaglist = new NBTTagList(); double[] adouble1 = adouble; diff --git a/src/main/java/net/minecraft/server/EntityFallingBlock.java b/src/main/java/net/minecraft/server/EntityFallingBlock.java -index 55591fbe05..90becdfdec 100644 +index 55591fbe0..90becdfde 100644 --- a/src/main/java/net/minecraft/server/EntityFallingBlock.java +++ b/src/main/java/net/minecraft/server/EntityFallingBlock.java @@ -245,6 +245,14 @@ public class EntityFallingBlock extends Entity { @@ -70,7 +70,7 @@ index 55591fbe05..90becdfdec 100644 public void a(boolean flag) { diff --git a/src/main/java/net/minecraft/server/EntityTNTPrimed.java b/src/main/java/net/minecraft/server/EntityTNTPrimed.java -index e3001570f9..e0535604b6 100644 +index e3001570f..e0535604b 100644 --- a/src/main/java/net/minecraft/server/EntityTNTPrimed.java +++ b/src/main/java/net/minecraft/server/EntityTNTPrimed.java @@ -104,6 +104,14 @@ public class EntityTNTPrimed extends Entity { @@ -89,7 +89,7 @@ index e3001570f9..e0535604b6 100644 @Nullable diff --git a/src/main/java/net/minecraft/server/NBTTagList.java b/src/main/java/net/minecraft/server/NBTTagList.java -index ce510c4867..b7c94fe238 100644 +index ce510c486..b7c94fe23 100644 --- a/src/main/java/net/minecraft/server/NBTTagList.java +++ b/src/main/java/net/minecraft/server/NBTTagList.java @@ -161,6 +161,7 @@ public class NBTTagList extends NBTList { @@ -101,10 +101,10 @@ index ce510c4867..b7c94fe238 100644 if (i >= 0 && i < this.list.size()) { NBTBase nbtbase = (NBTBase) this.list.get(i); diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 11cd9003e3..e99b1b9460 100644 +index 5a0d940be..4710b79af 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1102,6 +1102,11 @@ public class WorldServer extends World { +@@ -1095,6 +1095,11 @@ public class WorldServer extends World { this.I.add(((EntityInsentient) entity).getNavigation()); } entity.valid = true; // CraftBukkit @@ -117,7 +117,7 @@ index 11cd9003e3..e99b1b9460 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 049641db06..cc493ab7f7 100644 +index b2a16bb36..da7efb3a6 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -1009,4 +1009,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/Spigot-Server-Patches/0024-Prevent-tile-entity-and-entity-crashes.patch b/Spigot-Server-Patches/0024-Prevent-tile-entity-and-entity-crashes.patch index 254ff9a30..d8bd93ff9 100644 --- a/Spigot-Server-Patches/0024-Prevent-tile-entity-and-entity-crashes.patch +++ b/Spigot-Server-Patches/0024-Prevent-tile-entity-and-entity-crashes.patch @@ -1,14 +1,14 @@ -From 61c65a8ab53663274d629a25df7e9adf64a61e4b Mon Sep 17 00:00:00 2001 +From 4d084776d0ce9cdda67239aa16e4eeb445c97774 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 1 Mar 2016 23:52:34 -0600 Subject: [PATCH] Prevent tile entity and entity crashes diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index da30d2cf86..acd9edd670 100644 +index 095ef9ba5..b99bcbf8a 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java -@@ -197,7 +197,12 @@ public abstract class TileEntity implements KeyedObject { // Paper +@@ -199,7 +199,12 @@ public abstract class TileEntity implements KeyedObject { // Paper return IRegistry.BLOCK_ENTITY_TYPE.getKey(this.q()) + " // " + this.getClass().getCanonicalName(); }); if (this.world != null) { @@ -23,11 +23,11 @@ index da30d2cf86..acd9edd670 100644 } } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 119e011e2c..0afc34ac0e 100644 +index f9f14cc1f..cfbe3d592 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -675,11 +675,13 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose - ((ITickable) tileentity).tick(); +@@ -680,11 +680,13 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose + gameprofilerfiller.exit(); } catch (Throwable throwable) { - CrashReport crashreport = CrashReport.a(throwable, "Ticking block entity"); @@ -45,7 +45,7 @@ index 119e011e2c..0afc34ac0e 100644 } // Spigot start finally { -@@ -748,11 +750,12 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -753,11 +755,12 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose // Spigot end consumer.accept(entity); } catch (Throwable throwable) { @@ -60,9 +60,9 @@ index 119e011e2c..0afc34ac0e 100644 + entity.dead = true; + return; + // Paper end - } - // Spigot start - finally { + } finally { + entity.tickTimer.stopTiming(); + timings.tickEntities.stopTiming(); -- 2.21.0 diff --git a/Spigot-Server-Patches/0032-Disable-thunder.patch b/Spigot-Server-Patches/0032-Disable-thunder.patch index 60eb008ad..8c3f1d6b1 100644 --- a/Spigot-Server-Patches/0032-Disable-thunder.patch +++ b/Spigot-Server-Patches/0032-Disable-thunder.patch @@ -1,11 +1,11 @@ -From 8f5a51d97b15c8de7f1074f14eeb26e09ad4effe Mon Sep 17 00:00:00 2001 +From 85b1459df312dda2ed54ccd2fc404ad06a89d70e Mon Sep 17 00:00:00 2001 From: Sudzzy Date: Wed, 2 Mar 2016 14:52:43 -0600 Subject: [PATCH] Disable thunder diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 6a307d5dd6..bf0cd6a8b4 100644 +index 6a307d5dd..bf0cd6a8b 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -156,4 +156,9 @@ public class PaperWorldConfig { @@ -19,10 +19,10 @@ index 6a307d5dd6..bf0cd6a8b4 100644 + } } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index d54d58e1ee..3b90e8b613 100644 +index 4710b79af..9bf3726c8 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -393,7 +393,7 @@ public class WorldServer extends World { +@@ -384,7 +384,7 @@ public class WorldServer extends World { gameprofilerfiller.enter("thunder"); BlockPosition blockposition; diff --git a/Spigot-Server-Patches/0033-Disable-ice-and-snow.patch b/Spigot-Server-Patches/0033-Disable-ice-and-snow.patch index c1182e0c9..4a58207b2 100644 --- a/Spigot-Server-Patches/0033-Disable-ice-and-snow.patch +++ b/Spigot-Server-Patches/0033-Disable-ice-and-snow.patch @@ -1,11 +1,11 @@ -From cad96100cef4ebf55c54ec59470634f0af438a13 Mon Sep 17 00:00:00 2001 +From ddd20750e2a793c72044738fe3940936127eb6b5 Mon Sep 17 00:00:00 2001 From: Sudzzy Date: Wed, 2 Mar 2016 14:57:24 -0600 Subject: [PATCH] Disable ice and snow diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index bf0cd6a8b4..8db5c3f3fe 100644 +index bf0cd6a8b..8db5c3f3f 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -161,4 +161,9 @@ public class PaperWorldConfig { @@ -19,10 +19,10 @@ index bf0cd6a8b4..8db5c3f3fe 100644 + } } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 3b90e8b613..e176c63fed 100644 +index 9bf3726c8..999a67ebf 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -413,7 +413,7 @@ public class WorldServer extends World { +@@ -404,7 +404,7 @@ public class WorldServer extends World { } gameprofilerfiller.exitEnter("iceandsnow"); diff --git a/Spigot-Server-Patches/0035-Send-absolute-position-the-first-time-an-entity-is-s.patch b/Spigot-Server-Patches/0035-Send-absolute-position-the-first-time-an-entity-is-s.patch index 539450c8f..d5628103c 100644 --- a/Spigot-Server-Patches/0035-Send-absolute-position-the-first-time-an-entity-is-s.patch +++ b/Spigot-Server-Patches/0035-Send-absolute-position-the-first-time-an-entity-is-s.patch @@ -1,11 +1,11 @@ -From 65e8c4b55fd401af9fa2490bb37b70cb6ba47fcd Mon Sep 17 00:00:00 2001 +From b4da2906d6aff2d025288a6da577d42fd0249921 Mon Sep 17 00:00:00 2001 From: Jedediah Smith Date: Wed, 2 Mar 2016 23:13:07 -0600 Subject: [PATCH] Send absolute position the first time an entity is seen diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java -index 315c3d9165..aaf3a54b08 100644 +index 315c3d916..aaf3a54b0 100644 --- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java +++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java @@ -2,6 +2,7 @@ package net.minecraft.server; @@ -77,10 +77,10 @@ index 315c3d9165..aaf3a54b08 100644 this.c(); diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index 036577dd0e..efdfab10da 100644 +index e7019d8ae..8c43c52e1 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java -@@ -997,10 +997,14 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { +@@ -1034,10 +1034,14 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { private final Entity tracker; private final int trackingDistance; private SectionPosition e; @@ -97,7 +97,7 @@ index 036577dd0e..efdfab10da 100644 this.tracker = entity; this.trackingDistance = i; this.e = SectionPosition.a(entity); -@@ -1082,7 +1086,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { +@@ -1119,7 +1123,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { entityplayer.removeQueue.remove(Integer.valueOf(this.tracker.getId())); // CraftBukkit end diff --git a/Spigot-Server-Patches/0040-Add-PlayerInitialSpawnEvent.patch b/Spigot-Server-Patches/0040-Add-PlayerInitialSpawnEvent.patch index e0ad1fc21..04c89b192 100644 --- a/Spigot-Server-Patches/0040-Add-PlayerInitialSpawnEvent.patch +++ b/Spigot-Server-Patches/0040-Add-PlayerInitialSpawnEvent.patch @@ -1,4 +1,4 @@ -From 5edd0028e03561e889fdde9dcea3cdd732dc6ba3 Mon Sep 17 00:00:00 2001 +From a5b32ed2ffc293d938bc77d6aab460e110d72a1b Mon Sep 17 00:00:00 2001 From: Steve Anton Date: Thu, 3 Mar 2016 00:09:38 -0600 Subject: [PATCH] Add PlayerInitialSpawnEvent @@ -6,7 +6,7 @@ Subject: [PATCH] Add PlayerInitialSpawnEvent For modifying a player's initial spawn location as they join the server diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 7939208a5a..f904e1c28d 100644 +index bab32af46..b647e4287 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -109,7 +109,22 @@ public abstract class PlayerList { @@ -26,7 +26,7 @@ index 7939208a5a..f904e1c28d 100644 + entityplayer.locZ = newLoc.getZ(); + entityplayer.yaw = newLoc.getYaw(); + entityplayer.pitch = newLoc.getPitch(); -+ entityplayer.dimension = ((CraftWorld) newLoc.getWorld()).getHandle().dimension; ++ entityplayer.dimension = ((CraftWorld) newLoc.getWorld()).getHandle().worldProvider.getDimensionManager(); + // Paper end + + entityplayer.spawnIn(((CraftWorld) newLoc.getWorld()).getHandle()); diff --git a/Spigot-Server-Patches/0044-Optimize-Pathfinding.patch b/Spigot-Server-Patches/0044-Optimize-Pathfinding.patch index 4ca99fc27..7cc59d628 100644 --- a/Spigot-Server-Patches/0044-Optimize-Pathfinding.patch +++ b/Spigot-Server-Patches/0044-Optimize-Pathfinding.patch @@ -1,4 +1,4 @@ -From d20d85eabbc58677092cd028741797484a981d24 Mon Sep 17 00:00:00 2001 +From e0e3c441b8dfa2892f00363d9cf15f337a1a98b3 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 3 Mar 2016 02:02:07 -0600 Subject: [PATCH] Optimize Pathfinding @@ -7,10 +7,10 @@ Prevents pathfinding from spamming failures for things such as arrow attacks. diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java -index ca30e08ff4..2ced8dedd1 100644 +index 49b27c431..75e01c242 100644 --- a/src/main/java/net/minecraft/server/NavigationAbstract.java +++ b/src/main/java/net/minecraft/server/NavigationAbstract.java -@@ -116,10 +116,26 @@ public abstract class NavigationAbstract { +@@ -118,10 +118,26 @@ public abstract class NavigationAbstract { } public boolean a(Entity entity, double d0) { @@ -38,7 +38,7 @@ index ca30e08ff4..2ced8dedd1 100644 public boolean a(@Nullable PathEntity pathentity, double d0) { if (pathentity == null) { -@@ -252,6 +268,7 @@ public abstract class NavigationAbstract { +@@ -233,6 +249,7 @@ public abstract class NavigationAbstract { } public void o() { diff --git a/Spigot-Server-Patches/0049-Change-implementation-of-tile-entity-removal-list.patch b/Spigot-Server-Patches/0049-Change-implementation-of-tile-entity-removal-list.patch index 36163633f..64e6e79c0 100644 --- a/Spigot-Server-Patches/0049-Change-implementation-of-tile-entity-removal-list.patch +++ b/Spigot-Server-Patches/0049-Change-implementation-of-tile-entity-removal-list.patch @@ -1,4 +1,4 @@ -From c79c27636c3f13a9de8cce8b259d834129af3c1f Mon Sep 17 00:00:00 2001 +From 7ac114444af9a40097a33c0061bfde8eb0b33208 Mon Sep 17 00:00:00 2001 From: Joseph Hirschfeld Date: Thu, 3 Mar 2016 02:39:54 -0600 Subject: [PATCH] Change implementation of (tile)entity removal list @@ -6,7 +6,7 @@ Subject: [PATCH] Change implementation of (tile)entity removal list use sets for faster removal diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 48360c2b47..25e5216e25 100644 +index c78d48872..074944718 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -40,7 +40,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -16,7 +16,7 @@ index 48360c2b47..25e5216e25 100644 - protected final List tileEntityListUnload = Lists.newArrayList(); + protected final java.util.Set tileEntityListUnload = com.google.common.collect.Sets.newHashSet(); // Paper private final long b = 16777215L; - private final Thread c; + private final Thread serverThread; private int d; -- 2.21.0 diff --git a/Spigot-Server-Patches/0052-Configurable-inter-world-teleportation-safety.patch b/Spigot-Server-Patches/0052-Configurable-inter-world-teleportation-safety.patch index b84e50b03..54d82737f 100644 --- a/Spigot-Server-Patches/0052-Configurable-inter-world-teleportation-safety.patch +++ b/Spigot-Server-Patches/0052-Configurable-inter-world-teleportation-safety.patch @@ -1,4 +1,4 @@ -From ccde4241ae0089c2dbc015c597c9ed037db7f42b Mon Sep 17 00:00:00 2001 +From 80433e682612d8e0b754118af2bb420a252c8055 Mon Sep 17 00:00:00 2001 From: Sudzzy Date: Thu, 3 Mar 2016 02:50:31 -0600 Subject: [PATCH] Configurable inter-world teleportation safety @@ -16,7 +16,7 @@ The wanted destination was on top of the emerald block however the player ended This only is the case if the player is teleporting between worlds. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 320fd07c62..94f5c90b3c 100644 +index 320fd07c6..94f5c90b3 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -191,4 +191,9 @@ public class PaperWorldConfig { @@ -30,16 +30,15 @@ index 320fd07c62..94f5c90b3c 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 00be351e07..afa209f227 100644 +index a09c02a1c..f4dde31e9 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -745,7 +745,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -745,7 +745,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { if (fromWorld == toWorld) { entity.playerConnection.teleport(to); } else { -- server.getHandle().moveToWorld(entity, toWorld.dimension, true, to, true); -+ // Paper - Configurable suffocation check -+ server.getHandle().moveToWorld(entity, toWorld.dimension, true, to, !toWorld.paperConfig.disableTeleportationSuffocationCheck); +- server.getHandle().moveToWorld(entity, toWorld.getWorldProvider().getDimensionManager(), true, to, true); ++ server.getHandle().moveToWorld(entity, toWorld.getWorldProvider().getDimensionManager(), true, to, !toWorld.paperConfig.disableTeleportationSuffocationCheck); } return true; } diff --git a/Spigot-Server-Patches/0053-Add-exception-reporting-event.patch b/Spigot-Server-Patches/0053-Add-exception-reporting-event.patch index b2fd13c6c..0b719563a 100644 --- a/Spigot-Server-Patches/0053-Add-exception-reporting-event.patch +++ b/Spigot-Server-Patches/0053-Add-exception-reporting-event.patch @@ -1,4 +1,4 @@ -From de39dfbcb3bb52924e1d01a51420f2df3f8918b5 Mon Sep 17 00:00:00 2001 +From 8f6a837642c38c8fc470abddcf9e082b9cf0748d Mon Sep 17 00:00:00 2001 From: Joseph Hirschfeld Date: Thu, 3 Mar 2016 03:15:41 -0600 Subject: [PATCH] Add exception reporting event @@ -6,7 +6,7 @@ Subject: [PATCH] Add exception reporting event diff --git a/src/main/java/com/destroystokyo/paper/ServerSchedulerReportingWrapper.java b/src/main/java/com/destroystokyo/paper/ServerSchedulerReportingWrapper.java new file mode 100644 -index 0000000000..f699ce18ca +index 000000000..f699ce18c --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/ServerSchedulerReportingWrapper.java @@ -0,0 +1,38 @@ @@ -49,7 +49,7 @@ index 0000000000..f699ce18ca + } +} diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 8e71c8af11..d578679920 100644 +index 5a19dc756..ce058e90a 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -1,5 +1,6 @@ @@ -59,7 +59,7 @@ index 8e71c8af11..d578679920 100644 import com.google.common.collect.Maps; import com.google.common.collect.Sets; import it.unimi.dsi.fastutil.longs.LongOpenHashSet; -@@ -505,10 +506,15 @@ public class Chunk implements IChunkAccess { +@@ -506,10 +507,15 @@ public class Chunk implements IChunkAccess { this.tileEntities.remove(blockposition); // Paper end } else { @@ -80,11 +80,11 @@ index 8e71c8af11..d578679920 100644 } } diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index 4f0fbe4a0d..2dd1c28fab 100644 +index cbe1353ac..421e92cfa 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java -@@ -14,6 +14,9 @@ import java.util.concurrent.Executor; - import java.util.function.BooleanSupplier; +@@ -16,6 +16,9 @@ import java.util.function.BooleanSupplier; + import java.util.function.Function; import java.util.function.Supplier; import javax.annotation.Nullable; +import com.destroystokyo.paper.exception.ServerInternalException; @@ -94,7 +94,7 @@ index 4f0fbe4a0d..2dd1c28fab 100644 public class ChunkProviderServer extends IChunkProvider { diff --git a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java -index 1dd793d2fb..61ea2818b1 100644 +index 1dd793d2f..61ea2818b 100644 --- a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java +++ b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java @@ -1,5 +1,6 @@ @@ -121,27 +121,27 @@ index 1dd793d2fb..61ea2818b1 100644 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index efdfab10da..1370565b36 100644 +index 8c43c52e1..fb56e6ca0 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java -@@ -561,6 +561,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { +@@ -597,6 +597,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { this.world.checkSession(); } catch (ExceptionWorldConflict exceptionworldconflict) { PlayerChunkMap.LOGGER.error("Couldn't save chunk; already in use by another instance of Minecraft?", exceptionworldconflict); + com.destroystokyo.paper.exception.ServerInternalException.reportInternalException(exceptionworldconflict); // Paper - return; + return false; } -@@ -587,6 +588,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { - this.write(chunkcoordintpair, nbttagcompound); +@@ -624,6 +625,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { + return true; } catch (Exception exception) { PlayerChunkMap.LOGGER.error("Failed to save chunk {},{}", chunkcoordintpair.x, chunkcoordintpair.z, exception); + com.destroystokyo.paper.exception.ServerInternalException.reportInternalException(exception); // Paper + return false; } - } diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index d4a9af975d..88b5aa3a51 100644 +index d4a9af975..88b5aa3a5 100644 --- a/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java @@ -1,5 +1,6 @@ @@ -168,7 +168,7 @@ index d4a9af975d..88b5aa3a51 100644 } diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java -index 9d4febfbb6..7e58e4714a 100644 +index 90f891bea..cbf05926a 100644 --- a/src/main/java/net/minecraft/server/SpawnerCreature.java +++ b/src/main/java/net/minecraft/server/SpawnerCreature.java @@ -8,6 +8,7 @@ import org.apache.logging.log4j.LogManager; @@ -196,7 +196,7 @@ index 9d4febfbb6..7e58e4714a 100644 } diff --git a/src/main/java/net/minecraft/server/VillageSiege.java b/src/main/java/net/minecraft/server/VillageSiege.java -index d004494aea..d3ed749e1c 100644 +index beeb9ccb8..bb3aa4a37 100644 --- a/src/main/java/net/minecraft/server/VillageSiege.java +++ b/src/main/java/net/minecraft/server/VillageSiege.java @@ -1,5 +1,7 @@ @@ -216,7 +216,7 @@ index d004494aea..d3ed749e1c 100644 } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index a0817da433..24ea0dbe03 100644 +index 074944718..a50842b13 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -2,6 +2,9 @@ package net.minecraft.server; @@ -229,7 +229,7 @@ index a0817da433..24ea0dbe03 100644 import com.google.common.collect.Lists; import java.io.IOException; import java.util.Collection; -@@ -676,8 +679,11 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -681,8 +684,11 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose gameprofilerfiller.exit(); } catch (Throwable throwable) { // Paper start - Prevent tile entity and entity crashes @@ -242,7 +242,7 @@ index a0817da433..24ea0dbe03 100644 tilesThisCycle--; this.tileEntityListTick.remove(tileTickPosition--); continue; -@@ -751,8 +757,10 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -756,8 +762,10 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose consumer.accept(entity); } catch (Throwable throwable) { // Paper start - Prevent tile entity and entity crashes @@ -255,7 +255,7 @@ index a0817da433..24ea0dbe03 100644 return; // Paper end diff --git a/src/main/java/net/minecraft/server/WorldPersistentData.java b/src/main/java/net/minecraft/server/WorldPersistentData.java -index 3c5b3fe101..47a4ea9985 100644 +index 3c5b3fe10..47a4ea998 100644 --- a/src/main/java/net/minecraft/server/WorldPersistentData.java +++ b/src/main/java/net/minecraft/server/WorldPersistentData.java @@ -113,6 +113,7 @@ public class WorldPersistentData { @@ -267,7 +267,7 @@ index 3c5b3fe101..47a4ea9985 100644 } finally { if (pushbackinputstream != null) { diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java -index 8823f94f7b..552daf4376 100644 +index 8823f94f7..552daf437 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java @@ -16,6 +16,9 @@ import java.util.concurrent.atomic.AtomicInteger; diff --git a/Spigot-Server-Patches/0057-Complete-resource-pack-API.patch b/Spigot-Server-Patches/0057-Complete-resource-pack-API.patch index dc4e0eeb4..2532449ee 100644 --- a/Spigot-Server-Patches/0057-Complete-resource-pack-API.patch +++ b/Spigot-Server-Patches/0057-Complete-resource-pack-API.patch @@ -1,11 +1,11 @@ -From da1180199e3adcaaa60cb6370fad3352e3dc2144 Mon Sep 17 00:00:00 2001 +From f11f25626aa4897c7e9ac28f6cf4b4af9e2e960e Mon Sep 17 00:00:00 2001 From: Jedediah Smith Date: Sat, 4 Apr 2015 23:17:52 -0400 Subject: [PATCH] Complete resource pack API diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index c73fd79666..b7c8cab9ea 100644 +index f2e96da81..669566f4c 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -1343,7 +1343,11 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -22,7 +22,7 @@ index c73fd79666..b7c8cab9ea 100644 // CraftBukkit end diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index afa209f227..7209794ce9 100644 +index f4dde31e9..b410b7460 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -131,6 +131,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -36,7 +36,7 @@ index afa209f227..7209794ce9 100644 public CraftPlayer(CraftServer server, EntityPlayer entity) { super(server, entity); -@@ -1755,6 +1759,32 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1754,6 +1758,32 @@ public class CraftPlayer extends CraftHumanEntity implements Player { getHandle().server.getCommandDispatcher().a(getHandle()); } diff --git a/Spigot-Server-Patches/0065-Add-World-Util-Methods.patch b/Spigot-Server-Patches/0065-Add-World-Util-Methods.patch index 02caab6de..ce76d3686 100644 --- a/Spigot-Server-Patches/0065-Add-World-Util-Methods.patch +++ b/Spigot-Server-Patches/0065-Add-World-Util-Methods.patch @@ -1,4 +1,4 @@ -From 15e7fb2e3e3c72b1c7f72fe540e5a70d098c37bb Mon Sep 17 00:00:00 2001 +From 4f2555fc5045bbe267c0c4a186d6c8eb3ae9c1b8 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 18 Mar 2016 20:16:03 -0400 Subject: [PATCH] Add World Util Methods @@ -6,10 +6,10 @@ Subject: [PATCH] Add World Util Methods Methods that can be used for other patches to help improve logic. diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index d578679920..2928f7d218 100644 +index ce058e90a..ca1abd47c 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -365,6 +365,7 @@ public class Chunk implements IChunkAccess { +@@ -366,6 +366,7 @@ public class Chunk implements IChunkAccess { return this.world.getChunkProvider().getLightEngine(); } @@ -18,10 +18,10 @@ index d578679920..2928f7d218 100644 return this.a(blockposition, i, this.world.getWorldProvider().g()); } diff --git a/src/main/java/net/minecraft/server/IWorldReader.java b/src/main/java/net/minecraft/server/IWorldReader.java -index bac6c9d65b..0930552b1f 100644 +index 9a98fb4af..452b2b2d2 100644 --- a/src/main/java/net/minecraft/server/IWorldReader.java +++ b/src/main/java/net/minecraft/server/IWorldReader.java -@@ -36,6 +36,22 @@ public interface IWorldReader extends IIBlockAccess { +@@ -38,6 +38,22 @@ public interface IWorldReader extends IIBlockAccess { } int getLightLevel(BlockPosition blockposition, int i); @@ -45,18 +45,18 @@ index bac6c9d65b..0930552b1f 100644 @Nullable IChunkAccess getChunkAt(int i, int j, ChunkStatus chunkstatus, boolean flag); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 24ea0dbe03..e1cebacb83 100644 +index a50842b13..d4be7e884 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -46,7 +46,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose protected final java.util.Set tileEntityListUnload = com.google.common.collect.Sets.newHashSet(); // Paper private final long b = 16777215L; - private final Thread c; + private final Thread serverThread; - private int d; + private int d; public int getSkylightSubtracted() { return this.d; } public void setSkylightSubtracted(int value) { this.d = value;} // Paper - OBFHELPER protected int j = (new Random()).nextInt(); protected final int k = 1013904223; - protected float l; + protected float lastRainLevel; @@ -208,6 +208,84 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose return i < 0 || i >= 256; } @@ -143,7 +143,7 @@ index 24ea0dbe03..e1cebacb83 100644 return this.getChunkAt(blockposition.getX() >> 4, blockposition.getZ() >> 4); } diff --git a/src/main/java/net/minecraft/server/WorldBorder.java b/src/main/java/net/minecraft/server/WorldBorder.java -index 94d1c2be11..77b805f3ae 100644 +index 94d1c2be1..77b805f3a 100644 --- a/src/main/java/net/minecraft/server/WorldBorder.java +++ b/src/main/java/net/minecraft/server/WorldBorder.java @@ -19,6 +19,7 @@ public class WorldBorder { diff --git a/Spigot-Server-Patches/0067-handle-NaN-health-absorb-values-and-repair-bad-data.patch b/Spigot-Server-Patches/0067-handle-NaN-health-absorb-values-and-repair-bad-data.patch index d7b7bfebf..ca3927853 100644 --- a/Spigot-Server-Patches/0067-handle-NaN-health-absorb-values-and-repair-bad-data.patch +++ b/Spigot-Server-Patches/0067-handle-NaN-health-absorb-values-and-repair-bad-data.patch @@ -1,11 +1,11 @@ -From 42d31ed7a97bc379dbe761f4215fbe03e7fa75a3 Mon Sep 17 00:00:00 2001 +From 1638dcb7d7c6bbf985b4350a96f566ddcbcff5aa Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 27 Sep 2015 01:18:02 -0400 Subject: [PATCH] handle NaN health/absorb values and repair bad data diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 44570edcae..5ae7014887 100644 +index 5d73894d3..37a642676 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -539,7 +539,13 @@ public abstract class EntityLiving extends Entity { @@ -44,10 +44,10 @@ index 44570edcae..5ae7014887 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 7209794ce9..7edb01082a 100644 +index b410b7460..3e1a7be6f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1565,6 +1565,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1564,6 +1564,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } public void setRealHealth(double health) { diff --git a/Spigot-Server-Patches/0070-Configurable-spawn-chances-for-skeleton-horses.patch b/Spigot-Server-Patches/0070-Configurable-spawn-chances-for-skeleton-horses.patch index 1138261c1..dd2d3606d 100644 --- a/Spigot-Server-Patches/0070-Configurable-spawn-chances-for-skeleton-horses.patch +++ b/Spigot-Server-Patches/0070-Configurable-spawn-chances-for-skeleton-horses.patch @@ -1,11 +1,11 @@ -From 5b49cb442c080f47eacf6e695ab324164edda124 Mon Sep 17 00:00:00 2001 +From 4bb8555a2cc19ce266bc0bbfe84955b32f0c9154 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 22 Mar 2016 12:04:28 -0500 Subject: [PATCH] Configurable spawn chances for skeleton horses diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 98049567f4..2a71381dae 100644 +index 98049567f..2a71381da 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -221,4 +221,12 @@ public class PaperWorldConfig { @@ -22,10 +22,10 @@ index 98049567f4..2a71381dae 100644 + } } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index e176c63fed..9a4a558467 100644 +index 999a67ebf..727faa35d 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -397,7 +397,7 @@ public class WorldServer extends World { +@@ -388,7 +388,7 @@ public class WorldServer extends World { blockposition = this.a(this.a(j, 0, k, 15)); if (this.isRainingAt(blockposition)) { DifficultyDamageScaler difficultydamagescaler = this.getDamageScaler(blockposition); diff --git a/Spigot-Server-Patches/0071-Optimize-isValidLocation-getType-and-getBlockData-fo.patch b/Spigot-Server-Patches/0071-Optimize-isValidLocation-getType-and-getBlockData-fo.patch index d55d3bea8..e3582c0e1 100644 --- a/Spigot-Server-Patches/0071-Optimize-isValidLocation-getType-and-getBlockData-fo.patch +++ b/Spigot-Server-Patches/0071-Optimize-isValidLocation-getType-and-getBlockData-fo.patch @@ -1,4 +1,4 @@ -From 4ed471356d2a121be6ed130098d24f68590c325a Mon Sep 17 00:00:00 2001 +From 31d632b1e2cc98636c406a5133db67e2337e5f08 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 3 Mar 2016 02:07:55 -0600 Subject: [PATCH] Optimize isValidLocation, getType and getBlockData for inling @@ -12,7 +12,7 @@ Replace all calls to the new place to the unnecessary forward. Optimize getType and getBlockData to manually inline and optimize the calls diff --git a/src/main/java/net/minecraft/server/BaseBlockPosition.java b/src/main/java/net/minecraft/server/BaseBlockPosition.java -index 2852a17f23..7cb46d7a9c 100644 +index 2852a17f2..7cb46d7a9 100644 --- a/src/main/java/net/minecraft/server/BaseBlockPosition.java +++ b/src/main/java/net/minecraft/server/BaseBlockPosition.java @@ -10,6 +10,14 @@ public class BaseBlockPosition implements Comparable { @@ -31,7 +31,7 @@ index 2852a17f23..7cb46d7a9c 100644 public BaseBlockPosition(int i, int j, int k) { this.a = i; diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java -index c927d524a8..64700b97c0 100644 +index c927d524a..64700b97c 100644 --- a/src/main/java/net/minecraft/server/BlockPosition.java +++ b/src/main/java/net/minecraft/server/BlockPosition.java @@ -339,6 +339,16 @@ public class BlockPosition extends BaseBlockPosition implements MinecraftSeriali @@ -52,21 +52,20 @@ index c927d524a8..64700b97c0 100644 public MutableBlockPosition() { this(0, 0, 0); diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 2928f7d218..7a0ab24a91 100644 +index ca1abd47c..18b062157 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -209,12 +209,24 @@ public class Chunk implements IChunkAccess { +@@ -210,12 +210,24 @@ public class Chunk implements IChunkAccess { return this.sections; } - @Override -- public IBlockData getType(BlockPosition blockposition) { ++ // Paper start - Optimize getBlockData to reduce instructions ++ public final IBlockData getBlockData(BlockPosition pos) { return getBlockData(pos.getX(), pos.getY(), pos.getZ()); } // Paper + public IBlockData getType(BlockPosition blockposition) { - int i = blockposition.getX(); - int j = blockposition.getY(); - int k = blockposition.getZ(); -+ // Paper start - Optimize getBlockData to reduce instructions -+ public final IBlockData getBlockData(BlockPosition pos) { return getBlockData(pos.getX(), pos.getY(), pos.getZ()); } // Paper -+ public final IBlockData getType(BlockPosition blockposition) { + return this.getBlockData(blockposition.getX(), blockposition.getY(), blockposition.getZ()); + } @@ -86,7 +85,7 @@ index 2928f7d218..7a0ab24a91 100644 IBlockData iblockdata = null; diff --git a/src/main/java/net/minecraft/server/ChunkSection.java b/src/main/java/net/minecraft/server/ChunkSection.java -index 30701fd7f3..43f75fc837 100644 +index 30701fd7f..43f75fc83 100644 --- a/src/main/java/net/minecraft/server/ChunkSection.java +++ b/src/main/java/net/minecraft/server/ChunkSection.java @@ -9,7 +9,7 @@ public class ChunkSection { @@ -99,18 +98,18 @@ index 30701fd7f3..43f75fc837 100644 public ChunkSection(int i) { this(i, (short) 0, (short) 0, (short) 0); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index e1cebacb83..31c38e1051 100644 +index d4be7e884..aef9e2e75 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -197,11 +197,11 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose } public static boolean isValidLocation(BlockPosition blockposition) { -- return !isInsideWorld(blockposition) && blockposition.getX() >= -30000000 && blockposition.getZ() >= -30000000 && blockposition.getX() < 30000000 && blockposition.getZ() < 30000000; +- return !isOutsideWorld(blockposition) && blockposition.getX() >= -30000000 && blockposition.getZ() >= -30000000 && blockposition.getX() < 30000000 && blockposition.getZ() < 30000000; + return blockposition.isValidLocation(); // Paper } - public static boolean isInsideWorld(BlockPosition blockposition) { + public static boolean isOutsideWorld(BlockPosition blockposition) { - return b(blockposition.getY()); + return blockposition.isInvalidYLocation(); // Paper } diff --git a/Spigot-Server-Patches/0073-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch b/Spigot-Server-Patches/0073-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch index 7800c3057..1e5e54673 100644 --- a/Spigot-Server-Patches/0073-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch +++ b/Spigot-Server-Patches/0073-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch @@ -1,4 +1,4 @@ -From 1407efbf4ccae6c76a3bc27e1c1db9f961ce298d Mon Sep 17 00:00:00 2001 +From 5619ac14f1e9afb752d7b27d45fdfbdee4aae6c1 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 28 Mar 2016 19:55:45 -0400 Subject: [PATCH] Only process BlockPhysicsEvent if a plugin has a listener @@ -6,7 +6,7 @@ Subject: [PATCH] Only process BlockPhysicsEvent if a plugin has a listener Saves on some object allocation and processing when no plugin listens to this diff --git a/src/main/java/net/minecraft/server/BlockPlant.java b/src/main/java/net/minecraft/server/BlockPlant.java -index 9bf42bb5ef..0526af776d 100644 +index 9bf42bb5e..0526af776 100644 --- a/src/main/java/net/minecraft/server/BlockPlant.java +++ b/src/main/java/net/minecraft/server/BlockPlant.java @@ -16,7 +16,7 @@ public class BlockPlant extends Block { @@ -19,7 +19,7 @@ index 9bf42bb5ef..0526af776d 100644 } } diff --git a/src/main/java/net/minecraft/server/BlockTallPlant.java b/src/main/java/net/minecraft/server/BlockTallPlant.java -index 469a3be057..f2c429f22e 100644 +index 469a3be05..f2c429f22 100644 --- a/src/main/java/net/minecraft/server/BlockTallPlant.java +++ b/src/main/java/net/minecraft/server/BlockTallPlant.java @@ -55,7 +55,7 @@ public class BlockTallPlant extends BlockPlant { @@ -32,7 +32,7 @@ index 469a3be057..f2c429f22e 100644 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index fd1b268798..ff70ef38aa 100644 +index 7b3c4747e..8ce7903a1 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1105,6 +1105,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant { diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 31c38e1051..c31585f92f 100644 +index aef9e2e75..668b64f42 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -436,7 +436,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -66,12 +66,12 @@ index 31c38e1051..c31585f92f 100644 this.getServer().getPluginManager().callEvent(event); diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 9d31d57cdf..93c229fcd1 100644 +index 727faa35d..7c3d2d5de 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -76,6 +76,7 @@ public class WorldServer extends World { +@@ -68,6 +68,7 @@ public class WorldServer extends World { + // CraftBukkit start - public final DimensionManager dimension; private int tickPosition; + boolean hasPhysicsEvent = true; // Paper diff --git a/Spigot-Server-Patches/0074-Entity-AddTo-RemoveFrom-World-Events.patch b/Spigot-Server-Patches/0074-Entity-AddTo-RemoveFrom-World-Events.patch index 6b5f0b525..651630226 100644 --- a/Spigot-Server-Patches/0074-Entity-AddTo-RemoveFrom-World-Events.patch +++ b/Spigot-Server-Patches/0074-Entity-AddTo-RemoveFrom-World-Events.patch @@ -1,14 +1,14 @@ -From c5bd4c046c5623d852b9dc727a4b8f0cba872b3f Mon Sep 17 00:00:00 2001 +From 586414e6c81a1d5051fca0b97f37b134c6b3b89e Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 28 Mar 2016 20:32:58 -0400 Subject: [PATCH] Entity AddTo/RemoveFrom World Events diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 5fe2041b9d..269f793926 100644 +index 7c3d2d5de..2128b0bdb 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1108,6 +1108,7 @@ public class WorldServer extends World { +@@ -1101,6 +1101,7 @@ public class WorldServer extends World { entity.origin = entity.getBukkitEntity().getLocation(); } // Paper end @@ -16,7 +16,7 @@ index 5fe2041b9d..269f793926 100644 } } -@@ -1117,6 +1118,7 @@ public class WorldServer extends World { +@@ -1110,6 +1111,7 @@ public class WorldServer extends World { if (this.tickingEntities) { throw new IllegalStateException("Removing entity while ticking!"); } else { diff --git a/Spigot-Server-Patches/0075-Configurable-Chunk-Inhabited-Time.patch b/Spigot-Server-Patches/0075-Configurable-Chunk-Inhabited-Time.patch index ae2316057..adfb09ac3 100644 --- a/Spigot-Server-Patches/0075-Configurable-Chunk-Inhabited-Time.patch +++ b/Spigot-Server-Patches/0075-Configurable-Chunk-Inhabited-Time.patch @@ -1,4 +1,4 @@ -From 3ac48ee8c663e1d3d38dfc50b68585bc156efce9 Mon Sep 17 00:00:00 2001 +From fb8660aba1c573486ae7f97952939584263c4350 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 28 Mar 2016 20:46:14 -0400 Subject: [PATCH] Configurable Chunk Inhabited Time @@ -11,7 +11,7 @@ For people who want all chunks to be treated equally, you can chose a fixed valu This allows to fine-tune vanilla gameplay. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 2a71381dae..e43866991c 100644 +index 2a71381da..e43866991 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -229,4 +229,19 @@ public class PaperWorldConfig { @@ -35,10 +35,10 @@ index 2a71381dae..e43866991c 100644 + } } diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 7a0ab24a91..ed7899abb2 100644 +index 18b062157..c2865425d 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -803,7 +803,7 @@ public class Chunk implements IChunkAccess { +@@ -804,7 +804,7 @@ public class Chunk implements IChunkAccess { @Override public long q() { diff --git a/Spigot-Server-Patches/0076-EntityPathfindEvent.patch b/Spigot-Server-Patches/0076-EntityPathfindEvent.patch index 99b5f2a5b..e5f5c1ac7 100644 --- a/Spigot-Server-Patches/0076-EntityPathfindEvent.patch +++ b/Spigot-Server-Patches/0076-EntityPathfindEvent.patch @@ -1,4 +1,4 @@ -From 790dff9ff673058b18a3c92bddced6e2cb179981 Mon Sep 17 00:00:00 2001 +From c7641c30bd926b4c5d123ed4f9943bfbaad76ee7 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 28 Mar 2016 21:22:26 -0400 Subject: [PATCH] EntityPathfindEvent @@ -6,7 +6,7 @@ Subject: [PATCH] EntityPathfindEvent Fires when an Entity decides to start moving to a location. diff --git a/src/main/java/net/minecraft/server/Navigation.java b/src/main/java/net/minecraft/server/Navigation.java -index 79b2d9297..b6e3bf823 100644 +index aacaecd82..bc30e3f33 100644 --- a/src/main/java/net/minecraft/server/Navigation.java +++ b/src/main/java/net/minecraft/server/Navigation.java @@ -60,7 +60,7 @@ public class Navigation extends NavigationAbstract { @@ -19,7 +19,7 @@ index 79b2d9297..b6e3bf823 100644 private int s() { diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java -index 2ced8dedd..7b27251b3 100644 +index 75e01c242..d04eb1bbf 100644 --- a/src/main/java/net/minecraft/server/NavigationAbstract.java +++ b/src/main/java/net/minecraft/server/NavigationAbstract.java @@ -4,7 +4,7 @@ import javax.annotation.Nullable; @@ -50,7 +50,7 @@ index 2ced8dedd..7b27251b3 100644 } @Nullable -@@ -87,16 +89,24 @@ public abstract class NavigationAbstract { +@@ -87,11 +89,12 @@ public abstract class NavigationAbstract { double d1 = entity.getBoundingBox().minY; double d2 = entity.locZ; @@ -58,24 +58,24 @@ index 2ced8dedd..7b27251b3 100644 + return this.a(blockposition, entity, d0, d1, d2, 16, true); // Paper - Path find event } -- @Nullable + @Nullable - protected PathEntity a(BlockPosition blockposition, double d0, double d1, double d2, int i, boolean flag) { -+ // Paper start - Add target entity parameter for path find event -+ @Nullable protected PathEntity a(BlockPosition blockposition, double d0, double d1, double d2, int i, boolean flag) { return this.a(blockposition, null, d0, d1, d2, i, flag); } ++ protected PathEntity a(BlockPosition blockposition, double d0, double d1, double d2, int i, boolean flag) { return this.a(blockposition, null, d0, d1, d2, i, flag); } + @Nullable protected PathEntity a(BlockPosition blockposition, Entity target, double d0, double d1, double d2, int i, boolean flag) { -+ // Paper end - if (!this.a()) { + if (this.a.locY < 0.0D) { return null; + } else if (!this.a()) { +@@ -99,6 +102,12 @@ public abstract class NavigationAbstract { } else if (this.c != null && !this.c.b() && blockposition.equals(this.q)) { return this.c; } else { + // Paper start - Pathfind event + if (!new com.destroystokyo.paper.event.entity.EntityPathfindEvent(getEntity().getBukkitEntity(), -+ MCUtil.toLocation(getEntity().world, blockposition), target == null ? null : target.getBukkitEntity()).callEvent()) { ++ MCUtil.toLocation(getEntity().world, blockposition), target == null ? null : target.getBukkitEntity()).callEvent()) { + return null; + } + // Paper end - this.q = blockposition; + this.q = blockposition.immutableCopy(); float f = this.i(); diff --git a/src/main/java/net/minecraft/server/NavigationFlying.java b/src/main/java/net/minecraft/server/NavigationFlying.java diff --git a/Spigot-Server-Patches/0080-Do-not-load-chunks-for-Pathfinding.patch b/Spigot-Server-Patches/0080-Do-not-load-chunks-for-Pathfinding.patch index 0e1967d90..155e6628f 100644 --- a/Spigot-Server-Patches/0080-Do-not-load-chunks-for-Pathfinding.patch +++ b/Spigot-Server-Patches/0080-Do-not-load-chunks-for-Pathfinding.patch @@ -1,14 +1,14 @@ -From 6e7c5c35348506ebf4ef4a4f84e8eebf1ac924ab Mon Sep 17 00:00:00 2001 +From 435410e1e7631cb7e5b169d2b0a7f6b8bad0992e Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 31 Mar 2016 19:17:58 -0400 Subject: [PATCH] Do not load chunks for Pathfinding diff --git a/src/main/java/net/minecraft/server/ChunkCache.java b/src/main/java/net/minecraft/server/ChunkCache.java -index c76087614..475c93836 100644 +index 2c9bf7d00..281f5f04f 100644 --- a/src/main/java/net/minecraft/server/ChunkCache.java +++ b/src/main/java/net/minecraft/server/ChunkCache.java -@@ -25,7 +25,7 @@ public class ChunkCache implements IIBlockAccess { +@@ -25,7 +25,7 @@ public class ChunkCache implements IWorldReader { for (k = this.a; k <= i; ++k) { for (l = this.b; l <= j; ++l) { @@ -18,7 +18,7 @@ index c76087614..475c93836 100644 } diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java -index 7b27251b3..fe19167a1 100644 +index d04eb1bbf..4a91e0d8c 100644 --- a/src/main/java/net/minecraft/server/NavigationAbstract.java +++ b/src/main/java/net/minecraft/server/NavigationAbstract.java @@ -22,8 +22,9 @@ public abstract class NavigationAbstract { @@ -40,7 +40,7 @@ index 7b27251b3..fe19167a1 100644 } public BlockPosition h() { -@@ -176,6 +178,7 @@ public abstract class NavigationAbstract { +@@ -177,6 +179,7 @@ public abstract class NavigationAbstract { } public void c() { @@ -49,7 +49,7 @@ index 7b27251b3..fe19167a1 100644 if (this.m) { this.k(); diff --git a/src/main/java/net/minecraft/server/Pathfinder.java b/src/main/java/net/minecraft/server/Pathfinder.java -index 480dee704..3901dd751 100644 +index 359d9a11c..262fa5585 100644 --- a/src/main/java/net/minecraft/server/Pathfinder.java +++ b/src/main/java/net/minecraft/server/Pathfinder.java @@ -12,7 +12,7 @@ public class Pathfinder { @@ -62,12 +62,12 @@ index 480dee704..3901dd751 100644 public Pathfinder(PathfinderAbstract pathfinderabstract, int i) { this.e = pathfinderabstract; diff --git a/src/main/java/net/minecraft/server/PathfinderAbstract.java b/src/main/java/net/minecraft/server/PathfinderAbstract.java -index 7aad55c7d..3cb43808f 100644 +index 92df34aba..e773bef61 100644 --- a/src/main/java/net/minecraft/server/PathfinderAbstract.java +++ b/src/main/java/net/minecraft/server/PathfinderAbstract.java @@ -7,6 +7,7 @@ public abstract class PathfinderAbstract { - protected IBlockAccess a; + protected IWorldReader a; protected EntityInsentient b; + public World world; // Paper protected final Int2ObjectMap c = new Int2ObjectOpenHashMap(); @@ -75,17 +75,17 @@ index 7aad55c7d..3cb43808f 100644 protected int e; @@ -19,6 +20,7 @@ public abstract class PathfinderAbstract { - public void a(IBlockAccess iblockaccess, EntityInsentient entityinsentient) { - this.a = iblockaccess; -+ if (iblockaccess instanceof World) world = (World) iblockaccess; // Paper + public void a(IWorldReader iworldreader, EntityInsentient entityinsentient) { + this.a = iworldreader; ++ if (iworldreader instanceof World) world = (World) iworldreader; // Paper this.b = entityinsentient; this.c.clear(); this.d = MathHelper.d(entityinsentient.getWidth() + 1.0F); diff --git a/src/main/java/net/minecraft/server/PathfinderNormal.java b/src/main/java/net/minecraft/server/PathfinderNormal.java -index f1198272b..1eaed0fd8 100644 +index d97166f8f..51991b8c8 100644 --- a/src/main/java/net/minecraft/server/PathfinderNormal.java +++ b/src/main/java/net/minecraft/server/PathfinderNormal.java -@@ -343,7 +343,8 @@ public class PathfinderNormal extends PathfinderAbstract { +@@ -355,7 +355,8 @@ public class PathfinderNormal extends PathfinderAbstract { PathType pathtype = this.b(iblockaccess, i, j, k); if (pathtype == PathType.OPEN && j >= 1) { @@ -95,7 +95,7 @@ index f1198272b..1eaed0fd8 100644 PathType pathtype1 = this.b(iblockaccess, i, j - 1, k); pathtype = pathtype1 != PathType.WALKABLE && pathtype1 != PathType.OPEN && pathtype1 != PathType.WATER && pathtype1 != PathType.LAVA ? PathType.WALKABLE : PathType.OPEN; -@@ -373,9 +374,10 @@ public class PathfinderNormal extends PathfinderAbstract { +@@ -385,9 +386,10 @@ public class PathfinderNormal extends PathfinderAbstract { for (int l = -1; l <= 1; ++l) { for (int i1 = -1; i1 <= 1; ++i1) { if (l != 0 || i1 != 0) { @@ -108,7 +108,7 @@ index f1198272b..1eaed0fd8 100644 pathtype = PathType.DANGER_CACTUS; } else if (block == Blocks.FIRE) { pathtype = PathType.DANGER_FIRE; -@@ -409,7 +411,8 @@ public class PathfinderNormal extends PathfinderAbstract { +@@ -421,7 +423,8 @@ public class PathfinderNormal extends PathfinderAbstract { protected PathType b(IBlockAccess iblockaccess, int i, int j, int k) { BlockPosition blockposition = new BlockPosition(i, j, k); diff --git a/Spigot-Server-Patches/0083-Fix-reducedDebugInfo-not-initialized-on-client.patch b/Spigot-Server-Patches/0083-Fix-reducedDebugInfo-not-initialized-on-client.patch index e37c0dc41..3e0d88477 100644 --- a/Spigot-Server-Patches/0083-Fix-reducedDebugInfo-not-initialized-on-client.patch +++ b/Spigot-Server-Patches/0083-Fix-reducedDebugInfo-not-initialized-on-client.patch @@ -1,14 +1,14 @@ -From 41f9603cf89851f8d59fdc5c9111138712090c3a Mon Sep 17 00:00:00 2001 +From 427bd54d7a0f7fd616d989a044eff927c11eddc9 Mon Sep 17 00:00:00 2001 From: Jedediah Smith Date: Sat, 2 Apr 2016 20:37:03 -0400 Subject: [PATCH] Fix reducedDebugInfo not initialized on client diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 6541ce24fa..6997c31a2c 100644 +index b647e4287..5745b4762 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java -@@ -161,6 +161,7 @@ public abstract class PlayerList { +@@ -162,6 +162,7 @@ public abstract class PlayerList { playerconnection.sendPacket(new PacketPlayOutHeldItemSlot(entityplayer.inventory.itemInHandIndex)); playerconnection.sendPacket(new PacketPlayOutRecipeUpdate(this.server.getCraftingManager().b())); playerconnection.sendPacket(new PacketPlayOutTags(this.server.getTagRegistry())); diff --git a/Spigot-Server-Patches/0087-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch b/Spigot-Server-Patches/0087-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch index 4c1d28d90..566eb3b20 100644 --- a/Spigot-Server-Patches/0087-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch +++ b/Spigot-Server-Patches/0087-Option-to-use-vanilla-per-world-scoreboard-coloring-.patch @@ -1,4 +1,4 @@ -From 4b363f2ad753aad4f3cea1a978ed611e23fbd38a Mon Sep 17 00:00:00 2001 +From db51cb961748a40d440c861a9693892955f35464 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Wed, 6 Apr 2016 01:04:23 -0500 Subject: [PATCH] Option to use vanilla per-world scoreboard coloring on names @@ -12,7 +12,7 @@ for this on CB at one point but I can't find it. We may need to do this ourselves at some point in the future. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 59d11e68c9..1da7ffab5d 100644 +index 59d11e68c..1da7ffab5 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -250,4 +250,9 @@ public class PaperWorldConfig { @@ -26,7 +26,7 @@ index 59d11e68c9..1da7ffab5d 100644 + } } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index ce98f690e8..cd0f62f5f0 100644 +index 86de93275..bc11a9162 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -1656,7 +1656,16 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -48,10 +48,10 @@ index ce98f690e8..cd0f62f5f0 100644 if (((LazyPlayerSet) event.getRecipients()).isLazy()) { for (Object recipient : minecraftServer.getPlayerList().players) { diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 6997c31a2c..4f47b245da 100644 +index 5745b4762..eadbf0ee0 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java -@@ -176,7 +176,7 @@ public abstract class PlayerList { +@@ -177,7 +177,7 @@ public abstract class PlayerList { } // CraftBukkit start chatmessage.a(EnumChatFormat.YELLOW); diff --git a/Spigot-Server-Patches/0088-Workaround-for-setting-passengers-on-players.patch b/Spigot-Server-Patches/0088-Workaround-for-setting-passengers-on-players.patch index cbf4a7a0e..6b6299a38 100644 --- a/Spigot-Server-Patches/0088-Workaround-for-setting-passengers-on-players.patch +++ b/Spigot-Server-Patches/0088-Workaround-for-setting-passengers-on-players.patch @@ -1,4 +1,4 @@ -From 85f4312ca4d64509eb61b9d85665e53ce8d433d6 Mon Sep 17 00:00:00 2001 +From 491523ef4ba143804b922744b5835af6ee868621 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Sun, 10 Apr 2016 03:23:32 -0500 Subject: [PATCH] Workaround for setting passengers on players @@ -6,10 +6,10 @@ Subject: [PATCH] Workaround for setting passengers on players SPIGOT-1915 & GH-114 diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 7edb01082a..f75ac03b74 100644 +index 3e1a7be6f..3d37f78c6 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -755,6 +755,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -754,6 +754,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return true; } diff --git a/Spigot-Server-Patches/0089-Remove-unused-World-Tile-Entity-List.patch b/Spigot-Server-Patches/0089-Remove-unused-World-Tile-Entity-List.patch index 21cb6c64d..01af96858 100644 --- a/Spigot-Server-Patches/0089-Remove-unused-World-Tile-Entity-List.patch +++ b/Spigot-Server-Patches/0089-Remove-unused-World-Tile-Entity-List.patch @@ -1,4 +1,4 @@ -From fb635d79739c98a409a62defd82b5b282b83f48c Mon Sep 17 00:00:00 2001 +From 00b367a9cebfde5f675a34b83738c65cf3389278 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 13 Apr 2016 00:25:28 -0400 Subject: [PATCH] Remove unused World Tile Entity List @@ -6,7 +6,7 @@ Subject: [PATCH] Remove unused World Tile Entity List Massive hit to performance and it is completely unnecessary. diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index d13cf1014d..de09ed97ec 100644 +index be18e029d..02ef71bb4 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -40,7 +40,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -39,7 +39,7 @@ index d13cf1014d..de09ed97ec 100644 this.tileEntityListUnload.clear(); } -@@ -782,7 +782,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -787,7 +787,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose tilesThisCycle--; this.tileEntityListTick.remove(tileTickPosition--); // Spigot end @@ -48,7 +48,7 @@ index d13cf1014d..de09ed97ec 100644 if (this.isLoaded(tileentity.getPosition())) { this.getChunkAtWorldCoords(tileentity.getPosition()).removeTileEntity(tileentity.getPosition()); } -@@ -812,7 +812,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -817,7 +817,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose this.notify(tileentity1.getPosition(), iblockdata, iblockdata, 3); // CraftBukkit start // From above, don't screw this up - SPIGOT-1746 @@ -57,7 +57,7 @@ index d13cf1014d..de09ed97ec 100644 this.a(tileentity1); } // CraftBukkit end -@@ -1083,7 +1083,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -1085,7 +1085,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose } else { if (tileentity != null) { this.tileEntityListPending.remove(tileentity); diff --git a/Spigot-Server-Patches/0091-Configurable-Player-Collision.patch b/Spigot-Server-Patches/0091-Configurable-Player-Collision.patch index 8774ac8a8..308d7bde4 100644 --- a/Spigot-Server-Patches/0091-Configurable-Player-Collision.patch +++ b/Spigot-Server-Patches/0091-Configurable-Player-Collision.patch @@ -1,11 +1,11 @@ -From ea9e4c1007b8495da4203a23c931a99023f8a3d7 Mon Sep 17 00:00:00 2001 +From 98c52a0d68daa9285292fe40c0e4214e661c6372 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 13 Apr 2016 02:10:49 -0400 Subject: [PATCH] Configurable Player Collision diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 4424f7ef18..69bfe62416 100644 +index 4424f7ef1..69bfe6241 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -223,4 +223,9 @@ public class PaperConfig { @@ -19,7 +19,7 @@ index 4424f7ef18..69bfe62416 100644 + } } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index ff70ef38aa..860957c0b1 100644 +index 8ce7903a1..1bc26d17d 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -439,6 +439,20 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Tue, 19 Apr 2016 14:09:31 -0500 Subject: [PATCH] Implement PlayerLocaleChangeEvent diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 1b8b6daac..c9c5af65a 100644 +index 6725b62a9..42b5b3f40 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -37,7 +37,7 @@ import org.bukkit.inventory.MainHand; @@ -40,10 +40,10 @@ index 1b8b6daac..c9c5af65a 100644 this.cl = packetplayinsettings.e(); this.getDataWatcher().set(EntityPlayer.bt, (byte) packetplayinsettings.f()); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index f75ac03b7..06db4a8f0 100644 +index 3d37f78c6..eca8c0ded 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1749,8 +1749,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1748,8 +1748,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public String getLocale() { @@ -56,7 +56,7 @@ index f75ac03b7..06db4a8f0 100644 } // Paper start -@@ -1829,7 +1831,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1828,7 +1830,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public String getLocale() { diff --git a/Spigot-Server-Patches/0099-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch b/Spigot-Server-Patches/0099-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch index ece3c0741..2f5e69698 100644 --- a/Spigot-Server-Patches/0099-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch +++ b/Spigot-Server-Patches/0099-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch @@ -1,4 +1,4 @@ -From f77a0b7daecc921d3c29fe4375224fe88728548b Mon Sep 17 00:00:00 2001 +From a8ea4e4661e2aa7898ecf28fe43d93916064f57b Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 29 Apr 2016 20:02:00 -0400 Subject: [PATCH] Improve Maps (in item frames) performance and bug fixes @@ -13,7 +13,7 @@ custom renderers are in use, defaulting to the much simpler Vanilla system. Additionally, numerous issues to player position tracking on maps has been fixed. diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index d0713bfcd..8a6f8e875 100644 +index 51dcb5ff0..7143ec7bb 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -590,6 +590,12 @@ public abstract class EntityHuman extends EntityLiving { @@ -30,7 +30,7 @@ index d0713bfcd..8a6f8e875 100644 return entityitem; } diff --git a/src/main/java/net/minecraft/server/WorldMap.java b/src/main/java/net/minecraft/server/WorldMap.java -index e080a77c7..98e4ad4ac 100644 +index 61892fec9..acbd381c8 100644 --- a/src/main/java/net/minecraft/server/WorldMap.java +++ b/src/main/java/net/minecraft/server/WorldMap.java @@ -31,6 +31,7 @@ public class WorldMap extends PersistentBase { @@ -102,10 +102,10 @@ index e080a77c7..98e4ad4ac 100644 for ( org.bukkit.map.MapCursor cursor : render.cursors) { diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index ab2ca1c32..1e718e4db 100644 +index 2128b0bdb..2cb70b3bc 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1045,6 +1045,7 @@ public class WorldServer extends World { +@@ -1038,6 +1038,7 @@ public class WorldServer extends World { { if ( iter.next().trackee == entity ) { diff --git a/Spigot-Server-Patches/0109-Fix-Double-World-Add-issues.patch b/Spigot-Server-Patches/0109-Fix-Double-World-Add-issues.patch index 8009a6543..6ad133dce 100644 --- a/Spigot-Server-Patches/0109-Fix-Double-World-Add-issues.patch +++ b/Spigot-Server-Patches/0109-Fix-Double-World-Add-issues.patch @@ -1,4 +1,4 @@ -From baaddf7e045aa037211e6721e02193fd49d933f2 Mon Sep 17 00:00:00 2001 +From 75f71ce6a90425d146b533b8a86a277b014925c6 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 21 Jun 2016 22:54:34 -0400 Subject: [PATCH] Fix Double World Add issues @@ -8,10 +8,10 @@ Vanilla will double add Spider Jockeys to the world, so ignore already added. Also add debug if something else tries to, and abort before world gets bad state diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 1e718e4db..464a132a3 100644 +index 2cb70b3bc..ec392deca 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -935,6 +935,7 @@ public class WorldServer extends World { +@@ -928,6 +928,7 @@ public class WorldServer extends World { // CraftBukkit start private boolean addEntity0(Entity entity, CreatureSpawnEvent.SpawnReason spawnReason) { org.spigotmc.AsyncCatcher.catchOp( "entity add"); // Spigot diff --git a/Spigot-Server-Patches/0110-Fix-Old-Sign-Conversion.patch b/Spigot-Server-Patches/0110-Fix-Old-Sign-Conversion.patch index bfa19d521..82fb389e7 100644 --- a/Spigot-Server-Patches/0110-Fix-Old-Sign-Conversion.patch +++ b/Spigot-Server-Patches/0110-Fix-Old-Sign-Conversion.patch @@ -1,4 +1,4 @@ -From 573d367a58a83b1d1598fa03f3ab124a6b8d5ae7 Mon Sep 17 00:00:00 2001 +From ace42663ea06bd02c38d2a2b2462b91303d524d1 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 17 Jun 2016 20:50:11 -0400 Subject: [PATCH] Fix Old Sign Conversion @@ -9,7 +9,7 @@ Subject: [PATCH] Fix Old Sign Conversion This causes Igloos and such to render broken signs. We fix this by ignoring sign conversion for Defined Structures diff --git a/src/main/java/net/minecraft/server/DefinedStructure.java b/src/main/java/net/minecraft/server/DefinedStructure.java -index dabfb8067b..f80ba567f2 100644 +index 1e81c49bf..297f868d6 100644 --- a/src/main/java/net/minecraft/server/DefinedStructure.java +++ b/src/main/java/net/minecraft/server/DefinedStructure.java @@ -203,9 +203,11 @@ public class DefinedStructure { @@ -25,10 +25,10 @@ index dabfb8067b..f80ba567f2 100644 } diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index acd9edd670..d70b678de3 100644 +index b99bcbf8a..013745f82 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java -@@ -19,6 +19,7 @@ public abstract class TileEntity implements KeyedObject { // Paper +@@ -20,6 +20,7 @@ public abstract class TileEntity implements KeyedObject { // Paper public final CraftPersistentDataContainer persistentDataContainer = new CraftPersistentDataContainer(DATA_TYPE_REGISTRY); // CraftBukkit end private static final Logger LOGGER = LogManager.getLogger(); @@ -37,15 +37,15 @@ index acd9edd670..d70b678de3 100644 @Nullable protected World world; diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java -index 86505f25c1..9de03a24cf 100644 +index 86d0b18f7..626ba9b17 100644 --- a/src/main/java/net/minecraft/server/TileEntitySign.java +++ b/src/main/java/net/minecraft/server/TileEntitySign.java @@ -58,13 +58,14 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // } try { -- IChatBaseComponent ichatbasecomponent = IChatBaseComponent.ChatSerializer.a(s); -+ //IChatBaseComponent ichatbasecomponent = IChatBaseComponent.ChatSerializer.a(s); // Paper - move down - the old format might throw a json error +- IChatBaseComponent ichatbasecomponent = IChatBaseComponent.ChatSerializer.a(s.isEmpty() ? "\"\"" : s); ++ //IChatBaseComponent ichatbasecomponent = IChatBaseComponent.ChatSerializer.a(s.isEmpty() ? "\"\"" : s); // Paper - move down - the old format might throw a json error - if (oldSign) { + if (oldSign && !isLoadingStructure) { // Paper - saved structures will be in the new format, but will not have isConverted @@ -53,7 +53,7 @@ index 86505f25c1..9de03a24cf 100644 continue; } // CraftBukkit end -+ IChatBaseComponent ichatbasecomponent = IChatBaseComponent.ChatSerializer.a(s); // Paper - after old sign ++ IChatBaseComponent ichatbasecomponent = IChatBaseComponent.ChatSerializer.a(s.isEmpty() ? "\"\"" : s); // Paper - after old sign if (this.world instanceof WorldServer) { try { diff --git a/Spigot-Server-Patches/0118-Chunk-registration-fixes.patch b/Spigot-Server-Patches/0118-Chunk-registration-fixes.patch index fdedc7865..30c1d2f9c 100644 --- a/Spigot-Server-Patches/0118-Chunk-registration-fixes.patch +++ b/Spigot-Server-Patches/0118-Chunk-registration-fixes.patch @@ -1,4 +1,4 @@ -From f355773996d96cee145d4cd5e257b0273fb37927 Mon Sep 17 00:00:00 2001 +From 2b1575c0cbbe8ef6d446beabe6cc7852af985386 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 21 Sep 2016 22:54:28 -0400 Subject: [PATCH] Chunk registration fixes @@ -8,10 +8,10 @@ World checks and the Chunk Add logic are inconsistent on how Y > 256, < 0, is tr Keep them consistent diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 464a132a3..bbf676958 100644 +index ec392deca..9fdc8f5b0 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -631,7 +631,7 @@ public class WorldServer extends World { +@@ -624,7 +624,7 @@ public class WorldServer extends World { public void chunkCheck(Entity entity) { this.getMethodProfiler().enter("chunkCheck"); int i = MathHelper.floor(entity.locX / 16.0D); diff --git a/Spigot-Server-Patches/0121-Option-to-remove-corrupt-tile-entities.patch b/Spigot-Server-Patches/0121-Option-to-remove-corrupt-tile-entities.patch index 95896ba8f..ebfd50e61 100644 --- a/Spigot-Server-Patches/0121-Option-to-remove-corrupt-tile-entities.patch +++ b/Spigot-Server-Patches/0121-Option-to-remove-corrupt-tile-entities.patch @@ -1,11 +1,11 @@ -From a8b53fb5c3798192239fb36ef5d55815f10fc75c Mon Sep 17 00:00:00 2001 +From 94dfb8f25bd8fce92c3befc3a08a5a8fa1e342d6 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Wed, 5 Oct 2016 16:27:36 -0500 Subject: [PATCH] Option to remove corrupt tile entities diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 92ab55182f..eed454bf40 100644 +index 92ab55182..eed454bf4 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -296,4 +296,9 @@ public class PaperWorldConfig { @@ -19,10 +19,10 @@ index 92ab55182f..eed454bf40 100644 + } } diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index ed7899abb2..5f0329d0b1 100644 +index c2865425d..7382a47d8 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -527,6 +527,12 @@ public class Chunk implements IChunkAccess { +@@ -528,6 +528,12 @@ public class Chunk implements IChunkAccess { "Chunk coordinates: " + (this.loc.x * 16) + "," + (this.loc.z * 16)); e.printStackTrace(); ServerInternalException.reportInternalException(e); diff --git a/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch b/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch index d6c7cb3d8..987ca731c 100644 --- a/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch +++ b/Spigot-Server-Patches/0122-Add-EntityZapEvent.patch @@ -1,11 +1,11 @@ -From d8b81595d51b50634099cdc7a0864b272bcef917 Mon Sep 17 00:00:00 2001 +From a2ec94269fa6eaf9b16e4810c3f69e1013a3b28f 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 01202e4d53..616075569f 100644 +index 01202e4d5..616075569 100644 --- a/src/main/java/net/minecraft/server/EntityPig.java +++ b/src/main/java/net/minecraft/server/EntityPig.java @@ -168,6 +168,12 @@ public class EntityPig extends EntityAnimal { @@ -22,10 +22,10 @@ index 01202e4d53..616075569f 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 cc66f565c3..c348683247 100644 +index 512d18a2b..9ac9d499d 100644 --- a/src/main/java/net/minecraft/server/EntityVillager.java +++ b/src/main/java/net/minecraft/server/EntityVillager.java -@@ -573,6 +573,12 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation +@@ -578,6 +578,12 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation public void onLightningStrike(EntityLightning entitylightning) { EntityWitch entitywitch = (EntityWitch) EntityTypes.WITCH.a(this.world); @@ -39,7 +39,7 @@ index cc66f565c3..c348683247 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 0736c83a4e..1632969249 100644 +index 0997238df..603ebc504 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -994,6 +994,14 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/0132-Prevent-Pathfinding-out-of-World-Border.patch b/Spigot-Server-Patches/0132-Prevent-Pathfinding-out-of-World-Border.patch index 503bd45d3..24b7def94 100644 --- a/Spigot-Server-Patches/0132-Prevent-Pathfinding-out-of-World-Border.patch +++ b/Spigot-Server-Patches/0132-Prevent-Pathfinding-out-of-World-Border.patch @@ -1,4 +1,4 @@ -From 86cfce2ef59058237e194d6be275d49645d503f8 Mon Sep 17 00:00:00 2001 +From bd7ba68c3a9b35a34b430b27c0dc13421cac44ad Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 19 Dec 2016 23:07:42 -0500 Subject: [PATCH] Prevent Pathfinding out of World Border @@ -6,17 +6,17 @@ Subject: [PATCH] Prevent Pathfinding out of World Border This prevents Entities from trying to run outside of the World Border diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java -index fe19167a1..6a1d5a899 100644 +index 4a91e0d8c..6cc142383 100644 --- a/src/main/java/net/minecraft/server/NavigationAbstract.java +++ b/src/main/java/net/minecraft/server/NavigationAbstract.java -@@ -98,6 +98,7 @@ public abstract class NavigationAbstract { - @Nullable protected PathEntity a(BlockPosition blockposition, double d0, double d1, double d2, int i, boolean flag) { return this.a(blockposition, null, d0, d1, d2, i, flag); } +@@ -97,6 +97,7 @@ public abstract class NavigationAbstract { + @Nullable + protected PathEntity a(BlockPosition blockposition, double d0, double d1, double d2, int i, boolean flag) { return this.a(blockposition, null, d0, d1, d2, i, flag); } @Nullable protected PathEntity a(BlockPosition blockposition, Entity target, double d0, double d1, double d2, int i, boolean flag) { - // Paper end + if (!getEntity().getWorld().getWorldBorder().isInBounds(blockposition)) return null; // Paper - don't path out of world border - if (!this.a()) { + if (this.a.locY < 0.0D) { return null; - } else if (this.c != null && !this.c.b() && blockposition.equals(this.q)) { + } else if (!this.a()) { -- 2.21.0 diff --git a/Spigot-Server-Patches/0142-Enforce-Sync-Player-Saves.patch b/Spigot-Server-Patches/0142-Enforce-Sync-Player-Saves.patch index 856986148..d91166315 100644 --- a/Spigot-Server-Patches/0142-Enforce-Sync-Player-Saves.patch +++ b/Spigot-Server-Patches/0142-Enforce-Sync-Player-Saves.patch @@ -1,4 +1,4 @@ -From 141dac0efd72ea2e0702616331db1cd427173959 Mon Sep 17 00:00:00 2001 +From 453b8bec5d32187e1700a0d78fd731096e4480d5 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 7 Jan 2017 15:41:58 -0500 Subject: [PATCH] Enforce Sync Player Saves @@ -7,10 +7,10 @@ Saving players async is extremely dangerous. This will force it to main the same way we handle async chunk loads. diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 882dd07e7f..6457317d78 100644 +index 7b6d518b1..f13d63030 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java -@@ -929,11 +929,13 @@ public abstract class PlayerList { +@@ -930,11 +930,13 @@ public abstract class PlayerList { } public void savePlayers() { diff --git a/Spigot-Server-Patches/0145-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch b/Spigot-Server-Patches/0145-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch index 8a2e1761c..3fea0bbd2 100644 --- a/Spigot-Server-Patches/0145-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch +++ b/Spigot-Server-Patches/0145-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch @@ -1,4 +1,4 @@ -From 4194fadfef71e639deaa66ce9b3d6702384d326c Mon Sep 17 00:00:00 2001 +From af686a8e6fec3b00d6f5bdb9609b00150e7b45ba 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,10 +8,10 @@ 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 fd23d45346..69e65ea6c8 100644 +index 85a5776b0..dedb063de 100644 --- a/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java -@@ -504,13 +504,13 @@ public class Block implements IMaterial { +@@ -512,13 +512,13 @@ public class Block implements IMaterial { } } @@ -28,7 +28,7 @@ index fd23d45346..69e65ea6c8 100644 } diff --git a/src/main/java/net/minecraft/server/ContainerGrindstone.java b/src/main/java/net/minecraft/server/ContainerGrindstone.java -index 2e4f81ebe4..88b9655bb0 100644 +index 4144a4757..8a9c81ad6 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 2e4f81ebe4..88b9655bb0 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 2ee80c2863..b0651a7086 100644 +index b3010bee5..d42d4e83e 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 2ee80c2863..b0651a7086 100644 } diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -index bfba08fb24..49668f2c21 100644 +index bfba08fb2..49668f2c2 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 bfba08fb24..49668f2c21 100644 @Override diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java -index 78527f3509..03f782d4b9 100644 +index bdd2a39f8..67f8b6841 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 78527f3509..03f782d4b9 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 482d6f7c62..567112ffc7 100644 +index fdc0a49f9..25570f1d1 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -381,7 +381,8 @@ public abstract class EntityLiving extends Entity { @@ -161,7 +161,7 @@ index 482d6f7c62..567112ffc7 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 77dd4c99a6..398b499bbe 100644 +index 77dd4c99a..398b499bb 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 77dd4c99a6..398b499bbe 100644 this.die(); diff --git a/src/main/java/net/minecraft/server/EntityTurtle.java b/src/main/java/net/minecraft/server/EntityTurtle.java -index 7c6506a912..1b4933c077 100644 +index 7c6506a91..1b4933c07 100644 --- a/src/main/java/net/minecraft/server/EntityTurtle.java +++ b/src/main/java/net/minecraft/server/EntityTurtle.java @@ -512,7 +512,7 @@ public class EntityTurtle extends EntityAnimal { @@ -187,24 +187,24 @@ index 7c6506a912..1b4933c077 100644 } diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java -index c348683247..bc04086d79 100644 +index 9ac9d499d..53e2266a9 100644 --- a/src/main/java/net/minecraft/server/EntityVillager.java +++ b/src/main/java/net/minecraft/server/EntityVillager.java -@@ -421,7 +421,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation +@@ -426,7 +426,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation } - if (merchantrecipe.q()) { + if (merchantrecipe.isRewardExp()) { - this.world.addEntity(new EntityExperienceOrb(this.world, this.locX, this.locY + 0.5D, this.locZ, i)); + this.world.addEntity(new EntityExperienceOrb(this.world, this.locX, this.locY + 0.5D, this.locZ, i, org.bukkit.entity.ExperienceOrb.SpawnReason.VILLAGER_TRADE, this.getTrader(), this)); // Paper } } diff --git a/src/main/java/net/minecraft/server/EntityVillagerTrader.java b/src/main/java/net/minecraft/server/EntityVillagerTrader.java -index 1d612d828e..002ff88800 100644 +index fee8f97d8..8ced8722a 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 { - if (merchantrecipe.q()) { + if (merchantrecipe.isRewardExp()) { int i = 3 + this.random.nextInt(4); - this.world.addEntity(new EntityExperienceOrb(this.world, this.locX, this.locY + 0.5D, this.locZ, i)); @@ -213,7 +213,7 @@ index 1d612d828e..002ff88800 100644 } diff --git a/src/main/java/net/minecraft/server/PathfinderGoalBreed.java b/src/main/java/net/minecraft/server/PathfinderGoalBreed.java -index d25a05736e..9d0b1ffefa 100644 +index d25a05736..9d0b1ffef 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 d25a05736e..9d0b1ffefa 100644 // CraftBukkit end } diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java -index 6e90f21ea2..a7411c75ac 100644 +index 6e90f21ea..a7411c75a 100644 --- a/src/main/java/net/minecraft/server/PlayerInteractManager.java +++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java @@ -367,7 +367,7 @@ public class PlayerInteractManager { @@ -239,7 +239,7 @@ index 6e90f21ea2..a7411c75ac 100644 // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/SlotFurnaceResult.java b/src/main/java/net/minecraft/server/SlotFurnaceResult.java -index d2698e847c..edc4a5c34e 100644 +index d2698e847..edc4a5c34 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 d2698e847c..edc4a5c34e 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 adb1a09133..be16fe9a9e 100644 +index adb1a0913..be16fe9a9 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 adb1a09133..be16fe9a9e 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index c79b0f42a6..94178fe8ba 100644 +index dd31b346c..9dd375951 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1626,7 +1626,7 @@ public class CraftWorld implements World { +@@ -1609,7 +1609,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 c79b0f42a6..94178fe8ba 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 1b512cc45c..fbad045675 100644 +index 1b512cc45..fbad04567 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 { diff --git a/Spigot-Server-Patches/0148-Make-targetSize-more-aggressive-in-the-chunk-unload-.patch b/Spigot-Server-Patches/0148-Make-targetSize-more-aggressive-in-the-chunk-unload-.patch index ebaeae080..19af92ae0 100644 --- a/Spigot-Server-Patches/0148-Make-targetSize-more-aggressive-in-the-chunk-unload-.patch +++ b/Spigot-Server-Patches/0148-Make-targetSize-more-aggressive-in-the-chunk-unload-.patch @@ -1,14 +1,14 @@ -From 82970c53b5f0fc7f3efa48dc5f603bbe300ebbc9 Mon Sep 17 00:00:00 2001 +From 8e27f750c6159836be0bf755ba6759079648b833 Mon Sep 17 00:00:00 2001 From: Brokkonaut Date: Tue, 7 Feb 2017 16:55:35 -0600 Subject: [PATCH] Make targetSize more aggressive in the chunk unload queue diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index 1370565b36..8e40027acf 100644 +index fb56e6ca0..a93117667 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java -@@ -293,7 +293,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { +@@ -313,7 +313,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { // Spigot start org.spigotmc.SlackActivityAccountant activityAccountant = this.world.getMinecraftServer().slackActivityAccountant; activityAccountant.startActivity(0.5); diff --git a/Spigot-Server-Patches/0150-Properly-handle-async-calls-to-restart-the-server.patch b/Spigot-Server-Patches/0150-Properly-handle-async-calls-to-restart-the-server.patch index 96a7fb385..d28a23476 100644 --- a/Spigot-Server-Patches/0150-Properly-handle-async-calls-to-restart-the-server.patch +++ b/Spigot-Server-Patches/0150-Properly-handle-async-calls-to-restart-the-server.patch @@ -1,4 +1,4 @@ -From e5b162f22e402926b6adbca86c920ca466bcf92d Mon Sep 17 00:00:00 2001 +From 96e9ac054004602ee4a59599848d078a7de53ab4 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Fri, 12 May 2017 23:34:11 -0500 Subject: [PATCH] Properly handle async calls to restart the server @@ -30,7 +30,7 @@ will have plugins and worlds saving to the disk has a high potential to result in corruption/dataloss. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 3b745b2b75..c117e8fa3f 100644 +index 852d827c1..119730460 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -80,6 +80,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Sun, 7 May 2017 06:26:09 -0500 Subject: [PATCH] PlayerPickupItemEvent#setFlyAtPlayer diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java -index 36b5fb537..e02df8987 100644 +index 9c743de8d..2deb5c494 100644 --- a/src/main/java/net/minecraft/server/EntityItem.java +++ b/src/main/java/net/minecraft/server/EntityItem.java -@@ -316,6 +316,7 @@ public class EntityItem extends Entity { +@@ -318,6 +318,7 @@ public class EntityItem extends Entity { // CraftBukkit start - fire PlayerPickupItemEvent int canHold = entityhuman.inventory.canHold(itemstack); int remaining = i - canHold; @@ -16,7 +16,7 @@ index 36b5fb537..e02df8987 100644 if (this.pickupDelay <= 0 && canHold > 0) { itemstack.setCount(canHold); -@@ -323,7 +324,13 @@ public class EntityItem extends Entity { +@@ -325,7 +326,13 @@ public class EntityItem extends Entity { PlayerPickupItemEvent playerEvent = new PlayerPickupItemEvent((org.bukkit.entity.Player) entityhuman.getBukkitEntity(), (org.bukkit.entity.Item) this.getBukkitEntity(), remaining); playerEvent.setCancelled(!entityhuman.canPickUpLoot); this.world.getServer().getPluginManager().callEvent(playerEvent); @@ -30,7 +30,7 @@ index 36b5fb537..e02df8987 100644 return; } -@@ -343,7 +350,11 @@ public class EntityItem extends Entity { +@@ -345,7 +352,11 @@ public class EntityItem extends Entity { // CraftBukkit end if (this.pickupDelay == 0 && (this.owner == null || 6000 - this.age <= 200 || this.owner.equals(entityhuman.getUniqueID())) && entityhuman.inventory.pickup(itemstack)) { diff --git a/Spigot-Server-Patches/0158-PlayerAttemptPickupItemEvent.patch b/Spigot-Server-Patches/0158-PlayerAttemptPickupItemEvent.patch index ccfd2a27c..23cebd33a 100644 --- a/Spigot-Server-Patches/0158-PlayerAttemptPickupItemEvent.patch +++ b/Spigot-Server-Patches/0158-PlayerAttemptPickupItemEvent.patch @@ -1,11 +1,11 @@ -From 8559585ae4946733a3fd8d088a3509f9348ac663 Mon Sep 17 00:00:00 2001 +From d482a5bc4f483c161399595bafbf4f5803a3d6cf Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sun, 11 Jun 2017 16:30:30 -0500 Subject: [PATCH] PlayerAttemptPickupItemEvent diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java -index e02df8987..c582c6711 100644 +index 2deb5c494..bda5ea463 100644 --- a/src/main/java/net/minecraft/server/EntityItem.java +++ b/src/main/java/net/minecraft/server/EntityItem.java @@ -8,6 +8,7 @@ import javax.annotation.Nullable; @@ -16,7 +16,7 @@ index e02df8987..c582c6711 100644 public class EntityItem extends Entity { -@@ -318,6 +319,22 @@ public class EntityItem extends Entity { +@@ -320,6 +321,22 @@ public class EntityItem extends Entity { int remaining = i - canHold; boolean flyAtPlayer = false; // Paper diff --git a/Spigot-Server-Patches/0168-ProfileWhitelistVerifyEvent.patch b/Spigot-Server-Patches/0168-ProfileWhitelistVerifyEvent.patch index 755813a4d..998c030d7 100644 --- a/Spigot-Server-Patches/0168-ProfileWhitelistVerifyEvent.patch +++ b/Spigot-Server-Patches/0168-ProfileWhitelistVerifyEvent.patch @@ -1,14 +1,14 @@ -From 7f8eb3c3b567f8cf69bd6ab8e12d5f5432ec2e22 Mon Sep 17 00:00:00 2001 +From 7c9560783091a441d9927d219d8a40c51adae42b Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 3 Jul 2017 18:11:10 -0500 Subject: [PATCH] ProfileWhitelistVerifyEvent diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 9577b537fc..cacd769543 100644 +index b746e7ad3..5ac4a7c28 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java -@@ -520,9 +520,9 @@ public abstract class PlayerList { +@@ -521,9 +521,9 @@ public abstract class PlayerList { // return chatmessage; if (!gameprofilebanentry.hasExpired()) event.disallow(PlayerLoginEvent.Result.KICK_BANNED, CraftChatMessage.fromComponent(chatmessage)); // Spigot @@ -20,7 +20,7 @@ index 9577b537fc..cacd769543 100644 } else if (getIPBans().isBanned(socketaddress) && !getIPBans().get(socketaddress).hasExpired()) { IpBanEntry ipbanentry = this.l.get(socketaddress); -@@ -891,9 +891,25 @@ public abstract class PlayerList { +@@ -892,9 +892,25 @@ public abstract class PlayerList { this.server.getCommandDispatcher().a(entityplayer); } diff --git a/Spigot-Server-Patches/0183-Replace-HashSet-with-fastutil-s-ObjectOpenHashSet-in.patch b/Spigot-Server-Patches/0183-Replace-HashSet-with-fastutil-s-ObjectOpenHashSet-in.patch deleted file mode 100644 index 63516b843..000000000 --- a/Spigot-Server-Patches/0183-Replace-HashSet-with-fastutil-s-ObjectOpenHashSet-in.patch +++ /dev/null @@ -1,30 +0,0 @@ -From fd2bd4f9885b94441cf42515e5c37a7d59e8c267 Mon Sep 17 00:00:00 2001 -From: Brokkonaut -Date: Fri, 20 Oct 2017 04:33:45 +0200 -Subject: [PATCH] Replace HashSet with fastutil's ObjectOpenHashSet in - HashTreeSet - -HashSet sometimes uses compareTo() instead of equals() and this breaks the comparison of net.minecraft.server.NextTickListEntry (the only place where HashTreeSet is used). - -In this cases duplicate entries could be added to the HashSet of HashTreeSet, because NextTickListEntry.compareTo() does not return 0, even if NextTickListEntry.equals() returns true. - -ObjectOpenHashSet never uses compareTo(), so the inconsistencies of NextTickListEntry cause no problems. - -Fixes https://github.com/PaperMC/Paper/issues/588 - -diff --git a/src/main/java/org/bukkit/craftbukkit/util/HashTreeSet.java b/src/main/java/org/bukkit/craftbukkit/util/HashTreeSet.java -index 80a5c29f3..cd864c404 100644 ---- a/src/main/java/org/bukkit/craftbukkit/util/HashTreeSet.java -+++ b/src/main/java/org/bukkit/craftbukkit/util/HashTreeSet.java -@@ -8,7 +8,7 @@ import java.util.TreeSet; - - public class HashTreeSet implements Set { - -- private HashSet hash = new HashSet(); -+ private Set hash = new it.unimi.dsi.fastutil.objects.ObjectOpenHashSet(); //Paper - Replace java.util.HashSet with ObjectOpenHashSet - private TreeSet tree = new TreeSet(); - - public HashTreeSet() { --- -2.21.0 - diff --git a/Spigot-Server-Patches/0184-Send-attack-SoundEffects-only-to-players-who-can-see.patch b/Spigot-Server-Patches/0183-Send-attack-SoundEffects-only-to-players-who-can-see.patch similarity index 97% rename from Spigot-Server-Patches/0184-Send-attack-SoundEffects-only-to-players-who-can-see.patch rename to Spigot-Server-Patches/0183-Send-attack-SoundEffects-only-to-players-who-can-see.patch index 12acc11cf..ba48edf4a 100644 --- a/Spigot-Server-Patches/0184-Send-attack-SoundEffects-only-to-players-who-can-see.patch +++ b/Spigot-Server-Patches/0183-Send-attack-SoundEffects-only-to-players-who-can-see.patch @@ -1,4 +1,4 @@ -From b1a18d2954d0e282cfb78fce638663d2afeadaba Mon Sep 17 00:00:00 2001 +From ed6075e3d366248adb9544ca2a8beb353ac27237 Mon Sep 17 00:00:00 2001 From: Brokkonaut Date: Tue, 31 Oct 2017 03:26:18 +0100 Subject: [PATCH] Send attack SoundEffects only to players who can see the @@ -6,7 +6,7 @@ Subject: [PATCH] Send attack SoundEffects only to players who can see the diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 0f8100a05..a30d88af8 100644 +index 05942fb7e..b97e34163 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -941,6 +941,15 @@ public abstract class EntityHuman extends EntityLiving { @@ -72,7 +72,7 @@ index 0f8100a05..a30d88af8 100644 entity.extinguish(); } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index f9413dd68..8328b0125 100644 +index 3fa218a32..37884a606 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -667,6 +667,10 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose diff --git a/Spigot-Server-Patches/0185-Option-for-maximum-exp-value-when-merging-orbs.patch b/Spigot-Server-Patches/0184-Option-for-maximum-exp-value-when-merging-orbs.patch similarity index 95% rename from Spigot-Server-Patches/0185-Option-for-maximum-exp-value-when-merging-orbs.patch rename to Spigot-Server-Patches/0184-Option-for-maximum-exp-value-when-merging-orbs.patch index 3c0ee55e0..6674dbe8d 100644 --- a/Spigot-Server-Patches/0185-Option-for-maximum-exp-value-when-merging-orbs.patch +++ b/Spigot-Server-Patches/0184-Option-for-maximum-exp-value-when-merging-orbs.patch @@ -1,11 +1,11 @@ -From b3328de9c961142f14d916b9a9b87c0570120f28 Mon Sep 17 00:00:00 2001 +From 423271176bb3c5474c18d7aae55ee6333f9d7f5f Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 10 Nov 2017 23:03:12 -0500 Subject: [PATCH] Option for maximum exp value when merging orbs diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index abc967d3f5..2a50d6babf 100644 +index abc967d3f..2a50d6bab 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -338,4 +338,10 @@ public class PaperWorldConfig { @@ -20,7 +20,7 @@ index abc967d3f5..2a50d6babf 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 3ad614b7de..87b2ad7960 100644 +index 8585dcace..1daf7b2c5 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -513,16 +513,32 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/0186-Add-PlayerArmorChangeEvent.patch b/Spigot-Server-Patches/0185-Add-PlayerArmorChangeEvent.patch similarity index 95% rename from Spigot-Server-Patches/0186-Add-PlayerArmorChangeEvent.patch rename to Spigot-Server-Patches/0185-Add-PlayerArmorChangeEvent.patch index d3161c6a6..03ebfe3dd 100644 --- a/Spigot-Server-Patches/0186-Add-PlayerArmorChangeEvent.patch +++ b/Spigot-Server-Patches/0185-Add-PlayerArmorChangeEvent.patch @@ -1,11 +1,11 @@ -From 017175990b58dac008de3399fe82a3d8d41aebb4 Mon Sep 17 00:00:00 2001 +From 4b68adef0da9d19e413ba0179905f856b9418e42 Mon Sep 17 00:00:00 2001 From: pkt77 Date: Fri, 10 Nov 2017 23:46:34 -0500 Subject: [PATCH] Add PlayerArmorChangeEvent diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 121925046..9ef605ba3 100644 +index e2921de48..864204078 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -1,5 +1,6 @@ diff --git a/Spigot-Server-Patches/0187-Prevent-logins-from-being-processed-when-the-player-.patch b/Spigot-Server-Patches/0186-Prevent-logins-from-being-processed-when-the-player-.patch similarity index 94% rename from Spigot-Server-Patches/0187-Prevent-logins-from-being-processed-when-the-player-.patch rename to Spigot-Server-Patches/0186-Prevent-logins-from-being-processed-when-the-player-.patch index 620a36096..0d3c253ea 100644 --- a/Spigot-Server-Patches/0187-Prevent-logins-from-being-processed-when-the-player-.patch +++ b/Spigot-Server-Patches/0186-Prevent-logins-from-being-processed-when-the-player-.patch @@ -1,4 +1,4 @@ -From 381f712680dfeaafe48d34a457a51f7c691def20 Mon Sep 17 00:00:00 2001 +From 7d0c76996f72ee5518fad9520c12c975f177fb75 Mon Sep 17 00:00:00 2001 From: killme Date: Sun, 12 Nov 2017 19:40:01 +0100 Subject: [PATCH] Prevent logins from being processed when the player has diff --git a/Spigot-Server-Patches/0188-use-CB-BlockState-implementations-for-captured-block.patch b/Spigot-Server-Patches/0187-use-CB-BlockState-implementations-for-captured-block.patch similarity index 94% rename from Spigot-Server-Patches/0188-use-CB-BlockState-implementations-for-captured-block.patch rename to Spigot-Server-Patches/0187-use-CB-BlockState-implementations-for-captured-block.patch index 6f36ad301..44e4bc5ec 100644 --- a/Spigot-Server-Patches/0188-use-CB-BlockState-implementations-for-captured-block.patch +++ b/Spigot-Server-Patches/0187-use-CB-BlockState-implementations-for-captured-block.patch @@ -1,4 +1,4 @@ -From 6372cbd4afa45ce3bb758f13529d5f38893d6947 Mon Sep 17 00:00:00 2001 +From 1e9ef944858c7c6d5a27733a67f1015f72a55fdc Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Thu, 16 Nov 2017 12:12:41 +0000 Subject: [PATCH] use CB BlockState implementations for captured blocks @@ -18,7 +18,7 @@ the blockstate that will be valid for restoration, as opposed to dropping information on restoration when the event is cancelled. diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 8328b0125..c388a8261 100644 +index 37884a606..e3de63489 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -344,7 +344,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose diff --git a/Spigot-Server-Patches/0189-API-to-get-a-BlockState-without-a-snapshot.patch b/Spigot-Server-Patches/0188-API-to-get-a-BlockState-without-a-snapshot.patch similarity index 93% rename from Spigot-Server-Patches/0189-API-to-get-a-BlockState-without-a-snapshot.patch rename to Spigot-Server-Patches/0188-API-to-get-a-BlockState-without-a-snapshot.patch index 3487051f9..52791c4f1 100644 --- a/Spigot-Server-Patches/0189-API-to-get-a-BlockState-without-a-snapshot.patch +++ b/Spigot-Server-Patches/0188-API-to-get-a-BlockState-without-a-snapshot.patch @@ -1,4 +1,4 @@ -From 86492da20337216397e5af641569923b7b87b9f7 Mon Sep 17 00:00:00 2001 +From d60f08ef39ec6643ebfe0664bd1071a5c0219a8b Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 6 Nov 2017 21:08:22 -0500 Subject: [PATCH] API to get a BlockState without a snapshot @@ -13,10 +13,10 @@ also Avoid NPE during CraftBlockEntityState load if could not get TE If Tile Entity was null, correct Sign to return empty lines instead of null diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index d70b678de3..b76f30dd24 100644 +index 013745f82..9f31f071b 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java -@@ -225,7 +225,12 @@ public abstract class TileEntity implements KeyedObject { // Paper +@@ -236,7 +236,12 @@ public abstract class TileEntity implements KeyedObject { // Paper } // CraftBukkit start - add method @@ -29,7 +29,7 @@ index d70b678de3..b76f30dd24 100644 if (world == null) return null; // Spigot start org.bukkit.block.Block block = world.getWorld().getBlockAt(position.getX(), position.getY(), position.getZ()); -@@ -234,7 +239,7 @@ public abstract class TileEntity implements KeyedObject { // Paper +@@ -245,7 +250,7 @@ public abstract class TileEntity implements KeyedObject { // Paper return null; } // Spigot end @@ -39,7 +39,7 @@ index d70b678de3..b76f30dd24 100644 return null; } diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java -index a36876e495..d31447ccd6 100644 +index a36876e49..d31447ccd 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java @@ -312,6 +312,20 @@ public class CraftBlock implements Block { @@ -64,7 +64,7 @@ index a36876e495..d31447ccd6 100644 switch (material) { diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java -index d8b3d2f3d5..7cb4c3e503 100644 +index d8b3d2f3d..7cb4c3e50 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java @@ -27,20 +27,40 @@ public class CraftBlockEntityState extends CraftBlockState @@ -114,7 +114,7 @@ index d8b3d2f3d5..7cb4c3e503 100644 private T createSnapshot(T tileEntity, World world) { diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java b/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java -index e7e58877e2..6d85a6d18e 100644 +index 15022ada0..af15656cc 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java @@ -17,10 +17,12 @@ public class CraftSign extends CraftBlockEntityState implements diff --git a/Spigot-Server-Patches/0190-AsyncTabCompleteEvent.patch b/Spigot-Server-Patches/0189-AsyncTabCompleteEvent.patch similarity index 98% rename from Spigot-Server-Patches/0190-AsyncTabCompleteEvent.patch rename to Spigot-Server-Patches/0189-AsyncTabCompleteEvent.patch index ed9774cf0..45d5e9560 100644 --- a/Spigot-Server-Patches/0190-AsyncTabCompleteEvent.patch +++ b/Spigot-Server-Patches/0189-AsyncTabCompleteEvent.patch @@ -1,4 +1,4 @@ -From 93ca054cb327a04b224dbc227afbde0126cb6b65 Mon Sep 17 00:00:00 2001 +From b215862783231105934553ef2bcbff6842ffc270 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 26 Nov 2017 13:19:58 -0500 Subject: [PATCH] AsyncTabCompleteEvent @@ -14,7 +14,7 @@ completion, such as offline players. Also adds isCommand and getLocation to the sync TabCompleteEvent diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 593414b2b..7fba7e28e 100644 +index 766918e8c..c6a44c5f2 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -519,10 +519,10 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -70,7 +70,7 @@ index 593414b2b..7fba7e28e 100644 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 08f84e5db..0732a6f21 100644 +index cdf3b6b6c..d4c8c4259 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1662,7 +1662,7 @@ public final class CraftServer implements Server { diff --git a/Spigot-Server-Patches/0191-Avoid-NPE-in-PathfinderGoalTempt.patch b/Spigot-Server-Patches/0190-Avoid-NPE-in-PathfinderGoalTempt.patch similarity index 93% rename from Spigot-Server-Patches/0191-Avoid-NPE-in-PathfinderGoalTempt.patch rename to Spigot-Server-Patches/0190-Avoid-NPE-in-PathfinderGoalTempt.patch index 457bbc4c5..1a4ccd8a0 100644 --- a/Spigot-Server-Patches/0191-Avoid-NPE-in-PathfinderGoalTempt.patch +++ b/Spigot-Server-Patches/0190-Avoid-NPE-in-PathfinderGoalTempt.patch @@ -1,4 +1,4 @@ -From 243fcddd45f4e024f50c7acc018b3a301adc32f8 Mon Sep 17 00:00:00 2001 +From f57d861b40cb8509e25d88098722a762ef33cd4e Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 29 Nov 2017 22:18:54 -0500 Subject: [PATCH] Avoid NPE in PathfinderGoalTempt diff --git a/Spigot-Server-Patches/0192-PlayerPickupExperienceEvent.patch b/Spigot-Server-Patches/0191-PlayerPickupExperienceEvent.patch similarity index 94% rename from Spigot-Server-Patches/0192-PlayerPickupExperienceEvent.patch rename to Spigot-Server-Patches/0191-PlayerPickupExperienceEvent.patch index 65424e605..230f2a8bf 100644 --- a/Spigot-Server-Patches/0192-PlayerPickupExperienceEvent.patch +++ b/Spigot-Server-Patches/0191-PlayerPickupExperienceEvent.patch @@ -1,4 +1,4 @@ -From 2dba4612c8b3b409d05595711229a0f3028ce56c Mon Sep 17 00:00:00 2001 +From cfc2812c7616898fa461e2f2a0fc4bd5d6d62820 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 19 Dec 2017 22:02:53 -0500 Subject: [PATCH] PlayerPickupExperienceEvent diff --git a/Spigot-Server-Patches/0193-ExperienceOrbMergeEvent.patch b/Spigot-Server-Patches/0192-ExperienceOrbMergeEvent.patch similarity index 93% rename from Spigot-Server-Patches/0193-ExperienceOrbMergeEvent.patch rename to Spigot-Server-Patches/0192-ExperienceOrbMergeEvent.patch index 995dc179a..872667a65 100644 --- a/Spigot-Server-Patches/0193-ExperienceOrbMergeEvent.patch +++ b/Spigot-Server-Patches/0192-ExperienceOrbMergeEvent.patch @@ -1,4 +1,4 @@ -From 680fd7bae23eb525705eed9a735fa3d6ff029e26 Mon Sep 17 00:00:00 2001 +From 02fe091f278f2ee5d532ee4e130376c3c7eb6b1a Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 19 Dec 2017 22:57:26 -0500 Subject: [PATCH] ExperienceOrbMergeEvent @@ -8,7 +8,7 @@ Plugins can cancel this if they want to ensure experience orbs do not lose impor metadata such as spawn reason, or conditionally move data from source to target. diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 87b2ad7960..db44e82a10 100644 +index 1daf7b2c5..42d82034b 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -523,7 +523,7 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/0194-Ability-to-apply-mending-to-XP-API.patch b/Spigot-Server-Patches/0193-Ability-to-apply-mending-to-XP-API.patch similarity index 94% rename from Spigot-Server-Patches/0194-Ability-to-apply-mending-to-XP-API.patch rename to Spigot-Server-Patches/0193-Ability-to-apply-mending-to-XP-API.patch index cec920fb5..1c2aa2ca3 100644 --- a/Spigot-Server-Patches/0194-Ability-to-apply-mending-to-XP-API.patch +++ b/Spigot-Server-Patches/0193-Ability-to-apply-mending-to-XP-API.patch @@ -1,4 +1,4 @@ -From 1dfbde3564fde9115630f366cd4e001b9e2450aa Mon Sep 17 00:00:00 2001 +From 0f4e846e31f326ca9ff66a460b347eb9ff46a725 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 20 Dec 2017 17:36:49 -0500 Subject: [PATCH] Ability to apply mending to XP API @@ -10,7 +10,7 @@ of giving the player experience points. Both an API To standalone mend, and apply mending logic to .giveExp has been added. diff --git a/src/main/java/net/minecraft/server/EnchantmentManager.java b/src/main/java/net/minecraft/server/EnchantmentManager.java -index 6f64b8db3a..b6a40e22a8 100644 +index 6f64b8db3..b6a40e22a 100644 --- a/src/main/java/net/minecraft/server/EnchantmentManager.java +++ b/src/main/java/net/minecraft/server/EnchantmentManager.java @@ -241,6 +241,11 @@ public class EnchantmentManager { @@ -26,7 +26,7 @@ index 6f64b8db3a..b6a40e22a8 100644 public static Entry b(Enchantment enchantment, EntityLiving entityliving) { Map map = enchantment.a(entityliving); diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -index 704a48c8ea..64d71a9a2a 100644 +index 704a48c8e..64d71a9a2 100644 --- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java +++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java @@ -251,10 +251,12 @@ public class EntityExperienceOrb extends Entity { @@ -43,10 +43,10 @@ index 704a48c8ea..64d71a9a2a 100644 return i * 2; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index ec52987820..92d45ab7df 100644 +index 0e0421a22..4fa554b29 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1054,8 +1054,39 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1053,8 +1053,39 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return GameMode.getByValue(getHandle().playerInteractManager.getGameMode().getId()); } diff --git a/Spigot-Server-Patches/0195-Make-max-squid-spawn-height-configurable.patch b/Spigot-Server-Patches/0194-Make-max-squid-spawn-height-configurable.patch similarity index 96% rename from Spigot-Server-Patches/0195-Make-max-squid-spawn-height-configurable.patch rename to Spigot-Server-Patches/0194-Make-max-squid-spawn-height-configurable.patch index e4588a599..fdd7ad735 100644 --- a/Spigot-Server-Patches/0195-Make-max-squid-spawn-height-configurable.patch +++ b/Spigot-Server-Patches/0194-Make-max-squid-spawn-height-configurable.patch @@ -1,4 +1,4 @@ -From 2a4121b6db835f78f36e5680d2a2c2bf76767766 Mon Sep 17 00:00:00 2001 +From f89d9937f9523a2d3000d9907c854111ff866e25 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Thu, 11 Jan 2018 16:47:28 -0600 Subject: [PATCH] Make max squid spawn height configurable diff --git a/Spigot-Server-Patches/0196-PreCreatureSpawnEvent.patch b/Spigot-Server-Patches/0195-PreCreatureSpawnEvent.patch similarity index 97% rename from Spigot-Server-Patches/0196-PreCreatureSpawnEvent.patch rename to Spigot-Server-Patches/0195-PreCreatureSpawnEvent.patch index 9e679d52f..00b382b89 100644 --- a/Spigot-Server-Patches/0196-PreCreatureSpawnEvent.patch +++ b/Spigot-Server-Patches/0195-PreCreatureSpawnEvent.patch @@ -1,4 +1,4 @@ -From da358531a943040a325275a457afe2a94571e7b1 Mon Sep 17 00:00:00 2001 +From 31553b6ff48f0728ccdab436857ba9ea9c9b0f29 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 14 Jan 2018 17:01:31 -0500 Subject: [PATCH] PreCreatureSpawnEvent @@ -15,7 +15,7 @@ instead and save a lot of server resources. See: https://github.com/PaperMC/Paper/issues/917 diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java -index 9aed0d6b8..dce9e2fc1 100644 +index 98eb0d24c..77d4bbce1 100644 --- a/src/main/java/net/minecraft/server/EntityTypes.java +++ b/src/main/java/net/minecraft/server/EntityTypes.java @@ -271,6 +271,7 @@ public class EntityTypes { @@ -27,7 +27,7 @@ index 9aed0d6b8..dce9e2fc1 100644 if (this.bg == null) { MinecraftKey minecraftkey = IRegistry.ENTITY_TYPE.getKey(this); diff --git a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java -index d8ae336e9..bca0e3a2e 100644 +index 93fad14d3..55764deec 100644 --- a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java +++ b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java @@ -103,6 +103,27 @@ public abstract class MobSpawnerAbstract { @@ -59,7 +59,7 @@ index d8ae336e9..bca0e3a2e 100644 Entity entity = EntityTypes.a(nbttagcompound, world, (entity1) -> { entity1.setPositionRotation(d3, d4, d5, entity1.yaw, entity1.pitch); diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java -index 7e58e4714..e5695c760 100644 +index cbf05926a..14e2f3ca7 100644 --- a/src/main/java/net/minecraft/server/SpawnerCreature.java +++ b/src/main/java/net/minecraft/server/SpawnerCreature.java @@ -38,7 +38,7 @@ public final class SpawnerCreature { diff --git a/Spigot-Server-Patches/0197-PlayerNaturallySpawnCreaturesEvent.patch b/Spigot-Server-Patches/0196-PlayerNaturallySpawnCreaturesEvent.patch similarity index 87% rename from Spigot-Server-Patches/0197-PlayerNaturallySpawnCreaturesEvent.patch rename to Spigot-Server-Patches/0196-PlayerNaturallySpawnCreaturesEvent.patch index c9a47b4dd..0605e6981 100644 --- a/Spigot-Server-Patches/0197-PlayerNaturallySpawnCreaturesEvent.patch +++ b/Spigot-Server-Patches/0196-PlayerNaturallySpawnCreaturesEvent.patch @@ -1,4 +1,4 @@ -From 19b85fdd78fce59a1e4c21342c6941a6c36df28c Mon Sep 17 00:00:00 2001 +From 81395ec21ce58c65cc12709e50127c67098e5ee9 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 14 Jan 2018 17:36:02 -0500 Subject: [PATCH] PlayerNaturallySpawnCreaturesEvent @@ -9,10 +9,10 @@ from triggering monster spawns on a server. Also a highly more effecient way to blanket block spawns in a world diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index 8e40027ac..e44570c60 100644 +index a93117667..ae04198c9 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java -@@ -675,12 +675,17 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { +@@ -712,12 +712,17 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { int chunkRange = world.spigotConfig.mobSpawnRange; chunkRange = (chunkRange > world.spigotConfig.viewDistance) ? (byte) world.spigotConfig.viewDistance : chunkRange; chunkRange = (chunkRange > 8) ? 8 : chunkRange; @@ -22,7 +22,7 @@ index 8e40027ac..e44570c60 100644 + //double blockRange = Math.pow(chunkRange << 4, 2); // Paper - use the range from the event // Spigot end - return this.y.a(chunkcoordintpair.pair()).noneMatch((entityplayer) -> { + return this.playerMap.a(chunkcoordintpair.pair()).noneMatch((entityplayer) -> { - return !entityplayer.isSpectator() && a(chunkcoordintpair, (Entity) entityplayer) < blockRange; // Spigot + // Paper start - + com.destroystokyo.paper.event.entity.PlayerNaturallySpawnCreaturesEvent event diff --git a/Spigot-Server-Patches/0198-Add-setPlayerProfile-API-for-Skulls.patch b/Spigot-Server-Patches/0197-Add-setPlayerProfile-API-for-Skulls.patch similarity index 96% rename from Spigot-Server-Patches/0198-Add-setPlayerProfile-API-for-Skulls.patch rename to Spigot-Server-Patches/0197-Add-setPlayerProfile-API-for-Skulls.patch index c245c3085..050868337 100644 --- a/Spigot-Server-Patches/0198-Add-setPlayerProfile-API-for-Skulls.patch +++ b/Spigot-Server-Patches/0197-Add-setPlayerProfile-API-for-Skulls.patch @@ -1,4 +1,4 @@ -From b7edad7363c088065a78acc0b2aee22b51f0f413 Mon Sep 17 00:00:00 2001 +From aaaac679239827b55e690edffe62cddc8f082a29 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 19 Jan 2018 00:36:25 -0500 Subject: [PATCH] Add setPlayerProfile API for Skulls @@ -7,7 +7,7 @@ This allows you to create already filled textures on Skulls to avoid texture loo which commonly cause rate limit issues with Mojang API diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftSkull.java b/src/main/java/org/bukkit/craftbukkit/block/CraftSkull.java -index a4bc7f9701..2dd2f476f0 100644 +index a4bc7f970..2dd2f476f 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftSkull.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftSkull.java @@ -1,5 +1,7 @@ @@ -48,7 +48,7 @@ index a4bc7f9701..2dd2f476f0 100644 public BlockFace getRotation() { BlockData blockData = getBlockData(); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -index 0136e1bfe1..aee97b9f03 100644 +index 0136e1bfe..aee97b9f0 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java @@ -3,6 +3,8 @@ package org.bukkit.craftbukkit.inventory; diff --git a/Spigot-Server-Patches/0199-Fill-Profile-Property-Events.patch b/Spigot-Server-Patches/0198-Fill-Profile-Property-Events.patch similarity index 96% rename from Spigot-Server-Patches/0199-Fill-Profile-Property-Events.patch rename to Spigot-Server-Patches/0198-Fill-Profile-Property-Events.patch index 1a2c0dbd4..a21a7b80b 100644 --- a/Spigot-Server-Patches/0199-Fill-Profile-Property-Events.patch +++ b/Spigot-Server-Patches/0198-Fill-Profile-Property-Events.patch @@ -1,4 +1,4 @@ -From 175fd070689b73c0be2c7d7048120abf4c50719f Mon Sep 17 00:00:00 2001 +From 42e6a4c1631ac80556542d00dfe1c3cb73c7ee52 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 2 Jan 2018 00:31:26 -0500 Subject: [PATCH] Fill Profile Property Events diff --git a/Spigot-Server-Patches/0200-PlayerAdvancementCriterionGrantEvent.patch b/Spigot-Server-Patches/0199-PlayerAdvancementCriterionGrantEvent.patch similarity index 91% rename from Spigot-Server-Patches/0200-PlayerAdvancementCriterionGrantEvent.patch rename to Spigot-Server-Patches/0199-PlayerAdvancementCriterionGrantEvent.patch index 2f14f6b96..78369d9b7 100644 --- a/Spigot-Server-Patches/0200-PlayerAdvancementCriterionGrantEvent.patch +++ b/Spigot-Server-Patches/0199-PlayerAdvancementCriterionGrantEvent.patch @@ -1,11 +1,11 @@ -From 9545982da8ce414d8e40563962799a070cdc2c27 Mon Sep 17 00:00:00 2001 +From 17b2ad1e5cef6cf031fb86d740f03a5cb9e81e7e Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 19 Jan 2018 08:15:29 -0600 Subject: [PATCH] PlayerAdvancementCriterionGrantEvent diff --git a/src/main/java/net/minecraft/server/AdvancementDataPlayer.java b/src/main/java/net/minecraft/server/AdvancementDataPlayer.java -index 71158ea8b..ddee2c030 100644 +index f751c30cf..593979152 100644 --- a/src/main/java/net/minecraft/server/AdvancementDataPlayer.java +++ b/src/main/java/net/minecraft/server/AdvancementDataPlayer.java @@ -276,6 +276,12 @@ public class AdvancementDataPlayer { diff --git a/Spigot-Server-Patches/0201-Add-ArmorStand-Item-Meta.patch b/Spigot-Server-Patches/0200-Add-ArmorStand-Item-Meta.patch similarity index 98% rename from Spigot-Server-Patches/0201-Add-ArmorStand-Item-Meta.patch rename to Spigot-Server-Patches/0200-Add-ArmorStand-Item-Meta.patch index 18ee3cc2d..d504a3a44 100644 --- a/Spigot-Server-Patches/0201-Add-ArmorStand-Item-Meta.patch +++ b/Spigot-Server-Patches/0200-Add-ArmorStand-Item-Meta.patch @@ -1,4 +1,4 @@ -From 4b232cd90061c3234462a8fddd8c265d56269971 Mon Sep 17 00:00:00 2001 +From c9383f72b378e02c8fb4dca1392f6a816dccf95f 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/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 929d73692a..df70c5c0ef 100644 +index 929d73692..df70c5c0e 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java @@ -194,6 +194,8 @@ public final class CraftItemFactory implements ItemFactory { @@ -26,7 +26,7 @@ index 929d73692a..df70c5c0ef 100644 case CHEST: case TRAPPED_CHEST: diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 00497350a3..88154d2f23 100644 +index 00497350a..88154d2f2 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -395,6 +395,8 @@ public final class CraftItemStack extends ItemStack { @@ -40,7 +40,7 @@ index 00497350a3..88154d2f23 100644 case TRAPPED_CHEST: diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java new file mode 100644 -index 0000000000..c00b89c8d4 +index 000000000..c00b89c8d --- /dev/null +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java @@ -0,0 +1,311 @@ @@ -356,7 +356,7 @@ index 0000000000..c00b89c8d4 + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 0d513e1f33..159037fc3e 100644 +index 0d513e1f3..159037fc3 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -161,6 +161,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @@ -385,7 +385,7 @@ index 0d513e1f33..159037fc3e 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 6abde9030d..2a0852675b 100644 +index 6abde9030..2a0852675 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; diff --git a/Spigot-Server-Patches/0202-Extend-Player-Interact-cancellation.patch b/Spigot-Server-Patches/0201-Extend-Player-Interact-cancellation.patch similarity index 98% rename from Spigot-Server-Patches/0202-Extend-Player-Interact-cancellation.patch rename to Spigot-Server-Patches/0201-Extend-Player-Interact-cancellation.patch index 5dc16315a..7333d0703 100644 --- a/Spigot-Server-Patches/0202-Extend-Player-Interact-cancellation.patch +++ b/Spigot-Server-Patches/0201-Extend-Player-Interact-cancellation.patch @@ -1,4 +1,4 @@ -From c378827bab648bc642354104b0277b765275ce6f Mon Sep 17 00:00:00 2001 +From 0cb9cc2517f0e2fe518b8650eb849be0dc9dd48b Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Sun, 11 Feb 2018 10:43:46 +0000 Subject: [PATCH] Extend Player Interact cancellation diff --git a/Spigot-Server-Patches/0203-Tameable-getOwnerUniqueId-API.patch b/Spigot-Server-Patches/0202-Tameable-getOwnerUniqueId-API.patch similarity index 91% rename from Spigot-Server-Patches/0203-Tameable-getOwnerUniqueId-API.patch rename to Spigot-Server-Patches/0202-Tameable-getOwnerUniqueId-API.patch index 8a45d5802..7cc8ba1b4 100644 --- a/Spigot-Server-Patches/0203-Tameable-getOwnerUniqueId-API.patch +++ b/Spigot-Server-Patches/0202-Tameable-getOwnerUniqueId-API.patch @@ -1,4 +1,4 @@ -From 44e7a3d44b8c47e34b6de9b4d71d0809f10dfaad Mon Sep 17 00:00:00 2001 +From f828c35f29e7ea0af0e0cdb6c02f584860659519 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 24 Feb 2018 01:14:55 -0500 Subject: [PATCH] Tameable#getOwnerUniqueId API @@ -7,7 +7,7 @@ This is faster if all you need is the UUID, as .getOwner() will cause an OfflinePlayer to be loaded from disk. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractHorse.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractHorse.java -index 9952db3eb5..1aea5f3f05 100644 +index 9952db3eb..1aea5f3f0 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractHorse.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractHorse.java @@ -90,6 +90,9 @@ public abstract class CraftAbstractHorse extends CraftAnimals implements Abstrac @@ -21,7 +21,7 @@ index 9952db3eb5..1aea5f3f05 100644 return getHandle().getOwnerUUID(); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftTameableAnimal.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftTameableAnimal.java -index 5dfa40dda1..407b95cafd 100644 +index 5dfa40dda..407b95caf 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftTameableAnimal.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftTameableAnimal.java @@ -17,6 +17,9 @@ public class CraftTameableAnimal extends CraftAnimals implements Tameable, Creat diff --git a/Spigot-Server-Patches/0204-Toggleable-player-crits-helps-mitigate-hacked-client.patch b/Spigot-Server-Patches/0203-Toggleable-player-crits-helps-mitigate-hacked-client.patch similarity index 94% rename from Spigot-Server-Patches/0204-Toggleable-player-crits-helps-mitigate-hacked-client.patch rename to Spigot-Server-Patches/0203-Toggleable-player-crits-helps-mitigate-hacked-client.patch index bc1d8a97c..995d51307 100644 --- a/Spigot-Server-Patches/0204-Toggleable-player-crits-helps-mitigate-hacked-client.patch +++ b/Spigot-Server-Patches/0203-Toggleable-player-crits-helps-mitigate-hacked-client.patch @@ -1,4 +1,4 @@ -From 083c75803c43b7f597b8f1b1b25b6f762535b908 Mon Sep 17 00:00:00 2001 +From ee8d66e3a254792907ff2ab982f77e14e7e8c52b Mon Sep 17 00:00:00 2001 From: MiniDigger Date: Sat, 10 Mar 2018 00:50:24 +0100 Subject: [PATCH] Toggleable player crits, helps mitigate hacked clients. @@ -21,7 +21,7 @@ index c3e61bdfe..32bfe0e46 100644 private void allChunksAreSlimeChunks() { allChunksAreSlimeChunks = getBoolean("all-chunks-are-slime-chunks", false); diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index a30d88af8..58e2601ef 100644 +index b97e34163..14c44a360 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -981,6 +981,7 @@ public abstract class EntityHuman extends EntityLiving { diff --git a/Spigot-Server-Patches/0205-Fix-NPE-when-getting-location-from-InventoryEnderChe.patch b/Spigot-Server-Patches/0204-Fix-NPE-when-getting-location-from-InventoryEnderChe.patch similarity index 95% rename from Spigot-Server-Patches/0205-Fix-NPE-when-getting-location-from-InventoryEnderChe.patch rename to Spigot-Server-Patches/0204-Fix-NPE-when-getting-location-from-InventoryEnderChe.patch index afb5506a5..3c3c44b84 100644 --- a/Spigot-Server-Patches/0205-Fix-NPE-when-getting-location-from-InventoryEnderChe.patch +++ b/Spigot-Server-Patches/0204-Fix-NPE-when-getting-location-from-InventoryEnderChe.patch @@ -1,4 +1,4 @@ -From 59a62d526fd2db7cfe0976fa63bc0e2be2cd90d9 Mon Sep 17 00:00:00 2001 +From 268a73860e33fa98c54470ffb7de2ee3f16ed6f4 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Sat, 10 Mar 2018 13:03:49 +0000 Subject: [PATCH] Fix NPE when getting location from InventoryEnderChest opened diff --git a/Spigot-Server-Patches/0206-Prevent-Frosted-Ice-from-loading-holding-chunks.patch b/Spigot-Server-Patches/0205-Prevent-Frosted-Ice-from-loading-holding-chunks.patch similarity index 96% rename from Spigot-Server-Patches/0206-Prevent-Frosted-Ice-from-loading-holding-chunks.patch rename to Spigot-Server-Patches/0205-Prevent-Frosted-Ice-from-loading-holding-chunks.patch index 9142a73f4..dc5c2a5e9 100644 --- a/Spigot-Server-Patches/0206-Prevent-Frosted-Ice-from-loading-holding-chunks.patch +++ b/Spigot-Server-Patches/0205-Prevent-Frosted-Ice-from-loading-holding-chunks.patch @@ -1,4 +1,4 @@ -From 4e2293389a9c1d4a8a4b6b9f082c383a33282a9d Mon Sep 17 00:00:00 2001 +From 8c39ac12cabf0929c69641e0d509b0427498b8f3 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 10 Mar 2018 16:33:15 -0500 Subject: [PATCH] Prevent Frosted Ice from loading/holding chunks diff --git a/Spigot-Server-Patches/0207-Disable-Explicit-Network-Manager-Flushing.patch b/Spigot-Server-Patches/0206-Disable-Explicit-Network-Manager-Flushing.patch similarity index 96% rename from Spigot-Server-Patches/0207-Disable-Explicit-Network-Manager-Flushing.patch rename to Spigot-Server-Patches/0206-Disable-Explicit-Network-Manager-Flushing.patch index c7a8ff693..fbb060234 100644 --- a/Spigot-Server-Patches/0207-Disable-Explicit-Network-Manager-Flushing.patch +++ b/Spigot-Server-Patches/0206-Disable-Explicit-Network-Manager-Flushing.patch @@ -1,4 +1,4 @@ -From 6038b08ae7ea24cae5b4453e5e2401f06fe3763f Mon Sep 17 00:00:00 2001 +From 6ef4c09ca221c0a6d30e1f8b32e4ce28aa40c874 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 11 Mar 2018 14:13:33 -0400 Subject: [PATCH] Disable Explicit Network Manager Flushing diff --git a/Spigot-Server-Patches/0208-Implement-extended-PaperServerListPingEvent.patch b/Spigot-Server-Patches/0207-Implement-extended-PaperServerListPingEvent.patch similarity index 97% rename from Spigot-Server-Patches/0208-Implement-extended-PaperServerListPingEvent.patch rename to Spigot-Server-Patches/0207-Implement-extended-PaperServerListPingEvent.patch index 992c4c3bf..330ff8580 100644 --- a/Spigot-Server-Patches/0208-Implement-extended-PaperServerListPingEvent.patch +++ b/Spigot-Server-Patches/0207-Implement-extended-PaperServerListPingEvent.patch @@ -1,4 +1,4 @@ -From c64067e1e031f2feea4e8405a734618792f6c54c Mon Sep 17 00:00:00 2001 +From e05161408f34c060a08f1ff90a9bb628d5e1b52a Mon Sep 17 00:00:00 2001 From: Minecrell Date: Wed, 11 Oct 2017 15:56:26 +0200 Subject: [PATCH] Implement extended PaperServerListPingEvent @@ -6,7 +6,7 @@ Subject: [PATCH] Implement extended PaperServerListPingEvent diff --git a/src/main/java/com/destroystokyo/paper/network/PaperServerListPingEventImpl.java b/src/main/java/com/destroystokyo/paper/network/PaperServerListPingEventImpl.java new file mode 100644 -index 0000000000..c1a8e295b6 +index 000000000..c1a8e295b --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/network/PaperServerListPingEventImpl.java @@ -0,0 +1,31 @@ @@ -43,7 +43,7 @@ index 0000000000..c1a8e295b6 +} diff --git a/src/main/java/com/destroystokyo/paper/network/PaperStatusClient.java b/src/main/java/com/destroystokyo/paper/network/PaperStatusClient.java new file mode 100644 -index 0000000000..a2a409e635 +index 000000000..a2a409e63 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/network/PaperStatusClient.java @@ -0,0 +1,11 @@ @@ -60,7 +60,7 @@ index 0000000000..a2a409e635 +} diff --git a/src/main/java/com/destroystokyo/paper/network/StandardPaperServerListPingEventImpl.java b/src/main/java/com/destroystokyo/paper/network/StandardPaperServerListPingEventImpl.java new file mode 100644 -index 0000000000..a85466bc7e +index 000000000..a85466bc7 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/network/StandardPaperServerListPingEventImpl.java @@ -0,0 +1,112 @@ @@ -177,7 +177,7 @@ index 0000000000..a85466bc7e + +} diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index c84af46815..ffa850077f 100644 +index 1290cff77..ea3d9e9af 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1,6 +1,7 @@ @@ -198,7 +198,7 @@ index c84af46815..ffa850077f 100644 for (int k = 0; k < agameprofile.length; ++k) { diff --git a/src/main/java/net/minecraft/server/PacketStatusListener.java b/src/main/java/net/minecraft/server/PacketStatusListener.java -index b247a18b9e..ba1c76c1a5 100644 +index b247a18b9..ba1c76c1a 100644 --- a/src/main/java/net/minecraft/server/PacketStatusListener.java +++ b/src/main/java/net/minecraft/server/PacketStatusListener.java @@ -32,6 +32,8 @@ public class PacketStatusListener implements PacketStatusInListener { @@ -221,7 +221,7 @@ index b247a18b9e..ba1c76c1a5 100644 // CraftBukkit end } diff --git a/src/main/java/net/minecraft/server/ServerPing.java b/src/main/java/net/minecraft/server/ServerPing.java -index aa125a52dc..ea52e89bd9 100644 +index aa125a52d..ea52e89bd 100644 --- a/src/main/java/net/minecraft/server/ServerPing.java +++ b/src/main/java/net/minecraft/server/ServerPing.java @@ -29,6 +29,7 @@ public class ServerPing { @@ -246,7 +246,7 @@ index aa125a52dc..ea52e89bd9 100644 this.c = agameprofile; } diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java -index bd601333ee..6c5430ff94 100644 +index bd601333e..6c5430ff9 100644 --- a/src/main/java/org/spigotmc/SpigotConfig.java +++ b/src/main/java/org/spigotmc/SpigotConfig.java @@ -290,7 +290,7 @@ public class SpigotConfig diff --git a/Spigot-Server-Patches/0209-Improved-Async-Task-Scheduler.patch b/Spigot-Server-Patches/0208-Improved-Async-Task-Scheduler.patch similarity index 99% rename from Spigot-Server-Patches/0209-Improved-Async-Task-Scheduler.patch rename to Spigot-Server-Patches/0208-Improved-Async-Task-Scheduler.patch index edb7b1e36..7c05f36c8 100644 --- a/Spigot-Server-Patches/0209-Improved-Async-Task-Scheduler.patch +++ b/Spigot-Server-Patches/0208-Improved-Async-Task-Scheduler.patch @@ -1,4 +1,4 @@ -From c2ec98180b068515c689d86b4e3610f7d308d0c9 Mon Sep 17 00:00:00 2001 +From 0b46b3e63b9c59ae3da52b9bd3ec7f456e3217b1 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 16 Mar 2018 22:59:43 -0400 Subject: [PATCH] Improved Async Task Scheduler @@ -32,7 +32,7 @@ operations are decoupled from the sync tasks queue. diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncScheduler.java new file mode 100644 -index 0000000000..3c1992e212 +index 000000000..3c1992e21 --- /dev/null +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncScheduler.java @@ -0,0 +1,122 @@ @@ -159,7 +159,7 @@ index 0000000000..3c1992e212 + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java -index e102be583c..5db848de14 100644 +index e102be583..5db848de1 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java @@ -62,7 +62,7 @@ public class CraftScheduler implements BukkitScheduler { diff --git a/Spigot-Server-Patches/0210-Ability-to-change-PlayerProfile-in-AsyncPreLoginEven.patch b/Spigot-Server-Patches/0209-Ability-to-change-PlayerProfile-in-AsyncPreLoginEven.patch similarity index 97% rename from Spigot-Server-Patches/0210-Ability-to-change-PlayerProfile-in-AsyncPreLoginEven.patch rename to Spigot-Server-Patches/0209-Ability-to-change-PlayerProfile-in-AsyncPreLoginEven.patch index 10f5b55d0..acc79cca8 100644 --- a/Spigot-Server-Patches/0210-Ability-to-change-PlayerProfile-in-AsyncPreLoginEven.patch +++ b/Spigot-Server-Patches/0209-Ability-to-change-PlayerProfile-in-AsyncPreLoginEven.patch @@ -1,4 +1,4 @@ -From 45679906356d36c89d2031de68f3fb5a3bfb84dc Mon Sep 17 00:00:00 2001 +From e8b48e35704ac20d175d9fda1a7b1b65005bff05 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 18 Mar 2018 11:45:57 -0400 Subject: [PATCH] Ability to change PlayerProfile in AsyncPreLoginEvent diff --git a/Spigot-Server-Patches/0211-Player.setPlayerProfile-API.patch b/Spigot-Server-Patches/0210-Player.setPlayerProfile-API.patch similarity index 94% rename from Spigot-Server-Patches/0211-Player.setPlayerProfile-API.patch rename to Spigot-Server-Patches/0210-Player.setPlayerProfile-API.patch index ed4089bac..8023899ae 100644 --- a/Spigot-Server-Patches/0211-Player.setPlayerProfile-API.patch +++ b/Spigot-Server-Patches/0210-Player.setPlayerProfile-API.patch @@ -1,4 +1,4 @@ -From fea19000fb2d1139365f782ba85605e09a573fb1 Mon Sep 17 00:00:00 2001 +From 4ae489261829222b96472c09200385ca09733236 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 18 Mar 2018 12:29:48 -0400 Subject: [PATCH] Player.setPlayerProfile API @@ -6,7 +6,7 @@ Subject: [PATCH] Player.setPlayerProfile API This can be useful for changing name or skins after a player has logged in. diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 58e2601eff..1df83d13ab 100644 +index 14c44a360..23a2f92f2 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -65,7 +65,7 @@ public abstract class EntityHuman extends EntityLiving { @@ -19,7 +19,7 @@ index 58e2601eff..1df83d13ab 100644 private final ItemCooldown bY; @Nullable diff --git a/src/main/java/net/minecraft/server/LoginListener.java b/src/main/java/net/minecraft/server/LoginListener.java -index 7c3b9c0b97..d4d752ddb4 100644 +index 7c3b9c0b9..d4d752ddb 100644 --- a/src/main/java/net/minecraft/server/LoginListener.java +++ b/src/main/java/net/minecraft/server/LoginListener.java @@ -37,7 +37,7 @@ public class LoginListener implements PacketLoginInListener { @@ -48,7 +48,7 @@ index 7c3b9c0b97..d4d752ddb4 100644 uniqueId = i.getId(); // Paper end diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 92d45ab7df..b2b36dcec5 100644 +index 4fa554b29..35cacb3d2 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1,6 +1,8 @@ @@ -60,7 +60,7 @@ index 92d45ab7df..b2b36dcec5 100644 import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableSet; import com.google.common.io.BaseEncoding; -@@ -1194,8 +1196,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1193,8 +1195,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { hiddenPlayers.put(player.getUniqueId(), hidingPlugins); // Remove this player from the hidden player's EntityTrackerEntry @@ -75,7 +75,7 @@ index 92d45ab7df..b2b36dcec5 100644 PlayerChunkMap.EntityTracker entry = tracker.trackedEntities.get(other.getId()); if (entry != null) { entry.clear(getHandle()); -@@ -1236,8 +1243,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1235,8 +1242,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } hiddenPlayers.remove(player.getUniqueId()); @@ -90,7 +90,7 @@ index 92d45ab7df..b2b36dcec5 100644 getHandle().playerConnection.sendPacket(new PacketPlayOutPlayerInfo(PacketPlayOutPlayerInfo.EnumPlayerInfoAction.ADD_PLAYER, other)); -@@ -1246,6 +1258,46 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1245,6 +1257,46 @@ public class CraftPlayer extends CraftHumanEntity implements Player { entry.updatePlayer(getHandle()); } } diff --git a/Spigot-Server-Patches/0212-Fix-Dragon-Server-Crashes.patch b/Spigot-Server-Patches/0211-Fix-Dragon-Server-Crashes.patch similarity index 92% rename from Spigot-Server-Patches/0212-Fix-Dragon-Server-Crashes.patch rename to Spigot-Server-Patches/0211-Fix-Dragon-Server-Crashes.patch index 1d020370b..23724652a 100644 --- a/Spigot-Server-Patches/0212-Fix-Dragon-Server-Crashes.patch +++ b/Spigot-Server-Patches/0211-Fix-Dragon-Server-Crashes.patch @@ -1,4 +1,4 @@ -From 143f42bf1e4874b298ea26da4915b9dad3cf405a Mon Sep 17 00:00:00 2001 +From ad97f7eebebed0934e2101b38b6910ce8de3cebd Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 21 Mar 2018 20:52:07 -0400 Subject: [PATCH] Fix Dragon Server Crashes @@ -7,7 +7,7 @@ If the dragon tries to find "ground" and hits a hole, or off edge, it will infinitely keep looking for non air and eventually crash. diff --git a/src/main/java/net/minecraft/server/DragonControllerLandedFlame.java b/src/main/java/net/minecraft/server/DragonControllerLandedFlame.java -index cfe84f4d48..4ab310cd6b 100644 +index cfe84f4d4..4ab310cd6 100644 --- a/src/main/java/net/minecraft/server/DragonControllerLandedFlame.java +++ b/src/main/java/net/minecraft/server/DragonControllerLandedFlame.java @@ -53,7 +53,7 @@ public class DragonControllerLandedFlame extends AbstractDragonControllerLanded diff --git a/Spigot-Server-Patches/0213-getPlayerUniqueId-API.patch b/Spigot-Server-Patches/0212-getPlayerUniqueId-API.patch similarity index 94% rename from Spigot-Server-Patches/0213-getPlayerUniqueId-API.patch rename to Spigot-Server-Patches/0212-getPlayerUniqueId-API.patch index 05964e209..3b411a78e 100644 --- a/Spigot-Server-Patches/0213-getPlayerUniqueId-API.patch +++ b/Spigot-Server-Patches/0212-getPlayerUniqueId-API.patch @@ -1,4 +1,4 @@ -From 31148f6d3e9ada3c1c1a8d78fa006e1f0602dcd9 Mon Sep 17 00:00:00 2001 +From 0478c931e23f3952dd48fe4be7f457f4373acb75 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 22 Mar 2018 01:40:24 -0400 Subject: [PATCH] getPlayerUniqueId API @@ -9,7 +9,7 @@ In Offline Mode, will return an Offline UUID This is a more performant way to obtain a UUID for a name than loading an OfflinePlayer diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 0732a6f218..45710c0d2a 100644 +index d4c8c4259..4fe8e198f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1355,6 +1355,26 @@ public final class CraftServer implements Server { diff --git a/Spigot-Server-Patches/0214-Make-player-data-saving-configurable.patch b/Spigot-Server-Patches/0213-Make-player-data-saving-configurable.patch similarity index 96% rename from Spigot-Server-Patches/0214-Make-player-data-saving-configurable.patch rename to Spigot-Server-Patches/0213-Make-player-data-saving-configurable.patch index 36741ace6..5eae33b1a 100644 --- a/Spigot-Server-Patches/0214-Make-player-data-saving-configurable.patch +++ b/Spigot-Server-Patches/0213-Make-player-data-saving-configurable.patch @@ -1,4 +1,4 @@ -From de737d42db59cb9f89d22478a16c859d63616196 Mon Sep 17 00:00:00 2001 +From 006293719b6966549e326c55587dafd894d7dcbc Mon Sep 17 00:00:00 2001 From: Mark Vainomaa Date: Mon, 26 Mar 2018 18:30:53 +0300 Subject: [PATCH] Make player data saving configurable diff --git a/Spigot-Server-Patches/0215-Make-legacy-ping-handler-more-reliable.patch b/Spigot-Server-Patches/0214-Make-legacy-ping-handler-more-reliable.patch similarity index 98% rename from Spigot-Server-Patches/0215-Make-legacy-ping-handler-more-reliable.patch rename to Spigot-Server-Patches/0214-Make-legacy-ping-handler-more-reliable.patch index 3217d738a..fda5cf5b5 100644 --- a/Spigot-Server-Patches/0215-Make-legacy-ping-handler-more-reliable.patch +++ b/Spigot-Server-Patches/0214-Make-legacy-ping-handler-more-reliable.patch @@ -1,4 +1,4 @@ -From 9437cc71ca1b7e3b5ee6f2130b40da55b8cd4acc Mon Sep 17 00:00:00 2001 +From a045575f71bd8967abbb2a007bc9d74b219169e4 Mon Sep 17 00:00:00 2001 From: Minecrell Date: Wed, 11 Oct 2017 18:22:50 +0200 Subject: [PATCH] Make legacy ping handler more reliable @@ -28,7 +28,7 @@ respond to the request. [2]: https://netty.io/wiki/user-guide-for-4.x.html#wiki-h4-13 diff --git a/src/main/java/net/minecraft/server/LegacyPingHandler.java b/src/main/java/net/minecraft/server/LegacyPingHandler.java -index c8c5df7f95..06aefcb638 100644 +index c8c5df7f9..06aefcb63 100644 --- a/src/main/java/net/minecraft/server/LegacyPingHandler.java +++ b/src/main/java/net/minecraft/server/LegacyPingHandler.java @@ -14,6 +14,7 @@ public class LegacyPingHandler extends ChannelInboundHandlerAdapter { diff --git a/Spigot-Server-Patches/0216-Call-PaperServerListPingEvent-for-legacy-pings.patch b/Spigot-Server-Patches/0215-Call-PaperServerListPingEvent-for-legacy-pings.patch similarity index 98% rename from Spigot-Server-Patches/0216-Call-PaperServerListPingEvent-for-legacy-pings.patch rename to Spigot-Server-Patches/0215-Call-PaperServerListPingEvent-for-legacy-pings.patch index a71160046..6c86adb92 100644 --- a/Spigot-Server-Patches/0216-Call-PaperServerListPingEvent-for-legacy-pings.patch +++ b/Spigot-Server-Patches/0215-Call-PaperServerListPingEvent-for-legacy-pings.patch @@ -1,4 +1,4 @@ -From f113177c3094f1768d178d118a98374fe96173c2 Mon Sep 17 00:00:00 2001 +From 377398d718b3643d8a65138c4c5748b9a990d0b6 Mon Sep 17 00:00:00 2001 From: Minecrell Date: Wed, 11 Oct 2017 19:30:51 +0200 Subject: [PATCH] Call PaperServerListPingEvent for legacy pings @@ -6,7 +6,7 @@ Subject: [PATCH] Call PaperServerListPingEvent for legacy pings diff --git a/src/main/java/com/destroystokyo/paper/network/PaperLegacyStatusClient.java b/src/main/java/com/destroystokyo/paper/network/PaperLegacyStatusClient.java new file mode 100644 -index 0000000000..74c012fd40 +index 000000000..74c012fd4 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/network/PaperLegacyStatusClient.java @@ -0,0 +1,73 @@ @@ -84,7 +84,7 @@ index 0000000000..74c012fd40 + +} diff --git a/src/main/java/net/minecraft/server/LegacyPingHandler.java b/src/main/java/net/minecraft/server/LegacyPingHandler.java -index 06aefcb638..d0bb5496e4 100644 +index 06aefcb63..d0bb5496e 100644 --- a/src/main/java/net/minecraft/server/LegacyPingHandler.java +++ b/src/main/java/net/minecraft/server/LegacyPingHandler.java @@ -1,5 +1,7 @@ diff --git a/Spigot-Server-Patches/0217-Flag-to-disable-the-channel-limit.patch b/Spigot-Server-Patches/0216-Flag-to-disable-the-channel-limit.patch similarity index 91% rename from Spigot-Server-Patches/0217-Flag-to-disable-the-channel-limit.patch rename to Spigot-Server-Patches/0216-Flag-to-disable-the-channel-limit.patch index b0db18cf1..8ff718e08 100644 --- a/Spigot-Server-Patches/0217-Flag-to-disable-the-channel-limit.patch +++ b/Spigot-Server-Patches/0216-Flag-to-disable-the-channel-limit.patch @@ -1,4 +1,4 @@ -From 361acebcb325d29609c67b1a6198a0623133dc4d Mon Sep 17 00:00:00 2001 +From bf12bbe1828f2b1cf3a259862df5c71675611bf7 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Sat, 31 Mar 2018 17:04:26 +0100 Subject: [PATCH] Flag to disable the channel limit @@ -9,7 +9,7 @@ e.g. servers which allow and support the usage of mod packs. provide an optional flag to disable this check, at your own risk. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index b2b36dcec5..23a205af1e 100644 +index 35cacb3d2..be7c5d174 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -136,6 +136,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -20,7 +20,7 @@ index b2b36dcec5..23a205af1e 100644 // Paper end public CraftPlayer(CraftServer server, EntityPlayer entity) { -@@ -1460,7 +1461,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1459,7 +1460,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } public void addChannel(String channel) { diff --git a/Spigot-Server-Patches/0218-Add-method-to-open-already-placed-sign.patch b/Spigot-Server-Patches/0217-Add-method-to-open-already-placed-sign.patch similarity index 92% rename from Spigot-Server-Patches/0218-Add-method-to-open-already-placed-sign.patch rename to Spigot-Server-Patches/0217-Add-method-to-open-already-placed-sign.patch index 3037a7dee..7fe7f1f48 100644 --- a/Spigot-Server-Patches/0218-Add-method-to-open-already-placed-sign.patch +++ b/Spigot-Server-Patches/0217-Add-method-to-open-already-placed-sign.patch @@ -1,11 +1,11 @@ -From 140c69ba78c6f91daf7ec29260867f0df8bba17a Mon Sep 17 00:00:00 2001 +From 0fbcf21ba6889ee6ed6dace874cc782b641d2682 Mon Sep 17 00:00:00 2001 From: Mark Vainomaa Date: Sun, 1 Apr 2018 02:29:37 +0300 Subject: [PATCH] Add method to open already placed sign diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index ad76feb253..d0a019f50d 100644 +index ad76feb25..d0a019f50 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java @@ -752,4 +752,17 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { diff --git a/Spigot-Server-Patches/0219-Load-version-history-at-server-start.patch b/Spigot-Server-Patches/0218-Load-version-history-at-server-start.patch similarity index 88% rename from Spigot-Server-Patches/0219-Load-version-history-at-server-start.patch rename to Spigot-Server-Patches/0218-Load-version-history-at-server-start.patch index d99a58a60..6af5580ed 100644 --- a/Spigot-Server-Patches/0219-Load-version-history-at-server-start.patch +++ b/Spigot-Server-Patches/0218-Load-version-history-at-server-start.patch @@ -1,11 +1,11 @@ -From bd50777e0d7f271872ef38ba9257dafea208727e Mon Sep 17 00:00:00 2001 +From ddeda45f212404065b346d694bffc2f37e76a769 Mon Sep 17 00:00:00 2001 From: Kyle Wood Date: Thu, 1 Mar 2018 19:38:14 -0600 Subject: [PATCH] Load version history at server start diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java -index d9f1c22050..c2c676e3bb 100644 +index d9f1c2205..c2c676e3b 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -172,6 +172,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer diff --git a/Spigot-Server-Patches/0220-Configurable-sprint-interruption-on-attack.patch b/Spigot-Server-Patches/0219-Configurable-sprint-interruption-on-attack.patch similarity index 93% rename from Spigot-Server-Patches/0220-Configurable-sprint-interruption-on-attack.patch rename to Spigot-Server-Patches/0219-Configurable-sprint-interruption-on-attack.patch index 4e2389d5e..ea4540566 100644 --- a/Spigot-Server-Patches/0220-Configurable-sprint-interruption-on-attack.patch +++ b/Spigot-Server-Patches/0219-Configurable-sprint-interruption-on-attack.patch @@ -1,4 +1,4 @@ -From 51a904fe3f153f669da47a13d8fc78d4aa234314 Mon Sep 17 00:00:00 2001 +From 41305423d682a6b9bbc04d7ad00cc8df619cc030 Mon Sep 17 00:00:00 2001 From: Brokkonaut Date: Sat, 14 Apr 2018 20:20:46 +0200 Subject: [PATCH] Configurable sprint interruption on attack @@ -6,7 +6,7 @@ Subject: [PATCH] Configurable sprint interruption on attack If the sprint interruption is disabled players continue sprinting when they attack entities. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 32bfe0e462..7024336c3a 100644 +index 32bfe0e46..7024336c3 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -354,4 +354,9 @@ public class PaperWorldConfig { @@ -20,7 +20,7 @@ index 32bfe0e462..7024336c3a 100644 + } } diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 1df83d13ab..27bf83f373 100644 +index 23a2f92f2..58d2a28a4 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -1030,7 +1030,11 @@ public abstract class EntityHuman extends EntityLiving { diff --git a/Spigot-Server-Patches/0221-Fix-exploit-that-allowed-colored-signs-to-be-created.patch b/Spigot-Server-Patches/0220-Fix-exploit-that-allowed-colored-signs-to-be-created.patch similarity index 91% rename from Spigot-Server-Patches/0221-Fix-exploit-that-allowed-colored-signs-to-be-created.patch rename to Spigot-Server-Patches/0220-Fix-exploit-that-allowed-colored-signs-to-be-created.patch index 3de4ad508..ebae8bd92 100644 --- a/Spigot-Server-Patches/0221-Fix-exploit-that-allowed-colored-signs-to-be-created.patch +++ b/Spigot-Server-Patches/0220-Fix-exploit-that-allowed-colored-signs-to-be-created.patch @@ -1,11 +1,11 @@ -From 9685f7c711979c599f23ce5bab39b7c3c281c342 Mon Sep 17 00:00:00 2001 +From 51dc2519e60f89dd9c4de4c6af0ea827965234f4 Mon Sep 17 00:00:00 2001 From: 0x22 <0x22@futureclient.net> Date: Thu, 26 Apr 2018 04:41:11 -0400 Subject: [PATCH] Fix exploit that allowed colored signs to be created diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 96ec50f6c6..594196107c 100644 +index c6a44c5f2..83fc7b285 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -2515,7 +2515,7 @@ public class PlayerConnection implements PacketListenerPlayIn { diff --git a/Spigot-Server-Patches/0222-EndermanEscapeEvent.patch b/Spigot-Server-Patches/0221-EndermanEscapeEvent.patch similarity index 92% rename from Spigot-Server-Patches/0222-EndermanEscapeEvent.patch rename to Spigot-Server-Patches/0221-EndermanEscapeEvent.patch index 40c4312bd..538e917b6 100644 --- a/Spigot-Server-Patches/0222-EndermanEscapeEvent.patch +++ b/Spigot-Server-Patches/0221-EndermanEscapeEvent.patch @@ -1,4 +1,4 @@ -From 8e584b5ccf3f2e74b3df22065ddd9ff81ccb499d Mon Sep 17 00:00:00 2001 +From b369d2542ce8ed4fa380bd97966921b2eb857b92 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 30 Apr 2018 13:15:55 -0400 Subject: [PATCH] EndermanEscapeEvent @@ -8,7 +8,7 @@ Fires an event anytime an enderman intends to teleport away from the player You may cancel this, enabling ranged attacks to damage the enderman for example. diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java -index 9f2e350b33..2b484c8199 100644 +index ae198f3b9..28184fb36 100644 --- a/src/main/java/net/minecraft/server/EntityEnderman.java +++ b/src/main/java/net/minecraft/server/EntityEnderman.java @@ -2,6 +2,7 @@ package net.minecraft.server; @@ -41,7 +41,7 @@ index 9f2e350b33..2b484c8199 100644 this.setGoalTarget((EntityLiving) null); this.dW(); } -@@ -256,17 +263,19 @@ public class EntityEnderman extends EntityMonster { +@@ -266,17 +273,19 @@ public class EntityEnderman extends EntityMonster { } else if (!(damagesource instanceof EntityDamageSourceIndirect) && damagesource != DamageSource.FIREWORKS) { boolean flag = super.damageEntity(damagesource, f); @@ -62,7 +62,7 @@ index 9f2e350b33..2b484c8199 100644 return false; } -@@ -388,7 +397,7 @@ public class EntityEnderman extends EntityMonster { +@@ -398,7 +407,7 @@ public class EntityEnderman extends EntityMonster { static class PathfinderGoalPlayerWhoLookedAtTarget extends PathfinderGoalNearestAttackableTarget { @@ -71,7 +71,7 @@ index 9f2e350b33..2b484c8199 100644 private EntityHuman j; private int k; private int l; -@@ -446,7 +455,7 @@ public class EntityEnderman extends EntityMonster { +@@ -456,7 +465,7 @@ public class EntityEnderman extends EntityMonster { } else { if (this.c != null && !this.i.isPassenger()) { if (this.i.f((EntityHuman) this.c)) { diff --git a/Spigot-Server-Patches/0223-Enderman.teleportRandomly.patch b/Spigot-Server-Patches/0222-Enderman.teleportRandomly.patch similarity index 91% rename from Spigot-Server-Patches/0223-Enderman.teleportRandomly.patch rename to Spigot-Server-Patches/0222-Enderman.teleportRandomly.patch index 6dec7482b..6f160cbc6 100644 --- a/Spigot-Server-Patches/0223-Enderman.teleportRandomly.patch +++ b/Spigot-Server-Patches/0222-Enderman.teleportRandomly.patch @@ -1,4 +1,4 @@ -From 07e060c038faeb04adffbf51444aaa89f9f807d5 Mon Sep 17 00:00:00 2001 +From 032459db8e7bcd285fd8b1cff9d0fe72ea2c483b Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 30 Apr 2018 13:29:44 -0400 Subject: [PATCH] Enderman.teleportRandomly() @@ -6,7 +6,7 @@ Subject: [PATCH] Enderman.teleportRandomly() Ability to trigger the vanilla "teleport randomly" mechanic of an enderman. diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java -index 2b484c8199..e441fa234d 100644 +index 28184fb36..d0fb14992 100644 --- a/src/main/java/net/minecraft/server/EntityEnderman.java +++ b/src/main/java/net/minecraft/server/EntityEnderman.java @@ -190,6 +190,7 @@ public class EntityEnderman extends EntityMonster { @@ -18,7 +18,7 @@ index 2b484c8199..e441fa234d 100644 double d0 = this.locX + (this.random.nextDouble() - 0.5D) * 64.0D; double d1 = this.locY + (double) (this.random.nextInt(64) - 32); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEnderman.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEnderman.java -index 970efabd37..0c5f359346 100644 +index 970efabd3..0c5f35934 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEnderman.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEnderman.java @@ -16,6 +16,7 @@ public class CraftEnderman extends CraftMonster implements Enderman { diff --git a/Spigot-Server-Patches/0224-Block-Enderpearl-Travel-Exploit.patch b/Spigot-Server-Patches/0223-Block-Enderpearl-Travel-Exploit.patch similarity index 93% rename from Spigot-Server-Patches/0224-Block-Enderpearl-Travel-Exploit.patch rename to Spigot-Server-Patches/0223-Block-Enderpearl-Travel-Exploit.patch index adafa5b03..439d04200 100644 --- a/Spigot-Server-Patches/0224-Block-Enderpearl-Travel-Exploit.patch +++ b/Spigot-Server-Patches/0223-Block-Enderpearl-Travel-Exploit.patch @@ -1,4 +1,4 @@ -From a2b8eb20c4a62d998d65ed72ebe19a3b20952731 Mon Sep 17 00:00:00 2001 +From 3df4f86bb5558e85d306669c733165d9ec6cf589 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 30 Apr 2018 17:15:26 -0400 Subject: [PATCH] Block Enderpearl Travel Exploit @@ -12,7 +12,7 @@ This disables that by not saving the thrower when the chunk is unloaded. This is mainly useful for survival servers that do not allow freeform teleporting. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 7024336c3a..fe9415b1de 100644 +index 7024336c3..fe9415b1d 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -359,4 +359,10 @@ public class PaperWorldConfig { @@ -27,7 +27,7 @@ index 7024336c3a..fe9415b1de 100644 + } } diff --git a/src/main/java/net/minecraft/server/EntityProjectile.java b/src/main/java/net/minecraft/server/EntityProjectile.java -index bb4679cf76..c19828ed56 100644 +index bb4679cf7..c19828ed5 100644 --- a/src/main/java/net/minecraft/server/EntityProjectile.java +++ b/src/main/java/net/minecraft/server/EntityProjectile.java @@ -205,6 +205,7 @@ public abstract class EntityProjectile extends Entity implements IProjectile { diff --git a/Spigot-Server-Patches/0225-Expand-World.spawnParticle-API-and-add-Builder.patch b/Spigot-Server-Patches/0224-Expand-World.spawnParticle-API-and-add-Builder.patch similarity index 92% rename from Spigot-Server-Patches/0225-Expand-World.spawnParticle-API-and-add-Builder.patch rename to Spigot-Server-Patches/0224-Expand-World.spawnParticle-API-and-add-Builder.patch index ea00a3108..149b41a11 100644 --- a/Spigot-Server-Patches/0225-Expand-World.spawnParticle-API-and-add-Builder.patch +++ b/Spigot-Server-Patches/0224-Expand-World.spawnParticle-API-and-add-Builder.patch @@ -1,4 +1,4 @@ -From 04dc808a5456b9e5689c8902033f5da42cd291f6 Mon Sep 17 00:00:00 2001 +From 82c5d1a6b64929fee957b7bc54971b885ccf3338 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,10 +10,10 @@ 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 606ec3c482..e0254fadf2 100644 +index 9fdc8f5b0..8bc0a8cca 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 { +@@ -48,7 +48,7 @@ public class WorldServer extends World { public final Int2ObjectMap entitiesById = new Int2ObjectLinkedOpenHashMap(); private final Map entitiesByUUID = Maps.newHashMap(); private final Queue entitiesToAdd = Queues.newArrayDeque(); @@ -22,7 +22,7 @@ index 606ec3c482..e0254fadf2 100644 boolean tickingEntities; private final MinecraftServer server; private final WorldNBTStorage dataManager; -@@ -1340,12 +1340,17 @@ public class WorldServer extends World { +@@ -1323,12 +1323,17 @@ public class WorldServer extends World { } public int sendParticles(EntityPlayer sender, T t0, double d0, double d1, double d2, int i, double d3, double d4, double d5, double d6, boolean force) { @@ -43,10 +43,10 @@ index 606ec3c482..e0254fadf2 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 94178fe8ba..be8ea68546 100644 +index 9dd375951..cd3de7e1d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -2055,11 +2055,17 @@ public class CraftWorld implements World { +@@ -2038,11 +2038,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) { diff --git a/Spigot-Server-Patches/0226-EndermanAttackPlayerEvent.patch b/Spigot-Server-Patches/0225-EndermanAttackPlayerEvent.patch similarity index 93% rename from Spigot-Server-Patches/0226-EndermanAttackPlayerEvent.patch rename to Spigot-Server-Patches/0225-EndermanAttackPlayerEvent.patch index c75b80276..69a41f05a 100644 --- a/Spigot-Server-Patches/0226-EndermanAttackPlayerEvent.patch +++ b/Spigot-Server-Patches/0225-EndermanAttackPlayerEvent.patch @@ -1,4 +1,4 @@ -From 41b5bd130d90b9f3454e69599c857c9a6ac89a18 Mon Sep 17 00:00:00 2001 +From 938a8456594d8cc6e6d7000ee807c67a213104eb Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 1 May 2018 20:18:54 -0400 Subject: [PATCH] EndermanAttackPlayerEvent @@ -8,7 +8,7 @@ Allow control over whether or not an enderman aggros a player. This allows you to override/extend the pumpkin/stare logic. diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java -index e441fa234d..a1033ce28b 100644 +index d0fb14992..79d23f152 100644 --- a/src/main/java/net/minecraft/server/EntityEnderman.java +++ b/src/main/java/net/minecraft/server/EntityEnderman.java @@ -138,7 +138,15 @@ public class EntityEnderman extends EntityMonster { diff --git a/Spigot-Server-Patches/0227-WitchConsumePotionEvent.patch b/Spigot-Server-Patches/0226-WitchConsumePotionEvent.patch similarity index 93% rename from Spigot-Server-Patches/0227-WitchConsumePotionEvent.patch rename to Spigot-Server-Patches/0226-WitchConsumePotionEvent.patch index 84767bde5..186c3c788 100644 --- a/Spigot-Server-Patches/0227-WitchConsumePotionEvent.patch +++ b/Spigot-Server-Patches/0226-WitchConsumePotionEvent.patch @@ -1,4 +1,4 @@ -From 5d70fcf0d6d534351e88769ca18f2b20ce841d68 Mon Sep 17 00:00:00 2001 +From dfc082b148fa4673aa922cc98437427bf7d1603f Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 16 May 2018 20:35:16 -0400 Subject: [PATCH] WitchConsumePotionEvent @@ -6,7 +6,7 @@ Subject: [PATCH] WitchConsumePotionEvent Fires when a witch consumes the potion in their hand diff --git a/src/main/java/net/minecraft/server/EntityWitch.java b/src/main/java/net/minecraft/server/EntityWitch.java -index 477b53fa77..abac47d4cf 100644 +index 477b53fa7..abac47d4c 100644 --- a/src/main/java/net/minecraft/server/EntityWitch.java +++ b/src/main/java/net/minecraft/server/EntityWitch.java @@ -88,7 +88,11 @@ public class EntityWitch extends EntityRaider implements IRangedEntity { diff --git a/Spigot-Server-Patches/0228-WitchThrowPotionEvent.patch b/Spigot-Server-Patches/0227-WitchThrowPotionEvent.patch similarity index 94% rename from Spigot-Server-Patches/0228-WitchThrowPotionEvent.patch rename to Spigot-Server-Patches/0227-WitchThrowPotionEvent.patch index ae06a11b6..f0979b508 100644 --- a/Spigot-Server-Patches/0228-WitchThrowPotionEvent.patch +++ b/Spigot-Server-Patches/0227-WitchThrowPotionEvent.patch @@ -1,4 +1,4 @@ -From a78e9c34d5d673b93d9bf83e2887e9b238186435 Mon Sep 17 00:00:00 2001 +From 0b8caecf3df48d173c86a4ec402edb296172be58 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 16 May 2018 20:44:58 -0400 Subject: [PATCH] WitchThrowPotionEvent @@ -6,7 +6,7 @@ Subject: [PATCH] WitchThrowPotionEvent Fired when a witch throws a potion at a player diff --git a/src/main/java/net/minecraft/server/EntityWitch.java b/src/main/java/net/minecraft/server/EntityWitch.java -index abac47d4cf..b9307d380a 100644 +index abac47d4c..b9307d380 100644 --- a/src/main/java/net/minecraft/server/EntityWitch.java +++ b/src/main/java/net/minecraft/server/EntityWitch.java @@ -185,9 +185,16 @@ public class EntityWitch extends EntityRaider implements IRangedEntity { diff --git a/Spigot-Server-Patches/0229-Allow-spawning-Item-entities-with-World.spawnEntity.patch b/Spigot-Server-Patches/0228-Allow-spawning-Item-entities-with-World.spawnEntity.patch similarity index 88% rename from Spigot-Server-Patches/0229-Allow-spawning-Item-entities-with-World.spawnEntity.patch rename to Spigot-Server-Patches/0228-Allow-spawning-Item-entities-with-World.spawnEntity.patch index afe65e556..bbba8c312 100644 --- a/Spigot-Server-Patches/0229-Allow-spawning-Item-entities-with-World.spawnEntity.patch +++ b/Spigot-Server-Patches/0228-Allow-spawning-Item-entities-with-World.spawnEntity.patch @@ -1,4 +1,4 @@ -From 5b983abc918e15dbcd575670bcb74771f08b5194 Mon Sep 17 00:00:00 2001 +From f2e74d992757da7592895b7b8329269ad0c57d6b 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 be8ea68546..6d0c0c5a2a 100644 +index cd3de7e1d..e9e30d3d5 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1322,6 +1322,10 @@ public class CraftWorld implements World { +@@ -1305,6 +1305,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); diff --git a/Spigot-Server-Patches/0230-WitchReadyPotionEvent.patch b/Spigot-Server-Patches/0229-WitchReadyPotionEvent.patch similarity index 93% rename from Spigot-Server-Patches/0230-WitchReadyPotionEvent.patch rename to Spigot-Server-Patches/0229-WitchReadyPotionEvent.patch index 8ef7f0e20..75da29185 100644 --- a/Spigot-Server-Patches/0230-WitchReadyPotionEvent.patch +++ b/Spigot-Server-Patches/0229-WitchReadyPotionEvent.patch @@ -1,11 +1,11 @@ -From 2c5d73a131d2a48f82a80f43c33b307c826138e0 Mon Sep 17 00:00:00 2001 +From eefeefe9fd82c22af80dbfd9660fcd16d3037def Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 5 Jun 2018 22:47:26 -0400 Subject: [PATCH] WitchReadyPotionEvent diff --git a/src/main/java/net/minecraft/server/EntityWitch.java b/src/main/java/net/minecraft/server/EntityWitch.java -index b9307d380a..ae9efb72c1 100644 +index b9307d380..ae9efb72c 100644 --- a/src/main/java/net/minecraft/server/EntityWitch.java +++ b/src/main/java/net/minecraft/server/EntityWitch.java @@ -121,7 +121,11 @@ public class EntityWitch extends EntityRaider implements IRangedEntity { diff --git a/Spigot-Server-Patches/0231-ItemStack-getMaxItemUseDuration.patch b/Spigot-Server-Patches/0230-ItemStack-getMaxItemUseDuration.patch similarity index 91% rename from Spigot-Server-Patches/0231-ItemStack-getMaxItemUseDuration.patch rename to Spigot-Server-Patches/0230-ItemStack-getMaxItemUseDuration.patch index f95a3cff8..ff02a66a5 100644 --- a/Spigot-Server-Patches/0231-ItemStack-getMaxItemUseDuration.patch +++ b/Spigot-Server-Patches/0230-ItemStack-getMaxItemUseDuration.patch @@ -1,4 +1,4 @@ -From 7b570ba36d932b379a2f030a356e9cd5bc1e6810 Mon Sep 17 00:00:00 2001 +From 328d1473bd7465351d1fca668adf81155cebbc67 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 5 Jun 2018 23:00:29 -0400 Subject: [PATCH] ItemStack#getMaxItemUseDuration @@ -6,7 +6,7 @@ Subject: [PATCH] ItemStack#getMaxItemUseDuration Allows you to determine how long it takes to use a usable/consumable item diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java -index b7d327211c..2acd02f2f4 100644 +index b7d327211..2acd02f2f 100644 --- a/src/main/java/net/minecraft/server/ItemStack.java +++ b/src/main/java/net/minecraft/server/ItemStack.java @@ -545,6 +545,7 @@ public final class ItemStack { @@ -18,7 +18,7 @@ index b7d327211c..2acd02f2f4 100644 return this.getItem().f_(this); } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 88154d2f23..1609e6bbb6 100644 +index 88154d2f2..1609e6bbb 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -174,6 +174,13 @@ public final class CraftItemStack extends ItemStack { diff --git a/Spigot-Server-Patches/0232-Implement-EntityTeleportEndGatewayEvent.patch b/Spigot-Server-Patches/0231-Implement-EntityTeleportEndGatewayEvent.patch similarity index 95% rename from Spigot-Server-Patches/0232-Implement-EntityTeleportEndGatewayEvent.patch rename to Spigot-Server-Patches/0231-Implement-EntityTeleportEndGatewayEvent.patch index 195c42ab6..c6dc1a13a 100644 --- a/Spigot-Server-Patches/0232-Implement-EntityTeleportEndGatewayEvent.patch +++ b/Spigot-Server-Patches/0231-Implement-EntityTeleportEndGatewayEvent.patch @@ -1,11 +1,11 @@ -From f5a86341b8dc7752da932871d5763574a17a4e40 Mon Sep 17 00:00:00 2001 +From 7d5bacdeefd6c1a2a77d3e9ef72c761099532492 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Sat, 9 Jun 2018 14:08:39 +0200 Subject: [PATCH] Implement EntityTeleportEndGatewayEvent diff --git a/src/main/java/net/minecraft/server/TileEntityEndGateway.java b/src/main/java/net/minecraft/server/TileEntityEndGateway.java -index 5dd6706152..734d04c092 100644 +index 6aa07da6e..61963dca1 100644 --- a/src/main/java/net/minecraft/server/TileEntityEndGateway.java +++ b/src/main/java/net/minecraft/server/TileEntityEndGateway.java @@ -144,8 +144,19 @@ public class TileEntityEndGateway extends TileEntityEnderPortal implements ITick diff --git a/Spigot-Server-Patches/0233-Unset-Ignited-flag-on-cancel-of-Explosion-Event.patch b/Spigot-Server-Patches/0232-Unset-Ignited-flag-on-cancel-of-Explosion-Event.patch similarity index 93% rename from Spigot-Server-Patches/0233-Unset-Ignited-flag-on-cancel-of-Explosion-Event.patch rename to Spigot-Server-Patches/0232-Unset-Ignited-flag-on-cancel-of-Explosion-Event.patch index a58f3af8e..404f9058f 100644 --- a/Spigot-Server-Patches/0233-Unset-Ignited-flag-on-cancel-of-Explosion-Event.patch +++ b/Spigot-Server-Patches/0232-Unset-Ignited-flag-on-cancel-of-Explosion-Event.patch @@ -1,4 +1,4 @@ -From de94bc8a649115e56cbcc6989f60ed1c498ad0db Mon Sep 17 00:00:00 2001 +From 1661e09044bf24b7d4f44a46b5ae45bfa540827c Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 10 Jun 2018 01:18:49 -0400 Subject: [PATCH] Unset Ignited flag on cancel of Explosion Event @@ -6,7 +6,7 @@ Subject: [PATCH] Unset Ignited flag on cancel of Explosion Event Otherwise the creeper infinite explodes diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java -index 9f03d03375..29569805cb 100644 +index 9f03d0337..29569805c 100644 --- a/src/main/java/net/minecraft/server/EntityCreeper.java +++ b/src/main/java/net/minecraft/server/EntityCreeper.java @@ -11,7 +11,7 @@ public class EntityCreeper extends EntityMonster { diff --git a/Spigot-Server-Patches/0234-Fix-CraftEntity-hashCode.patch b/Spigot-Server-Patches/0233-Fix-CraftEntity-hashCode.patch similarity index 94% rename from Spigot-Server-Patches/0234-Fix-CraftEntity-hashCode.patch rename to Spigot-Server-Patches/0233-Fix-CraftEntity-hashCode.patch index eb1921f9a..35855ae71 100644 --- a/Spigot-Server-Patches/0234-Fix-CraftEntity-hashCode.patch +++ b/Spigot-Server-Patches/0233-Fix-CraftEntity-hashCode.patch @@ -1,4 +1,4 @@ -From ead840b9a0f68489ec534f0faee33c1cc3438379 Mon Sep 17 00:00:00 2001 +From 9b1184419b914ffd2ca89a549c25c13c23d44ff6 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 10 Jun 2018 20:20:15 -0400 Subject: [PATCH] Fix CraftEntity hashCode @@ -21,7 +21,7 @@ check is essentially the same as this.getHandle() == other.getHandle() However, replaced it too to make it clearer of intent. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 4af2527d63..af0fc9bd71 100644 +index ebcd971fb..52f72e147 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -720,14 +720,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/Spigot-Server-Patches/0235-Configurable-Alternative-LootPool-Luck-Formula.patch b/Spigot-Server-Patches/0234-Configurable-Alternative-LootPool-Luck-Formula.patch similarity index 98% rename from Spigot-Server-Patches/0235-Configurable-Alternative-LootPool-Luck-Formula.patch rename to Spigot-Server-Patches/0234-Configurable-Alternative-LootPool-Luck-Formula.patch index 9bb6088be..82bee912f 100644 --- a/Spigot-Server-Patches/0235-Configurable-Alternative-LootPool-Luck-Formula.patch +++ b/Spigot-Server-Patches/0234-Configurable-Alternative-LootPool-Luck-Formula.patch @@ -1,4 +1,4 @@ -From 8eb491a62ea0800705c8e1d23bafc2c3b8855e2c Mon Sep 17 00:00:00 2001 +From ac8162ea4e6fcaf31087081680b02ac598b383aa Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 15 Jun 2018 00:30:32 -0400 Subject: [PATCH] Configurable Alternative LootPool Luck Formula diff --git a/Spigot-Server-Patches/0236-Print-Error-details-when-failing-to-save-player-data.patch b/Spigot-Server-Patches/0235-Print-Error-details-when-failing-to-save-player-data.patch similarity index 89% rename from Spigot-Server-Patches/0236-Print-Error-details-when-failing-to-save-player-data.patch rename to Spigot-Server-Patches/0235-Print-Error-details-when-failing-to-save-player-data.patch index d913d6ac8..6d22bbb11 100644 --- a/Spigot-Server-Patches/0236-Print-Error-details-when-failing-to-save-player-data.patch +++ b/Spigot-Server-Patches/0235-Print-Error-details-when-failing-to-save-player-data.patch @@ -1,11 +1,11 @@ -From 1bd0ad604e6a2d0840c269cc621335dfb635eb32 Mon Sep 17 00:00:00 2001 +From ab31f6c6b798199d28843947ddfda7d308b8342a Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 15 Jun 2018 20:37:03 -0400 Subject: [PATCH] Print Error details when failing to save player data diff --git a/src/main/java/net/minecraft/server/WorldNBTStorage.java b/src/main/java/net/minecraft/server/WorldNBTStorage.java -index e60e10c57d..350ac42d6b 100644 +index e60e10c57..350ac42d6 100644 --- a/src/main/java/net/minecraft/server/WorldNBTStorage.java +++ b/src/main/java/net/minecraft/server/WorldNBTStorage.java @@ -151,7 +151,7 @@ public class WorldNBTStorage implements IPlayerFileData { diff --git a/Spigot-Server-Patches/0237-Make-shield-blocking-delay-configurable.patch b/Spigot-Server-Patches/0236-Make-shield-blocking-delay-configurable.patch similarity index 94% rename from Spigot-Server-Patches/0237-Make-shield-blocking-delay-configurable.patch rename to Spigot-Server-Patches/0236-Make-shield-blocking-delay-configurable.patch index c2a84e4de..ece987f50 100644 --- a/Spigot-Server-Patches/0237-Make-shield-blocking-delay-configurable.patch +++ b/Spigot-Server-Patches/0236-Make-shield-blocking-delay-configurable.patch @@ -1,11 +1,11 @@ -From 4533fc251af50ec3ec1372c6d4f05bc5dbc1c06d Mon Sep 17 00:00:00 2001 +From 3327d6aacece936b1531bd671de8f7c65f561f5f Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 16 Jun 2018 01:18:16 -0500 Subject: [PATCH] Make shield blocking delay configurable diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index fe9415b1de..ce17447faf 100644 +index fe9415b1d..ce17447fa 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -365,4 +365,9 @@ public class PaperWorldConfig { @@ -19,7 +19,7 @@ index fe9415b1de..ce17447faf 100644 + } } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 72a5a49038..ecbfe8cf8d 100644 +index 864204078..be60f35de 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2915,7 +2915,7 @@ public abstract class EntityLiving extends Entity { @@ -48,7 +48,7 @@ index 72a5a49038..ecbfe8cf8d 100644 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 8bd2f95f48..aeb4b7343e 100644 +index 8bd2f95f4..aeb4b7343 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -606,5 +606,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/Spigot-Server-Patches/0238-Ignore-Missing-Recipes-in-RecipeBook-to-avoid-data-e.patch b/Spigot-Server-Patches/0237-Ignore-Missing-Recipes-in-RecipeBook-to-avoid-data-e.patch similarity index 93% rename from Spigot-Server-Patches/0238-Ignore-Missing-Recipes-in-RecipeBook-to-avoid-data-e.patch rename to Spigot-Server-Patches/0237-Ignore-Missing-Recipes-in-RecipeBook-to-avoid-data-e.patch index af757243a..0d5be906e 100644 --- a/Spigot-Server-Patches/0238-Ignore-Missing-Recipes-in-RecipeBook-to-avoid-data-e.patch +++ b/Spigot-Server-Patches/0237-Ignore-Missing-Recipes-in-RecipeBook-to-avoid-data-e.patch @@ -1,4 +1,4 @@ -From 3ac291a4e463dd06a6f8f85e6bb6007322c2f38e Mon Sep 17 00:00:00 2001 +From 5e67496180189eb198ca1edb924a62679000c812 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 16 Jun 2018 16:23:38 -0400 Subject: [PATCH] Ignore Missing Recipes in RecipeBook to avoid data errors @@ -6,7 +6,7 @@ Subject: [PATCH] Ignore Missing Recipes in RecipeBook to avoid data errors This code was causing NPE's in saving player data, potentially related to reloads. diff --git a/src/main/java/net/minecraft/server/RecipeBookServer.java b/src/main/java/net/minecraft/server/RecipeBookServer.java -index 440e8f1342..091c4abbd1 100644 +index 440e8f134..091c4abbd 100644 --- a/src/main/java/net/minecraft/server/RecipeBookServer.java +++ b/src/main/java/net/minecraft/server/RecipeBookServer.java @@ -78,6 +78,10 @@ public class RecipeBookServer extends RecipeBook { diff --git a/Spigot-Server-Patches/0239-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch b/Spigot-Server-Patches/0238-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch similarity index 97% rename from Spigot-Server-Patches/0239-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch rename to Spigot-Server-Patches/0238-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch index abca3a1fa..48dc047a6 100644 --- a/Spigot-Server-Patches/0239-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch +++ b/Spigot-Server-Patches/0238-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch @@ -1,4 +1,4 @@ -From 6aa7f996f54b550a634d8b78040f237483d18157 Mon Sep 17 00:00:00 2001 +From 8f92e4f4bbbdcec6a78f88d11500d04c0bce53cf Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 15 Jun 2013 19:51:17 -0400 Subject: [PATCH] EntityShootBowEvent consumeArrow and getArrowItem API @@ -59,10 +59,10 @@ index 50b815dc8..4ec02c8ce 100644 if (itemstack1.isEmpty()) { entityhuman.inventory.f(itemstack1); diff --git a/src/main/java/net/minecraft/server/ItemCrossbow.java b/src/main/java/net/minecraft/server/ItemCrossbow.java -index 6da9e5e4b..cd17b4777 100644 +index 670b0b33a..5d58d5e35 100644 --- a/src/main/java/net/minecraft/server/ItemCrossbow.java +++ b/src/main/java/net/minecraft/server/ItemCrossbow.java -@@ -213,7 +213,7 @@ public class ItemCrossbow extends ItemProjectileWeapon { +@@ -220,7 +220,7 @@ public class ItemCrossbow extends ItemProjectileWeapon { ((IProjectile) object).shoot((double) vector3fa.a(), (double) vector3fa.b(), (double) vector3fa.c(), f1, f2); } // CraftBukkit start @@ -72,7 +72,7 @@ index 6da9e5e4b..cd17b4777 100644 event.getProjectile().remove(); return; diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index db44e82a1..f0958e770 100644 +index 42d82034b..00879c7f8 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -49,6 +49,7 @@ import net.minecraft.server.GeneratorAccess; diff --git a/Spigot-Server-Patches/0240-PlayerReadyArrowEvent.patch b/Spigot-Server-Patches/0239-PlayerReadyArrowEvent.patch similarity index 94% rename from Spigot-Server-Patches/0240-PlayerReadyArrowEvent.patch rename to Spigot-Server-Patches/0239-PlayerReadyArrowEvent.patch index f75e6d3e2..69985053f 100644 --- a/Spigot-Server-Patches/0240-PlayerReadyArrowEvent.patch +++ b/Spigot-Server-Patches/0239-PlayerReadyArrowEvent.patch @@ -1,4 +1,4 @@ -From ab2d09b574e37f4d6760c79255e7014706813d13 Mon Sep 17 00:00:00 2001 +From e67acc61108ac7a18c19e8cec280c96112f05082 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 18 Jun 2018 01:12:53 -0400 Subject: [PATCH] PlayerReadyArrowEvent @@ -7,7 +7,7 @@ Called when a player is firing a bow and the server is choosing an arrow to use. Plugins can skip selection of certain arrows and control which is used. diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 27bf83f373..3031d73f5f 100644 +index 58d2a28a4..f5dac5082 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -2032,6 +2032,17 @@ public abstract class EntityHuman extends EntityLiving { diff --git a/Spigot-Server-Patches/0241-Fire-EntityShootBowEvent-for-Illusioner.patch b/Spigot-Server-Patches/0240-Fire-EntityShootBowEvent-for-Illusioner.patch similarity index 93% rename from Spigot-Server-Patches/0241-Fire-EntityShootBowEvent-for-Illusioner.patch rename to Spigot-Server-Patches/0240-Fire-EntityShootBowEvent-for-Illusioner.patch index 702ee9312..5a04da1b0 100644 --- a/Spigot-Server-Patches/0241-Fire-EntityShootBowEvent-for-Illusioner.patch +++ b/Spigot-Server-Patches/0240-Fire-EntityShootBowEvent-for-Illusioner.patch @@ -1,11 +1,11 @@ -From b4996e5006a9a4c292a50c38e276f8148a0f235d Mon Sep 17 00:00:00 2001 +From 88310538f1bb07800c053eced66ec713d4b9bd40 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 18 Jun 2018 22:19:36 -0400 Subject: [PATCH] Fire EntityShootBowEvent for Illusioner diff --git a/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java b/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java -index 3782673141..96ad678893 100644 +index 378267314..96ad67889 100644 --- a/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java +++ b/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java @@ -138,8 +138,18 @@ public class EntityIllagerIllusioner extends EntityIllagerWizard implements IRan diff --git a/Spigot-Server-Patches/0242-Implement-EntityKnockbackByEntityEvent.patch b/Spigot-Server-Patches/0241-Implement-EntityKnockbackByEntityEvent.patch similarity index 93% rename from Spigot-Server-Patches/0242-Implement-EntityKnockbackByEntityEvent.patch rename to Spigot-Server-Patches/0241-Implement-EntityKnockbackByEntityEvent.patch index df6b45337..98086a347 100644 --- a/Spigot-Server-Patches/0242-Implement-EntityKnockbackByEntityEvent.patch +++ b/Spigot-Server-Patches/0241-Implement-EntityKnockbackByEntityEvent.patch @@ -1,4 +1,4 @@ -From 9ae191c6f59ffb79a82390660f5d5524a0b8f9fe Mon Sep 17 00:00:00 2001 +From db219566c720e58261a6b9ef8c8f2b15eda1f7f8 Mon Sep 17 00:00:00 2001 From: Brokkonaut Date: Mon, 18 Jun 2018 15:46:23 +0200 Subject: [PATCH] Implement EntityKnockbackByEntityEvent @@ -6,7 +6,7 @@ Subject: [PATCH] Implement EntityKnockbackByEntityEvent This event is called when an entity receives knockback by another entity. diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index ecbfe8cf8d..66daa77d10 100644 +index be60f35de..6faed231a 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -1424,6 +1424,16 @@ public abstract class EntityLiving extends Entity { diff --git a/Spigot-Server-Patches/0243-Expand-Explosions-API.patch b/Spigot-Server-Patches/0242-Expand-Explosions-API.patch similarity index 92% rename from Spigot-Server-Patches/0243-Expand-Explosions-API.patch rename to Spigot-Server-Patches/0242-Expand-Explosions-API.patch index 63477f601..b77585a21 100644 --- a/Spigot-Server-Patches/0243-Expand-Explosions-API.patch +++ b/Spigot-Server-Patches/0242-Expand-Explosions-API.patch @@ -1,4 +1,4 @@ -From cf6b0562373033a1db4ead73499260ed6d085f45 Mon Sep 17 00:00:00 2001 +From cc3b39c270a8e00abd3a5646c2e8a8dd330e12bb Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 20 Jun 2018 23:17:24 -0400 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/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 6d0c0c5a2a..c9b11128d7 100644 +index e9e30d3d5..69f215ba9 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -754,6 +754,11 @@ public class CraftWorld implements World { diff --git a/Spigot-Server-Patches/0244-LivingEntity-Hand-Raised-Item-Use-API.patch b/Spigot-Server-Patches/0243-LivingEntity-Hand-Raised-Item-Use-API.patch similarity index 94% rename from Spigot-Server-Patches/0244-LivingEntity-Hand-Raised-Item-Use-API.patch rename to Spigot-Server-Patches/0243-LivingEntity-Hand-Raised-Item-Use-API.patch index be624e69d..8b9c85e00 100644 --- a/Spigot-Server-Patches/0244-LivingEntity-Hand-Raised-Item-Use-API.patch +++ b/Spigot-Server-Patches/0243-LivingEntity-Hand-Raised-Item-Use-API.patch @@ -1,4 +1,4 @@ -From 5c1bdf2ae1a97542091fe38dad080f0f7376b059 Mon Sep 17 00:00:00 2001 +From be55a812380577a34ab74e2e5c377847bf01f5e8 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 29 Jun 2018 00:21:28 -0400 Subject: [PATCH] LivingEntity Hand Raised/Item Use API @@ -6,7 +6,7 @@ Subject: [PATCH] LivingEntity Hand Raised/Item Use API How long an entity has raised hands to charge an attack or use an item diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 66daa77d10..de0f9f57d2 100644 +index 6faed231a..d52c0d81d 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -109,7 +109,7 @@ public abstract class EntityLiving extends Entity { @@ -32,7 +32,7 @@ index 66daa77d10..de0f9f57d2 100644 return this.isHandRaised() ? this.activeItem.k() - this.dm() : 0; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index aeb4b7343e..00fae68408 100644 +index aeb4b7343..00fae6840 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -616,5 +616,25 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/Spigot-Server-Patches/0245-RangedEntity-API.patch b/Spigot-Server-Patches/0244-RangedEntity-API.patch similarity index 95% rename from Spigot-Server-Patches/0245-RangedEntity-API.patch rename to Spigot-Server-Patches/0244-RangedEntity-API.patch index fdee7e2cb..eaf5ed5ab 100644 --- a/Spigot-Server-Patches/0245-RangedEntity-API.patch +++ b/Spigot-Server-Patches/0244-RangedEntity-API.patch @@ -1,4 +1,4 @@ -From fd85ef8a2b0bae33f4fb75702f282c4b0f31de8e Mon Sep 17 00:00:00 2001 +From 76593e2fed619b553868c22a7b48298380c3dbde Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 26 Jun 2018 22:00:49 -0400 Subject: [PATCH] RangedEntity API @@ -8,7 +8,7 @@ and to perform an attack. diff --git a/src/main/java/com/destroystokyo/paper/entity/CraftRangedEntity.java b/src/main/java/com/destroystokyo/paper/entity/CraftRangedEntity.java new file mode 100644 -index 0000000000..696660b089 +index 000000000..696660b08 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/entity/CraftRangedEntity.java @@ -0,0 +1,19 @@ @@ -32,7 +32,7 @@ index 0000000000..696660b089 + } +} diff --git a/src/main/java/net/minecraft/server/IRangedEntity.java b/src/main/java/net/minecraft/server/IRangedEntity.java -index b4178ce1e8..9b79ac77db 100644 +index b4178ce1e..9b79ac77d 100644 --- a/src/main/java/net/minecraft/server/IRangedEntity.java +++ b/src/main/java/net/minecraft/server/IRangedEntity.java @@ -2,5 +2,8 @@ package net.minecraft.server; @@ -46,7 +46,7 @@ index b4178ce1e8..9b79ac77db 100644 + void q(boolean flag); default void setChargingAttack(boolean charging) { q(charging); }; // Paper } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftIllusioner.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftIllusioner.java -index 2ec1af8be4..f31d3eed3a 100644 +index 2ec1af8be..f31d3eed3 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftIllusioner.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftIllusioner.java @@ -1,11 +1,12 @@ @@ -64,7 +64,7 @@ index 2ec1af8be4..f31d3eed3a 100644 public CraftIllusioner(CraftServer server, EntityIllagerIllusioner entity) { super(server, entity); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java -index 23ab78da15..3f94c5a920 100644 +index 23ab78da1..3f94c5a92 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java @@ -1,5 +1,6 @@ @@ -84,7 +84,7 @@ index 23ab78da15..3f94c5a920 100644 public CraftLlama(CraftServer server, EntityLlama entity) { super(server, entity); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeleton.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeleton.java -index b4ae898401..02df66ecfe 100644 +index b4ae89840..02df66ecf 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeleton.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeleton.java @@ -1,11 +1,12 @@ @@ -102,7 +102,7 @@ index b4ae898401..02df66ecfe 100644 public CraftSkeleton(CraftServer server, EntitySkeletonAbstract entity) { super(server, entity); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java -index 27460c59e3..e482b1c9dc 100644 +index 27460c59e..e482b1c9d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java @@ -1,11 +1,12 @@ @@ -120,7 +120,7 @@ index 27460c59e3..e482b1c9dc 100644 super(server, entity); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftWitch.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftWitch.java -index 244e4dc8ec..bae107e76e 100644 +index 244e4dc8e..bae107e76 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftWitch.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftWitch.java @@ -1,11 +1,12 @@ @@ -138,7 +138,7 @@ index 244e4dc8ec..bae107e76e 100644 super(server, entity); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java -index 38b555cc7e..03cf6136e6 100644 +index 38b555cc7..03cf6136e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java @@ -1,5 +1,6 @@ diff --git a/Spigot-Server-Patches/0246-Add-config-to-disable-ender-dragon-legacy-check.patch b/Spigot-Server-Patches/0245-Add-config-to-disable-ender-dragon-legacy-check.patch similarity index 94% rename from Spigot-Server-Patches/0246-Add-config-to-disable-ender-dragon-legacy-check.patch rename to Spigot-Server-Patches/0245-Add-config-to-disable-ender-dragon-legacy-check.patch index 0a3f36e6b..dbb20fbf4 100644 --- a/Spigot-Server-Patches/0246-Add-config-to-disable-ender-dragon-legacy-check.patch +++ b/Spigot-Server-Patches/0245-Add-config-to-disable-ender-dragon-legacy-check.patch @@ -1,11 +1,11 @@ -From dc6efa41ccd1077be2f6ccd227527d0090d2d851 Mon Sep 17 00:00:00 2001 +From 03e6d66ec19560e069e220b1b272dc1287ffcbe3 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 22 Jun 2018 10:38:31 -0500 Subject: [PATCH] Add config to disable ender dragon legacy check diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index ce17447faf..3294fbbeaf 100644 +index ce17447fa..3294fbbea 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -370,4 +370,9 @@ public class PaperWorldConfig { @@ -19,7 +19,7 @@ index ce17447faf..3294fbbeaf 100644 + } } diff --git a/src/main/java/net/minecraft/server/EnderDragonBattle.java b/src/main/java/net/minecraft/server/EnderDragonBattle.java -index 5ae20b1322..60ba37c921 100644 +index 6f92820c3..c9d271145 100644 --- a/src/main/java/net/minecraft/server/EnderDragonBattle.java +++ b/src/main/java/net/minecraft/server/EnderDragonBattle.java @@ -28,10 +28,10 @@ public class EnderDragonBattle { diff --git a/Spigot-Server-Patches/0247-Implement-World.getEntity-UUID-API.patch b/Spigot-Server-Patches/0246-Implement-World.getEntity-UUID-API.patch similarity index 83% rename from Spigot-Server-Patches/0247-Implement-World.getEntity-UUID-API.patch rename to Spigot-Server-Patches/0246-Implement-World.getEntity-UUID-API.patch index 43afc2e48..1382eb7cf 100644 --- a/Spigot-Server-Patches/0247-Implement-World.getEntity-UUID-API.patch +++ b/Spigot-Server-Patches/0246-Implement-World.getEntity-UUID-API.patch @@ -1,14 +1,14 @@ -From e3ee1b876ccf7c884eddca532d5c09f8a66a6245 Mon Sep 17 00:00:00 2001 +From ce22206e37d5919bb32242f75de63bff94120126 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 c9b11128d7..209e726485 100644 +index 69f215ba9..9a9c5a93e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1125,6 +1125,15 @@ public class CraftWorld implements World { +@@ -1108,6 +1108,15 @@ public class CraftWorld implements World { return list; } diff --git a/Spigot-Server-Patches/0248-InventoryCloseEvent-Reason-API.patch b/Spigot-Server-Patches/0247-InventoryCloseEvent-Reason-API.patch similarity index 95% rename from Spigot-Server-Patches/0248-InventoryCloseEvent-Reason-API.patch rename to Spigot-Server-Patches/0247-InventoryCloseEvent-Reason-API.patch index dff8d0294..ea569fba0 100644 --- a/Spigot-Server-Patches/0248-InventoryCloseEvent-Reason-API.patch +++ b/Spigot-Server-Patches/0247-InventoryCloseEvent-Reason-API.patch @@ -1,4 +1,4 @@ -From 9792c586bfaca7a0bfefb14b3a45d0d37b109688 Mon Sep 17 00:00:00 2001 +From 406946910753952b8098c82d040f81a2ee43b140 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 3031d73f5..f665dc0eb 100644 +index f5dac5082..d1a7a873b 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -149,7 +149,7 @@ public abstract class EntityHuman extends EntityLiving { @@ -34,7 +34,7 @@ index 3031d73f5..f665dc0eb 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 8074465f1..32ac372bc 100644 +index 29ebee2d9..d46ddba34 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -360,7 +360,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -88,7 +88,7 @@ index 8074465f1..32ac372bc 100644 this.m(); } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index c009d7adc..ca5e11709 100644 +index 83fc7b285..f436e0259 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -2049,7 +2049,7 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -101,10 +101,10 @@ index c009d7adc..ca5e11709 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 cacd76954..58bfafc6b 100644 +index 5ac4a7c28..006f7b8b9 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java -@@ -401,7 +401,7 @@ public abstract class PlayerList { +@@ -402,7 +402,7 @@ public abstract class PlayerList { entityplayer.a(StatisticList.LEAVE_GAME); // CraftBukkit start - Quitting must be before we do final save of data, in case plugins need to modify it @@ -114,10 +114,10 @@ index cacd76954..58bfafc6b 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 176ac3c65..0e559133f 100644 +index 8bc0a8cca..067379252 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -988,7 +988,7 @@ public class WorldServer extends World { +@@ -981,7 +981,7 @@ public class WorldServer extends World { { if ( h instanceof org.bukkit.craftbukkit.entity.CraftHumanEntity ) { @@ -126,7 +126,7 @@ index 176ac3c65..0e559133f 100644 } } } -@@ -1011,7 +1011,7 @@ public class WorldServer extends World { +@@ -1004,7 +1004,7 @@ public class WorldServer extends World { { if ( h instanceof org.bukkit.craftbukkit.entity.CraftHumanEntity ) { @@ -155,7 +155,7 @@ index d0a019f50..79fc638a0 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 23a205af1..88398c332 100644 +index be7c5d174..ba60ece45 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -771,7 +771,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -168,7 +168,7 @@ index 23a205af1..88398c332 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 7426c5400..ad14d74b3 100644 +index 00879c7f8..ceffcec72 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1239,8 +1239,19 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/0249-Avoid-Chunk-Lookups-for-Entity-TileEntity-Current-Ch.patch b/Spigot-Server-Patches/0248-Avoid-Chunk-Lookups-for-Entity-TileEntity-Current-Ch.patch similarity index 87% rename from Spigot-Server-Patches/0249-Avoid-Chunk-Lookups-for-Entity-TileEntity-Current-Ch.patch rename to Spigot-Server-Patches/0248-Avoid-Chunk-Lookups-for-Entity-TileEntity-Current-Ch.patch index 308f16930..4466a805f 100644 --- a/Spigot-Server-Patches/0249-Avoid-Chunk-Lookups-for-Entity-TileEntity-Current-Ch.patch +++ b/Spigot-Server-Patches/0248-Avoid-Chunk-Lookups-for-Entity-TileEntity-Current-Ch.patch @@ -1,4 +1,4 @@ -From 2b38cf192766111ee616781fcad9018b0ce05cbd Mon Sep 17 00:00:00 2001 +From 4360aea0767807d156608cd70a55eaa2b2eacf1d Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 4 Jul 2018 03:39:51 -0400 Subject: [PATCH] Avoid Chunk Lookups for Entity/TileEntity Current Chunk @@ -10,20 +10,20 @@ to the object directly on the Entity/TileEntity object we can directly grab. Use that local value instead to reduce lookups in many hot places. diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index c388a8261..463353bc7 100644 +index e3de63489..0e9530ea5 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -762,7 +762,8 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose if (!tileentity.isRemoved() && tileentity.hasWorld()) { BlockPosition blockposition = tileentity.getPosition(); -- if (this.isLoaded(blockposition) && this.getWorldBorder().a(blockposition)) { +- if (this.chunkProvider.a(blockposition) && this.getWorldBorder().a(blockposition)) { + Chunk currentChunk = tileentity.getCurrentChunk(); // Paper + if (currentChunk != null && this.getWorldBorder().a(blockposition)) { // Paper try { gameprofilerfiller.a(() -> { return String.valueOf(TileEntityTypes.a(tileentity.q())); -@@ -796,7 +797,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -801,7 +802,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose this.tileEntityListTick.remove(tileTickPosition--); // Spigot end //this.tileEntityList.remove(tileentity); // Paper - remove unused list @@ -32,7 +32,7 @@ index c388a8261..463353bc7 100644 this.getChunkAtWorldCoords(tileentity.getPosition()).removeTileEntity(tileentity.getPosition()); } } -@@ -817,8 +818,9 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -822,8 +823,9 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose } // CraftBukkit end */ @@ -45,10 +45,10 @@ index c388a8261..463353bc7 100644 chunk.setTileEntity(tileentity1.getPosition(), tileentity1); diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 0e559133f..1c92cf58a 100644 +index 067379252..340460a33 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1068,7 +1068,7 @@ public class WorldServer extends World { +@@ -1061,7 +1061,7 @@ public class WorldServer extends World { } this.entitiesByUUID.remove(entity.getUniqueID()); @@ -57,7 +57,7 @@ index 0e559133f..1c92cf58a 100644 if (entity instanceof EntityPlayer) { EntityPlayer entityplayer = (EntityPlayer) entity; -@@ -1128,9 +1128,12 @@ public class WorldServer extends World { +@@ -1121,9 +1121,12 @@ public class WorldServer extends World { } private void removeEntityFromChunk(Entity entity) { diff --git a/Spigot-Server-Patches/0250-Configurable-Bed-Search-Radius.patch b/Spigot-Server-Patches/0249-Configurable-Bed-Search-Radius.patch similarity index 97% rename from Spigot-Server-Patches/0250-Configurable-Bed-Search-Radius.patch rename to Spigot-Server-Patches/0249-Configurable-Bed-Search-Radius.patch index ecc129788..1a2fb7714 100644 --- a/Spigot-Server-Patches/0250-Configurable-Bed-Search-Radius.patch +++ b/Spigot-Server-Patches/0249-Configurable-Bed-Search-Radius.patch @@ -1,4 +1,4 @@ -From 2694b57b65417360447f189021e0e5f416e900d3 Mon Sep 17 00:00:00 2001 +From 3594eb0377ceba8b900106232665a5a88440a9ca Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 4 Jul 2018 15:22:06 -0400 Subject: [PATCH] Configurable Bed Search Radius @@ -10,7 +10,7 @@ player at their bed should it of became obstructed. Defaults to vanilla 1. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 3294fbbeaf..83e54cb904 100644 +index 3294fbbea..83e54cb90 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -375,4 +375,15 @@ public class PaperWorldConfig { @@ -30,7 +30,7 @@ index 3294fbbeaf..83e54cb904 100644 + } } diff --git a/src/main/java/net/minecraft/server/BlockBed.java b/src/main/java/net/minecraft/server/BlockBed.java -index 2a451025fe..75331c9864 100644 +index 3ef19c0c2..07e530666 100644 --- a/src/main/java/net/minecraft/server/BlockBed.java +++ b/src/main/java/net/minecraft/server/BlockBed.java @@ -171,6 +171,58 @@ public class BlockBed extends BlockFacingHorizontal implements ITileEntity { diff --git a/Spigot-Server-Patches/0251-Vex-getSummoner-API.patch b/Spigot-Server-Patches/0250-Vex-getSummoner-API.patch similarity index 92% rename from Spigot-Server-Patches/0251-Vex-getSummoner-API.patch rename to Spigot-Server-Patches/0250-Vex-getSummoner-API.patch index 09b06f9ba..e53b9d9bc 100644 --- a/Spigot-Server-Patches/0251-Vex-getSummoner-API.patch +++ b/Spigot-Server-Patches/0250-Vex-getSummoner-API.patch @@ -1,4 +1,4 @@ -From fe6fa2197f8c1ca875823a241f0fcfdef81a46ad Mon Sep 17 00:00:00 2001 +From 6632389d447a05bff72b0ec4fa3c3d2c798caa3d Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 4 Jul 2018 15:30:22 -0400 Subject: [PATCH] Vex#getSummoner API @@ -6,7 +6,7 @@ Subject: [PATCH] Vex#getSummoner API Get's the NPC that summoned this Vex diff --git a/src/main/java/net/minecraft/server/EntityVex.java b/src/main/java/net/minecraft/server/EntityVex.java -index ecfc057a18..83e022c91b 100644 +index ecfc057a1..83e022c91 100644 --- a/src/main/java/net/minecraft/server/EntityVex.java +++ b/src/main/java/net/minecraft/server/EntityVex.java @@ -92,6 +92,7 @@ public class EntityVex extends EntityMonster { @@ -18,7 +18,7 @@ index ecfc057a18..83e022c91b 100644 return this.c; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java -index 737a37b6fe..169c951ec3 100644 +index 737a37b6f..169c951ec 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java @@ -1,8 +1,10 @@ diff --git a/Spigot-Server-Patches/0252-Refresh-player-inventory-when-cancelling-PlayerInter.patch b/Spigot-Server-Patches/0251-Refresh-player-inventory-when-cancelling-PlayerInter.patch similarity index 92% rename from Spigot-Server-Patches/0252-Refresh-player-inventory-when-cancelling-PlayerInter.patch rename to Spigot-Server-Patches/0251-Refresh-player-inventory-when-cancelling-PlayerInter.patch index 0b4145ad4..2b5ae90cb 100644 --- a/Spigot-Server-Patches/0252-Refresh-player-inventory-when-cancelling-PlayerInter.patch +++ b/Spigot-Server-Patches/0251-Refresh-player-inventory-when-cancelling-PlayerInter.patch @@ -1,4 +1,4 @@ -From 36c87871e9642d083410a5b4a504686477d0f7cd Mon Sep 17 00:00:00 2001 +From 5d503244679ce20247006373ec4de24358e9fab4 Mon Sep 17 00:00:00 2001 From: Minecrell Date: Fri, 13 Jul 2018 14:54:43 +0200 Subject: [PATCH] Refresh player inventory when cancelling @@ -16,7 +16,7 @@ Refresh the player inventory when PlayerInteractEntityEvent is cancelled to avoid this problem. diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 221eb5fdcd..87fc6b6f30 100644 +index f436e0259..6d61a1e79 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -1963,6 +1963,7 @@ public class PlayerConnection implements PacketListenerPlayIn { diff --git a/Spigot-Server-Patches/0253-Don-t-change-the-Entity-Random-seed-for-squids.patch b/Spigot-Server-Patches/0252-Don-t-change-the-Entity-Random-seed-for-squids.patch similarity index 88% rename from Spigot-Server-Patches/0253-Don-t-change-the-Entity-Random-seed-for-squids.patch rename to Spigot-Server-Patches/0252-Don-t-change-the-Entity-Random-seed-for-squids.patch index 970c85d3f..aa4da9fd5 100644 --- a/Spigot-Server-Patches/0253-Don-t-change-the-Entity-Random-seed-for-squids.patch +++ b/Spigot-Server-Patches/0252-Don-t-change-the-Entity-Random-seed-for-squids.patch @@ -1,11 +1,11 @@ -From b2fabd7288c3c11b9562ecd5b60dd2bcd42b8f52 Mon Sep 17 00:00:00 2001 +From 35068abb2ee387a5b2084fb360aea4299a461c0e Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 19 Jul 2018 01:05:00 -0400 Subject: [PATCH] Don't change the Entity Random seed for squids diff --git a/src/main/java/net/minecraft/server/EntitySquid.java b/src/main/java/net/minecraft/server/EntitySquid.java -index d5dff4b88c..77c0ed42f4 100644 +index d5dff4b88..77c0ed42f 100644 --- a/src/main/java/net/minecraft/server/EntitySquid.java +++ b/src/main/java/net/minecraft/server/EntitySquid.java @@ -19,7 +19,7 @@ public class EntitySquid extends EntityWaterAnimal { diff --git a/Spigot-Server-Patches/0254-Re-add-vanilla-entity-warnings-for-duplicates.patch b/Spigot-Server-Patches/0253-Re-add-vanilla-entity-warnings-for-duplicates.patch similarity index 87% rename from Spigot-Server-Patches/0254-Re-add-vanilla-entity-warnings-for-duplicates.patch rename to Spigot-Server-Patches/0253-Re-add-vanilla-entity-warnings-for-duplicates.patch index 92f4b7060..ffc304095 100644 --- a/Spigot-Server-Patches/0254-Re-add-vanilla-entity-warnings-for-duplicates.patch +++ b/Spigot-Server-Patches/0253-Re-add-vanilla-entity-warnings-for-duplicates.patch @@ -1,4 +1,4 @@ -From fd13ef62c84afb65c43b4137b0208f5ee5601bfd Mon Sep 17 00:00:00 2001 +From 00e013d504b64b9a0df93973e81e71e15df41e73 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 19 Jul 2018 01:08:05 -0400 Subject: [PATCH] Re-add vanilla entity warnings for duplicates @@ -8,10 +8,10 @@ These are a critical sign that somethin went wrong, and you've lost some data... We should kind of know about these things you know. diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index c5da81f770..1ac79158c1 100644 +index 340460a33..d384d3526 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -973,7 +973,8 @@ public class WorldServer extends World { +@@ -966,7 +966,8 @@ public class WorldServer extends World { if (entity1 == null) { return false; } else { diff --git a/Spigot-Server-Patches/0255-Avoid-item-merge-if-stack-size-above-max-stack-size.patch b/Spigot-Server-Patches/0254-Avoid-item-merge-if-stack-size-above-max-stack-size.patch similarity index 84% rename from Spigot-Server-Patches/0255-Avoid-item-merge-if-stack-size-above-max-stack-size.patch rename to Spigot-Server-Patches/0254-Avoid-item-merge-if-stack-size-above-max-stack-size.patch index 03406cf57..a07b744ea 100644 --- a/Spigot-Server-Patches/0255-Avoid-item-merge-if-stack-size-above-max-stack-size.patch +++ b/Spigot-Server-Patches/0254-Avoid-item-merge-if-stack-size-above-max-stack-size.patch @@ -1,14 +1,14 @@ -From 9edeb09d0b0c03338fa0740036d36dd11bbf0ed8 Mon Sep 17 00:00:00 2001 +From e60fd4f27a55cae981e417d4ccbde0f508450b1b Mon Sep 17 00:00:00 2001 From: Hugo Manrique Date: Mon, 16 Jul 2018 12:42:20 +0200 Subject: [PATCH] Avoid item merge if stack size above max stack size diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java -index c582c67119..c5fefa060b 100644 +index bda5ea463..ddd1f6307 100644 --- a/src/main/java/net/minecraft/server/EntityItem.java +++ b/src/main/java/net/minecraft/server/EntityItem.java -@@ -166,6 +166,10 @@ public class EntityItem extends Entity { +@@ -168,6 +168,10 @@ public class EntityItem extends Entity { } private void mergeNearby() { diff --git a/Spigot-Server-Patches/0256-Use-asynchronous-Log4j-2-loggers.patch b/Spigot-Server-Patches/0255-Use-asynchronous-Log4j-2-loggers.patch similarity index 88% rename from Spigot-Server-Patches/0256-Use-asynchronous-Log4j-2-loggers.patch rename to Spigot-Server-Patches/0255-Use-asynchronous-Log4j-2-loggers.patch index a4b457f2c..44b43024d 100644 --- a/Spigot-Server-Patches/0256-Use-asynchronous-Log4j-2-loggers.patch +++ b/Spigot-Server-Patches/0255-Use-asynchronous-Log4j-2-loggers.patch @@ -1,11 +1,11 @@ -From b70b2818d5e0e75e666ff838988e110d3aea4fb7 Mon Sep 17 00:00:00 2001 +From 5433e0ac79c4fcc7dbdb754079d60da2aa88d0b6 Mon Sep 17 00:00:00 2001 From: Minecrell Date: Tue, 17 Jul 2018 16:42:17 +0200 Subject: [PATCH] Use asynchronous Log4j 2 loggers diff --git a/pom.xml b/pom.xml -index 16799b4cd4..8c18a0c093 100644 +index 3d2065fd7..e01d95f17 100644 --- a/pom.xml +++ b/pom.xml @@ -74,6 +74,13 @@ @@ -24,7 +24,7 @@ index 16799b4cd4..8c18a0c093 100644 asm diff --git a/src/main/resources/log4j2.component.properties b/src/main/resources/log4j2.component.properties new file mode 100644 -index 0000000000..ee7c90784c +index 000000000..ee7c90784 --- /dev/null +++ b/src/main/resources/log4j2.component.properties @@ -0,0 +1 @@ diff --git a/Spigot-Server-Patches/0257-add-more-information-to-Entity.toString.patch b/Spigot-Server-Patches/0256-add-more-information-to-Entity.toString.patch similarity index 93% rename from Spigot-Server-Patches/0257-add-more-information-to-Entity.toString.patch rename to Spigot-Server-Patches/0256-add-more-information-to-Entity.toString.patch index 70d8aa8c9..c162d03fd 100644 --- a/Spigot-Server-Patches/0257-add-more-information-to-Entity.toString.patch +++ b/Spigot-Server-Patches/0256-add-more-information-to-Entity.toString.patch @@ -1,4 +1,4 @@ -From 04ade8056728004873333103857f46687dc9897d Mon Sep 17 00:00:00 2001 +From bd19e69fc49193f372723ce173ffb18846f950c2 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 19 Jul 2018 01:13:28 -0400 Subject: [PATCH] add more information to Entity.toString() @@ -6,7 +6,7 @@ Subject: [PATCH] add more information to Entity.toString() UUID, ticks lived, valid, dead diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 9bec96f4a..f99624d48 100644 +index a428ca262..26003866d 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -2437,7 +2437,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke diff --git a/Spigot-Server-Patches/0258-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch b/Spigot-Server-Patches/0257-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch similarity index 90% rename from Spigot-Server-Patches/0258-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch rename to Spigot-Server-Patches/0257-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch index ab6b26c6a..7787d45d2 100644 --- a/Spigot-Server-Patches/0258-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch +++ b/Spigot-Server-Patches/0257-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch @@ -1,4 +1,4 @@ -From 1692805bdb3cb7f5ede09255253d2fd08dc16a9e Mon Sep 17 00:00:00 2001 +From f727a659738d4a109e1571b04b2eaf3c30e8a970 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 21 Jul 2018 08:25:40 -0400 Subject: [PATCH] Add Debug Entities option to debug dupe uuid issues @@ -6,7 +6,7 @@ Subject: [PATCH] Add Debug Entities option to debug dupe uuid issues Add -Ddebug.entities=true to your JVM flags to gain more information diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 0088d6088a..4a42b7c594 100644 +index 26003866d..54d025bf7 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -75,6 +75,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -19,10 +19,10 @@ index 0088d6088a..4a42b7c594 100644 if (bukkitEntity == null) { bukkitEntity = CraftEntity.getEntity(world.getServer(), this); diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index eee03e39b1..96f814af3c 100644 +index ae04198c9..c7bc4cc36 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java -@@ -837,6 +837,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { +@@ -874,6 +874,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { } else { PlayerChunkMap.EntityTracker playerchunkmap_entitytracker = new PlayerChunkMap.EntityTracker(entity, i, j, entitytypes.isDeltaTracking()); @@ -30,7 +30,7 @@ index eee03e39b1..96f814af3c 100644 this.trackedEntities.put(entity.getId(), playerchunkmap_entitytracker); playerchunkmap_entitytracker.track(this.world.getPlayers()); if (entity instanceof EntityPlayer) { -@@ -879,7 +880,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { +@@ -916,7 +917,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { if (playerchunkmap_entitytracker1 != null) { playerchunkmap_entitytracker1.a(); } @@ -40,7 +40,7 @@ index eee03e39b1..96f814af3c 100644 protected void g() { diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 5349a3a8bc..a7e24ed725 100644 +index 0e9530ea5..00b7d90d7 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -68,6 +68,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -52,11 +52,11 @@ index 5349a3a8bc..a7e24ed725 100644 public boolean captureBlockStates = false; public boolean captureTreeGeneration = false; diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index e787faed08..08617318a9 100644 +index d384d3526..6f298d737 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -77,6 +77,9 @@ public class WorldServer extends World { - public final DimensionManager dimension; +@@ -69,6 +69,9 @@ public class WorldServer extends World { + // CraftBukkit start private int tickPosition; boolean hasPhysicsEvent = true; // Paper + private static Throwable getAddToWorldStackTrace(Entity entity) { @@ -65,7 +65,7 @@ index e787faed08..08617318a9 100644 // Add env and gen to constructor public WorldServer(MinecraftServer minecraftserver, Executor executor, WorldNBTStorage worldnbtstorage, WorldData worlddata, DimensionManager dimensionmanager, GameProfilerFiller gameprofilerfiller, WorldLoadListener worldloadlistener, org.bukkit.World.Environment env, org.bukkit.generator.ChunkGenerator gen) { -@@ -937,6 +940,12 @@ public class WorldServer extends World { +@@ -930,6 +933,12 @@ public class WorldServer extends World { org.spigotmc.AsyncCatcher.catchOp( "entity add"); // Spigot if (entity.valid) { MinecraftServer.LOGGER.error("Attempted Double World add on " + entity, new Throwable()); return true; } // Paper if (entity.dead) { @@ -78,7 +78,7 @@ index e787faed08..08617318a9 100644 // WorldServer.LOGGER.warn("Tried to add entity {} but it was marked as removed already", EntityTypes.getName(entity.getEntityType())); // CraftBukkit return false; } else if (this.isUUIDTaken(entity)) { -@@ -1100,7 +1109,24 @@ public class WorldServer extends World { +@@ -1093,7 +1102,24 @@ public class WorldServer extends World { } } diff --git a/Spigot-Server-Patches/0259-EnderDragon-Events.patch b/Spigot-Server-Patches/0258-EnderDragon-Events.patch similarity index 95% rename from Spigot-Server-Patches/0259-EnderDragon-Events.patch rename to Spigot-Server-Patches/0258-EnderDragon-Events.patch index 96ff553bf..6a3bed5b4 100644 --- a/Spigot-Server-Patches/0259-EnderDragon-Events.patch +++ b/Spigot-Server-Patches/0258-EnderDragon-Events.patch @@ -1,11 +1,11 @@ -From 108337c59183688378c00abfe58000a7a696c8da Mon Sep 17 00:00:00 2001 +From 382fde1bd1af7b8ce095534b5ac7d585a2b3f1fe Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 21 Jul 2018 01:51:27 -0500 Subject: [PATCH] EnderDragon Events diff --git a/src/main/java/net/minecraft/server/DragonControllerLandedFlame.java b/src/main/java/net/minecraft/server/DragonControllerLandedFlame.java -index 4ab310cd6b..90f6d58ddd 100644 +index 4ab310cd6..90f6d58dd 100644 --- a/src/main/java/net/minecraft/server/DragonControllerLandedFlame.java +++ b/src/main/java/net/minecraft/server/DragonControllerLandedFlame.java @@ -65,7 +65,9 @@ public class DragonControllerLandedFlame extends AbstractDragonControllerLanded @@ -28,7 +28,7 @@ index 4ab310cd6b..90f6d58ddd 100644 public void e() { if (this.d != null) { diff --git a/src/main/java/net/minecraft/server/DragonControllerStrafe.java b/src/main/java/net/minecraft/server/DragonControllerStrafe.java -index b466605762..bf15964e78 100644 +index b46660576..bf15964e7 100644 --- a/src/main/java/net/minecraft/server/DragonControllerStrafe.java +++ b/src/main/java/net/minecraft/server/DragonControllerStrafe.java @@ -68,7 +68,9 @@ public class DragonControllerStrafe extends AbstractDragonController { @@ -42,7 +42,7 @@ index b466605762..bf15964e78 100644 if (this.d != null) { while (!this.d.b()) { diff --git a/src/main/java/net/minecraft/server/EntityDragonFireball.java b/src/main/java/net/minecraft/server/EntityDragonFireball.java -index 239be99c51..2195b83ce2 100644 +index 239be99c5..2195b83ce 100644 --- a/src/main/java/net/minecraft/server/EntityDragonFireball.java +++ b/src/main/java/net/minecraft/server/EntityDragonFireball.java @@ -40,8 +40,10 @@ public class EntityDragonFireball extends EntityFireball { diff --git a/Spigot-Server-Patches/0260-PlayerElytraBoostEvent.patch b/Spigot-Server-Patches/0259-PlayerElytraBoostEvent.patch similarity index 94% rename from Spigot-Server-Patches/0260-PlayerElytraBoostEvent.patch rename to Spigot-Server-Patches/0259-PlayerElytraBoostEvent.patch index 02a048ba3..662c1908b 100644 --- a/Spigot-Server-Patches/0260-PlayerElytraBoostEvent.patch +++ b/Spigot-Server-Patches/0259-PlayerElytraBoostEvent.patch @@ -1,11 +1,11 @@ -From 80764b09615fb38e7b1977ba237bb6f18753ea44 Mon Sep 17 00:00:00 2001 +From 6d6fa4bfda778a486c9e10d9395d3e326ec19978 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 21 Jul 2018 01:59:59 -0500 Subject: [PATCH] PlayerElytraBoostEvent diff --git a/src/main/java/net/minecraft/server/ItemFireworks.java b/src/main/java/net/minecraft/server/ItemFireworks.java -index aea46ffae5..9e86ef4ce2 100644 +index aea46ffae..9e86ef4ce 100644 --- a/src/main/java/net/minecraft/server/ItemFireworks.java +++ b/src/main/java/net/minecraft/server/ItemFireworks.java @@ -35,11 +35,16 @@ public class ItemFireworks extends Item { diff --git a/Spigot-Server-Patches/0261-PlayerLaunchProjectileEvent.patch b/Spigot-Server-Patches/0260-PlayerLaunchProjectileEvent.patch similarity index 98% rename from Spigot-Server-Patches/0261-PlayerLaunchProjectileEvent.patch rename to Spigot-Server-Patches/0260-PlayerLaunchProjectileEvent.patch index cd62c5e2c..d86b2cbdc 100644 --- a/Spigot-Server-Patches/0261-PlayerLaunchProjectileEvent.patch +++ b/Spigot-Server-Patches/0260-PlayerLaunchProjectileEvent.patch @@ -1,11 +1,11 @@ -From 04b3d9dec3c5eb30471f59cf4d359d37f091b6b4 Mon Sep 17 00:00:00 2001 +From 8b926ae73aeaf598f61257a8bd177cbabc3d3f90 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 21 Jul 2018 03:11:03 -0500 Subject: [PATCH] PlayerLaunchProjectileEvent diff --git a/src/main/java/net/minecraft/server/ItemEgg.java b/src/main/java/net/minecraft/server/ItemEgg.java -index 2bdb65bf87..f526af45fb 100644 +index 2bdb65bf8..f526af45f 100644 --- a/src/main/java/net/minecraft/server/ItemEgg.java +++ b/src/main/java/net/minecraft/server/ItemEgg.java @@ -10,17 +10,35 @@ public class ItemEgg extends Item { @@ -46,7 +46,7 @@ index 2bdb65bf87..f526af45fb 100644 entityhuman.b(StatisticList.ITEM_USED.b(this)); diff --git a/src/main/java/net/minecraft/server/ItemEnderPearl.java b/src/main/java/net/minecraft/server/ItemEnderPearl.java -index eb5f62dec2..e8e52d726e 100644 +index eb5f62dec..e8e52d726 100644 --- a/src/main/java/net/minecraft/server/ItemEnderPearl.java +++ b/src/main/java/net/minecraft/server/ItemEnderPearl.java @@ -16,7 +16,19 @@ public class ItemEnderPearl extends Item { @@ -94,7 +94,7 @@ index eb5f62dec2..e8e52d726e 100644 entityhuman.b(StatisticList.ITEM_USED.b(this)); return new InteractionResultWrapper<>(EnumInteractionResult.SUCCESS, itemstack); diff --git a/src/main/java/net/minecraft/server/ItemExpBottle.java b/src/main/java/net/minecraft/server/ItemExpBottle.java -index 35f842ede5..eb626a6f05 100644 +index 35f842ede..eb626a6f0 100644 --- a/src/main/java/net/minecraft/server/ItemExpBottle.java +++ b/src/main/java/net/minecraft/server/ItemExpBottle.java @@ -9,18 +9,35 @@ public class ItemExpBottle extends Item { @@ -136,7 +136,7 @@ index 35f842ede5..eb626a6f05 100644 entityhuman.b(StatisticList.ITEM_USED.b(this)); diff --git a/src/main/java/net/minecraft/server/ItemLingeringPotion.java b/src/main/java/net/minecraft/server/ItemLingeringPotion.java -index e3683bdaef..f3ad1cd6d3 100644 +index e3683bdae..f3ad1cd6d 100644 --- a/src/main/java/net/minecraft/server/ItemLingeringPotion.java +++ b/src/main/java/net/minecraft/server/ItemLingeringPotion.java @@ -9,15 +9,40 @@ public class ItemLingeringPotion extends ItemPotion { @@ -182,7 +182,7 @@ index e3683bdaef..f3ad1cd6d3 100644 entityhuman.b(StatisticList.ITEM_USED.b(this)); diff --git a/src/main/java/net/minecraft/server/ItemSnowball.java b/src/main/java/net/minecraft/server/ItemSnowball.java -index 624989dd7b..c119785b78 100644 +index 624989dd7..c119785b7 100644 --- a/src/main/java/net/minecraft/server/ItemSnowball.java +++ b/src/main/java/net/minecraft/server/ItemSnowball.java @@ -23,15 +23,23 @@ public class ItemSnowball extends Item { @@ -215,7 +215,7 @@ index 624989dd7b..c119785b78 100644 // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/ItemSplashPotion.java b/src/main/java/net/minecraft/server/ItemSplashPotion.java -index e267e43fe5..fa6d627db4 100644 +index e267e43fe..fa6d627db 100644 --- a/src/main/java/net/minecraft/server/ItemSplashPotion.java +++ b/src/main/java/net/minecraft/server/ItemSplashPotion.java @@ -9,15 +9,39 @@ public class ItemSplashPotion extends ItemPotion { diff --git a/Spigot-Server-Patches/0262-Speedup-BlockPos-by-fixing-inlining.patch b/Spigot-Server-Patches/0261-Speedup-BlockPos-by-fixing-inlining.patch similarity index 98% rename from Spigot-Server-Patches/0262-Speedup-BlockPos-by-fixing-inlining.patch rename to Spigot-Server-Patches/0261-Speedup-BlockPos-by-fixing-inlining.patch index 7879b0bed..2a08e2ba1 100644 --- a/Spigot-Server-Patches/0262-Speedup-BlockPos-by-fixing-inlining.patch +++ b/Spigot-Server-Patches/0261-Speedup-BlockPos-by-fixing-inlining.patch @@ -1,4 +1,4 @@ -From 51d077182e265920f39524ae740822964186c7b3 Mon Sep 17 00:00:00 2001 +From 5a73aca979f463c09266b54e433b9b3278e84410 Mon Sep 17 00:00:00 2001 From: Techcable Date: Wed, 30 Nov 2016 20:56:58 -0600 Subject: [PATCH] Speedup BlockPos by fixing inlining @@ -21,7 +21,7 @@ This is based upon conclusions drawn from inspecting the assenmbly generated byt They had 'callq' (invoke) instead of 'mov' (get from memory) instructions. diff --git a/src/main/java/net/minecraft/server/BaseBlockPosition.java b/src/main/java/net/minecraft/server/BaseBlockPosition.java -index 7cb46d7a9c..e96428bb2b 100644 +index 7cb46d7a9..e96428bb2 100644 --- a/src/main/java/net/minecraft/server/BaseBlockPosition.java +++ b/src/main/java/net/minecraft/server/BaseBlockPosition.java @@ -7,22 +7,22 @@ import javax.annotation.concurrent.Immutable; @@ -101,7 +101,7 @@ index 7cb46d7a9c..e96428bb2b 100644 return (int) (f + f1 + f2); } diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java -index 64700b97c0..a5e5a4ebae 100644 +index 64700b97c..a5e5a4eba 100644 --- a/src/main/java/net/minecraft/server/BlockPosition.java +++ b/src/main/java/net/minecraft/server/BlockPosition.java @@ -335,11 +335,12 @@ public class BlockPosition extends BaseBlockPosition implements MinecraftSeriali diff --git a/Spigot-Server-Patches/0263-Don-t-save-Proto-Chunks.patch b/Spigot-Server-Patches/0262-Don-t-save-Proto-Chunks.patch similarity index 69% rename from Spigot-Server-Patches/0263-Don-t-save-Proto-Chunks.patch rename to Spigot-Server-Patches/0262-Don-t-save-Proto-Chunks.patch index abe06c976..4f9dab479 100644 --- a/Spigot-Server-Patches/0263-Don-t-save-Proto-Chunks.patch +++ b/Spigot-Server-Patches/0262-Don-t-save-Proto-Chunks.patch @@ -1,4 +1,4 @@ -From ebdfbf4828b4b305b2aa5880d5239eb37a134dae Mon Sep 17 00:00:00 2001 +From ed67334df5a2a8de34f26d811784a3e0d5eadb91 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 22 Jul 2018 21:21:41 -0400 Subject: [PATCH] Don't save Proto Chunks @@ -8,17 +8,17 @@ the loadChunk method refuses to acknoledge they exists, and will restart a new chunk generation process to begin with, so saving them serves no benefit. diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index eee03e39b1..239bac9839 100644 +index c7bc4cc36..2244d65ee 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java -@@ -554,6 +554,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { +@@ -588,6 +588,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { } - public void saveChunk(IChunkAccess ichunkaccess, boolean save) { -+ if (ichunkaccess.getChunkStatus().getType() == ChunkStatus.Type.PROTOCHUNK) { return; } // Paper - don't save proto chunks + public boolean saveChunk(IChunkAccess ichunkaccess, boolean save) { ++ if (ichunkaccess.getChunkStatus().getType() == ChunkStatus.Type.PROTOCHUNK) { return false; } // Paper - don't save proto chunks // CraftBukkit end this.n.a(ichunkaccess.getPos()); - if (save) { // CraftBukkit + if (!save) { // CraftBukkit -- 2.21.0 diff --git a/Spigot-Server-Patches/0264-Optimize-RegistryID.c.patch b/Spigot-Server-Patches/0263-Optimize-RegistryID.c.patch similarity index 95% rename from Spigot-Server-Patches/0264-Optimize-RegistryID.c.patch rename to Spigot-Server-Patches/0263-Optimize-RegistryID.c.patch index d83da9c12..207511deb 100644 --- a/Spigot-Server-Patches/0264-Optimize-RegistryID.c.patch +++ b/Spigot-Server-Patches/0263-Optimize-RegistryID.c.patch @@ -1,4 +1,4 @@ -From 51cee059dd164af1fc657390517994fa7e885b8e Mon Sep 17 00:00:00 2001 +From f13f9afbbbefc4ebfa6874671d36e43c935e3204 Mon Sep 17 00:00:00 2001 From: Andrew Steinborn Date: Mon, 23 Jul 2018 13:08:19 -0400 Subject: [PATCH] Optimize RegistryID.c() @@ -6,7 +6,7 @@ Subject: [PATCH] Optimize RegistryID.c() This is a frequent hotspot for world loading/saving. diff --git a/src/main/java/net/minecraft/server/RegistryID.java b/src/main/java/net/minecraft/server/RegistryID.java -index e15d286710..e8a48b9a4c 100644 +index e15d28671..e8a48b9a4 100644 --- a/src/main/java/net/minecraft/server/RegistryID.java +++ b/src/main/java/net/minecraft/server/RegistryID.java @@ -14,12 +14,14 @@ public class RegistryID implements Registry { diff --git a/Spigot-Server-Patches/0265-Option-to-prevent-armor-stands-from-doing-entity-loo.patch b/Spigot-Server-Patches/0264-Option-to-prevent-armor-stands-from-doing-entity-loo.patch similarity index 90% rename from Spigot-Server-Patches/0265-Option-to-prevent-armor-stands-from-doing-entity-loo.patch rename to Spigot-Server-Patches/0264-Option-to-prevent-armor-stands-from-doing-entity-loo.patch index c87badc31..0269c258a 100644 --- a/Spigot-Server-Patches/0265-Option-to-prevent-armor-stands-from-doing-entity-loo.patch +++ b/Spigot-Server-Patches/0264-Option-to-prevent-armor-stands-from-doing-entity-loo.patch @@ -1,4 +1,4 @@ -From 5594979e93df19a7c1fad783524dd6c966cf351f Mon Sep 17 00:00:00 2001 +From f3277440873f3265faba99f17287e1be66c0d469 Mon Sep 17 00:00:00 2001 From: Hugo Manrique Date: Mon, 23 Jul 2018 12:57:39 +0200 Subject: [PATCH] Option to prevent armor stands from doing entity lookups @@ -21,11 +21,11 @@ index 83e54cb90..f06bb3ae1 100644 private void maxEntityCollision() { maxCollisionsPerEntity = getInt( "max-entity-collisions", this.spigotConfig.getInt("max-entity-collisions", 8) ); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 8c59ec41c..33f0d1cd8 100644 +index 00b7d90d7..31ffc57c9 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -869,6 +869,14 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose - // Spigot end +@@ -871,6 +871,14 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose + } } + // Paper start - Prevent armor stands from doing entity lookups diff --git a/Spigot-Server-Patches/0266-Vanished-players-don-t-have-rights.patch b/Spigot-Server-Patches/0265-Vanished-players-don-t-have-rights.patch similarity index 94% rename from Spigot-Server-Patches/0266-Vanished-players-don-t-have-rights.patch rename to Spigot-Server-Patches/0265-Vanished-players-don-t-have-rights.patch index a10fe603b..cf8a47e58 100644 --- a/Spigot-Server-Patches/0266-Vanished-players-don-t-have-rights.patch +++ b/Spigot-Server-Patches/0265-Vanished-players-don-t-have-rights.patch @@ -1,11 +1,11 @@ -From cf655db17ece1bd42693e41fc787aca3dd602f52 Mon Sep 17 00:00:00 2001 +From 6f0adf29a75988289f235bc55a15c65749d26fcd 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 56adea9cf4..3397604a8a 100644 +index 54d025bf7..e3b1ebe62 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 56adea9cf4..3397604a8a 100644 protected int j; private Entity vehicle; diff --git a/src/main/java/net/minecraft/server/IEntityAccess.java b/src/main/java/net/minecraft/server/IEntityAccess.java -index ee22bb0387..e5a013ffd2 100644 +index ee22bb038..e5a013ffd 100644 --- a/src/main/java/net/minecraft/server/IEntityAccess.java +++ b/src/main/java/net/minecraft/server/IEntityAccess.java @@ -22,9 +22,18 @@ public interface IEntityAccess { @@ -41,10 +41,10 @@ index ee22bb0387..e5a013ffd2 100644 return VoxelShapes.c(voxelshape, VoxelShapes.a(entity1.getBoundingBox()), OperatorBoolean.AND); }); diff --git a/src/main/java/net/minecraft/server/IWorldReader.java b/src/main/java/net/minecraft/server/IWorldReader.java -index 0930552b1f..c0aa21703f 100644 +index 452b2b2d2..7019d4ae9 100644 --- a/src/main/java/net/minecraft/server/IWorldReader.java +++ b/src/main/java/net/minecraft/server/IWorldReader.java -@@ -95,7 +95,12 @@ public interface IWorldReader extends IIBlockAccess { +@@ -99,7 +99,12 @@ public interface IWorldReader extends IIBlockAccess { return ChunkStatus.EMPTY; } @@ -58,7 +58,7 @@ index 0930552b1f..c0aa21703f 100644 return voxelshape.isEmpty() || this.a((Entity) null, voxelshape.a((double) blockposition.getX(), (double) blockposition.getY(), (double) blockposition.getZ())); diff --git a/src/main/java/net/minecraft/server/ItemBlock.java b/src/main/java/net/minecraft/server/ItemBlock.java -index 59b1e6ce2e..b90cc6652b 100644 +index 59b1e6ce2..b90cc6652 100644 --- a/src/main/java/net/minecraft/server/ItemBlock.java +++ b/src/main/java/net/minecraft/server/ItemBlock.java @@ -126,7 +126,8 @@ public class ItemBlock extends Item { @@ -72,7 +72,7 @@ index 59b1e6ce2e..b90cc6652b 100644 BlockCanBuildEvent event = new BlockCanBuildEvent(CraftBlock.at(blockactioncontext.getWorld(), blockactioncontext.getClickPosition()), player, CraftBlockData.fromData(iblockdata), defaultReturn); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index b570e2778b..b0f827594b 100644 +index ceffcec72..b39886c5d 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1120,6 +1120,14 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/0267-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch b/Spigot-Server-Patches/0266-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch similarity index 75% rename from Spigot-Server-Patches/0267-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch rename to Spigot-Server-Patches/0266-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch index 0040bf080..3bdff12f3 100644 --- a/Spigot-Server-Patches/0267-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch +++ b/Spigot-Server-Patches/0266-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch @@ -1,4 +1,4 @@ -From c4b1af2626f609e6bae4e19896b2df0ffaa63954 Mon Sep 17 00:00:00 2001 +From 99005843982ad2e93d78f12cfedc8f10344741a1 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 23 Jul 2018 22:18:31 -0400 Subject: [PATCH] Mark chunk dirty anytime entities change to guarantee it @@ -6,10 +6,10 @@ Subject: [PATCH] Mark chunk dirty anytime entities change to guarantee it diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 5f0329d0b1..c23891f73a 100644 +index 7382a47d8..8a8c8f4e8 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -410,6 +410,7 @@ public class Chunk implements IChunkAccess { +@@ -411,6 +411,7 @@ public class Chunk implements IChunkAccess { entity.chunkY = k; entity.chunkZ = this.loc.z; this.entitySlices[k].add(entity); @@ -17,7 +17,7 @@ index 5f0329d0b1..c23891f73a 100644 } @Override -@@ -436,6 +437,7 @@ public class Chunk implements IChunkAccess { +@@ -437,6 +438,7 @@ public class Chunk implements IChunkAccess { return; } entityCounts.decrement(entity.getMinecraftKeyString()); diff --git a/Spigot-Server-Patches/0268-Add-some-Debug-to-Chunk-Entity-slices.patch b/Spigot-Server-Patches/0267-Add-some-Debug-to-Chunk-Entity-slices.patch similarity index 89% rename from Spigot-Server-Patches/0268-Add-some-Debug-to-Chunk-Entity-slices.patch rename to Spigot-Server-Patches/0267-Add-some-Debug-to-Chunk-Entity-slices.patch index 4b3179a3b..40e17b3fe 100644 --- a/Spigot-Server-Patches/0268-Add-some-Debug-to-Chunk-Entity-slices.patch +++ b/Spigot-Server-Patches/0267-Add-some-Debug-to-Chunk-Entity-slices.patch @@ -1,4 +1,4 @@ -From 88075086ab0ce189abe18270d7b670f8d57e6074 Mon Sep 17 00:00:00 2001 +From bcc772b0a83f8c5a792ff5439b4220238a7665e1 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 23 Jul 2018 22:44:23 -0400 Subject: [PATCH] Add some Debug to Chunk Entity slices @@ -9,10 +9,10 @@ This should hopefully avoid duplicate entities ever being created if the entity was to end up in 2 different chunk slices diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index c23891f73a..d787a4ab30 100644 +index 8a8c8f4e8..fd91cf839 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -402,6 +402,25 @@ public class Chunk implements IChunkAccess { +@@ -403,6 +403,25 @@ public class Chunk implements IChunkAccess { if (k >= this.entitySlices.length) { k = this.entitySlices.length - 1; } @@ -38,7 +38,7 @@ index c23891f73a..d787a4ab30 100644 if (!entity.inChunk || entity.getCurrentChunk() != this) entityCounts.increment(entity.getMinecraftKeyString()); // Paper entity.inChunk = true; -@@ -410,6 +429,7 @@ public class Chunk implements IChunkAccess { +@@ -411,6 +430,7 @@ public class Chunk implements IChunkAccess { entity.chunkY = k; entity.chunkZ = this.loc.z; this.entitySlices[k].add(entity); @@ -46,7 +46,7 @@ index c23891f73a..d787a4ab30 100644 this.markDirty(); // Paper } -@@ -433,6 +453,9 @@ public class Chunk implements IChunkAccess { +@@ -434,6 +454,9 @@ public class Chunk implements IChunkAccess { } // Paper start if (entity.currentChunk != null && entity.currentChunk.get() == this) entity.setCurrentChunk(null); @@ -57,7 +57,7 @@ index c23891f73a..d787a4ab30 100644 return; } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 3397604a8a..cbd7793c53 100644 +index e3b1ebe62..2484eb0ff 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -67,6 +67,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke diff --git a/Spigot-Server-Patches/0269-EntityTransformedEvent.patch b/Spigot-Server-Patches/0268-EntityTransformedEvent.patch similarity index 93% rename from Spigot-Server-Patches/0269-EntityTransformedEvent.patch rename to Spigot-Server-Patches/0268-EntityTransformedEvent.patch index 89d3b96b8..1cd3770eb 100644 --- a/Spigot-Server-Patches/0269-EntityTransformedEvent.patch +++ b/Spigot-Server-Patches/0268-EntityTransformedEvent.patch @@ -1,11 +1,11 @@ -From 198e144ce8e5bc7857f8d757383e556ec1b5e590 Mon Sep 17 00:00:00 2001 +From 9445ddab593fabafef6dda16ad36326e013cf29d Mon Sep 17 00:00:00 2001 From: Anthony MacAllister Date: Thu, 26 Jul 2018 15:30:03 -0400 Subject: [PATCH] EntityTransformedEvent diff --git a/src/main/java/net/minecraft/server/EntityMushroomCow.java b/src/main/java/net/minecraft/server/EntityMushroomCow.java -index 2b0ac15a8d..76712996fd 100644 +index bb3493c14..de787d861 100644 --- a/src/main/java/net/minecraft/server/EntityMushroomCow.java +++ b/src/main/java/net/minecraft/server/EntityMushroomCow.java @@ -101,6 +101,7 @@ public class EntityMushroomCow extends EntityCow { @@ -17,10 +17,10 @@ index 2b0ac15a8d..76712996fd 100644 this.die(); // CraftBukkit - from above diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java -index bc04086d79..d489a5a8c7 100644 +index 53e2266a9..f2b46d4e3 100644 --- a/src/main/java/net/minecraft/server/EntityVillager.java +++ b/src/main/java/net/minecraft/server/EntityVillager.java -@@ -591,6 +591,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation +@@ -596,6 +596,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation if (CraftEventFactory.callEntityTransformEvent(this, entitywitch, EntityTransformEvent.TransformReason.LIGHTNING).isCancelled()) { return; } @@ -29,7 +29,7 @@ index bc04086d79..d489a5a8c7 100644 // CraftBukkit end this.die(); diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java -index c3ce3daca6..2f0fab469b 100644 +index 4cb305ff2..171c1ae4a 100644 --- a/src/main/java/net/minecraft/server/EntityZombie.java +++ b/src/main/java/net/minecraft/server/EntityZombie.java @@ -247,6 +247,7 @@ public class EntityZombie extends EntityMonster { @@ -49,10 +49,10 @@ index c3ce3daca6..2f0fab469b 100644 this.world.addEntity(entityzombievillager, CreatureSpawnEvent.SpawnReason.INFECTION); // CraftBukkit - add SpawnReason // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/EntityZombieVillager.java b/src/main/java/net/minecraft/server/EntityZombieVillager.java -index 042afd2691..d7205a57e6 100644 +index b5d079233..a857d70e9 100644 --- a/src/main/java/net/minecraft/server/EntityZombieVillager.java +++ b/src/main/java/net/minecraft/server/EntityZombieVillager.java -@@ -159,6 +159,7 @@ public class EntityZombieVillager extends EntityZombie implements VillagerDataHo +@@ -157,6 +157,7 @@ public class EntityZombieVillager extends EntityZombie implements VillagerDataHo if (CraftEventFactory.callEntityTransformEvent(this, entityvillager, EntityTransformEvent.TransformReason.CURED).isCancelled()) { return; } diff --git a/Spigot-Server-Patches/0270-SkeletonHorse-Additions.patch b/Spigot-Server-Patches/0269-SkeletonHorse-Additions.patch similarity index 94% rename from Spigot-Server-Patches/0270-SkeletonHorse-Additions.patch rename to Spigot-Server-Patches/0269-SkeletonHorse-Additions.patch index 8538b4e1a..7b6c30d09 100644 --- a/Spigot-Server-Patches/0270-SkeletonHorse-Additions.patch +++ b/Spigot-Server-Patches/0269-SkeletonHorse-Additions.patch @@ -1,11 +1,11 @@ -From 35cd744003a55450bba24f19436ad7bef00d7ff0 Mon Sep 17 00:00:00 2001 +From 9fadebcc1ea54b2f9fcbb43035eadd4c4a6c0ed0 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 27 Jul 2018 22:36:31 -0500 Subject: [PATCH] SkeletonHorse Additions diff --git a/src/main/java/net/minecraft/server/EntityHorseSkeleton.java b/src/main/java/net/minecraft/server/EntityHorseSkeleton.java -index 9ac34dfa8c..b967264562 100644 +index 9ac34dfa8..b96726456 100644 --- a/src/main/java/net/minecraft/server/EntityHorseSkeleton.java +++ b/src/main/java/net/minecraft/server/EntityHorseSkeleton.java @@ -6,7 +6,7 @@ public class EntityHorseSkeleton extends EntityHorseAbstract { @@ -31,7 +31,7 @@ index 9ac34dfa8c..b967264562 100644 if (flag != this.bK) { this.bK = flag; diff --git a/src/main/java/net/minecraft/server/PathfinderGoalHorseTrap.java b/src/main/java/net/minecraft/server/PathfinderGoalHorseTrap.java -index 7b0a6f82fb..f093744136 100644 +index 7b0a6f82f..f09374413 100644 --- a/src/main/java/net/minecraft/server/PathfinderGoalHorseTrap.java +++ b/src/main/java/net/minecraft/server/PathfinderGoalHorseTrap.java @@ -15,6 +15,7 @@ public class PathfinderGoalHorseTrap extends PathfinderGoal { @@ -43,7 +43,7 @@ index 7b0a6f82fb..f093744136 100644 this.a.r(false); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeletonHorse.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeletonHorse.java -index e822c2200d..2a7d1d4ec2 100644 +index e822c2200..2a7d1d4ec 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeletonHorse.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeletonHorse.java @@ -26,4 +26,26 @@ public class CraftSkeletonHorse extends CraftAbstractHorse implements SkeletonHo diff --git a/Spigot-Server-Patches/0271-Prevent-Saving-Bad-entities-to-chunks.patch b/Spigot-Server-Patches/0270-Prevent-Saving-Bad-entities-to-chunks.patch similarity index 80% rename from Spigot-Server-Patches/0271-Prevent-Saving-Bad-entities-to-chunks.patch rename to Spigot-Server-Patches/0270-Prevent-Saving-Bad-entities-to-chunks.patch index 0aecf9c1d..07d6d683e 100644 --- a/Spigot-Server-Patches/0271-Prevent-Saving-Bad-entities-to-chunks.patch +++ b/Spigot-Server-Patches/0270-Prevent-Saving-Bad-entities-to-chunks.patch @@ -1,4 +1,4 @@ -From ef076ea837adf53c30c9e890133c866ac5c03288 Mon Sep 17 00:00:00 2001 +From fc1b1b28585b3818324213da7edaff5c56a43479 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 26 Jul 2018 00:11:12 -0400 Subject: [PATCH] Prevent Saving Bad entities to chunks @@ -18,21 +18,21 @@ an invalid entity. This should reduce log occurrences of dupe uuid messages. diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index 0fed039f34..2e9686b432 100644 +index 2b8148fbd..9038d17fd 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -@@ -304,6 +304,7 @@ public class ChunkRegionLoader { +@@ -332,6 +332,7 @@ public class ChunkRegionLoader { + NBTTagList nbttaglist2 = new NBTTagList(); NBTTagCompound nbttagcompound4; - Iterator iterator1; + java.util.List toUpdate = new java.util.ArrayList<>(); // Paper if (ichunkaccess.getChunkStatus().getType() == ChunkStatus.Type.LEVELCHUNK) { Chunk chunk = (Chunk) ichunkaccess; -@@ -314,6 +315,16 @@ public class ChunkRegionLoader { +@@ -343,6 +344,17 @@ public class ChunkRegionLoader { + while (iterator1.hasNext()) { + Entity entity = (Entity) iterator1.next(); - while (iterator2.hasNext()) { - Entity entity = (Entity) iterator2.next(); + // Paper start + if ((int)Math.floor(entity.locX) >> 4 != chunk.getPos().x || (int)Math.floor(entity.locZ) >> 4 != chunk.getPos().z) { + LogManager.getLogger().warn(entity + " is not in this chunk, skipping save. This a bug fix to a vanilla bug. Do not report this to PaperMC please."); @@ -43,17 +43,18 @@ index 0fed039f34..2e9686b432 100644 + continue; + } + // Paper end - ++ nbttagcompound4 = new NBTTagCompound(); if (entity.d(nbttagcompound4)) { -@@ -322,6 +333,13 @@ public class ChunkRegionLoader { + chunk.d(true); +@@ -350,6 +362,13 @@ public class ChunkRegionLoader { } } } + + // Paper start - move entities to the correct chunk + for (Entity entity : toUpdate) { -+ ((WorldServer)world).entityJoinedWorld(entity); ++ worldserver.entityJoinedWorld(entity); + } + // Paper end + diff --git a/Spigot-Server-Patches/0272-Don-t-call-getItemMeta-on-hasItemMeta.patch b/Spigot-Server-Patches/0271-Don-t-call-getItemMeta-on-hasItemMeta.patch similarity index 97% rename from Spigot-Server-Patches/0272-Don-t-call-getItemMeta-on-hasItemMeta.patch rename to Spigot-Server-Patches/0271-Don-t-call-getItemMeta-on-hasItemMeta.patch index 2701880a8..676399e25 100644 --- a/Spigot-Server-Patches/0272-Don-t-call-getItemMeta-on-hasItemMeta.patch +++ b/Spigot-Server-Patches/0271-Don-t-call-getItemMeta-on-hasItemMeta.patch @@ -1,4 +1,4 @@ -From 7cb15e928a613c57fa2f9425562a424064462589 Mon Sep 17 00:00:00 2001 +From bd63bbb39ceefcad0b0dfb88f447461de4738dab Mon Sep 17 00:00:00 2001 From: Hugo Manrique Date: Thu, 26 Jul 2018 14:10:23 +0200 Subject: [PATCH] Don't call getItemMeta on hasItemMeta @@ -11,7 +11,7 @@ Returns true if getDamage() == 0 or has damage tag or other tag is set. Check the `ItemMetaTest#testTaggedButNotMeta` method to see how this method behaves. diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 1609e6bbb6..8a6a135372 100644 +index 1609e6bbb..8a6a13537 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -536,7 +536,7 @@ public final class CraftItemStack extends ItemStack { @@ -24,7 +24,7 @@ index 1609e6bbb6..8a6a135372 100644 static boolean hasItemMeta(net.minecraft.server.ItemStack item) { diff --git a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java -index 2a0852675b..f30f743121 100644 +index 2a0852675..f30f74312 100644 --- a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java +++ b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java @@ -4,6 +4,7 @@ import static org.hamcrest.Matchers.*; diff --git a/Spigot-Server-Patches/0273-Ignore-Dead-Entities-in-entityList-iteration.patch b/Spigot-Server-Patches/0272-Ignore-Dead-Entities-in-entityList-iteration.patch similarity index 88% rename from Spigot-Server-Patches/0273-Ignore-Dead-Entities-in-entityList-iteration.patch rename to Spigot-Server-Patches/0272-Ignore-Dead-Entities-in-entityList-iteration.patch index 7e96feb93..fdd1c7d76 100644 --- a/Spigot-Server-Patches/0273-Ignore-Dead-Entities-in-entityList-iteration.patch +++ b/Spigot-Server-Patches/0272-Ignore-Dead-Entities-in-entityList-iteration.patch @@ -1,4 +1,4 @@ -From e7ae681c20ded420a550293046b69554796a6f8e Mon Sep 17 00:00:00 2001 +From 359367a6f4bf33da4fdeec175017cf835ff03bc6 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 @@ -23,10 +23,10 @@ index ce190d88d..352a39dcb 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 d787a4ab3..d313b9b3c 100644 +index fd91cf839..2b4ad100e 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -642,6 +642,7 @@ public class Chunk implements IChunkAccess { +@@ -643,6 +643,7 @@ public class Chunk implements IChunkAccess { while (iterator.hasNext()) { Entity entity1 = (Entity) iterator.next(); @@ -34,7 +34,7 @@ index d787a4ab3..d313b9b3c 100644 if (entity1.getBoundingBox().c(axisalignedbb) && entity1 != entity) { if (predicate == null || predicate.test(entity1)) { -@@ -679,6 +680,7 @@ public class Chunk implements IChunkAccess { +@@ -680,6 +681,7 @@ public class Chunk implements IChunkAccess { while (iterator.hasNext()) { Entity entity = (Entity) iterator.next(); @@ -42,7 +42,7 @@ index d787a4ab3..d313b9b3c 100644 if ((entitytypes == null || entity.getEntityType() == entitytypes) && entity.getBoundingBox().c(axisalignedbb) && predicate.test(entity)) { list.add(entity); -@@ -700,6 +702,7 @@ public class Chunk implements IChunkAccess { +@@ -701,6 +703,7 @@ public class Chunk implements IChunkAccess { while (iterator.hasNext()) { T t0 = (T) iterator.next(); // CraftBukkit - decompile error @@ -51,7 +51,7 @@ index d787a4ab3..d313b9b3c 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 f8e837fae..aac0146fd 100644 +index 2484eb0ff..622160ff4 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,10 +63,10 @@ index f8e837fae..aac0146fd 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 0a57f9f2b..d17c2eeb7 100644 +index 6f298d737..74917a3b1 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -843,6 +843,7 @@ public class WorldServer extends World { +@@ -836,6 +836,7 @@ public class WorldServer extends World { while (objectiterator.hasNext()) { Entity entity = (Entity) objectiterator.next(); @@ -74,7 +74,7 @@ index 0a57f9f2b..d17c2eeb7 100644 // CraftBukkit start - Split out persistent check, don't apply it to special persistent mobs if (entity instanceof EntityInsentient) { EntityInsentient entityinsentient = (EntityInsentient) entity; -@@ -1137,6 +1138,7 @@ public class WorldServer extends World { +@@ -1130,6 +1131,7 @@ public class WorldServer extends World { entity.origin = entity.getBukkitEntity().getLocation(); } // Paper end @@ -82,7 +82,7 @@ index 0a57f9f2b..d17c2eeb7 100644 new com.destroystokyo.paper.event.entity.EntityAddToWorldEvent(entity.getBukkitEntity()).callEvent(); // Paper - fire while valid } -@@ -1151,6 +1153,7 @@ public class WorldServer extends World { +@@ -1144,6 +1146,7 @@ public class WorldServer extends World { this.removeEntityFromChunk(entity); this.entitiesById.remove(entity.getId()); this.unregisterEntity(entity); @@ -91,10 +91,10 @@ index 0a57f9f2b..d17c2eeb7 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 19fa15d79..79a5adf48 100644 +index 9a9c5a93e..20f7c44b6 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -864,6 +864,7 @@ public class CraftWorld implements World { +@@ -847,6 +847,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; @@ -102,7 +102,7 @@ index 19fa15d79..79a5adf48 100644 Entity bukkitEntity = mcEnt.getBukkitEntity(); // Assuming that bukkitEntity isn't null -@@ -883,6 +884,7 @@ public class CraftWorld implements World { +@@ -866,6 +867,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; @@ -110,7 +110,7 @@ index 19fa15d79..79a5adf48 100644 Entity bukkitEntity = mcEnt.getBukkitEntity(); // Assuming that bukkitEntity isn't null -@@ -909,6 +911,7 @@ public class CraftWorld implements World { +@@ -892,6 +894,7 @@ public class CraftWorld implements World { for (Object entity: world.entitiesById.values()) { if (entity instanceof net.minecraft.server.Entity) { @@ -118,7 +118,7 @@ index 19fa15d79..79a5adf48 100644 Entity bukkitEntity = ((net.minecraft.server.Entity) entity).getBukkitEntity(); if (bukkitEntity == null) { -@@ -932,6 +935,7 @@ public class CraftWorld implements World { +@@ -915,6 +918,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/0274-Provide-option-to-use-a-versioned-world-folder-for-t.patch b/Spigot-Server-Patches/0273-Provide-option-to-use-a-versioned-world-folder-for-t.patch similarity index 99% rename from Spigot-Server-Patches/0274-Provide-option-to-use-a-versioned-world-folder-for-t.patch rename to Spigot-Server-Patches/0273-Provide-option-to-use-a-versioned-world-folder-for-t.patch index 5b6562f3d..5f68095d8 100644 --- a/Spigot-Server-Patches/0274-Provide-option-to-use-a-versioned-world-folder-for-t.patch +++ b/Spigot-Server-Patches/0273-Provide-option-to-use-a-versioned-world-folder-for-t.patch @@ -1,4 +1,4 @@ -From b6fadc58f2a42f8c8156d4437f6f265c9ee2098a Mon Sep 17 00:00:00 2001 +From 041dd87c43cf13c216c0820f5c22d5b8cf3eb49b Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 29 Jul 2018 15:48:50 -0400 Subject: [PATCH] Provide option to use a versioned world folder for testing diff --git a/Spigot-Server-Patches/0275-MC-111480-Start-Entity-ID-s-at-1.patch b/Spigot-Server-Patches/0274-MC-111480-Start-Entity-ID-s-at-1.patch similarity index 91% rename from Spigot-Server-Patches/0275-MC-111480-Start-Entity-ID-s-at-1.patch rename to Spigot-Server-Patches/0274-MC-111480-Start-Entity-ID-s-at-1.patch index 21f54f195..b238e2c9a 100644 --- a/Spigot-Server-Patches/0275-MC-111480-Start-Entity-ID-s-at-1.patch +++ b/Spigot-Server-Patches/0274-MC-111480-Start-Entity-ID-s-at-1.patch @@ -1,4 +1,4 @@ -From 7aabd2f484eead947cfa6a4167545ccfe36b5262 Mon Sep 17 00:00:00 2001 +From 5612bef1b06db635c34ca0ee56936e82e53459b2 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 29 Jul 2018 22:58:47 -0400 Subject: [PATCH] MC-111480: Start Entity ID's at 1 @@ -7,7 +7,7 @@ DataWatchers that store Entity ID's treat 0 as special, and can break things such as Elytra Fireworks. diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index a217cb0fe7..9bfc725a2c 100644 +index 622160ff4..e1c793aad 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -92,7 +92,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke diff --git a/Spigot-Server-Patches/0276-Implement-Expanded-ArmorStand-API.patch b/Spigot-Server-Patches/0275-Implement-Expanded-ArmorStand-API.patch similarity index 97% rename from Spigot-Server-Patches/0276-Implement-Expanded-ArmorStand-API.patch rename to Spigot-Server-Patches/0275-Implement-Expanded-ArmorStand-API.patch index c3bd2450a..7403be253 100644 --- a/Spigot-Server-Patches/0276-Implement-Expanded-ArmorStand-API.patch +++ b/Spigot-Server-Patches/0275-Implement-Expanded-ArmorStand-API.patch @@ -1,4 +1,4 @@ -From d983ddb997ce71479037b942b8e8fbc38e45dfdb Mon Sep 17 00:00:00 2001 +From 7e20108512afe0d71890499c0e478c517bdb8b83 Mon Sep 17 00:00:00 2001 From: willies952002 Date: Thu, 26 Jul 2018 02:25:46 -0400 Subject: [PATCH] Implement Expanded ArmorStand API @@ -8,7 +8,7 @@ Add the following: - Enable/Disable slot interactions diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java -index f8cd621993..8fb3ce17aa 100644 +index 916eaa7b9..00ff1e80d 100644 --- a/src/main/java/net/minecraft/server/EntityArmorStand.java +++ b/src/main/java/net/minecraft/server/EntityArmorStand.java @@ -36,7 +36,7 @@ public class EntityArmorStand extends EntityLiving { @@ -29,7 +29,7 @@ index f8cd621993..8fb3ce17aa 100644 return (this.bE & 1 << enumitemslot.c()) != 0 || enumitemslot.a() == EnumItemSlot.Function.HAND && !this.hasArms(); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java -index 124c3185bc..9f5c3b92e3 100644 +index 124c3185b..9f5c3b92e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java @@ -30,11 +30,13 @@ public class CraftArmorStand extends CraftLivingEntity implements ArmorStand { diff --git a/Spigot-Server-Patches/0277-AnvilDamageEvent.patch b/Spigot-Server-Patches/0276-AnvilDamageEvent.patch similarity index 94% rename from Spigot-Server-Patches/0277-AnvilDamageEvent.patch rename to Spigot-Server-Patches/0276-AnvilDamageEvent.patch index 8b71aa047..e92d2b5dd 100644 --- a/Spigot-Server-Patches/0277-AnvilDamageEvent.patch +++ b/Spigot-Server-Patches/0276-AnvilDamageEvent.patch @@ -1,11 +1,11 @@ -From c4527009f9badff9af31566955c34b6e728d1395 Mon Sep 17 00:00:00 2001 +From b57c867923c316a4532d92b23eea8f00b2c70046 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 20 Jul 2018 23:37:03 -0500 Subject: [PATCH] AnvilDamageEvent diff --git a/src/main/java/net/minecraft/server/ContainerAnvil.java b/src/main/java/net/minecraft/server/ContainerAnvil.java -index ada5cf982e..9e73e731b5 100644 +index ada5cf982..9e73e731b 100644 --- a/src/main/java/net/minecraft/server/ContainerAnvil.java +++ b/src/main/java/net/minecraft/server/ContainerAnvil.java @@ -85,6 +85,16 @@ public class ContainerAnvil extends Container { diff --git a/Spigot-Server-Patches/0278-Add-TNTPrimeEvent.patch b/Spigot-Server-Patches/0277-Add-TNTPrimeEvent.patch similarity index 96% rename from Spigot-Server-Patches/0278-Add-TNTPrimeEvent.patch rename to Spigot-Server-Patches/0277-Add-TNTPrimeEvent.patch index 03b73b792..8fc05e871 100644 --- a/Spigot-Server-Patches/0278-Add-TNTPrimeEvent.patch +++ b/Spigot-Server-Patches/0277-Add-TNTPrimeEvent.patch @@ -1,11 +1,11 @@ -From 1827205a895feca061f160216b3015c9b06c9451 Mon Sep 17 00:00:00 2001 +From c67e9c23bbe0f37866002b4a84be8e0e144e7d0a Mon Sep 17 00:00:00 2001 From: Mark Vainomaa Date: Mon, 16 Jul 2018 00:05:05 +0300 Subject: [PATCH] Add TNTPrimeEvent diff --git a/src/main/java/net/minecraft/server/BlockFire.java b/src/main/java/net/minecraft/server/BlockFire.java -index 73190ccba..dfb546820 100644 +index f769df41a..087535caf 100644 --- a/src/main/java/net/minecraft/server/BlockFire.java +++ b/src/main/java/net/minecraft/server/BlockFire.java @@ -2,6 +2,7 @@ package net.minecraft.server; @@ -39,7 +39,7 @@ index 73190ccba..dfb546820 100644 } } diff --git a/src/main/java/net/minecraft/server/BlockTNT.java b/src/main/java/net/minecraft/server/BlockTNT.java -index 8cb36ed3a..88d023871 100644 +index 013fa3524..7e534417b 100644 --- a/src/main/java/net/minecraft/server/BlockTNT.java +++ b/src/main/java/net/minecraft/server/BlockTNT.java @@ -1,6 +1,7 @@ @@ -99,21 +99,22 @@ index 8cb36ed3a..88d023871 100644 a(world, blockposition, (EntityLiving) entityhuman); world.setTypeAndData(blockposition, Blocks.AIR.getBlockData(), 11); if (item == Items.FLINT_AND_STEEL) { -@@ -97,6 +119,12 @@ public class BlockTNT extends Block { - return; +@@ -99,6 +121,13 @@ public class BlockTNT extends Block { } // CraftBukkit end + + // Paper start - TNTPrimeEvent + org.bukkit.block.Block tntBlock = MCUtil.toBukkitBlock(world, blockposition); + if (!new TNTPrimeEvent(tntBlock, TNTPrimeEvent.PrimeReason.PROJECTILE, entityarrow.bukkitEntity).callEvent()) { + return; + } + // Paper end ++ a(world, blockposition, entity1 instanceof EntityLiving ? (EntityLiving) entity1 : null); world.a(blockposition, false); } diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java -index b0651a708..6d51413d1 100644 +index d42d4e83e..9ada10cc7 100644 --- a/src/main/java/net/minecraft/server/EntityEnderDragon.java +++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java @@ -11,6 +11,7 @@ import org.bukkit.craftbukkit.block.CraftBlock; diff --git a/Spigot-Server-Patches/0279-Break-up-and-make-tab-spam-limits-configurable.patch b/Spigot-Server-Patches/0278-Break-up-and-make-tab-spam-limits-configurable.patch similarity index 97% rename from Spigot-Server-Patches/0279-Break-up-and-make-tab-spam-limits-configurable.patch rename to Spigot-Server-Patches/0278-Break-up-and-make-tab-spam-limits-configurable.patch index b7cc5447f..e6e9f94c0 100644 --- a/Spigot-Server-Patches/0279-Break-up-and-make-tab-spam-limits-configurable.patch +++ b/Spigot-Server-Patches/0278-Break-up-and-make-tab-spam-limits-configurable.patch @@ -1,4 +1,4 @@ -From 49edabb9820cc2f43da6ace27eff625eac73933d Mon Sep 17 00:00:00 2001 +From c1c208a820e58af16864c27bf94f9a28549bfbb7 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Sun, 29 Jul 2018 05:02:15 +0100 Subject: [PATCH] Break up and make tab spam limits configurable @@ -45,7 +45,7 @@ index 8c3880c83..d773ef5b0 100644 + } } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index e7e0c02b5..fc8d7d9d0 100644 +index 6d61a1e79..d163836d0 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -76,6 +76,7 @@ public class PlayerConnection implements PacketListenerPlayIn { diff --git a/Spigot-Server-Patches/0280-Add-hand-to-bucket-events.patch b/Spigot-Server-Patches/0279-Add-hand-to-bucket-events.patch similarity index 98% rename from Spigot-Server-Patches/0280-Add-hand-to-bucket-events.patch rename to Spigot-Server-Patches/0279-Add-hand-to-bucket-events.patch index 1563a61fc..260e4a997 100644 --- a/Spigot-Server-Patches/0280-Add-hand-to-bucket-events.patch +++ b/Spigot-Server-Patches/0279-Add-hand-to-bucket-events.patch @@ -1,11 +1,11 @@ -From 4ee6301c818812345876e6c8ba08c084c7833320 Mon Sep 17 00:00:00 2001 +From e601e535b8d90cf48e04a2275c8c54489c702d69 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Thu, 2 Aug 2018 08:44:35 -0500 Subject: [PATCH] Add hand to bucket events diff --git a/src/main/java/net/minecraft/server/EntityCow.java b/src/main/java/net/minecraft/server/EntityCow.java -index a17738f9ff..d2c2e3cc33 100644 +index a17738f9f..d2c2e3cc3 100644 --- a/src/main/java/net/minecraft/server/EntityCow.java +++ b/src/main/java/net/minecraft/server/EntityCow.java @@ -62,7 +62,7 @@ public class EntityCow extends EntityAnimal { @@ -18,7 +18,7 @@ index a17738f9ff..d2c2e3cc33 100644 if (event.isCancelled()) { return false; diff --git a/src/main/java/net/minecraft/server/ItemBucket.java b/src/main/java/net/minecraft/server/ItemBucket.java -index cb28914118..5dc967f8ba 100644 +index cb2891411..5dc967f8b 100644 --- a/src/main/java/net/minecraft/server/ItemBucket.java +++ b/src/main/java/net/minecraft/server/ItemBucket.java @@ -39,7 +39,7 @@ public class ItemBucket extends Item { @@ -67,7 +67,7 @@ index cb28914118..5dc967f8ba 100644 ((EntityPlayer) entityhuman).playerConnection.sendPacket(new PacketPlayOutBlockChange(world, blockposition)); // SPIGOT-4238: needed when looking through entity ((EntityPlayer) entityhuman).getBukkitEntity().updateInventory(); // SPIGOT-4541 diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index b0f827594b..23c4b93466 100644 +index b39886c5d..9380b4953 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -354,6 +354,20 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/0281-MC-135506-Experience-should-save-as-Integers.patch b/Spigot-Server-Patches/0280-MC-135506-Experience-should-save-as-Integers.patch similarity index 92% rename from Spigot-Server-Patches/0281-MC-135506-Experience-should-save-as-Integers.patch rename to Spigot-Server-Patches/0280-MC-135506-Experience-should-save-as-Integers.patch index 5d92e75a2..22183a497 100644 --- a/Spigot-Server-Patches/0281-MC-135506-Experience-should-save-as-Integers.patch +++ b/Spigot-Server-Patches/0280-MC-135506-Experience-should-save-as-Integers.patch @@ -1,11 +1,11 @@ -From 06e9a549b0ad61d0792aefdecf0c4f45a05d49f5 Mon Sep 17 00:00:00 2001 +From 3d7cbb58d3a12b7d4d5cbca380f25337c7186d61 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 3 Aug 2018 00:04:54 -0400 Subject: [PATCH] MC-135506: Experience should save as Integers diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -index 64d71a9a2a..65c9969613 100644 +index 64d71a9a2..65c996961 100644 --- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java +++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java @@ -204,7 +204,7 @@ public class EntityExperienceOrb extends Entity { diff --git a/Spigot-Server-Patches/0282-Fix-client-rendering-skulls-from-same-user.patch b/Spigot-Server-Patches/0281-Fix-client-rendering-skulls-from-same-user.patch similarity index 96% rename from Spigot-Server-Patches/0282-Fix-client-rendering-skulls-from-same-user.patch rename to Spigot-Server-Patches/0281-Fix-client-rendering-skulls-from-same-user.patch index 962115905..40245a597 100644 --- a/Spigot-Server-Patches/0282-Fix-client-rendering-skulls-from-same-user.patch +++ b/Spigot-Server-Patches/0281-Fix-client-rendering-skulls-from-same-user.patch @@ -1,4 +1,4 @@ -From 52423cb01f622562c809268b7cc4704cd762f04f Mon Sep 17 00:00:00 2001 +From f02d6679d5a68fdd5878e7d68a18e42391915a3b Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 22 Nov 2016 00:40:42 -0500 Subject: [PATCH] Fix client rendering skulls from same user @@ -12,7 +12,7 @@ This allows the client to render multiple skull textures from the same user, for when different skins were used when skull was made. diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java -index 2acd02f2f4..ca1bd02995 100644 +index 2acd02f2f..ca1bd0299 100644 --- a/src/main/java/net/minecraft/server/ItemStack.java +++ b/src/main/java/net/minecraft/server/ItemStack.java @@ -54,7 +54,7 @@ public final class ItemStack { @@ -25,7 +25,7 @@ index 2acd02f2f4..ca1bd02995 100644 private EntityItemFrame i; private ShapeDetectorBlock j; diff --git a/src/main/java/net/minecraft/server/PacketDataSerializer.java b/src/main/java/net/minecraft/server/PacketDataSerializer.java -index 0d67676f7d..fa2d3ce8cb 100644 +index 0d67676f7..fa2d3ce8c 100644 --- a/src/main/java/net/minecraft/server/PacketDataSerializer.java +++ b/src/main/java/net/minecraft/server/PacketDataSerializer.java @@ -253,6 +253,15 @@ public class PacketDataSerializer extends ByteBuf { @@ -62,7 +62,7 @@ index 0d67676f7d..fa2d3ce8cb 100644 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java -index 363ab5da12..d19a30ad87 100644 +index 363ab5da1..d19a30ad8 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java @@ -51,6 +51,7 @@ public class PacketPlayOutMapChunk implements Packet { @@ -74,7 +74,7 @@ index 363ab5da12..d19a30ad87 100644 this.f.add(nbttagcompound); } diff --git a/src/main/java/net/minecraft/server/TileEntitySkull.java b/src/main/java/net/minecraft/server/TileEntitySkull.java -index e827d76054..4803b173aa 100644 +index f6a80a00f..5306574e5 100644 --- a/src/main/java/net/minecraft/server/TileEntitySkull.java +++ b/src/main/java/net/minecraft/server/TileEntitySkull.java @@ -142,9 +142,37 @@ public class TileEntitySkull extends TileEntity /*implements ITickable*/ { // Pa diff --git a/Spigot-Server-Patches/0283-Add-Early-Warning-Feature-to-WatchDog.patch b/Spigot-Server-Patches/0282-Add-Early-Warning-Feature-to-WatchDog.patch similarity index 97% rename from Spigot-Server-Patches/0283-Add-Early-Warning-Feature-to-WatchDog.patch rename to Spigot-Server-Patches/0282-Add-Early-Warning-Feature-to-WatchDog.patch index 58ce2ebe8..f82590523 100644 --- a/Spigot-Server-Patches/0283-Add-Early-Warning-Feature-to-WatchDog.patch +++ b/Spigot-Server-Patches/0282-Add-Early-Warning-Feature-to-WatchDog.patch @@ -1,4 +1,4 @@ -From d7993a246e5a8d92ca00aa8245c80928374415f5 Mon Sep 17 00:00:00 2001 +From 1348f0740b628fbbcc2f6bca3b18dcd9f679b999 Mon Sep 17 00:00:00 2001 From: miclebrick Date: Wed, 8 Aug 2018 15:30:52 -0400 Subject: [PATCH] Add Early Warning Feature to WatchDog @@ -9,7 +9,7 @@ thread dumps at an interval until the point of crash. This will help diagnose what was going on in that time before the crash. diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index d773ef5b0d..833659bbb2 100644 +index d773ef5b0..833659bbb 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -25,6 +25,7 @@ import org.bukkit.configuration.file.YamlConfiguration; @@ -36,7 +36,7 @@ index d773ef5b0d..833659bbb2 100644 public static int tabSpamLimit = 500; private static void tabSpamLimiters() { diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index ffa850077f..45cd31e88a 100644 +index ea3d9e9af..9b11fd838 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -847,6 +847,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Fri, 10 Aug 2018 22:11:49 -0400 Subject: [PATCH] Make EnderDragon implement Mob diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftComplexLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftComplexLivingEntity.java -index cc115cc368..4947249da2 100644 +index cc115cc36..4947249da 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftComplexLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftComplexLivingEntity.java @@ -1,17 +1,18 @@ diff --git a/Spigot-Server-Patches/0285-Detect-and-repair-corrupt-Region-Files.patch b/Spigot-Server-Patches/0284-Detect-and-repair-corrupt-Region-Files.patch similarity index 98% rename from Spigot-Server-Patches/0285-Detect-and-repair-corrupt-Region-Files.patch rename to Spigot-Server-Patches/0284-Detect-and-repair-corrupt-Region-Files.patch index 1662e3507..f54ad9e5e 100644 --- a/Spigot-Server-Patches/0285-Detect-and-repair-corrupt-Region-Files.patch +++ b/Spigot-Server-Patches/0284-Detect-and-repair-corrupt-Region-Files.patch @@ -1,4 +1,4 @@ -From f495f340021a9f5e104d1d0af06c140dfd9536e2 Mon Sep 17 00:00:00 2001 +From a2b6a6be1167a19be210fd71878a492081f010f9 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 11 Aug 2018 00:49:20 -0400 Subject: [PATCH] Detect and repair corrupt Region Files @@ -11,7 +11,7 @@ I don't know why mojang only checks for 4096, when anything less than 8192 is a But to be safe, it will attempt to back up the file. diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index 4e6288e8bb..e68f901943 100644 +index 4e6288e8b..e68f90194 100644 --- a/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java @@ -27,13 +27,13 @@ public class RegionFile implements AutoCloseable { diff --git a/Spigot-Server-Patches/0286-Use-ConcurrentHashMap-in-JsonList.patch b/Spigot-Server-Patches/0285-Use-ConcurrentHashMap-in-JsonList.patch similarity index 97% rename from Spigot-Server-Patches/0286-Use-ConcurrentHashMap-in-JsonList.patch rename to Spigot-Server-Patches/0285-Use-ConcurrentHashMap-in-JsonList.patch index d25f05651..169348533 100644 --- a/Spigot-Server-Patches/0286-Use-ConcurrentHashMap-in-JsonList.patch +++ b/Spigot-Server-Patches/0285-Use-ConcurrentHashMap-in-JsonList.patch @@ -1,4 +1,4 @@ -From 541af4343884a34547ea09904010768d183671f5 Mon Sep 17 00:00:00 2001 +From beb8d7152eb7655368b1dffaab07ce6b87f84ef7 Mon Sep 17 00:00:00 2001 From: egg82 Date: Tue, 7 Aug 2018 01:24:23 -0600 Subject: [PATCH] Use ConcurrentHashMap in JsonList @@ -25,7 +25,7 @@ The point of this is readability, but does have a side-benefit of a small microp Finally, added a couple obfhelpers for the modified code diff --git a/src/main/java/net/minecraft/server/JsonList.java b/src/main/java/net/minecraft/server/JsonList.java -index 04f98167d3..c169d01762 100644 +index 04f98167d..c169d0176 100644 --- a/src/main/java/net/minecraft/server/JsonList.java +++ b/src/main/java/net/minecraft/server/JsonList.java @@ -35,7 +35,8 @@ public class JsonList> { diff --git a/Spigot-Server-Patches/0287-Use-a-Queue-for-Queueing-Commands.patch b/Spigot-Server-Patches/0286-Use-a-Queue-for-Queueing-Commands.patch similarity index 94% rename from Spigot-Server-Patches/0287-Use-a-Queue-for-Queueing-Commands.patch rename to Spigot-Server-Patches/0286-Use-a-Queue-for-Queueing-Commands.patch index 3560fdc55..76fffee09 100644 --- a/Spigot-Server-Patches/0287-Use-a-Queue-for-Queueing-Commands.patch +++ b/Spigot-Server-Patches/0286-Use-a-Queue-for-Queueing-Commands.patch @@ -1,4 +1,4 @@ -From c552012914c805e71e6f89c8b33f56971e7298cd Mon Sep 17 00:00:00 2001 +From 70e516c89bb8e424cd543ebda4909204a0f57d56 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 12 Aug 2018 02:33:39 -0400 Subject: [PATCH] Use a Queue for Queueing Commands @@ -6,7 +6,7 @@ Subject: [PATCH] Use a Queue for Queueing Commands Lists are bad as Queues mmmkay. diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java -index c2c676e3bb..3d452fe0e3 100644 +index c2c676e3b..3d452fe0e 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -41,7 +41,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer diff --git a/Spigot-Server-Patches/0288-Ability-to-get-Tile-Entities-from-a-chunk-without-sn.patch b/Spigot-Server-Patches/0287-Ability-to-get-Tile-Entities-from-a-chunk-without-sn.patch similarity index 92% rename from Spigot-Server-Patches/0288-Ability-to-get-Tile-Entities-from-a-chunk-without-sn.patch rename to Spigot-Server-Patches/0287-Ability-to-get-Tile-Entities-from-a-chunk-without-sn.patch index b29e4ba6b..bdb4963a1 100644 --- a/Spigot-Server-Patches/0288-Ability-to-get-Tile-Entities-from-a-chunk-without-sn.patch +++ b/Spigot-Server-Patches/0287-Ability-to-get-Tile-Entities-from-a-chunk-without-sn.patch @@ -1,11 +1,11 @@ -From d60cad161dd929174196d60a61b3cc8964a9e0b4 Mon Sep 17 00:00:00 2001 +From 804b51b0c2d1eb8c487871cf51c16674646ce4d7 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 15 Aug 2018 01:16:34 -0400 Subject: [PATCH] Ability to get Tile Entities from a chunk without snapshots diff --git a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java -index 323f5bf289..f1db08c880 100644 +index 323f5bf28..f1db08c88 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java @@ -118,6 +118,11 @@ public class CraftChunk implements Chunk { diff --git a/Spigot-Server-Patches/0289-Allow-disabling-armour-stand-ticking.patch b/Spigot-Server-Patches/0288-Allow-disabling-armour-stand-ticking.patch similarity index 98% rename from Spigot-Server-Patches/0289-Allow-disabling-armour-stand-ticking.patch rename to Spigot-Server-Patches/0288-Allow-disabling-armour-stand-ticking.patch index c06f7e582..58b8d0c67 100644 --- a/Spigot-Server-Patches/0289-Allow-disabling-armour-stand-ticking.patch +++ b/Spigot-Server-Patches/0288-Allow-disabling-armour-stand-ticking.patch @@ -1,11 +1,11 @@ -From ce474962c41099360ce1a18c3fa18921efcb2ee8 Mon Sep 17 00:00:00 2001 +From 110cbaa658e6539f2e153735527e95d03e74273f Mon Sep 17 00:00:00 2001 From: kashike Date: Wed, 15 Aug 2018 01:26:09 -0700 Subject: [PATCH] Allow disabling armour stand ticking diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index f06bb3ae19..a5b4f99901 100644 +index f06bb3ae1..a5b4f9990 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -391,4 +391,10 @@ public class PaperWorldConfig { @@ -20,7 +20,7 @@ index f06bb3ae19..a5b4f99901 100644 + } } diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java -index 8fb3ce17aa..7031dd0e4c 100644 +index 00ff1e80d..5c35909eb 100644 --- a/src/main/java/net/minecraft/server/EntityArmorStand.java +++ b/src/main/java/net/minecraft/server/EntityArmorStand.java @@ -44,6 +44,11 @@ public class EntityArmorStand extends EntityLiving { @@ -140,7 +140,7 @@ index 8fb3ce17aa..7031dd0e4c 100644 public Vector3f r() { diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index de0f9f57d2..f115686f4a 100644 +index d52c0d81d..6334d3dea 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2259,52 +2259,7 @@ public abstract class EntityLiving extends Entity { @@ -256,7 +256,7 @@ index de0f9f57d2..f115686f4a 100644 float f2 = MathHelper.g(f - this.aK); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java -index 9f5c3b92e3..07ce93f17c 100644 +index 9f5c3b92e..07ce93f17 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java @@ -297,5 +297,15 @@ public class CraftArmorStand extends CraftLivingEntity implements ArmorStand { diff --git a/Spigot-Server-Patches/0290-Optimize-BlockPosition-helper-methods.patch b/Spigot-Server-Patches/0289-Optimize-BlockPosition-helper-methods.patch similarity index 97% rename from Spigot-Server-Patches/0290-Optimize-BlockPosition-helper-methods.patch rename to Spigot-Server-Patches/0289-Optimize-BlockPosition-helper-methods.patch index 50b5bec38..db4e82096 100644 --- a/Spigot-Server-Patches/0290-Optimize-BlockPosition-helper-methods.patch +++ b/Spigot-Server-Patches/0289-Optimize-BlockPosition-helper-methods.patch @@ -1,4 +1,4 @@ -From 3a326c8f577ca50d98bc3260f06adec5ca76359d Mon Sep 17 00:00:00 2001 +From 92b340b1290f3257cd825dc7b19ebccf24674c5e Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Wed, 15 Aug 2018 12:05:12 -0700 Subject: [PATCH] Optimize BlockPosition helper methods @@ -6,7 +6,7 @@ Subject: [PATCH] Optimize BlockPosition helper methods Resolves #1338 diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java -index a5e5a4ebae..6ed584f8dd 100644 +index a5e5a4eba..6ed584f8d 100644 --- a/src/main/java/net/minecraft/server/BlockPosition.java +++ b/src/main/java/net/minecraft/server/BlockPosition.java @@ -134,55 +134,72 @@ public class BlockPosition extends BaseBlockPosition implements MinecraftSeriali diff --git a/Spigot-Server-Patches/0291-Send-nearby-packets-from-world-player-list-not-serve.patch b/Spigot-Server-Patches/0290-Send-nearby-packets-from-world-player-list-not-serve.patch similarity index 84% rename from Spigot-Server-Patches/0291-Send-nearby-packets-from-world-player-list-not-serve.patch rename to Spigot-Server-Patches/0290-Send-nearby-packets-from-world-player-list-not-serve.patch index 2e9b0767c..2a5260855 100644 --- a/Spigot-Server-Patches/0291-Send-nearby-packets-from-world-player-list-not-serve.patch +++ b/Spigot-Server-Patches/0290-Send-nearby-packets-from-world-player-list-not-serve.patch @@ -1,14 +1,14 @@ -From c96a46965f8f48e335764278198a4c0c5fcb18dc Mon Sep 17 00:00:00 2001 +From bc54ff3205320313f9632d0b77303e50b602839e 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 58bfafc6b2..97f4f7e1bd 100644 +index 006f7b8b9..af437120e 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java -@@ -921,8 +921,25 @@ public abstract class PlayerList { +@@ -922,8 +922,25 @@ public abstract class PlayerList { } public void sendPacketNearby(@Nullable EntityHuman entityhuman, double d0, double d1, double d2, double d3, DimensionManager dimensionmanager, Packet packet) { @@ -19,7 +19,7 @@ index 58bfafc6b2..97f4f7e1bd 100644 + } + + public void sendPacketNearby(@Nullable EntityHuman entityhuman, double d0, double d1, double d2, double d3, WorldServer world, Packet packet) { -+ sendPacketNearby(entityhuman, d0, d1, d2, d3, world.dimension, world, packet); ++ sendPacketNearby(entityhuman, d0, d1, d2, d3, world.worldProvider.getDimensionManager(), world, packet); + } + + public void sendPacketNearby(@Nullable EntityHuman entityhuman, double d0, double d1, double d2, double d3, DimensionManager dimensionmanager, @Nullable WorldServer world, Packet packet) { @@ -36,7 +36,7 @@ index 58bfafc6b2..97f4f7e1bd 100644 // CraftBukkit start - Test if player receiving packet can see the source of the packet if (entityhuman != null && entityhuman instanceof EntityPlayer && !entityplayer.getBukkitEntity().canSee(((EntityPlayer) entityhuman).getBukkitEntity())) { -@@ -930,7 +947,7 @@ public abstract class PlayerList { +@@ -931,7 +948,7 @@ public abstract class PlayerList { } // CraftBukkit end @@ -46,10 +46,10 @@ index 58bfafc6b2..97f4f7e1bd 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 305336d8d6..37287d85d8 100644 +index 74917a3b1..892c49506 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1189,7 +1189,7 @@ public class WorldServer extends World { +@@ -1182,7 +1182,7 @@ public class WorldServer extends World { } // CraftBukkit end this.globalEntityList.add(entitylightning); @@ -58,26 +58,24 @@ index 305336d8d6..37287d85d8 100644 } @Override -@@ -1324,8 +1324,8 @@ public class WorldServer extends World { +@@ -1314,7 +1314,7 @@ public class WorldServer extends World { BlockActionData blockactiondata = (BlockActionData) this.J.removeFirst(); if (this.a(blockactiondata)) { -- // CraftBukkit - this.worldProvider.dimension -> this.dimension -- this.server.getPlayerList().sendPacketNearby((EntityHuman) null, (double) blockactiondata.a().getX(), (double) blockactiondata.a().getY(), (double) blockactiondata.a().getZ(), 64.0D, dimension, new PacketPlayOutBlockAction(blockactiondata.a(), blockactiondata.b(), blockactiondata.c(), blockactiondata.d())); -+ // CraftBukkit - this.worldProvider.dimension -> this.dimension, // Paper - dimension -> world +- this.server.getPlayerList().sendPacketNearby((EntityHuman) null, (double) blockactiondata.a().getX(), (double) blockactiondata.a().getY(), (double) blockactiondata.a().getZ(), 64.0D, this.worldProvider.getDimensionManager(), new PacketPlayOutBlockAction(blockactiondata.a(), blockactiondata.b(), blockactiondata.c(), blockactiondata.d())); + this.server.getPlayerList().sendPacketNearby((EntityHuman) null, (double) blockactiondata.a().getX(), (double) blockactiondata.a().getY(), (double) blockactiondata.a().getZ(), 64.0D, this, new PacketPlayOutBlockAction(blockactiondata.a(), blockactiondata.b(), blockactiondata.c(), blockactiondata.d())); } } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 3b0f9c86f1..69c43817fe 100644 +index 20f7c44b6..9601d412a 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1927,7 +1927,7 @@ public class CraftWorld implements World { +@@ -1910,7 +1910,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); -- world.getMinecraftServer().getPlayerList().sendPacketNearby(null, x, y, z, volume > 1.0F ? 16.0F * volume : 16.0D, this.world.dimension, packet); +- world.getMinecraftServer().getPlayerList().sendPacketNearby(null, x, y, z, volume > 1.0F ? 16.0F * volume : 16.0D, this.world.getWorldProvider().getDimensionManager(), packet); + world.getMinecraftServer().getPlayerList().sendPacketNearby(null, x, y, z, volume > 1.0F ? 16.0F * volume : 16.0D, this.world, packet); // Paper - this.world.dimension -> this.world } diff --git a/Spigot-Server-Patches/0292-Restore-vanlla-default-mob-spawn-range.patch b/Spigot-Server-Patches/0291-Restore-vanlla-default-mob-spawn-range.patch similarity index 87% rename from Spigot-Server-Patches/0292-Restore-vanlla-default-mob-spawn-range.patch rename to Spigot-Server-Patches/0291-Restore-vanlla-default-mob-spawn-range.patch index 4044462e7..9b00d36c2 100644 --- a/Spigot-Server-Patches/0292-Restore-vanlla-default-mob-spawn-range.patch +++ b/Spigot-Server-Patches/0291-Restore-vanlla-default-mob-spawn-range.patch @@ -1,11 +1,11 @@ -From 03205b4f5796f847bb314d09a718e08bbf9d92cb Mon Sep 17 00:00:00 2001 +From 4c96032b5b18ebc5509bf2fb920bf682f22bd52b Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 18 Aug 2018 12:43:16 -0400 Subject: [PATCH] Restore vanlla default mob-spawn-range diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java -index 9a51c0ef7a..c2bf481a60 100644 +index 9a51c0ef7..c2bf481a6 100644 --- a/src/main/java/org/spigotmc/SpigotWorldConfig.java +++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java @@ -152,7 +152,7 @@ public class SpigotWorldConfig diff --git a/Spigot-Server-Patches/0293-Optimize-Hoppers.patch b/Spigot-Server-Patches/0292-Optimize-Hoppers.patch similarity index 92% rename from Spigot-Server-Patches/0293-Optimize-Hoppers.patch rename to Spigot-Server-Patches/0292-Optimize-Hoppers.patch index 7a841ff83..312b91033 100644 --- a/Spigot-Server-Patches/0293-Optimize-Hoppers.patch +++ b/Spigot-Server-Patches/0292-Optimize-Hoppers.patch @@ -1,4 +1,4 @@ -From 89e1638093cc201b0d6e1cfc81130b252e747b4e Mon Sep 17 00:00:00 2001 +From 0a9775472f2a516c4e0c2481c409b04495c7d745 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 27 Apr 2016 22:09:52 -0400 Subject: [PATCH] Optimize Hoppers @@ -11,7 +11,7 @@ Subject: [PATCH] Optimize Hoppers * Skip subsequent InventoryMoveItemEvents if a plugin does not use the item after first event fire for an iteration diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index a5b4f99901..2b5402b009 100644 +index a5b4f9990..2b5402b00 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -360,6 +360,15 @@ public class PaperWorldConfig { @@ -31,7 +31,7 @@ index a5b4f99901..2b5402b009 100644 private void disableSprintInterruptionOnAttack() { disableSprintInterruptionOnAttack = getBoolean("game-mechanics.disable-sprint-interruption-on-attack", false); diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java -index ca1bd02995..2d83c9e79c 100644 +index ca1bd0299..2d83c9e79 100644 --- a/src/main/java/net/minecraft/server/ItemStack.java +++ b/src/main/java/net/minecraft/server/ItemStack.java @@ -482,8 +482,9 @@ public final class ItemStack { @@ -47,7 +47,7 @@ index ca1bd02995..2d83c9e79c 100644 itemstack.d(this.C()); if (this.tag != null) { diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 45cd31e88a..11551ff9e8 100644 +index 9b11fd838..6a3776091 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1135,6 +1135,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant { diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index b76f30dd24..b4beb2e326 100644 +index 9f31f071b..6bddb2736 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java -@@ -60,6 +60,7 @@ public abstract class TileEntity implements KeyedObject { // Paper +@@ -62,6 +62,7 @@ public abstract class TileEntity implements KeyedObject { // Paper public void setCurrentChunk(Chunk chunk) { this.currentChunk = chunk != null ? new java.lang.ref.WeakReference<>(chunk) : null; } @@ -70,7 +70,7 @@ index b76f30dd24..b4beb2e326 100644 // Paper end @Nullable -@@ -143,6 +144,7 @@ public abstract class TileEntity implements KeyedObject { // Paper +@@ -145,6 +146,7 @@ public abstract class TileEntity implements KeyedObject { // Paper public void update() { if (this.world != null) { @@ -79,10 +79,10 @@ index b76f30dd24..b4beb2e326 100644 this.world.b(this.position, this); if (!this.c.isAir()) { diff --git a/src/main/java/net/minecraft/server/TileEntityHopper.java b/src/main/java/net/minecraft/server/TileEntityHopper.java -index 0ecfbcb4b8..dfe51fc6f4 100644 +index 0555bae5a..452e46cad 100644 --- a/src/main/java/net/minecraft/server/TileEntityHopper.java +++ b/src/main/java/net/minecraft/server/TileEntityHopper.java -@@ -191,6 +191,154 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi +@@ -189,6 +189,153 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi return false; } @@ -173,7 +173,7 @@ index 0ecfbcb4b8..dfe51fc6f4 100644 + private ItemStack callPushMoveEvent(IInventory iinventory, ItemStack itemstack) { + Inventory destinationInventory = getInventory(iinventory); + InventoryMoveItemEvent event = new InventoryMoveItemEvent(this.getOwner(false).getInventory(), -+ CraftItemStack.asCraftMirror(itemstack), destinationInventory, true); ++ CraftItemStack.asCraftMirror(itemstack), destinationInventory, true); + boolean result = event.callEvent(); + if (!event.calledGetItem && !event.calledSetItem) { + skipPushModeEventFire = true; @@ -195,8 +195,8 @@ index 0ecfbcb4b8..dfe51fc6f4 100644 + Inventory destination = getInventory(hopper); + + InventoryMoveItemEvent event = new InventoryMoveItemEvent(sourceInventory, -+ // Mirror is safe as we no plugins ever use this item -+ CraftItemStack.asCraftMirror(itemstack), destination, false); ++ // Mirror is safe as we no plugins ever use this item ++ CraftItemStack.asCraftMirror(itemstack), destination, false); + boolean result = event.callEvent(); + if (!event.calledGetItem && !event.calledSetItem) { + skipPullModeEventFire = true; @@ -233,11 +233,10 @@ index 0ecfbcb4b8..dfe51fc6f4 100644 + } + } + -+ // Paper end - private boolean t() { - IInventory iinventory = this.u(); + private boolean u() { + IInventory iinventory = this.v(); -@@ -202,6 +350,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi +@@ -200,6 +347,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi if (this.b(iinventory, enumdirection)) { return false; } else { @@ -245,7 +244,7 @@ index 0ecfbcb4b8..dfe51fc6f4 100644 for (int i = 0; i < this.getSize(); ++i) { if (!this.getItem(i).isEmpty()) { ItemStack itemstack = this.getItem(i).cloneItemStack(); -@@ -239,7 +388,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi +@@ -237,7 +385,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi } } @@ -254,7 +253,7 @@ index 0ecfbcb4b8..dfe51fc6f4 100644 } } } -@@ -269,6 +418,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi +@@ -267,6 +415,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi EnumDirection enumdirection = EnumDirection.DOWN; return c(iinventory, enumdirection) ? false : a(iinventory, enumdirection).anyMatch((i) -> { @@ -262,7 +261,7 @@ index 0ecfbcb4b8..dfe51fc6f4 100644 return a(ihopper, iinventory, i, enumdirection); }); } else { -@@ -292,6 +442,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi +@@ -290,6 +439,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi ItemStack itemstack = iinventory.getItem(i); if (!itemstack.isEmpty() && b(iinventory, itemstack, i, enumdirection)) { @@ -270,7 +269,7 @@ index 0ecfbcb4b8..dfe51fc6f4 100644 ItemStack itemstack1 = itemstack.cloneItemStack(); // ItemStack itemstack2 = addItem(iinventory, ihopper, iinventory.splitStack(i, 1), (EnumDirection) null); // CraftBukkit start - Call event on collection of items from inventories into the hopper -@@ -328,7 +479,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi +@@ -326,7 +476,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi } itemstack1.subtract(origCount - itemstack2.getCount()); // Spigot @@ -279,7 +278,7 @@ index 0ecfbcb4b8..dfe51fc6f4 100644 } return false; -@@ -337,7 +488,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi +@@ -335,7 +485,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi public static boolean a(IInventory iinventory, EntityItem entityitem) { boolean flag = false; // CraftBukkit start @@ -288,7 +287,7 @@ index 0ecfbcb4b8..dfe51fc6f4 100644 entityitem.world.getServer().getPluginManager().callEvent(event); if (event.isCancelled()) { return false; -@@ -391,7 +542,9 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi +@@ -389,7 +539,9 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi boolean flag1 = iinventory1.isNotEmpty(); if (itemstack1.isEmpty()) { diff --git a/Spigot-Server-Patches/0294-Optimize-CraftBlockData-Creation.patch b/Spigot-Server-Patches/0293-Optimize-CraftBlockData-Creation.patch similarity index 94% rename from Spigot-Server-Patches/0294-Optimize-CraftBlockData-Creation.patch rename to Spigot-Server-Patches/0293-Optimize-CraftBlockData-Creation.patch index 60f50a20e..2d77dc401 100644 --- a/Spigot-Server-Patches/0294-Optimize-CraftBlockData-Creation.patch +++ b/Spigot-Server-Patches/0293-Optimize-CraftBlockData-Creation.patch @@ -1,4 +1,4 @@ -From 1da1eb88cdd0a4d34e5f242af381a678684c88f3 Mon Sep 17 00:00:00 2001 +From 74ef4c8fafe6b57b0fbb47c7a3d4e0e026d37385 Mon Sep 17 00:00:00 2001 From: miclebrick Date: Thu, 23 Aug 2018 11:45:32 -0400 Subject: [PATCH] Optimize CraftBlockData Creation @@ -7,7 +7,7 @@ Avoids a hashmap lookup by cacheing a reference to the CraftBlockData and cloning it when one is needed. diff --git a/src/main/java/net/minecraft/server/IBlockData.java b/src/main/java/net/minecraft/server/IBlockData.java -index 0f4aa698aa..c66cabe82f 100644 +index 0f4aa698a..c66cabe82 100644 --- a/src/main/java/net/minecraft/server/IBlockData.java +++ b/src/main/java/net/minecraft/server/IBlockData.java @@ -4,6 +4,8 @@ import com.google.common.collect.ImmutableMap; @@ -36,7 +36,7 @@ index 0f4aa698aa..c66cabe82f 100644 return this.getBlock().l(this); } 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 c1666a9baf..3c29abd525 100644 +index c1666a9ba..3c29abd52 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java +++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java @@ -539,7 +539,17 @@ public class CraftBlockData implements BlockData { diff --git a/Spigot-Server-Patches/0295-Fix-MC-124320.patch b/Spigot-Server-Patches/0294-Fix-MC-124320.patch similarity index 87% rename from Spigot-Server-Patches/0295-Fix-MC-124320.patch rename to Spigot-Server-Patches/0294-Fix-MC-124320.patch index 75822a1e5..e5c251dda 100644 --- a/Spigot-Server-Patches/0295-Fix-MC-124320.patch +++ b/Spigot-Server-Patches/0294-Fix-MC-124320.patch @@ -1,14 +1,14 @@ -From 54f8c029bd7d04779e8892facb36d91dc1e6ea5d Mon Sep 17 00:00:00 2001 +From 7d10f9c126cac888c661923da63c6a6775dc761c Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Thu, 23 Aug 2018 09:25:30 -0500 Subject: [PATCH] Fix MC-124320 diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java -index 69e65ea6c8..549c50de7d 100644 +index dedb063de..8d69a1556 100644 --- a/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java -@@ -160,6 +160,7 @@ public class Block implements IMaterial { +@@ -168,6 +168,7 @@ public class Block implements IMaterial { return tag.isTagged(this); } @@ -17,10 +17,10 @@ index 69e65ea6c8..549c50de7d 100644 IBlockData iblockdata1 = iblockdata; BlockPosition.MutableBlockPosition blockposition_mutableblockposition = new BlockPosition.MutableBlockPosition(); diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java -index a1033ce28b..de2d995349 100644 +index 79d23f152..ad1553f6e 100644 --- a/src/main/java/net/minecraft/server/EntityEnderman.java +++ b/src/main/java/net/minecraft/server/EntityEnderman.java -@@ -325,8 +325,9 @@ public class EntityEnderman extends EntityMonster { +@@ -335,8 +335,9 @@ public class EntityEnderman extends EntityMonster { if (block.a(TagsBlock.ENDERMAN_HOLDABLE) && flag) { // CraftBukkit start - Pickup event if (!org.bukkit.craftbukkit.event.CraftEventFactory.callEntityChangeBlockEvent(this.enderman, blockposition, Blocks.AIR.getBlockData()).isCancelled()) { @@ -31,7 +31,7 @@ index a1033ce28b..de2d995349 100644 } // CraftBukkit end } -@@ -336,6 +337,7 @@ public class EntityEnderman extends EntityMonster { +@@ -346,6 +347,7 @@ public class EntityEnderman extends EntityMonster { static class PathfinderGoalEndermanPlaceBlock extends PathfinderGoal { @@ -39,7 +39,7 @@ index a1033ce28b..de2d995349 100644 private final EntityEnderman a; public PathfinderGoalEndermanPlaceBlock(EntityEnderman entityenderman) { -@@ -358,7 +360,7 @@ public class EntityEnderman extends EntityMonster { +@@ -368,7 +370,7 @@ public class EntityEnderman extends EntityMonster { IBlockData iblockdata = world.getType(blockposition); BlockPosition blockposition1 = blockposition.down(); IBlockData iblockdata1 = world.getType(blockposition1); diff --git a/Spigot-Server-Patches/0296-Slime-Pathfinder-Events.patch b/Spigot-Server-Patches/0295-Slime-Pathfinder-Events.patch similarity index 98% rename from Spigot-Server-Patches/0296-Slime-Pathfinder-Events.patch rename to Spigot-Server-Patches/0295-Slime-Pathfinder-Events.patch index cc4db754d..c34a065fd 100644 --- a/Spigot-Server-Patches/0296-Slime-Pathfinder-Events.patch +++ b/Spigot-Server-Patches/0295-Slime-Pathfinder-Events.patch @@ -1,11 +1,11 @@ -From fe5d3d514e9b8d8ecbd2802769432e137aef8429 Mon Sep 17 00:00:00 2001 +From 4fb60ec90eef434b7450ae50d23e5a415b53068b Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 24 Aug 2018 08:18:42 -0500 Subject: [PATCH] Slime Pathfinder Events diff --git a/src/main/java/net/minecraft/server/EntitySlime.java b/src/main/java/net/minecraft/server/EntitySlime.java -index 8115b1e4ec..d720d0fae1 100644 +index 96cf4bcce..e28c0673d 100644 --- a/src/main/java/net/minecraft/server/EntitySlime.java +++ b/src/main/java/net/minecraft/server/EntitySlime.java @@ -2,6 +2,14 @@ package net.minecraft.server; @@ -147,7 +147,7 @@ index 8115b1e4ec..d720d0fae1 100644 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftSlime.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftSlime.java -index ce6ed6e890..6e9f1b66df 100644 +index ce6ed6e89..6e9f1b66d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftSlime.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftSlime.java @@ -35,4 +35,14 @@ public class CraftSlime extends CraftMob implements Slime { diff --git a/Spigot-Server-Patches/0297-Configurable-speed-for-water-flowing-over-lava.patch b/Spigot-Server-Patches/0296-Configurable-speed-for-water-flowing-over-lava.patch similarity index 96% rename from Spigot-Server-Patches/0297-Configurable-speed-for-water-flowing-over-lava.patch rename to Spigot-Server-Patches/0296-Configurable-speed-for-water-flowing-over-lava.patch index 78a15d166..999a1ae96 100644 --- a/Spigot-Server-Patches/0297-Configurable-speed-for-water-flowing-over-lava.patch +++ b/Spigot-Server-Patches/0296-Configurable-speed-for-water-flowing-over-lava.patch @@ -1,11 +1,11 @@ -From c7f951d53dc285a184ebd84ddc159e8d4d7ce459 Mon Sep 17 00:00:00 2001 +From efe87209c910375ab5cd2d916b907e26f63ce57f Mon Sep 17 00:00:00 2001 From: Byteflux Date: Wed, 8 Aug 2018 16:33:21 -0600 Subject: [PATCH] Configurable speed for water flowing over lava diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 2b5402b009..2c27be63ea 100644 +index 2b5402b00..2c27be63e 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -401,6 +401,12 @@ public class PaperWorldConfig { @@ -22,7 +22,7 @@ index 2b5402b009..2c27be63ea 100644 private void armorStandTick() { this.armorStandTick = this.getBoolean("armor-stands-tick", this.armorStandTick); diff --git a/src/main/java/net/minecraft/server/BlockFluids.java b/src/main/java/net/minecraft/server/BlockFluids.java -index 44e00339f2..b4616f259e 100644 +index 44e00339f..b4616f259 100644 --- a/src/main/java/net/minecraft/server/BlockFluids.java +++ b/src/main/java/net/minecraft/server/BlockFluids.java @@ -70,11 +70,27 @@ public class BlockFluids extends Block implements IFluidSource { diff --git a/Spigot-Server-Patches/0298-Optimize-RegistryMaterials.patch b/Spigot-Server-Patches/0297-Optimize-RegistryMaterials.patch similarity index 96% rename from Spigot-Server-Patches/0298-Optimize-RegistryMaterials.patch rename to Spigot-Server-Patches/0297-Optimize-RegistryMaterials.patch index 02ac20486..c83133600 100644 --- a/Spigot-Server-Patches/0298-Optimize-RegistryMaterials.patch +++ b/Spigot-Server-Patches/0297-Optimize-RegistryMaterials.patch @@ -1,4 +1,4 @@ -From ddba08438bc250dca2d70f64236287a5585d2041 Mon Sep 17 00:00:00 2001 +From da428268d2e5594cecb0cbf38d51f6c3021d6af0 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 26 Aug 2018 20:49:50 -0400 Subject: [PATCH] Optimize RegistryMaterials diff --git a/Spigot-Server-Patches/0299-Add-PhantomPreSpawnEvent.patch b/Spigot-Server-Patches/0298-Add-PhantomPreSpawnEvent.patch similarity index 98% rename from Spigot-Server-Patches/0299-Add-PhantomPreSpawnEvent.patch rename to Spigot-Server-Patches/0298-Add-PhantomPreSpawnEvent.patch index 5014a53c0..93f262d66 100644 --- a/Spigot-Server-Patches/0299-Add-PhantomPreSpawnEvent.patch +++ b/Spigot-Server-Patches/0298-Add-PhantomPreSpawnEvent.patch @@ -1,4 +1,4 @@ -From e9a2ac21b0c53ee65723f6360ff908f3bab91559 Mon Sep 17 00:00:00 2001 +From 94bfe89904dde5bfaadb0e759c2a590a629106fd Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 25 Aug 2018 19:56:51 -0500 Subject: [PATCH] Add PhantomPreSpawnEvent diff --git a/Spigot-Server-Patches/0300-Add-More-Creeper-API.patch b/Spigot-Server-Patches/0299-Add-More-Creeper-API.patch similarity index 95% rename from Spigot-Server-Patches/0300-Add-More-Creeper-API.patch rename to Spigot-Server-Patches/0299-Add-More-Creeper-API.patch index ad76c8fe6..cdc0ce684 100644 --- a/Spigot-Server-Patches/0300-Add-More-Creeper-API.patch +++ b/Spigot-Server-Patches/0299-Add-More-Creeper-API.patch @@ -1,11 +1,11 @@ -From 22a75396ce1cda2d2c0ecf67d7162434431ed05e Mon Sep 17 00:00:00 2001 +From 8dd46e3c15d3dafdeda826cfa52bc05e2772df74 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 24 Aug 2018 11:50:26 -0500 Subject: [PATCH] Add More Creeper API diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java -index 29569805cb..0c2c3c7308 100644 +index 29569805c..0c2c3c730 100644 --- a/src/main/java/net/minecraft/server/EntityCreeper.java +++ b/src/main/java/net/minecraft/server/EntityCreeper.java @@ -13,7 +13,7 @@ public class EntityCreeper extends EntityMonster { @@ -47,7 +47,7 @@ index 29569805cb..0c2c3c7308 100644 public boolean canCauseHeadDrop() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftCreeper.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftCreeper.java -index 796ee9e40d..2d38823c57 100644 +index 796ee9e40..2d38823c5 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftCreeper.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftCreeper.java @@ -78,4 +78,22 @@ public class CraftCreeper extends CraftMonster implements Creeper { diff --git a/Spigot-Server-Patches/0301-Inventory-removeItemAnySlot.patch b/Spigot-Server-Patches/0300-Inventory-removeItemAnySlot.patch similarity index 97% rename from Spigot-Server-Patches/0301-Inventory-removeItemAnySlot.patch rename to Spigot-Server-Patches/0300-Inventory-removeItemAnySlot.patch index 4f1390444..f0eacd9f7 100644 --- a/Spigot-Server-Patches/0301-Inventory-removeItemAnySlot.patch +++ b/Spigot-Server-Patches/0300-Inventory-removeItemAnySlot.patch @@ -1,4 +1,4 @@ -From 740e7b87b8504cf3086a7c636e45990e6cc20b13 Mon Sep 17 00:00:00 2001 +From a93fab3b32dae7412e4c3e7806f964c636d31820 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 28 Aug 2018 23:04:15 -0400 Subject: [PATCH] Inventory#removeItemAnySlot diff --git a/Spigot-Server-Patches/0302-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch b/Spigot-Server-Patches/0301-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch similarity index 91% rename from Spigot-Server-Patches/0302-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch rename to Spigot-Server-Patches/0301-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch index 7fbeb58dc..28dd0196d 100644 --- a/Spigot-Server-Patches/0302-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch +++ b/Spigot-Server-Patches/0301-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch @@ -1,4 +1,4 @@ -From 52313307e1c23168f88eef264d0962646c1252e2 Mon Sep 17 00:00:00 2001 +From 6a510bdc5a0312814acd7e8781d89d38a2b00f40 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,7 +6,7 @@ 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 69c43817fe..28c5fd988d 100644 +index 9601d412a..ca41b6d6b 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -478,7 +478,7 @@ public class CraftWorld implements World { diff --git a/Spigot-Server-Patches/0303-Add-ray-tracing-methods-to-LivingEntity.patch b/Spigot-Server-Patches/0302-Add-ray-tracing-methods-to-LivingEntity.patch similarity index 97% rename from Spigot-Server-Patches/0303-Add-ray-tracing-methods-to-LivingEntity.patch rename to Spigot-Server-Patches/0302-Add-ray-tracing-methods-to-LivingEntity.patch index d2c3b2742..3991369de 100644 --- a/Spigot-Server-Patches/0303-Add-ray-tracing-methods-to-LivingEntity.patch +++ b/Spigot-Server-Patches/0302-Add-ray-tracing-methods-to-LivingEntity.patch @@ -1,11 +1,11 @@ -From 8cd16e4b0496b005088c39361fd4396d734445b5 Mon Sep 17 00:00:00 2001 +From 6382bfe981164038843888357877fb72abddcace Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Mon, 3 Sep 2018 18:20:03 -0500 Subject: [PATCH] Add ray tracing methods to LivingEntity diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index f115686f4..9638cd62e 100644 +index 6334d3dea..ef24896c0 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -3170,6 +3170,23 @@ public abstract class EntityLiving extends Entity { diff --git a/Spigot-Server-Patches/0304-Expose-attack-cooldown-methods-for-Player.patch b/Spigot-Server-Patches/0303-Expose-attack-cooldown-methods-for-Player.patch similarity index 90% rename from Spigot-Server-Patches/0304-Expose-attack-cooldown-methods-for-Player.patch rename to Spigot-Server-Patches/0303-Expose-attack-cooldown-methods-for-Player.patch index 68a291157..6abfad98f 100644 --- a/Spigot-Server-Patches/0304-Expose-attack-cooldown-methods-for-Player.patch +++ b/Spigot-Server-Patches/0303-Expose-attack-cooldown-methods-for-Player.patch @@ -1,11 +1,11 @@ -From d4a5b7132868d3c664aae2007e096f136069db00 Mon Sep 17 00:00:00 2001 +From 29dac3a1b697140395f243de7a281f933480d558 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Tue, 4 Sep 2018 15:02:00 -0500 Subject: [PATCH] Expose attack cooldown methods for Player diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index f665dc0ebe..f17c1c54bf 100644 +index d1a7a873b..2f614dfb6 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -2003,14 +2003,17 @@ public abstract class EntityHuman extends EntityLiving { @@ -27,10 +27,10 @@ index f665dc0ebe..f17c1c54bf 100644 this.aD = 0; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 88398c3320..53d61790c5 100644 +index ba60ece45..0386452a8 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1909,6 +1909,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1908,6 +1908,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { this.resourcePackStatus = status; } diff --git a/Spigot-Server-Patches/0305-Improve-death-events.patch b/Spigot-Server-Patches/0304-Improve-death-events.patch similarity index 98% rename from Spigot-Server-Patches/0305-Improve-death-events.patch rename to Spigot-Server-Patches/0304-Improve-death-events.patch index 21bcda396..9d6722488 100644 --- a/Spigot-Server-Patches/0305-Improve-death-events.patch +++ b/Spigot-Server-Patches/0304-Improve-death-events.patch @@ -1,4 +1,4 @@ -From be17548de6f7c83b90722b7a747a8cc7d220d047 Mon Sep 17 00:00:00 2001 +From bce84891d0934ab524e6f577621772faffc88e31 Mon Sep 17 00:00:00 2001 From: Phoenix616 Date: Tue, 21 Aug 2018 01:39:35 +0100 Subject: [PATCH] Improve death events @@ -27,7 +27,7 @@ index 20db76abd..a148cd437 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 71d557a68..60d43bb50 100644 +index e1c793aad..b060a74a1 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -1463,6 +1463,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -61,7 +61,7 @@ index 5c35909eb..19ba4e059 100644 } diff --git a/src/main/java/net/minecraft/server/EntityFox.java b/src/main/java/net/minecraft/server/EntityFox.java -index 917d60350..95d6b3f36 100644 +index 87091d804..77643413f 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 917d60350..95d6b3f36 100644 public static boolean a(EntityFox entityfox, EntityLiving entityliving) { diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 78b7ab59b..88cb1ac8f 100644 +index ef24896c0..2631e9a4b 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 { @@ -249,7 +249,7 @@ index 78b7ab59b..88cb1ac8f 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 32ac372bc..c5621d9dc 100644 +index d46ddba34..0f3be967e 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 { @@ -327,10 +327,10 @@ 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 53d61790c..6a390c114 100644 +index 0386452a8..deacc2187 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1713,7 +1713,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1712,7 +1712,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } public void sendHealthUpdate() { @@ -348,7 +348,7 @@ index 53d61790c..6a390c114 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 da2a440c1..49be89158 100644 +index 9380b4953..781bf2b42 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -720,9 +720,16 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/0306-Allow-chests-to-be-placed-with-NBT-data.patch b/Spigot-Server-Patches/0305-Allow-chests-to-be-placed-with-NBT-data.patch similarity index 91% rename from Spigot-Server-Patches/0306-Allow-chests-to-be-placed-with-NBT-data.patch rename to Spigot-Server-Patches/0305-Allow-chests-to-be-placed-with-NBT-data.patch index 155993853..e8505ca09 100644 --- a/Spigot-Server-Patches/0306-Allow-chests-to-be-placed-with-NBT-data.patch +++ b/Spigot-Server-Patches/0305-Allow-chests-to-be-placed-with-NBT-data.patch @@ -1,11 +1,11 @@ -From 8c7ec8d719a8d577762f490a48b35eb96f4d7839 Mon Sep 17 00:00:00 2001 +From 7e6b225f5a6ab33236a0fa8e938cdac876bc64bd Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 8 Sep 2018 18:43:31 -0500 Subject: [PATCH] Allow chests to be placed with NBT data diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java -index 2d83c9e79c..dec5894637 100644 +index 2d83c9e79..dec589463 100644 --- a/src/main/java/net/minecraft/server/ItemStack.java +++ b/src/main/java/net/minecraft/server/ItemStack.java @@ -235,6 +235,7 @@ public final class ItemStack { @@ -17,7 +17,7 @@ index 2d83c9e79c..dec5894637 100644 for (BlockState blockstate : blocks) { blockstate.update(true, false); diff --git a/src/main/java/net/minecraft/server/TileEntityChest.java b/src/main/java/net/minecraft/server/TileEntityChest.java -index d606e2e4fd..f9f9183daa 100644 +index d606e2e4f..f9f9183da 100644 --- a/src/main/java/net/minecraft/server/TileEntityChest.java +++ b/src/main/java/net/minecraft/server/TileEntityChest.java @@ -308,7 +308,7 @@ public class TileEntityChest extends TileEntityLootable { // Paper - Remove ITic diff --git a/Spigot-Server-Patches/0307-Mob-Pathfinding-API.patch b/Spigot-Server-Patches/0306-Mob-Pathfinding-API.patch similarity index 95% rename from Spigot-Server-Patches/0307-Mob-Pathfinding-API.patch rename to Spigot-Server-Patches/0306-Mob-Pathfinding-API.patch index 706b56b94..3c3ecb3a6 100644 --- a/Spigot-Server-Patches/0307-Mob-Pathfinding-API.patch +++ b/Spigot-Server-Patches/0306-Mob-Pathfinding-API.patch @@ -1,4 +1,4 @@ -From 9191de4a11253b499d78e48c4794d62b772d65e4 Mon Sep 17 00:00:00 2001 +From dcd722dbbe2dc22a1cba041ae490d1da46d84429 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 9 Sep 2018 13:30:00 -0400 Subject: [PATCH] Mob Pathfinding API @@ -123,7 +123,7 @@ index 000000000..f68a07cb9 + } +} diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java -index 6a1d5a899..f6a5aa27b 100644 +index 6cc142383..1bf7ead71 100644 --- a/src/main/java/net/minecraft/server/NavigationAbstract.java +++ b/src/main/java/net/minecraft/server/NavigationAbstract.java @@ -69,7 +69,7 @@ public abstract class NavigationAbstract { @@ -144,7 +144,7 @@ index 6a1d5a899..f6a5aa27b 100644 BlockPosition blockposition = new BlockPosition(entity); double d0 = entity.locX; double d1 = entity.getBoundingBox().minY; -@@ -150,6 +150,7 @@ public abstract class NavigationAbstract { +@@ -151,6 +151,7 @@ public abstract class NavigationAbstract { private int pathfindFailures = 0; // Paper end @@ -152,7 +152,7 @@ index 6a1d5a899..f6a5aa27b 100644 public boolean a(@Nullable PathEntity pathentity, double d0) { if (pathentity == null) { this.c = null; -@@ -173,7 +174,7 @@ public abstract class NavigationAbstract { +@@ -174,7 +175,7 @@ public abstract class NavigationAbstract { } } @@ -161,7 +161,7 @@ index 6a1d5a899..f6a5aa27b 100644 public PathEntity l() { return this.c; } -@@ -281,6 +282,7 @@ public abstract class NavigationAbstract { +@@ -261,6 +262,7 @@ public abstract class NavigationAbstract { return this.c == null || this.c.b(); } @@ -170,7 +170,7 @@ index 6a1d5a899..f6a5aa27b 100644 this.pathfindFailures = 0; this.lastFailure = 0; // Paper - Pathfinding optimizations this.c = null; diff --git a/src/main/java/net/minecraft/server/PathEntity.java b/src/main/java/net/minecraft/server/PathEntity.java -index d1cb80208..c4cdd0965 100644 +index f1d94420c..5fdb60180 100644 --- a/src/main/java/net/minecraft/server/PathEntity.java +++ b/src/main/java/net/minecraft/server/PathEntity.java @@ -5,11 +5,12 @@ import javax.annotation.Nullable; @@ -208,7 +208,7 @@ index d1cb80208..c4cdd0965 100644 return new Vec3D((double) pathpoint.a, (double) pathpoint.b, (double) pathpoint.c); diff --git a/src/main/java/net/minecraft/server/PathPoint.java b/src/main/java/net/minecraft/server/PathPoint.java -index 0f6e8c51e..5d445e08a 100644 +index 955152ef4..4e2cef8f6 100644 --- a/src/main/java/net/minecraft/server/PathPoint.java +++ b/src/main/java/net/minecraft/server/PathPoint.java @@ -2,9 +2,9 @@ package net.minecraft.server; @@ -221,7 +221,7 @@ index 0f6e8c51e..5d445e08a 100644 + public final int a; public final int getX() { return a; } // Paper - OBFHELPER + public final int b; public final int getY() { return b; } // Paper - OBFHELPER + public final int c; public final int getZ() { return c; } // Paper - OBFHELPER - private final int n; + private final int m; public int d = -1; public float e; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java diff --git a/Spigot-Server-Patches/0308-Prevent-chunk-loading-from-Fluid-Flowing.patch b/Spigot-Server-Patches/0307-Prevent-chunk-loading-from-Fluid-Flowing.patch similarity index 97% rename from Spigot-Server-Patches/0308-Prevent-chunk-loading-from-Fluid-Flowing.patch rename to Spigot-Server-Patches/0307-Prevent-chunk-loading-from-Fluid-Flowing.patch index 41ba5d97f..8a26a440f 100644 --- a/Spigot-Server-Patches/0308-Prevent-chunk-loading-from-Fluid-Flowing.patch +++ b/Spigot-Server-Patches/0307-Prevent-chunk-loading-from-Fluid-Flowing.patch @@ -1,11 +1,11 @@ -From 9ff0339e6bfb0455d7a943f26a148dd1f390cbea Mon Sep 17 00:00:00 2001 +From cb9bc772781cdbbbe129929c0054df90d7ecbc34 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 10 Sep 2018 23:36:16 -0400 Subject: [PATCH] Prevent chunk loading from Fluid Flowing diff --git a/src/main/java/net/minecraft/server/FluidTypeFlowing.java b/src/main/java/net/minecraft/server/FluidTypeFlowing.java -index c76fa0b4bf..5f15143603 100644 +index c76fa0b4b..5f1514360 100644 --- a/src/main/java/net/minecraft/server/FluidTypeFlowing.java +++ b/src/main/java/net/minecraft/server/FluidTypeFlowing.java @@ -178,7 +178,8 @@ public abstract class FluidTypeFlowing extends FluidType { diff --git a/Spigot-Server-Patches/0309-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch b/Spigot-Server-Patches/0308-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch similarity index 99% rename from Spigot-Server-Patches/0309-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch rename to Spigot-Server-Patches/0308-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch index d736d83d0..d071dee61 100644 --- a/Spigot-Server-Patches/0309-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch +++ b/Spigot-Server-Patches/0308-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch @@ -1,11 +1,11 @@ -From 0ec43fbb6597d1650482d20e25cdff0a3f7cd287 Mon Sep 17 00:00:00 2001 +From 9150274ca0d7bca90eb19dda095074435328e565 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 3a215dea43..ea93452e6d 100644 +index 3a215dea4..ea93452e6 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 3a215dea43..ea93452e6d 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 159037fc3e..9dcf2d20f2 100644 +index 159037fc3..9dcf2d20f 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -86,6 +86,12 @@ import org.bukkit.persistence.PersistentDataContainer; diff --git a/Spigot-Server-Patches/0310-Prevent-Mob-AI-Rules-from-Loading-Chunks.patch b/Spigot-Server-Patches/0309-Prevent-Mob-AI-Rules-from-Loading-Chunks.patch similarity index 97% rename from Spigot-Server-Patches/0310-Prevent-Mob-AI-Rules-from-Loading-Chunks.patch rename to Spigot-Server-Patches/0309-Prevent-Mob-AI-Rules-from-Loading-Chunks.patch index dffa57b73..523260515 100644 --- a/Spigot-Server-Patches/0310-Prevent-Mob-AI-Rules-from-Loading-Chunks.patch +++ b/Spigot-Server-Patches/0309-Prevent-Mob-AI-Rules-from-Loading-Chunks.patch @@ -1,4 +1,4 @@ -From c81e2d8af2ab8dd4c2059c669964451c78c628be Mon Sep 17 00:00:00 2001 +From db28398df075be84961aecfbc0101c8a75bbb8e9 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 10 Sep 2018 23:56:36 -0400 Subject: [PATCH] Prevent Mob AI Rules from Loading Chunks @@ -53,7 +53,7 @@ index ce9318c57..541d97344 100644 return block == this.g && iworldreader.getType(blockposition.up()).isAir() && iworldreader.getType(blockposition.up(2)).isAir(); } diff --git a/src/main/java/net/minecraft/server/RandomPositionGenerator.java b/src/main/java/net/minecraft/server/RandomPositionGenerator.java -index 8340d6d25..78eb1b39c 100644 +index b286934aa..c7e25e2be 100644 --- a/src/main/java/net/minecraft/server/RandomPositionGenerator.java +++ b/src/main/java/net/minecraft/server/RandomPositionGenerator.java @@ -93,6 +93,7 @@ public class RandomPositionGenerator { @@ -74,7 +74,7 @@ index 8340d6d25..78eb1b39c 100644 } } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 33f0d1cd8..acd1b856e 100644 +index 31ffc57c9..830780b49 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -647,6 +647,16 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose diff --git a/Spigot-Server-Patches/0311-Prevent-mob-spawning-from-loading-generating-chunks.patch b/Spigot-Server-Patches/0310-Prevent-mob-spawning-from-loading-generating-chunks.patch similarity index 92% rename from Spigot-Server-Patches/0311-Prevent-mob-spawning-from-loading-generating-chunks.patch rename to Spigot-Server-Patches/0310-Prevent-mob-spawning-from-loading-generating-chunks.patch index 19cac7356..47365b9d6 100644 --- a/Spigot-Server-Patches/0311-Prevent-mob-spawning-from-loading-generating-chunks.patch +++ b/Spigot-Server-Patches/0310-Prevent-mob-spawning-from-loading-generating-chunks.patch @@ -1,4 +1,4 @@ -From 5c669194f17f0493b20d717574ec42f8bcade315 Mon Sep 17 00:00:00 2001 +From ca76c23078d05476c1e3ebf58fedf94349e791df Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 12 Sep 2018 21:12:57 -0400 Subject: [PATCH] Prevent mob spawning from loading/generating chunks @@ -6,7 +6,7 @@ Subject: [PATCH] Prevent mob spawning from loading/generating chunks also prevents if out of world border bounds diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java -index e5695c7604..6962931327 100644 +index 14e2f3ca7..5824cbba6 100644 --- a/src/main/java/net/minecraft/server/SpawnerCreature.java +++ b/src/main/java/net/minecraft/server/SpawnerCreature.java @@ -25,9 +25,9 @@ public final class SpawnerCreature { @@ -29,7 +29,7 @@ index e5695c7604..6962931327 100644 + if (entityhuman != null && entityhuman.e((double) f, (double) k, (double) f1) > 576.0D && !blockposition.a((IPosition) (new Vec3D((double) f, (double) k, (double) f1)), 24.0D) && world.isLoadedAndInBounds(blockposition_mutableblockposition)) { // Paper - don't load chunks for mob spawn ChunkCoordIntPair chunkcoordintpair = new ChunkCoordIntPair(blockposition_mutableblockposition); - if (Objects.equals(chunkcoordintpair, chunk.getPos())) { + if (Objects.equals(chunkcoordintpair, chunk.getPos()) || world.getChunkProvider().a(chunkcoordintpair)) { -- 2.21.0 diff --git a/Spigot-Server-Patches/0312-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch b/Spigot-Server-Patches/0311-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch similarity index 96% rename from Spigot-Server-Patches/0312-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch rename to Spigot-Server-Patches/0311-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch index 319776151..a757c2b9b 100644 --- a/Spigot-Server-Patches/0312-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch +++ b/Spigot-Server-Patches/0311-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch @@ -1,4 +1,4 @@ -From a60afe4118bd4d7edbc0e6874aed7a411075e5e5 Mon Sep 17 00:00:00 2001 +From 1e47f305ac479df81f14a237fd06207f33e2cb40 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 12 Sep 2018 21:47:01 -0400 Subject: [PATCH] Optimize Biome Mob Lookups for Mob Spawning @@ -6,7 +6,7 @@ Subject: [PATCH] Optimize Biome Mob Lookups for Mob Spawning Uses an EnumMap as well as a Set paired List for O(1) contains calls. diff --git a/src/main/java/net/minecraft/server/BiomeBase.java b/src/main/java/net/minecraft/server/BiomeBase.java -index 9a839d6540..72eb669c50 100644 +index 9a839d654..72eb669c5 100644 --- a/src/main/java/net/minecraft/server/BiomeBase.java +++ b/src/main/java/net/minecraft/server/BiomeBase.java @@ -38,7 +38,7 @@ public abstract class BiomeBase { diff --git a/Spigot-Server-Patches/0313-Implement-furnace-cook-speed-multiplier-API.patch b/Spigot-Server-Patches/0312-Implement-furnace-cook-speed-multiplier-API.patch similarity index 96% rename from Spigot-Server-Patches/0313-Implement-furnace-cook-speed-multiplier-API.patch rename to Spigot-Server-Patches/0312-Implement-furnace-cook-speed-multiplier-API.patch index 73bde557d..9542d8ce6 100644 --- a/Spigot-Server-Patches/0313-Implement-furnace-cook-speed-multiplier-API.patch +++ b/Spigot-Server-Patches/0312-Implement-furnace-cook-speed-multiplier-API.patch @@ -1,4 +1,4 @@ -From 0540d8d3381619e35ab874c57db5f6b136a8b01b Mon Sep 17 00:00:00 2001 +From 27520fa921bec839d7426ff7a8ebeec05cf974c3 Mon Sep 17 00:00:00 2001 From: Tassu Date: Thu, 13 Sep 2018 08:45:21 +0300 Subject: [PATCH] Implement furnace cook speed multiplier API @@ -6,7 +6,7 @@ Subject: [PATCH] Implement furnace cook speed multiplier API Signed-off-by: Tassu diff --git a/src/main/java/net/minecraft/server/TileEntityFurnace.java b/src/main/java/net/minecraft/server/TileEntityFurnace.java -index be16fe9a9e..b9f3a952e8 100644 +index be16fe9a9..b9f3a952e 100644 --- a/src/main/java/net/minecraft/server/TileEntityFurnace.java +++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java @@ -8,6 +8,7 @@ import java.util.Map; @@ -57,7 +57,7 @@ index be16fe9a9e..b9f3a952e8 100644 this.cookTimeTotal = this.getRecipeCookingTime(); this.burn(irecipe); diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftFurnace.java b/src/main/java/org/bukkit/craftbukkit/block/CraftFurnace.java -index 9cc67915ca..1ce10ea049 100644 +index 9cc67915c..1ce10ea04 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftFurnace.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftFurnace.java @@ -63,4 +63,18 @@ public class CraftFurnace extends CraftContainer diff --git a/Spigot-Server-Patches/0314-Support-Overriding-World-Seeds.patch b/Spigot-Server-Patches/0313-Support-Overriding-World-Seeds.patch similarity index 96% rename from Spigot-Server-Patches/0314-Support-Overriding-World-Seeds.patch rename to Spigot-Server-Patches/0313-Support-Overriding-World-Seeds.patch index 7c1764b00..9b2102803 100644 --- a/Spigot-Server-Patches/0314-Support-Overriding-World-Seeds.patch +++ b/Spigot-Server-Patches/0313-Support-Overriding-World-Seeds.patch @@ -1,4 +1,4 @@ -From b6db6d1905c89bb16a5ea70a27e127d584ecdb2e Mon Sep 17 00:00:00 2001 +From 8fa7e6f90ba36f6a7533c57bb79dd28abf31bd0c Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 17 Sep 2018 23:05:31 -0400 Subject: [PATCH] Support Overriding World Seeds @@ -59,7 +59,7 @@ index 833659bbb..ffb18902f 100644 + } } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index e5d96bf75..f04d0530f 100644 +index 6a3776091..0209330ad 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -363,7 +363,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Mon, 17 Sep 2018 23:37:31 -0400 Subject: [PATCH] Optimize Server World Map @@ -21,7 +21,7 @@ known NMS used methods, but we can add more if naughty plugins are found later. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldMap.java b/src/main/java/com/destroystokyo/paper/PaperWorldMap.java new file mode 100644 -index 0000000000..af9e4455c6 +index 000000000..6bb2f98b4 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/PaperWorldMap.java @@ -0,0 +1,191 @@ @@ -62,7 +62,7 @@ index 0000000000..af9e4455c6 + + @Override + public void remove() { -+ worlds.set(last.dimension.getDimensionID()+1, null); ++ worlds.set(last.worldProvider.getDimensionManager().getDimensionID() + 1, null); + } + }; + } @@ -142,7 +142,7 @@ index 0000000000..af9e4455c6 + + @Override + public boolean containsValue(Object value) { -+ return value instanceof WorldServer && get(((WorldServer) value).dimension) != null; ++ return value instanceof WorldServer && get(((WorldServer) value).worldProvider.getDimensionManager()) != null; + } + + @Nonnull @@ -161,7 +161,7 @@ index 0000000000..af9e4455c6 + + @Override + public DimensionManager next() { -+ return iterator.next().dimension; ++ return iterator.next().worldProvider.getDimensionManager(); + } + + @Override @@ -199,7 +199,7 @@ index 0000000000..af9e4455c6 + @Override + public Entry next() { + WorldServer entry = iterator.next(); -+ return new SimpleEntry<>(entry.dimension, entry); ++ return new SimpleEntry<>(entry.worldProvider.getDimensionManager(), entry); + } + + @Override @@ -217,7 +217,7 @@ index 0000000000..af9e4455c6 + } +} diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 55c096bc08..04adcbb6b6 100644 +index 0209330ad..0a02dece6 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -78,7 +78,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Tue, 18 Sep 2018 23:53:23 +0100 Subject: [PATCH] PreSpawnerSpawnEvent @@ -9,7 +9,7 @@ SpawnerSpawnEvent gets called instead of the CreatureSpawnEvent for spawners. diff --git a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java -index bca0e3a2e2..96080b6c73 100644 +index 55764deec..dbb8098d6 100644 --- a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java +++ b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java @@ -108,11 +108,11 @@ public abstract class MobSpawnerAbstract { diff --git a/Spigot-Server-Patches/0317-Catch-JsonParseException-in-Entity-and-TE-names.patch b/Spigot-Server-Patches/0316-Catch-JsonParseException-in-Entity-and-TE-names.patch similarity index 98% rename from Spigot-Server-Patches/0317-Catch-JsonParseException-in-Entity-and-TE-names.patch rename to Spigot-Server-Patches/0316-Catch-JsonParseException-in-Entity-and-TE-names.patch index c37a2b9d7..780a20f08 100644 --- a/Spigot-Server-Patches/0317-Catch-JsonParseException-in-Entity-and-TE-names.patch +++ b/Spigot-Server-Patches/0316-Catch-JsonParseException-in-Entity-and-TE-names.patch @@ -1,4 +1,4 @@ -From c9d621cca01f33243a1433499213955a892bc3cd Mon Sep 17 00:00:00 2001 +From 7002617ae09ca1a57ca7a72648b528047e78b358 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Sat, 22 Sep 2018 15:56:59 -0400 Subject: [PATCH] Catch JsonParseException in Entity and TE names @@ -26,7 +26,7 @@ index 4b7aefb7a..9e568d5d1 100644 if (nbttagcompound.hasKeyOfType("TrackOutput", 1)) { diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 60d43bb50..969e7a111 100644 +index b060a74a1..b1cf9b85f 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -1647,7 +1647,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke diff --git a/Spigot-Server-Patches/0318-Avoid-dimension-id-collisions.patch b/Spigot-Server-Patches/0317-Avoid-dimension-id-collisions.patch similarity index 67% rename from Spigot-Server-Patches/0318-Avoid-dimension-id-collisions.patch rename to Spigot-Server-Patches/0317-Avoid-dimension-id-collisions.patch index 725d48389..b02bc31d2 100644 --- a/Spigot-Server-Patches/0318-Avoid-dimension-id-collisions.patch +++ b/Spigot-Server-Patches/0317-Avoid-dimension-id-collisions.patch @@ -1,4 +1,4 @@ -From 7c3871ebd4902e631d039bb26b9b17eae7ce2cc1 Mon Sep 17 00:00:00 2001 +From 2b69d7f4b9412f29bb5dd3f7e9e2f9c4c5933a9d Mon Sep 17 00:00:00 2001 From: Brokkonaut Date: Tue, 25 Sep 2018 06:53:43 +0200 Subject: [PATCH] Avoid dimension id collisions @@ -8,15 +8,15 @@ we would reuse an existing dimension id, if some other dimension was unloaded before. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index de98e896c2..034716a20a 100644 +index 2e03556f2..467583f1d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -971,7 +971,7 @@ public final class CraftServer implements Server { boolean used = false; do { for (WorldServer server : console.getWorlds()) { -- used = server.dimension.getDimensionID() == dimension; -+ used = server.dimension.getDimensionID() + 1 == dimension; // Paper - getDimensionID returns the dimension - 1, so we have to add 1 +- used = server.getWorldProvider().getDimensionManager().getDimensionID() == dimension; ++ used = server.getWorldProvider().getDimensionManager().getDimensionID() + 1 == dimension; // Paper - getDimensionID returns the dimension - 1, so we have to add 1 if (used) { dimension++; break; diff --git a/Spigot-Server-Patches/0319-Honor-EntityAgeable.ageLock.patch b/Spigot-Server-Patches/0318-Honor-EntityAgeable.ageLock.patch similarity index 86% rename from Spigot-Server-Patches/0319-Honor-EntityAgeable.ageLock.patch rename to Spigot-Server-Patches/0318-Honor-EntityAgeable.ageLock.patch index 6113ff996..0e530d9b5 100644 --- a/Spigot-Server-Patches/0319-Honor-EntityAgeable.ageLock.patch +++ b/Spigot-Server-Patches/0318-Honor-EntityAgeable.ageLock.patch @@ -1,11 +1,11 @@ -From d7a4c18a4e730e71f85846a7d53d3674c0b71f50 Mon Sep 17 00:00:00 2001 +From f833510f284d253f645486538ee2048dfe2bd5c4 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sun, 23 Sep 2018 20:59:53 -0500 Subject: [PATCH] Honor EntityAgeable.ageLock diff --git a/src/main/java/net/minecraft/server/EntityAgeable.java b/src/main/java/net/minecraft/server/EntityAgeable.java -index da9740a99e..e87754ef33 100644 +index da9740a99..e87754ef3 100644 --- a/src/main/java/net/minecraft/server/EntityAgeable.java +++ b/src/main/java/net/minecraft/server/EntityAgeable.java @@ -85,6 +85,7 @@ public abstract class EntityAgeable extends EntityCreature { diff --git a/Spigot-Server-Patches/0321-Don-t-recheck-type-after-setting-a-block.patch b/Spigot-Server-Patches/0319-Don-t-recheck-type-after-setting-a-block.patch similarity index 88% rename from Spigot-Server-Patches/0321-Don-t-recheck-type-after-setting-a-block.patch rename to Spigot-Server-Patches/0319-Don-t-recheck-type-after-setting-a-block.patch index a91585f40..ae416cfb0 100644 --- a/Spigot-Server-Patches/0321-Don-t-recheck-type-after-setting-a-block.patch +++ b/Spigot-Server-Patches/0319-Don-t-recheck-type-after-setting-a-block.patch @@ -1,4 +1,4 @@ -From 22110e16bbd4752ac2920b96a8e2fee13d10ece5 Mon Sep 17 00:00:00 2001 +From 16d3083eb4af5bfbf22050fa5efdc52452a4304d Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 28 Sep 2018 22:27:33 -0400 Subject: [PATCH] Don't recheck type after setting a block @@ -16,10 +16,10 @@ be having data corruption issues anyways. This provides a small boost to all setType calls. diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index d313b9b3ca..2dcfb60f4d 100644 +index 2b4ad100e..4d96e4fb1 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java -@@ -338,7 +338,7 @@ public class Chunk implements IChunkAccess { +@@ -339,7 +339,7 @@ public class Chunk implements IChunkAccess { this.world.removeTileEntity(blockposition); } diff --git a/Spigot-Server-Patches/0322-Configurable-connection-throttle-kick-message.patch b/Spigot-Server-Patches/0320-Configurable-connection-throttle-kick-message.patch similarity index 97% rename from Spigot-Server-Patches/0322-Configurable-connection-throttle-kick-message.patch rename to Spigot-Server-Patches/0320-Configurable-connection-throttle-kick-message.patch index 83f1f1995..f58c753b7 100644 --- a/Spigot-Server-Patches/0322-Configurable-connection-throttle-kick-message.patch +++ b/Spigot-Server-Patches/0320-Configurable-connection-throttle-kick-message.patch @@ -1,4 +1,4 @@ -From 521a691d8f4b9f9cb4d45347a236b426d7a01c47 Mon Sep 17 00:00:00 2001 +From 397f0632ca0d9587e4ccc3eb585fcf72126c6f03 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Tue, 2 Oct 2018 09:57:50 +0100 Subject: [PATCH] Configurable connection throttle kick message diff --git a/Spigot-Server-Patches/0320-Ignore-Dimension-NBT-field-in-Entity-data.patch b/Spigot-Server-Patches/0320-Ignore-Dimension-NBT-field-in-Entity-data.patch deleted file mode 100644 index a46139260..000000000 --- a/Spigot-Server-Patches/0320-Ignore-Dimension-NBT-field-in-Entity-data.patch +++ /dev/null @@ -1,31 +0,0 @@ -From e1c0f3575fee37a5f1b2ed2a4d83506563fde55c Mon Sep 17 00:00:00 2001 -From: Aikar -Date: Thu, 27 Sep 2018 00:08:31 -0400 -Subject: [PATCH] Ignore Dimension NBT field in Entity data - -Minecraft is trying to set Dimension Objects based on a Dimension ID - -Dimension ID's for custom worlds are dynamically allocate dand not guaranteed -consistent. - -This removes checking the NBT data, as the Entity will always have its -DimensionManager set to the world it is being placed into. - -This fixes corrupt entities breaking chunk saving in custom worlds. - -diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 969e7a111..941d4eae8 100644 ---- a/src/main/java/net/minecraft/server/Entity.java -+++ b/src/main/java/net/minecraft/server/Entity.java -@@ -1632,7 +1632,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke - this.setAirTicks(nbttagcompound.getShort("Air")); - this.onGround = nbttagcompound.getBoolean("OnGround"); - if (nbttagcompound.hasKey("Dimension")) { -- this.dimension = DimensionManager.a(nbttagcompound.getInt("Dimension")); -+ //this.dimension = DimensionManager.a(nbttagcompound.getInt("Dimension")); // Paper - always controlled by world - } - - this.invulnerable = nbttagcompound.getBoolean("Invulnerable"); --- -2.21.0 - diff --git a/Spigot-Server-Patches/0323-Hook-into-CB-plugin-rewrites.patch b/Spigot-Server-Patches/0321-Hook-into-CB-plugin-rewrites.patch similarity index 98% rename from Spigot-Server-Patches/0323-Hook-into-CB-plugin-rewrites.patch rename to Spigot-Server-Patches/0321-Hook-into-CB-plugin-rewrites.patch index 467e2f529..bd29aec02 100644 --- a/Spigot-Server-Patches/0323-Hook-into-CB-plugin-rewrites.patch +++ b/Spigot-Server-Patches/0321-Hook-into-CB-plugin-rewrites.patch @@ -1,4 +1,4 @@ -From a40845d2056dc19c755700b856c7f18ec843d829 Mon Sep 17 00:00:00 2001 +From 04d90bf82be6f7b17fa6cf1a15b57a8f2e186c47 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Wed, 3 Oct 2018 20:09:18 -0400 Subject: [PATCH] Hook into CB plugin rewrites @@ -8,7 +8,7 @@ our own relocation. Also lets us rewrite NMS calls for when we're debugging in an IDE pre-relocate. diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index 467b2d9385..61f1023557 100644 +index 467b2d938..61f102355 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java @@ -6,7 +6,9 @@ import java.io.FileOutputStream; diff --git a/Spigot-Server-Patches/0324-Allow-setting-the-vex-s-summoner.patch b/Spigot-Server-Patches/0322-Allow-setting-the-vex-s-summoner.patch similarity index 90% rename from Spigot-Server-Patches/0324-Allow-setting-the-vex-s-summoner.patch rename to Spigot-Server-Patches/0322-Allow-setting-the-vex-s-summoner.patch index 0aaa08538..39227feab 100644 --- a/Spigot-Server-Patches/0324-Allow-setting-the-vex-s-summoner.patch +++ b/Spigot-Server-Patches/0322-Allow-setting-the-vex-s-summoner.patch @@ -1,11 +1,11 @@ -From 7f07cbbf0ecb65b67ebb8e1f00f569aeb1d33807 Mon Sep 17 00:00:00 2001 +From a9e0d1a0128455b66e09c38a5c2e1426a17e3c2e Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 6 Oct 2018 21:47:44 -0500 Subject: [PATCH] Allow setting the vex's summoner diff --git a/src/main/java/net/minecraft/server/EntityVex.java b/src/main/java/net/minecraft/server/EntityVex.java -index 83e022c91b..c569330689 100644 +index 83e022c91..c56933068 100644 --- a/src/main/java/net/minecraft/server/EntityVex.java +++ b/src/main/java/net/minecraft/server/EntityVex.java @@ -133,6 +133,7 @@ public class EntityVex extends EntityMonster { @@ -17,7 +17,7 @@ index 83e022c91b..c569330689 100644 this.c = entityinsentient; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java -index 169c951ec3..2f7df3074f 100644 +index 169c951ec..2f7df3074 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java @@ -23,6 +23,10 @@ public class CraftVex extends CraftMonster implements Vex { diff --git a/Spigot-Server-Patches/0325-Add-sun-related-API.patch b/Spigot-Server-Patches/0323-Add-sun-related-API.patch similarity index 94% rename from Spigot-Server-Patches/0325-Add-sun-related-API.patch rename to Spigot-Server-Patches/0323-Add-sun-related-API.patch index e536b84ea..cea9e63d0 100644 --- a/Spigot-Server-Patches/0325-Add-sun-related-API.patch +++ b/Spigot-Server-Patches/0323-Add-sun-related-API.patch @@ -1,4 +1,4 @@ -From 6f55238bc936a3be2d872c5f7a0b8c71b9832acf Mon Sep 17 00:00:00 2001 +From 86fd77f780aa41b7cc576b4bdf0e61a5cf60f961 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sun, 7 Oct 2018 00:54:21 -0500 Subject: [PATCH] Add sun related API @@ -17,7 +17,7 @@ index f1621a9e9..a8318c88a 100644 if (this.world.J() && !this.world.isClientSide) { float f = this.aE(); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index acd1b856e..8bbcbbf89 100644 +index 830780b49..fee14bb6d 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -669,6 +669,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -29,7 +29,7 @@ index acd1b856e..8bbcbbf89 100644 return this.d < 4; } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 583fc6f75..b9786909b 100644 +index ca41b6d6b..073400f23 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -740,6 +740,13 @@ public class CraftWorld implements World { diff --git a/Spigot-Server-Patches/0326-Check-Drowned-for-Villager-Aggression-Config.patch b/Spigot-Server-Patches/0324-Check-Drowned-for-Villager-Aggression-Config.patch similarity index 93% rename from Spigot-Server-Patches/0326-Check-Drowned-for-Villager-Aggression-Config.patch rename to Spigot-Server-Patches/0324-Check-Drowned-for-Villager-Aggression-Config.patch index 8963cdce1..37ce95542 100644 --- a/Spigot-Server-Patches/0326-Check-Drowned-for-Villager-Aggression-Config.patch +++ b/Spigot-Server-Patches/0324-Check-Drowned-for-Villager-Aggression-Config.patch @@ -1,11 +1,11 @@ -From a658ab3ec9a81df868f7045a06ff30ddaca85079 Mon Sep 17 00:00:00 2001 +From 3a093eec87f06eca566b10f21c8ecb4fab5805ea Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Wed, 10 Oct 2018 21:22:44 -0500 Subject: [PATCH] Check Drowned for Villager Aggression Config diff --git a/src/main/java/net/minecraft/server/EntityDrowned.java b/src/main/java/net/minecraft/server/EntityDrowned.java -index 10957c8778..449fbee60f 100644 +index 3d41af863..817769764 100644 --- a/src/main/java/net/minecraft/server/EntityDrowned.java +++ b/src/main/java/net/minecraft/server/EntityDrowned.java @@ -29,7 +29,7 @@ public class EntityDrowned extends EntityZombie implements IRangedEntity { diff --git a/Spigot-Server-Patches/0327-Here-s-Johnny.patch b/Spigot-Server-Patches/0325-Here-s-Johnny.patch similarity index 92% rename from Spigot-Server-Patches/0327-Here-s-Johnny.patch rename to Spigot-Server-Patches/0325-Here-s-Johnny.patch index 7cdfe78c3..51762c5de 100644 --- a/Spigot-Server-Patches/0327-Here-s-Johnny.patch +++ b/Spigot-Server-Patches/0325-Here-s-Johnny.patch @@ -1,11 +1,11 @@ -From a267b66190a872c833e4c3a3472df0e9be69490d Mon Sep 17 00:00:00 2001 +From f3d0b16716045edf78c0abf479f5382c2ec6d3aa Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 12 Oct 2018 01:37:22 -0500 Subject: [PATCH] Here's Johnny! diff --git a/src/main/java/net/minecraft/server/EntityVindicator.java b/src/main/java/net/minecraft/server/EntityVindicator.java -index b566e77869..106e7c5f56 100644 +index dbd189afe..9d3c37dce 100644 --- a/src/main/java/net/minecraft/server/EntityVindicator.java +++ b/src/main/java/net/minecraft/server/EntityVindicator.java @@ -11,7 +11,7 @@ public class EntityVindicator extends EntityIllagerAbstract { @@ -18,7 +18,7 @@ index b566e77869..106e7c5f56 100644 public EntityVindicator(EntityTypes entitytypes, World world) { super(entitytypes, world); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftVindicator.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftVindicator.java -index 951d479298..5ff957ced7 100644 +index 951d47929..5ff957ced 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftVindicator.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftVindicator.java @@ -25,4 +25,14 @@ public class CraftVindicator extends CraftIllager implements Vindicator { diff --git a/Spigot-Server-Patches/0328-Turtle-API.patch b/Spigot-Server-Patches/0326-Turtle-API.patch similarity index 98% rename from Spigot-Server-Patches/0328-Turtle-API.patch rename to Spigot-Server-Patches/0326-Turtle-API.patch index 5ca38d9cc..03891a649 100644 --- a/Spigot-Server-Patches/0328-Turtle-API.patch +++ b/Spigot-Server-Patches/0326-Turtle-API.patch @@ -1,11 +1,11 @@ -From a51ed1f531b83e655b0bcba4a2a1ed26a65ea39d Mon Sep 17 00:00:00 2001 +From d37a4df25157249bd33e4ddb13976849176aeb4d Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 29 Sep 2018 16:08:23 -0500 Subject: [PATCH] Turtle API diff --git a/src/main/java/net/minecraft/server/EntityTurtle.java b/src/main/java/net/minecraft/server/EntityTurtle.java -index 1b4933c077..b7929c5c46 100644 +index 1b4933c07..b7929c5c4 100644 --- a/src/main/java/net/minecraft/server/EntityTurtle.java +++ b/src/main/java/net/minecraft/server/EntityTurtle.java @@ -27,51 +27,63 @@ public class EntityTurtle extends EntityAnimal { @@ -104,7 +104,7 @@ index 1b4933c077..b7929c5c46 100644 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftTurtle.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftTurtle.java -index 123a2c75ca..8edcf7af65 100644 +index 123a2c75c..8edcf7af6 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftTurtle.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftTurtle.java @@ -1,6 +1,8 @@ diff --git a/Spigot-Server-Patches/0329-Limit-lightning-strike-effect-distance.patch b/Spigot-Server-Patches/0327-Limit-lightning-strike-effect-distance.patch similarity index 95% rename from Spigot-Server-Patches/0329-Limit-lightning-strike-effect-distance.patch rename to Spigot-Server-Patches/0327-Limit-lightning-strike-effect-distance.patch index 9ea42292e..228fbd529 100644 --- a/Spigot-Server-Patches/0329-Limit-lightning-strike-effect-distance.patch +++ b/Spigot-Server-Patches/0327-Limit-lightning-strike-effect-distance.patch @@ -1,11 +1,11 @@ -From 4372354a6b40fe4e47682a1f4975a2fa335f7257 Mon Sep 17 00:00:00 2001 +From b83a25415627e39b211dd487f01524f92ff960dd Mon Sep 17 00:00:00 2001 From: Trigary Date: Fri, 14 Sep 2018 17:42:08 +0200 Subject: [PATCH] Limit lightning strike effect distance diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 2c27be63ea..fb44fccc92 100644 +index 2c27be63e..fb44fccc9 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -234,6 +234,28 @@ public class PaperWorldConfig { @@ -38,7 +38,7 @@ index 2c27be63ea..fb44fccc92 100644 public boolean firePhysicsEventForRedstone = false; private void firePhysicsEventForRedstone() { diff --git a/src/main/java/net/minecraft/server/EntityLightning.java b/src/main/java/net/minecraft/server/EntityLightning.java -index adf68d1650..fbcda86b38 100644 +index adf68d165..fbcda86b3 100644 --- a/src/main/java/net/minecraft/server/EntityLightning.java +++ b/src/main/java/net/minecraft/server/EntityLightning.java @@ -64,6 +64,17 @@ public class EntityLightning extends Entity { @@ -69,10 +69,10 @@ index adf68d1650..fbcda86b38 100644 --this.lifeTicks; diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 281b11f010..e60fc0d585 100644 +index 892c49506..661ea58b8 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -1189,7 +1189,7 @@ public class WorldServer extends World { +@@ -1182,7 +1182,7 @@ public class WorldServer extends World { } // CraftBukkit end this.globalEntityList.add(entitylightning); diff --git a/Spigot-Server-Patches/0330-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch b/Spigot-Server-Patches/0328-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch similarity index 94% rename from Spigot-Server-Patches/0330-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch rename to Spigot-Server-Patches/0328-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch index 665dcf2d5..d7e4f875a 100644 --- a/Spigot-Server-Patches/0330-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch +++ b/Spigot-Server-Patches/0328-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch @@ -1,4 +1,4 @@ -From 43fb23d86ba0eb613e10e15816af1b2abe597f67 Mon Sep 17 00:00:00 2001 +From 6e2c48ed3c978e78e0d74fd0d0048dfd1765980d Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 17 Oct 2018 19:17:27 -0400 Subject: [PATCH] MC-50319: Check other worlds for shooter of projectiles @@ -11,7 +11,7 @@ If the projectile fails to find the shooter in the current world, check other worlds. diff --git a/src/main/java/net/minecraft/server/EntityProjectile.java b/src/main/java/net/minecraft/server/EntityProjectile.java -index c19828ed56..7deeaa0834 100644 +index c19828ed5..7deeaa083 100644 --- a/src/main/java/net/minecraft/server/EntityProjectile.java +++ b/src/main/java/net/minecraft/server/EntityProjectile.java @@ -213,11 +213,21 @@ public abstract class EntityProjectile extends Entity implements IProjectile { diff --git a/Spigot-Server-Patches/0331-Call-player-spectator-target-events.patch b/Spigot-Server-Patches/0329-Call-player-spectator-target-events.patch similarity index 97% rename from Spigot-Server-Patches/0331-Call-player-spectator-target-events.patch rename to Spigot-Server-Patches/0329-Call-player-spectator-target-events.patch index 8f08381d1..b6b9ed3ad 100644 --- a/Spigot-Server-Patches/0331-Call-player-spectator-target-events.patch +++ b/Spigot-Server-Patches/0329-Call-player-spectator-target-events.patch @@ -1,11 +1,11 @@ -From cd563ddeac82f466e39ae9821d4cf0675bfc4fa3 Mon Sep 17 00:00:00 2001 +From c4bb29d6e705e5938f85ba2c2448daa843c234b6 Mon Sep 17 00:00:00 2001 From: Caleb Bassham Date: Fri, 28 Sep 2018 02:32:19 -0500 Subject: [PATCH] Call player spectator target events diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index c5621d9dc..cbcf86b60 100644 +index 0f3be967e..1c1c3a9b5 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -60,7 +60,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { diff --git a/Spigot-Server-Patches/0332-Add-Velocity-IP-Forwarding-Support.patch b/Spigot-Server-Patches/0330-Add-Velocity-IP-Forwarding-Support.patch similarity index 99% rename from Spigot-Server-Patches/0332-Add-Velocity-IP-Forwarding-Support.patch rename to Spigot-Server-Patches/0330-Add-Velocity-IP-Forwarding-Support.patch index 4b4664bbf..c1b7dce87 100644 --- a/Spigot-Server-Patches/0332-Add-Velocity-IP-Forwarding-Support.patch +++ b/Spigot-Server-Patches/0330-Add-Velocity-IP-Forwarding-Support.patch @@ -1,4 +1,4 @@ -From de0ac6d4f045984c9bca24554ae2b8b17babcbd7 Mon Sep 17 00:00:00 2001 +From 2438891aab7c354df7549a2b71c7bc7989795293 Mon Sep 17 00:00:00 2001 From: Andrew Steinborn Date: Mon, 8 Oct 2018 14:36:14 -0400 Subject: [PATCH] Add Velocity IP Forwarding Support diff --git a/Spigot-Server-Patches/0333-Add-more-Witch-API.patch b/Spigot-Server-Patches/0331-Add-more-Witch-API.patch similarity index 98% rename from Spigot-Server-Patches/0333-Add-more-Witch-API.patch rename to Spigot-Server-Patches/0331-Add-more-Witch-API.patch index c60803a13..ae12f6404 100644 --- a/Spigot-Server-Patches/0333-Add-more-Witch-API.patch +++ b/Spigot-Server-Patches/0331-Add-more-Witch-API.patch @@ -1,11 +1,11 @@ -From de63395f1f3c11be3c9c2474811a6e3d4976ec31 Mon Sep 17 00:00:00 2001 +From 0e8d054718a2058311545e3c11b1c5ef9675112a Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 12 Oct 2018 14:10:46 -0500 Subject: [PATCH] Add more Witch API diff --git a/src/main/java/net/minecraft/server/EntityWitch.java b/src/main/java/net/minecraft/server/EntityWitch.java -index ae9efb72c1..3cbb34a0ce 100644 +index ae9efb72c..3cbb34a0c 100644 --- a/src/main/java/net/minecraft/server/EntityWitch.java +++ b/src/main/java/net/minecraft/server/EntityWitch.java @@ -1,5 +1,11 @@ @@ -96,7 +96,7 @@ index ae9efb72c1..3cbb34a0ce 100644 public SoundEffect dW() { return SoundEffects.ENTITY_WITCH_CELEBRATE; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftWitch.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftWitch.java -index bae107e76e..b43a2bbd5b 100644 +index bae107e76..b43a2bbd5 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftWitch.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftWitch.java @@ -1,12 +1,18 @@ diff --git a/Spigot-Server-Patches/0334-Fix-MC-93764.patch b/Spigot-Server-Patches/0332-Fix-MC-93764.patch similarity index 86% rename from Spigot-Server-Patches/0334-Fix-MC-93764.patch rename to Spigot-Server-Patches/0332-Fix-MC-93764.patch index 203272820..a557655d4 100644 --- a/Spigot-Server-Patches/0334-Fix-MC-93764.patch +++ b/Spigot-Server-Patches/0332-Fix-MC-93764.patch @@ -1,11 +1,11 @@ -From aedfff84f881068ca6b450ffb2bca37b4d6ed776 Mon Sep 17 00:00:00 2001 +From b99595bced24c8b10e641089ee1b81b81c89f35f Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Fri, 19 Oct 2018 19:38:45 -0500 Subject: [PATCH] Fix MC-93764 diff --git a/src/main/java/net/minecraft/server/WorldProviderTheEnd.java b/src/main/java/net/minecraft/server/WorldProviderTheEnd.java -index c25be16423..b323df98e5 100644 +index 715faef17..b97408cff 100644 --- a/src/main/java/net/minecraft/server/WorldProviderTheEnd.java +++ b/src/main/java/net/minecraft/server/WorldProviderTheEnd.java @@ -27,7 +27,7 @@ public class WorldProviderTheEnd extends WorldProvider { diff --git a/Spigot-Server-Patches/0335-Add-option-to-prevent-players-from-moving-into-unloa.patch b/Spigot-Server-Patches/0333-Add-option-to-prevent-players-from-moving-into-unloa.patch similarity index 96% rename from Spigot-Server-Patches/0335-Add-option-to-prevent-players-from-moving-into-unloa.patch rename to Spigot-Server-Patches/0333-Add-option-to-prevent-players-from-moving-into-unloa.patch index 3fa297c88..ec423135f 100644 --- a/Spigot-Server-Patches/0335-Add-option-to-prevent-players-from-moving-into-unloa.patch +++ b/Spigot-Server-Patches/0333-Add-option-to-prevent-players-from-moving-into-unloa.patch @@ -1,4 +1,4 @@ -From 6f34ebdd0dda7090edb962cf3d8951758d97999b Mon Sep 17 00:00:00 2001 +From a96103ced927454e05bb337ceca2bbf72ba0a4e9 Mon Sep 17 00:00:00 2001 From: Gabriele C Date: Mon, 22 Oct 2018 17:34:10 +0200 Subject: [PATCH] Add option to prevent players from moving into unloaded @@ -6,7 +6,7 @@ Subject: [PATCH] Add option to prevent players from moving into unloaded diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index fb44fccc92..ad793ffa38 100644 +index fb44fccc9..ad793ffa3 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -434,4 +434,9 @@ public class PaperWorldConfig { @@ -20,7 +20,7 @@ index fb44fccc92..ad793ffa38 100644 + } } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index bc04400484..b0fe05c26b 100644 +index d163836d0..3eae38a8a 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -346,6 +346,13 @@ public class PlayerConnection implements PacketListenerPlayIn { diff --git a/Spigot-Server-Patches/0336-Reset-players-airTicks-on-respawn.patch b/Spigot-Server-Patches/0334-Reset-players-airTicks-on-respawn.patch similarity index 89% rename from Spigot-Server-Patches/0336-Reset-players-airTicks-on-respawn.patch rename to Spigot-Server-Patches/0334-Reset-players-airTicks-on-respawn.patch index 6876e97c5..ac80bf2e9 100644 --- a/Spigot-Server-Patches/0336-Reset-players-airTicks-on-respawn.patch +++ b/Spigot-Server-Patches/0334-Reset-players-airTicks-on-respawn.patch @@ -1,11 +1,11 @@ -From 7a0f04ee81f62b896a32dc69570a183706171816 Mon Sep 17 00:00:00 2001 +From cf8dc731a198046af0f477ff9d04e31265c31a14 Mon Sep 17 00:00:00 2001 From: GreenMeanie Date: Sat, 20 Oct 2018 22:34:02 -0400 Subject: [PATCH] Reset players airTicks on respawn diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 941d4eae8..ff1488389 100644 +index b1cf9b85f..91a7925dd 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -2268,7 +2268,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -18,7 +18,7 @@ index 941d4eae8..ff1488389 100644 } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index cbcf86b60..f5244de49 100644 +index 1c1c3a9b5..e1f618684 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -1857,6 +1857,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { diff --git a/Spigot-Server-Patches/0337-Strip-private-area-unicode-characters-from-signs.patch b/Spigot-Server-Patches/0335-Strip-private-area-unicode-characters-from-signs.patch similarity index 80% rename from Spigot-Server-Patches/0337-Strip-private-area-unicode-characters-from-signs.patch rename to Spigot-Server-Patches/0335-Strip-private-area-unicode-characters-from-signs.patch index 240b3964d..ac76be152 100644 --- a/Spigot-Server-Patches/0337-Strip-private-area-unicode-characters-from-signs.patch +++ b/Spigot-Server-Patches/0335-Strip-private-area-unicode-characters-from-signs.patch @@ -1,4 +1,4 @@ -From 710758c98f59d5b99d69a98b5d3a6d3462d6581d Mon Sep 17 00:00:00 2001 +From 7d88f5608cfd251ea0135286fadbce3017465eb2 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 23 Oct 2018 20:53:43 -0400 Subject: [PATCH] Strip private area unicode characters from signs @@ -20,12 +20,12 @@ think of no reason to use it. Fixes GH-1571 diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java -index 9de03a24cf..4165c6d11a 100644 +index 626ba9b17..7b5d534f4 100644 --- a/src/main/java/net/minecraft/server/TileEntitySign.java +++ b/src/main/java/net/minecraft/server/TileEntitySign.java @@ -14,6 +14,11 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // private final String[] k = new String[4]; - private EnumColor l; + private EnumColor color; + // Paper start - Strip invalid unicode from signs on load + private static final boolean keepInvalidUnicode = Boolean.getBoolean("Paper.keepInvalidUnicode"); // Allow people to keep their bad unicode if they really want it @@ -34,13 +34,12 @@ index 9de03a24cf..4165c6d11a 100644 + public TileEntitySign() { super(TileEntityTypes.SIGN); - this.l = EnumColor.BLACK; -@@ -36,6 +41,13 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // + this.color = EnumColor.BLACK; +@@ -36,6 +41,12 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // // CraftBukkit end - nbttagcompound.setString("Color", this.l.b()); -+ -+ // Paper start - Only remove private area unicode once + nbttagcompound.setString("Color", this.color.b()); ++ // Paper start - Only remove private area unicode once // TODO - this doesn't need to run for every sign, check data ver + if (this.privateUnicodeRemoved) { + nbttagcompound.setBoolean("Paper.RemovedPrivateUnicode", true); + } @@ -49,9 +48,9 @@ index 9de03a24cf..4165c6d11a 100644 return nbttagcompound; } -@@ -45,6 +57,11 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // +@@ -45,6 +56,11 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // super.load(nbttagcompound); - this.l = EnumColor.a(nbttagcompound.getString("Color"), EnumColor.BLACK); + this.color = EnumColor.a(nbttagcompound.getString("Color"), EnumColor.BLACK); + // Paper start - Keep track, only do it once per sign + this.privateUnicodeRemoved = nbttagcompound.getBoolean("Paper.RemovedPrivateUnicode"); @@ -61,7 +60,7 @@ index 9de03a24cf..4165c6d11a 100644 // CraftBukkit start - Add an option to convert signs correctly // This is done with a flag instead of all the time because // we have no way to tell whether a sign is from 1.7.10 or 1.8 -@@ -57,6 +74,19 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // +@@ -57,6 +73,19 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // s = "\"\""; } @@ -79,9 +78,9 @@ index 9de03a24cf..4165c6d11a 100644 + // Paper end + try { - //IChatBaseComponent ichatbasecomponent = IChatBaseComponent.ChatSerializer.a(s); // Paper - move down - the old format might throw a json error + //IChatBaseComponent ichatbasecomponent = IChatBaseComponent.ChatSerializer.a(s.isEmpty() ? "\"\"" : s); // Paper - move down - the old format might throw a json error -@@ -83,6 +113,7 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // +@@ -83,6 +112,7 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // this.k[i] = null; } diff --git a/Spigot-Server-Patches/0338-Don-t-sleep-after-profile-lookups-if-not-needed.patch b/Spigot-Server-Patches/0336-Don-t-sleep-after-profile-lookups-if-not-needed.patch similarity index 94% rename from Spigot-Server-Patches/0338-Don-t-sleep-after-profile-lookups-if-not-needed.patch rename to Spigot-Server-Patches/0336-Don-t-sleep-after-profile-lookups-if-not-needed.patch index 296ebeae0..315febab1 100644 --- a/Spigot-Server-Patches/0338-Don-t-sleep-after-profile-lookups-if-not-needed.patch +++ b/Spigot-Server-Patches/0336-Don-t-sleep-after-profile-lookups-if-not-needed.patch @@ -1,4 +1,4 @@ -From d14d577ae1dfbe2dc65b84621acea663c30a7469 Mon Sep 17 00:00:00 2001 +From 8a65bcf0402b43faf4d94299e205b1de8d8e15e8 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 23 Oct 2018 20:25:05 -0400 Subject: [PATCH] Don't sleep after profile lookups if not needed @@ -7,7 +7,7 @@ Mojang was sleeping even if we had no more requests to go after the current one finished, resulting in 100ms lost per profile lookup diff --git a/src/main/java/com/mojang/authlib/yggdrasil/YggdrasilGameProfileRepository.java b/src/main/java/com/mojang/authlib/yggdrasil/YggdrasilGameProfileRepository.java -index 71e48e87b4..23f1447cfc 100644 +index 71e48e87b..23f1447cf 100644 --- a/src/main/java/com/mojang/authlib/yggdrasil/YggdrasilGameProfileRepository.java +++ b/src/main/java/com/mojang/authlib/yggdrasil/YggdrasilGameProfileRepository.java @@ -42,6 +42,7 @@ public class YggdrasilGameProfileRepository implements GameProfileRepository { diff --git a/Spigot-Server-Patches/0339-Use-more-reasonable-thread-count-default-for-bootstr.patch b/Spigot-Server-Patches/0337-Use-more-reasonable-thread-count-default-for-bootstr.patch similarity index 89% rename from Spigot-Server-Patches/0339-Use-more-reasonable-thread-count-default-for-bootstr.patch rename to Spigot-Server-Patches/0337-Use-more-reasonable-thread-count-default-for-bootstr.patch index eea1af674..052a929c1 100644 --- a/Spigot-Server-Patches/0339-Use-more-reasonable-thread-count-default-for-bootstr.patch +++ b/Spigot-Server-Patches/0337-Use-more-reasonable-thread-count-default-for-bootstr.patch @@ -1,11 +1,11 @@ -From f11017165079dc57df28219b8d6cf2347e7a140f Mon Sep 17 00:00:00 2001 +From b8d8a3ccf38dc16afce3222d25187059256fca24 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 23 Oct 2018 23:14:38 -0400 Subject: [PATCH] Use more reasonable thread count default for bootstrap diff --git a/src/main/java/net/minecraft/server/SystemUtils.java b/src/main/java/net/minecraft/server/SystemUtils.java -index 5fae5a1233..6bc576f10f 100644 +index 5fae5a123..6bc576f10 100644 --- a/src/main/java/net/minecraft/server/SystemUtils.java +++ b/src/main/java/net/minecraft/server/SystemUtils.java @@ -66,7 +66,7 @@ public class SystemUtils { diff --git a/Spigot-Server-Patches/0340-MC-136865-Use-valid-item-for-enchantment-checks-on-b.patch b/Spigot-Server-Patches/0338-MC-136865-Use-valid-item-for-enchantment-checks-on-b.patch similarity index 94% rename from Spigot-Server-Patches/0340-MC-136865-Use-valid-item-for-enchantment-checks-on-b.patch rename to Spigot-Server-Patches/0338-MC-136865-Use-valid-item-for-enchantment-checks-on-b.patch index d1fc5c369..e0ba5bfa1 100644 --- a/Spigot-Server-Patches/0340-MC-136865-Use-valid-item-for-enchantment-checks-on-b.patch +++ b/Spigot-Server-Patches/0338-MC-136865-Use-valid-item-for-enchantment-checks-on-b.patch @@ -1,4 +1,4 @@ -From c79457837608a93dc4a9977a48002dc2808cd783 Mon Sep 17 00:00:00 2001 +From a78ed2192a056e3311e6745b0962666697315077 Mon Sep 17 00:00:00 2001 From: MisterVector Date: Thu, 1 Nov 2018 14:50:05 -0700 Subject: [PATCH] MC-136865: Use valid item for enchantment checks on block @@ -13,7 +13,7 @@ keep the clone of the item used to a non empty value so it represents the item used. diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java -index f692da609b..5bc8bd7cdc 100644 +index f692da609..5bc8bd7cd 100644 --- a/src/main/java/net/minecraft/server/PlayerInteractManager.java +++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java @@ -354,10 +354,11 @@ public class PlayerInteractManager { diff --git a/Spigot-Server-Patches/0341-Optimize-World-Time-Updates.patch b/Spigot-Server-Patches/0339-Optimize-World-Time-Updates.patch similarity index 96% rename from Spigot-Server-Patches/0341-Optimize-World-Time-Updates.patch rename to Spigot-Server-Patches/0339-Optimize-World-Time-Updates.patch index ff3d96d63..7c3a22fd5 100644 --- a/Spigot-Server-Patches/0341-Optimize-World-Time-Updates.patch +++ b/Spigot-Server-Patches/0339-Optimize-World-Time-Updates.patch @@ -1,4 +1,4 @@ -From 8ae3adeaed928dc6462f6acddcbc9e3c86ba00bd Mon Sep 17 00:00:00 2001 +From 1a9a458d2db1bb48a62b9b8f009459e508263d3b Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 2 Nov 2018 23:11:51 -0400 Subject: [PATCH] Optimize World Time Updates @@ -8,7 +8,7 @@ the updates per world, so that we can re-use the same packet object for every player unless they have per-player time enabled. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 04adcbb6b6..200bac9c32 100644 +index 0a02dece6..1858e956b 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1119,12 +1119,24 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Mon, 5 Nov 2018 04:23:51 +0000 Subject: [PATCH] Restore custom InventoryHolder support @@ -17,7 +17,7 @@ will always work as intended in the past, those without will create implementati based inventories. diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/util/CraftInventoryCreator.java b/src/main/java/org/bukkit/craftbukkit/inventory/util/CraftInventoryCreator.java -index 9957ed0402..ae280dd40b 100644 +index 9957ed040..ae280dd40 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/util/CraftInventoryCreator.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/util/CraftInventoryCreator.java @@ -39,10 +39,20 @@ public final class CraftInventoryCreator { diff --git a/Spigot-Server-Patches/0343-Use-Vanilla-Minecart-Speeds.patch b/Spigot-Server-Patches/0341-Use-Vanilla-Minecart-Speeds.patch similarity index 91% rename from Spigot-Server-Patches/0343-Use-Vanilla-Minecart-Speeds.patch rename to Spigot-Server-Patches/0341-Use-Vanilla-Minecart-Speeds.patch index 0d18b7d6e..a98dfe6b4 100644 --- a/Spigot-Server-Patches/0343-Use-Vanilla-Minecart-Speeds.patch +++ b/Spigot-Server-Patches/0341-Use-Vanilla-Minecart-Speeds.patch @@ -1,4 +1,4 @@ -From e04348ac3f0f84e0aa0b4f7b0ab2627f1d53179a Mon Sep 17 00:00:00 2001 +From 40bdfc69e61ae7de077f81d346584a706c2de5b2 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 8 Nov 2018 21:33:09 -0500 Subject: [PATCH] Use Vanilla Minecart Speeds @@ -6,7 +6,7 @@ Subject: [PATCH] Use Vanilla Minecart Speeds CraftBukkit changed the values on flying speed, restore back to vanilla diff --git a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java -index 6fc332dbff..828a8711d1 100644 +index 6fc332dbf..828a8711d 100644 --- a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java +++ b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java @@ -35,9 +35,9 @@ public abstract class EntityMinecartAbstract extends Entity { diff --git a/Spigot-Server-Patches/0344-Fix-SpongeAbsortEvent-handling.patch b/Spigot-Server-Patches/0342-Fix-SpongeAbsortEvent-handling.patch similarity index 91% rename from Spigot-Server-Patches/0344-Fix-SpongeAbsortEvent-handling.patch rename to Spigot-Server-Patches/0342-Fix-SpongeAbsortEvent-handling.patch index 76a420588..e178fd749 100644 --- a/Spigot-Server-Patches/0344-Fix-SpongeAbsortEvent-handling.patch +++ b/Spigot-Server-Patches/0342-Fix-SpongeAbsortEvent-handling.patch @@ -1,4 +1,4 @@ -From fdd3a46f035dc1a66d6e2d01bbbe1c8afee794af Mon Sep 17 00:00:00 2001 +From bd5ffdf5d23fd7077da1ef8e76177882e41c3004 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Sat, 10 Nov 2018 05:15:21 +0000 Subject: [PATCH] Fix SpongeAbsortEvent handling @@ -6,10 +6,10 @@ Subject: [PATCH] Fix SpongeAbsortEvent handling Only process drops when the block is actually going to be removed diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java -index 549c50de7d..5e66099443 100644 +index 8d69a1556..5b98c5255 100644 --- a/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java -@@ -465,7 +465,7 @@ public class Block implements IMaterial { +@@ -473,7 +473,7 @@ public class Block implements IMaterial { iblockdata.dropNaturally(world, blockposition, ItemStack.a); } @@ -19,7 +19,7 @@ index 549c50de7d..5e66099443 100644 if (world instanceof WorldServer) { a(iblockdata, (WorldServer) world, blockposition, tileentity).forEach((itemstack) -> { diff --git a/src/main/java/net/minecraft/server/BlockSponge.java b/src/main/java/net/minecraft/server/BlockSponge.java -index 4e281ce6dd..6a64af71b9 100644 +index 4e281ce6d..6a64af71b 100644 --- a/src/main/java/net/minecraft/server/BlockSponge.java +++ b/src/main/java/net/minecraft/server/BlockSponge.java @@ -113,8 +113,11 @@ public class BlockSponge extends Block { diff --git a/Spigot-Server-Patches/0345-Don-t-allow-digging-into-unloaded-chunks.patch b/Spigot-Server-Patches/0343-Don-t-allow-digging-into-unloaded-chunks.patch similarity index 91% rename from Spigot-Server-Patches/0345-Don-t-allow-digging-into-unloaded-chunks.patch rename to Spigot-Server-Patches/0343-Don-t-allow-digging-into-unloaded-chunks.patch index 3aa71c803..06b1df0a0 100644 --- a/Spigot-Server-Patches/0345-Don-t-allow-digging-into-unloaded-chunks.patch +++ b/Spigot-Server-Patches/0343-Don-t-allow-digging-into-unloaded-chunks.patch @@ -1,11 +1,11 @@ -From a0660a9b6852d52368de4eaf9a42b73bd83684fa Mon Sep 17 00:00:00 2001 +From 8dbf7d82a6cf1bdadb7c5a18c5f7d4152791a857 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Sun, 11 Nov 2018 21:01:09 +0000 Subject: [PATCH] Don't allow digging into unloaded chunks diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index b0fe05c26b..e7d3a5479b 100644 +index 3eae38a8a..bd7c13e7f 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -1245,6 +1245,11 @@ public class PlayerConnection implements PacketListenerPlayIn { diff --git a/Spigot-Server-Patches/0346-Optimize-redstone-algorithm.patch b/Spigot-Server-Patches/0344-Optimize-redstone-algorithm.patch similarity index 99% rename from Spigot-Server-Patches/0346-Optimize-redstone-algorithm.patch rename to Spigot-Server-Patches/0344-Optimize-redstone-algorithm.patch index 24e969662..cdc006699 100644 --- a/Spigot-Server-Patches/0346-Optimize-redstone-algorithm.patch +++ b/Spigot-Server-Patches/0344-Optimize-redstone-algorithm.patch @@ -1,4 +1,4 @@ -From 1befa1b4906acf0477abe19ae45aacfb4c3326a0 Mon Sep 17 00:00:00 2001 +From 43705821706467660596aa9b64e3f2342e7a6ed3 Mon Sep 17 00:00:00 2001 From: theosib Date: Thu, 27 Sep 2018 01:43:35 -0600 Subject: [PATCH] Optimize redstone algorithm @@ -1124,7 +1124,7 @@ index da903f74b..aa35e0d06 100644 c(iblockdata, world, blockposition); world.a(blockposition, false); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 8bbcbbf89..34d7b9314 100644 +index fee14bb6d..388692c32 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -548,6 +548,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -1135,7 +1135,7 @@ index 8bbcbbf89..34d7b9314 100644 public void a(BlockPosition blockposition, Block block, BlockPosition blockposition1) { if (!this.isClientSide) { IBlockData iblockdata = this.getType(blockposition); -@@ -1309,6 +1310,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -1306,6 +1307,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose return this.getBlockFacePower(blockposition.down(), EnumDirection.DOWN) > 0 ? true : (this.getBlockFacePower(blockposition.up(), EnumDirection.UP) > 0 ? true : (this.getBlockFacePower(blockposition.north(), EnumDirection.NORTH) > 0 ? true : (this.getBlockFacePower(blockposition.south(), EnumDirection.SOUTH) > 0 ? true : (this.getBlockFacePower(blockposition.west(), EnumDirection.WEST) > 0 ? true : this.getBlockFacePower(blockposition.east(), EnumDirection.EAST) > 0)))); } diff --git a/Spigot-Server-Patches/0347-force-entity-dismount-during-teleportation.patch b/Spigot-Server-Patches/0345-force-entity-dismount-during-teleportation.patch similarity index 96% rename from Spigot-Server-Patches/0347-force-entity-dismount-during-teleportation.patch rename to Spigot-Server-Patches/0345-force-entity-dismount-during-teleportation.patch index b6cdc09fe..0896e5861 100644 --- a/Spigot-Server-Patches/0347-force-entity-dismount-during-teleportation.patch +++ b/Spigot-Server-Patches/0345-force-entity-dismount-during-teleportation.patch @@ -1,4 +1,4 @@ -From 5e42d9e4061851b4ff927c800f3c1add6c957642 Mon Sep 17 00:00:00 2001 +From 3b9e28226a8ab1060744b350de7445df15849a5a Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Thu, 15 Nov 2018 13:38:37 +0000 Subject: [PATCH] force entity dismount during teleportation @@ -20,7 +20,7 @@ this is going to be the best soultion all around. Improvements/suggestions welcome! diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index ff1488389..b1ab590d1 100644 +index 91a7925dd..c71dc3614 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -1990,12 +1990,15 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -72,7 +72,7 @@ index ff1488389..b1ab590d1 100644 if (event.isCancelled()) { return false; diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index f17c1c54b..e811a2917 100644 +index 2f614dfb6..4bea5f1ea 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -937,9 +937,11 @@ public abstract class EntityHuman extends EntityLiving { @@ -91,7 +91,7 @@ index f17c1c54b..e811a2917 100644 } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 88cb1ac8f..3e819f540 100644 +index 2631e9a4b..75608c8a1 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -2661,11 +2661,13 @@ public abstract class EntityLiving extends Entity { @@ -112,7 +112,7 @@ index 88cb1ac8f..3e819f540 100644 this.B(entity); } diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index f5244de49..0d3dba95b 100644 +index e1f618684..0c289f23b 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -997,11 +997,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting { diff --git a/Spigot-Server-Patches/0348-Book-Size-Limits.patch b/Spigot-Server-Patches/0346-Book-Size-Limits.patch similarity index 97% rename from Spigot-Server-Patches/0348-Book-Size-Limits.patch rename to Spigot-Server-Patches/0346-Book-Size-Limits.patch index 4d416992f..659dbbac9 100644 --- a/Spigot-Server-Patches/0348-Book-Size-Limits.patch +++ b/Spigot-Server-Patches/0346-Book-Size-Limits.patch @@ -1,4 +1,4 @@ -From 86ef8ef7d0edbda3d6104a21220694ffc6f3fcff Mon Sep 17 00:00:00 2001 +From 293d53fc28714f65f571ed4aafcace9cc70bf975 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 16 Nov 2018 23:08:50 -0500 Subject: [PATCH] Book Size Limits @@ -22,7 +22,7 @@ index a79cba50e..e5e41c662 100644 + } } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 530457772..630a0271e 100644 +index bd7c13e7f..f46a4868b 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -14,6 +14,7 @@ import java.util.Iterator; diff --git a/Spigot-Server-Patches/0349-Make-the-default-permission-message-configurable.patch b/Spigot-Server-Patches/0347-Make-the-default-permission-message-configurable.patch similarity index 95% rename from Spigot-Server-Patches/0349-Make-the-default-permission-message-configurable.patch rename to Spigot-Server-Patches/0347-Make-the-default-permission-message-configurable.patch index 22cbc133f..b58c7c937 100644 --- a/Spigot-Server-Patches/0349-Make-the-default-permission-message-configurable.patch +++ b/Spigot-Server-Patches/0347-Make-the-default-permission-message-configurable.patch @@ -1,4 +1,4 @@ -From af2233bf1ab9d5f83b9363524f3b015cbf485320 Mon Sep 17 00:00:00 2001 +From c44b0f8d58232a141fcb2cff363d947afbe5be5a Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Sun, 18 Nov 2018 19:49:56 +0000 Subject: [PATCH] Make the default permission message configurable @@ -29,7 +29,7 @@ index e5e41c662..8942a06bf 100644 private static void savePlayerData() { savePlayerData = getBoolean("settings.save-player-data", savePlayerData); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 034716a20..982dce480 100644 +index 467583f1d..050bf3eb4 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2123,6 +2123,11 @@ public final class CraftServer implements Server { diff --git a/Spigot-Server-Patches/0350-Add-more-Zombie-API.patch b/Spigot-Server-Patches/0348-Add-more-Zombie-API.patch similarity index 97% rename from Spigot-Server-Patches/0350-Add-more-Zombie-API.patch rename to Spigot-Server-Patches/0348-Add-more-Zombie-API.patch index decf554fd..ce1bdad4d 100644 --- a/Spigot-Server-Patches/0350-Add-more-Zombie-API.patch +++ b/Spigot-Server-Patches/0348-Add-more-Zombie-API.patch @@ -1,4 +1,4 @@ -From 1e97a9aac0db26666990c50fd5e02102f277fcd4 Mon Sep 17 00:00:00 2001 +From 7685c146ffe17dc7cab2d4ef3b1512602b06a1a0 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sun, 7 Oct 2018 04:29:59 -0500 Subject: [PATCH] Add more Zombie API @@ -18,7 +18,7 @@ index a8318c88a..ba90cdef1 100644 byte b0 = (Byte) this.datawatcher.get(EntityInsentient.b); diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java -index 2f0fab469..dea1d2d4d 100644 +index 171c1ae4a..b20fe8e52 100644 --- a/src/main/java/net/minecraft/server/EntityZombie.java +++ b/src/main/java/net/minecraft/server/EntityZombie.java @@ -31,6 +31,7 @@ public class EntityZombie extends EntityMonster { @@ -50,7 +50,7 @@ index 2f0fab469..dea1d2d4d 100644 + protected void eb() { this.b(EntityTypes.DROWNED); - this.world.a((EntityHuman) null, 1040, new BlockPosition((int) this.locX, (int) this.locY, (int) this.locZ), 0); + this.world.a((EntityHuman) null, 1040, new BlockPosition(this), 0); @@ -253,10 +262,17 @@ public class EntityZombie extends EntityMonster { } } diff --git a/Spigot-Server-Patches/0351-Prevent-rayTrace-from-loading-chunks.patch b/Spigot-Server-Patches/0349-Prevent-rayTrace-from-loading-chunks.patch similarity index 93% rename from Spigot-Server-Patches/0351-Prevent-rayTrace-from-loading-chunks.patch rename to Spigot-Server-Patches/0349-Prevent-rayTrace-from-loading-chunks.patch index 34ee8bf37..704bbefd8 100644 --- a/Spigot-Server-Patches/0351-Prevent-rayTrace-from-loading-chunks.patch +++ b/Spigot-Server-Patches/0349-Prevent-rayTrace-from-loading-chunks.patch @@ -1,4 +1,4 @@ -From 665d6fa6419fbe4df9cd3ff13a3eff4ea5ab815e Mon Sep 17 00:00:00 2001 +From be94bed55b001c7e5c9b87298d67d1dc06cced88 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 26 Nov 2018 19:21:58 -0500 Subject: [PATCH] Prevent rayTrace from loading chunks @@ -7,7 +7,7 @@ ray tracing into an unloaded chunk should be treated as a miss this saves a ton of lag for when AI tries to raytrace near unloaded chunks. diff --git a/src/main/java/net/minecraft/server/IBlockAccess.java b/src/main/java/net/minecraft/server/IBlockAccess.java -index 809ca0983a..c44edda65a 100644 +index 6e365f402..b1423a3c8 100644 --- a/src/main/java/net/minecraft/server/IBlockAccess.java +++ b/src/main/java/net/minecraft/server/IBlockAccess.java @@ -27,7 +27,15 @@ public interface IBlockAccess { diff --git a/Spigot-Server-Patches/0352-Handle-Large-Packets-disconnecting-client.patch b/Spigot-Server-Patches/0350-Handle-Large-Packets-disconnecting-client.patch similarity index 95% rename from Spigot-Server-Patches/0352-Handle-Large-Packets-disconnecting-client.patch rename to Spigot-Server-Patches/0350-Handle-Large-Packets-disconnecting-client.patch index 1162a5d59..d14b4f26e 100644 --- a/Spigot-Server-Patches/0352-Handle-Large-Packets-disconnecting-client.patch +++ b/Spigot-Server-Patches/0350-Handle-Large-Packets-disconnecting-client.patch @@ -1,4 +1,4 @@ -From b33b43bb7ec8a77fd9a8a799b9eaed8fedbdb891 Mon Sep 17 00:00:00 2001 +From ca88dedb52175740a645146bde3b6784d3ffcd4f Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 27 Nov 2018 21:18:06 -0500 Subject: [PATCH] Handle Large Packets disconnecting client @@ -7,7 +7,7 @@ If a players inventory is too big to send in a single packet, split the inventory set into multiple packets instead. diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java -index 38386d5886..2c28b97d81 100644 +index 38386d588..2c28b97d8 100644 --- a/src/main/java/net/minecraft/server/NetworkManager.java +++ b/src/main/java/net/minecraft/server/NetworkManager.java @@ -99,6 +99,15 @@ public class NetworkManager extends SimpleChannelInboundHandler> { @@ -27,7 +27,7 @@ index 38386d5886..2c28b97d81 100644 NetworkManager.LOGGER.debug("Skipping packet due to errors", throwable.getCause()); } else { diff --git a/src/main/java/net/minecraft/server/Packet.java b/src/main/java/net/minecraft/server/Packet.java -index 601d4d0fa2..2d8e6a2f4a 100644 +index 601d4d0fa..2d8e6a2f4 100644 --- a/src/main/java/net/minecraft/server/Packet.java +++ b/src/main/java/net/minecraft/server/Packet.java @@ -10,6 +10,12 @@ public interface Packet { @@ -44,7 +44,7 @@ index 601d4d0fa2..2d8e6a2f4a 100644 return false; } diff --git a/src/main/java/net/minecraft/server/PacketEncoder.java b/src/main/java/net/minecraft/server/PacketEncoder.java -index 63c4dbd327..b0cfef52cb 100644 +index 63c4dbd32..b0cfef52c 100644 --- a/src/main/java/net/minecraft/server/PacketEncoder.java +++ b/src/main/java/net/minecraft/server/PacketEncoder.java @@ -49,7 +49,31 @@ public class PacketEncoder extends MessageToByteEncoder> { @@ -80,7 +80,7 @@ index 63c4dbd327..b0cfef52cb 100644 + // Paper end } diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java -index d19a30ad87..58eccd9c63 100644 +index d19a30ad8..58eccd9c6 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java @@ -68,7 +68,7 @@ public class PacketPlayOutMapChunk implements Packet { @@ -93,7 +93,7 @@ index d19a30ad87..58eccd9c63 100644 } else { this.e = new byte[i]; diff --git a/src/main/java/net/minecraft/server/PacketPlayOutWindowItems.java b/src/main/java/net/minecraft/server/PacketPlayOutWindowItems.java -index f7c3655671..631234324d 100644 +index f7c365567..631234324 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutWindowItems.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutWindowItems.java @@ -9,6 +9,15 @@ public class PacketPlayOutWindowItems implements Packet { diff --git a/Spigot-Server-Patches/0353-Lazy-init-world-storage-in-CraftOfflinePlayer.patch b/Spigot-Server-Patches/0351-Lazy-init-world-storage-in-CraftOfflinePlayer.patch similarity index 96% rename from Spigot-Server-Patches/0353-Lazy-init-world-storage-in-CraftOfflinePlayer.patch rename to Spigot-Server-Patches/0351-Lazy-init-world-storage-in-CraftOfflinePlayer.patch index 7927aedac..251fad69f 100644 --- a/Spigot-Server-Patches/0353-Lazy-init-world-storage-in-CraftOfflinePlayer.patch +++ b/Spigot-Server-Patches/0351-Lazy-init-world-storage-in-CraftOfflinePlayer.patch @@ -1,4 +1,4 @@ -From 4c3684cafaafe3790c9823fa9b5c1452c0e90486 Mon Sep 17 00:00:00 2001 +From c373f08dbad4eeed6518929abf85ad106deadc74 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 11 Dec 2018 22:25:07 -0500 Subject: [PATCH] Lazy init world storage in CraftOfflinePlayer @@ -8,7 +8,7 @@ worlds loaded. This is typically a rare occurrence but probably one that should be covered as best we can. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java -index 6a448c02ec..c1ef1c950d 100644 +index 6a448c02e..c1ef1c950 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java @@ -25,12 +25,12 @@ import org.bukkit.plugin.Plugin; diff --git a/Spigot-Server-Patches/0354-Add-PlayerConnectionCloseEvent.patch b/Spigot-Server-Patches/0352-Add-PlayerConnectionCloseEvent.patch similarity index 97% rename from Spigot-Server-Patches/0354-Add-PlayerConnectionCloseEvent.patch rename to Spigot-Server-Patches/0352-Add-PlayerConnectionCloseEvent.patch index a8f726ce4..53e645aba 100644 --- a/Spigot-Server-Patches/0354-Add-PlayerConnectionCloseEvent.patch +++ b/Spigot-Server-Patches/0352-Add-PlayerConnectionCloseEvent.patch @@ -1,4 +1,4 @@ -From cdba41a4878c3f4c05534bbf254b34f916411228 Mon Sep 17 00:00:00 2001 +From 8a063d13d5f6ef5a85cdd458baec125a33fa26df Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Sun, 7 Oct 2018 12:05:28 -0700 Subject: [PATCH] Add PlayerConnectionCloseEvent @@ -34,7 +34,7 @@ how PlayerPreLoginEvent interacts with PlayerConnectionCloseEvent is undefined. diff --git a/src/main/java/net/minecraft/server/LoginListener.java b/src/main/java/net/minecraft/server/LoginListener.java -index 5d46a975e3..9e4bc24058 100644 +index 5d46a975e..9e4bc2405 100644 --- a/src/main/java/net/minecraft/server/LoginListener.java +++ b/src/main/java/net/minecraft/server/LoginListener.java @@ -35,9 +35,9 @@ public class LoginListener implements PacketLoginInListener { @@ -50,7 +50,7 @@ index 5d46a975e3..9e4bc24058 100644 private SecretKey loginKey; private EntityPlayer l; diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java -index 2c28b97d81..1b0643c27f 100644 +index 2c28b97d8..1b0643c27 100644 --- a/src/main/java/net/minecraft/server/NetworkManager.java +++ b/src/main/java/net/minecraft/server/NetworkManager.java @@ -346,6 +346,26 @@ public class NetworkManager extends SimpleChannelInboundHandler> { diff --git a/Spigot-Server-Patches/0355-Prevent-Enderman-from-loading-chunks.patch b/Spigot-Server-Patches/0353-Prevent-Enderman-from-loading-chunks.patch similarity index 89% rename from Spigot-Server-Patches/0355-Prevent-Enderman-from-loading-chunks.patch rename to Spigot-Server-Patches/0353-Prevent-Enderman-from-loading-chunks.patch index 9a4e933a9..d4fdcbb7d 100644 --- a/Spigot-Server-Patches/0355-Prevent-Enderman-from-loading-chunks.patch +++ b/Spigot-Server-Patches/0353-Prevent-Enderman-from-loading-chunks.patch @@ -1,14 +1,14 @@ -From d7a0ae4e988e0cf5d0d5f1be7b5350ce2aa994e0 Mon Sep 17 00:00:00 2001 +From ac4e7b05b9c8a792585e21bb9384155e410d27d9 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Tue, 18 Dec 2018 02:15:08 +0000 Subject: [PATCH] Prevent Enderman from loading chunks diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java -index de2d995349..f08f139e97 100644 +index ad1553f6e..c6a2e0839 100644 --- a/src/main/java/net/minecraft/server/EntityEnderman.java +++ b/src/main/java/net/minecraft/server/EntityEnderman.java -@@ -315,7 +315,8 @@ public class EntityEnderman extends EntityMonster { +@@ -325,7 +325,8 @@ public class EntityEnderman extends EntityMonster { int j = MathHelper.floor(this.enderman.locY + random.nextDouble() * 3.0D); int k = MathHelper.floor(this.enderman.locZ - 2.0D + random.nextDouble() * 4.0D); BlockPosition blockposition = new BlockPosition(i, j, k); @@ -18,7 +18,7 @@ index de2d995349..f08f139e97 100644 Block block = iblockdata.getBlock(); Vec3D vec3d = new Vec3D((double) MathHelper.floor(this.enderman.locX) + 0.5D, (double) j + 0.5D, (double) MathHelper.floor(this.enderman.locZ) + 0.5D); Vec3D vec3d1 = new Vec3D((double) i + 0.5D, (double) j + 0.5D, (double) k + 0.5D); -@@ -357,7 +358,8 @@ public class EntityEnderman extends EntityMonster { +@@ -367,7 +368,8 @@ public class EntityEnderman extends EntityMonster { int j = MathHelper.floor(this.a.locY + random.nextDouble() * 2.0D); int k = MathHelper.floor(this.a.locZ - 1.0D + random.nextDouble() * 2.0D); BlockPosition blockposition = new BlockPosition(i, j, k); diff --git a/Spigot-Server-Patches/0356-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch b/Spigot-Server-Patches/0354-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch similarity index 94% rename from Spigot-Server-Patches/0356-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch rename to Spigot-Server-Patches/0354-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch index 4f7ab9ab4..ebb9d7710 100644 --- a/Spigot-Server-Patches/0356-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch +++ b/Spigot-Server-Patches/0354-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch @@ -1,4 +1,4 @@ -From c68da94e83b9233205d2f4306f1c351b7ea99d17 Mon Sep 17 00:00:00 2001 +From 1278518ef157890ac490119fc70833b5fab86187 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Wed, 2 Jan 2019 00:35:43 -0600 Subject: [PATCH] Add APIs to replace OfflinePlayer#getLastPlayed @@ -16,7 +16,7 @@ intent to remove) and replace it with two new methods, clearly named and documented as to their purpose. diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index d23178331e..412b2e79ad 100644 +index 0c289f23b..3c7fa3b34 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -75,6 +75,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -28,7 +28,7 @@ index d23178331e..412b2e79ad 100644 public boolean queueHealthUpdatePacket = false; public net.minecraft.server.PacketPlayOutUpdateHealth queuedHealthUpdatePacket; diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 97f4f7e1bd..417465c0e7 100644 +index af437120e..1eae8057d 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -94,6 +94,7 @@ public abstract class PlayerList { @@ -40,7 +40,7 @@ index 97f4f7e1bd..417465c0e7 100644 UserCache usercache = this.server.getUserCache(); GameProfile gameprofile1 = usercache.a(gameprofile.getId()); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java -index c1ef1c950d..3824180ee5 100644 +index c1ef1c950..3824180ee 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java @@ -256,6 +256,61 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa @@ -106,7 +106,7 @@ index c1ef1c950d..3824180ee5 100644 public Location getBedSpawnLocation() { NBTTagCompound data = getData(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 6a390c1146..3b02b282e3 100644 +index deacc2187..367e8cfc1 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -137,6 +137,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -117,7 +117,7 @@ index 6a390c1146..3b02b282e3 100644 // Paper end public CraftPlayer(CraftServer server, EntityPlayer entity) { -@@ -1364,6 +1365,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1363,6 +1364,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { this.firstPlayed = firstPlayed; } @@ -136,7 +136,7 @@ index 6a390c1146..3b02b282e3 100644 public void readExtraData(NBTTagCompound nbttagcompound) { hasPlayedBefore = true; if (nbttagcompound.hasKey("bukkit")) { -@@ -1386,6 +1399,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1385,6 +1398,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } public void setExtraData(NBTTagCompound nbttagcompound) { @@ -145,7 +145,7 @@ index 6a390c1146..3b02b282e3 100644 if (!nbttagcompound.hasKey("bukkit")) { nbttagcompound.set("bukkit", new NBTTagCompound()); } -@@ -1400,6 +1415,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1399,6 +1414,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { data.setLong("firstPlayed", getFirstPlayed()); data.setLong("lastPlayed", System.currentTimeMillis()); data.setString("lastKnownName", handle.getName()); diff --git a/Spigot-Server-Patches/0357-Fix-PlayerEditBookEvent.patch b/Spigot-Server-Patches/0355-Fix-PlayerEditBookEvent.patch similarity index 94% rename from Spigot-Server-Patches/0357-Fix-PlayerEditBookEvent.patch rename to Spigot-Server-Patches/0355-Fix-PlayerEditBookEvent.patch index a6eaf8919..49fae44d7 100644 --- a/Spigot-Server-Patches/0357-Fix-PlayerEditBookEvent.patch +++ b/Spigot-Server-Patches/0355-Fix-PlayerEditBookEvent.patch @@ -1,4 +1,4 @@ -From 0570f27d30527beebf4a36fcb3fb584af5000215 Mon Sep 17 00:00:00 2001 +From 414ae3622b3470e439711445447b5bef8dfb0053 Mon Sep 17 00:00:00 2001 From: Michael Himing Date: Sun, 16 Dec 2018 13:07:33 +1100 Subject: [PATCH] Fix PlayerEditBookEvent @@ -10,7 +10,7 @@ it impossible to properly cancel the event or modify the book meta cancelled writing diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 6096f309bc..2fce176402 100644 +index f46a4868b..448645e52 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -859,9 +859,11 @@ public class PlayerConnection implements PacketListenerPlayIn { diff --git a/Spigot-Server-Patches/0358-Workaround-for-vehicle-tracking-issue-on-disconnect.patch b/Spigot-Server-Patches/0356-Workaround-for-vehicle-tracking-issue-on-disconnect.patch similarity index 90% rename from Spigot-Server-Patches/0358-Workaround-for-vehicle-tracking-issue-on-disconnect.patch rename to Spigot-Server-Patches/0356-Workaround-for-vehicle-tracking-issue-on-disconnect.patch index 7b70f3fcb..21d03536f 100644 --- a/Spigot-Server-Patches/0358-Workaround-for-vehicle-tracking-issue-on-disconnect.patch +++ b/Spigot-Server-Patches/0356-Workaround-for-vehicle-tracking-issue-on-disconnect.patch @@ -1,11 +1,11 @@ -From 68cc5d952fc9e0db1bdab48c0ed0602e73b1a038 Mon Sep 17 00:00:00 2001 +From a03f4dfcbb5c767e33b2dd41499f2a955088bb47 Mon Sep 17 00:00:00 2001 From: connorhartley Date: Mon, 7 Jan 2019 14:43:48 -0600 Subject: [PATCH] Workaround for vehicle tracking issue on disconnect diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 8eb6a5fb7..f905ff4a3 100644 +index 3c7fa3b34..3ecf18379 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -1280,6 +1280,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting { diff --git a/Spigot-Server-Patches/0359-Fire-BlockPistonRetractEvent-for-all-empty-pistons.patch b/Spigot-Server-Patches/0357-Fire-BlockPistonRetractEvent-for-all-empty-pistons.patch similarity index 96% rename from Spigot-Server-Patches/0359-Fire-BlockPistonRetractEvent-for-all-empty-pistons.patch rename to Spigot-Server-Patches/0357-Fire-BlockPistonRetractEvent-for-all-empty-pistons.patch index b6ca62694..9864ce35a 100644 --- a/Spigot-Server-Patches/0359-Fire-BlockPistonRetractEvent-for-all-empty-pistons.patch +++ b/Spigot-Server-Patches/0357-Fire-BlockPistonRetractEvent-for-all-empty-pistons.patch @@ -1,4 +1,4 @@ -From 3fbbc13b8148e47fb1b31182153fca4269b5cdd3 Mon Sep 17 00:00:00 2001 +From 46f75f3330ad19cc82b7bc3525856742ccdb5b31 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Thu, 31 Jan 2019 16:33:36 -0500 Subject: [PATCH] Fire BlockPistonRetractEvent for all empty pistons @@ -24,7 +24,7 @@ Instead we opt to remove the check entirely so that the event fires for all piston types. diff --git a/src/main/java/net/minecraft/server/BlockPiston.java b/src/main/java/net/minecraft/server/BlockPiston.java -index 170a339eda..a5573f21fc 100644 +index 141006e36..78603d2cb 100644 --- a/src/main/java/net/minecraft/server/BlockPiston.java +++ b/src/main/java/net/minecraft/server/BlockPiston.java @@ -121,7 +121,7 @@ public class BlockPiston extends BlockDirectional { diff --git a/Spigot-Server-Patches/0360-Block-Entity-remove-from-being-called-on-Players.patch b/Spigot-Server-Patches/0358-Block-Entity-remove-from-being-called-on-Players.patch similarity index 89% rename from Spigot-Server-Patches/0360-Block-Entity-remove-from-being-called-on-Players.patch rename to Spigot-Server-Patches/0358-Block-Entity-remove-from-being-called-on-Players.patch index d63798c3f..d70a230ea 100644 --- a/Spigot-Server-Patches/0360-Block-Entity-remove-from-being-called-on-Players.patch +++ b/Spigot-Server-Patches/0358-Block-Entity-remove-from-being-called-on-Players.patch @@ -1,4 +1,4 @@ -From e798ed0fcba4a65f89e072964e4eec5bdabae302 Mon Sep 17 00:00:00 2001 +From 3f5b27d7d97cd84fd839f1452df1fbf9175f1d01 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Mon, 4 Feb 2019 23:33:24 -0500 Subject: [PATCH] Block Entity#remove from being called on Players @@ -12,10 +12,10 @@ Player we will look at limiting the scope of this change. It appears to be unintentional in the few cases we've seen so far. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 3b02b282e3..3bc7a64fac 100644 +index 367e8cfc1..c020d0b4e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1954,6 +1954,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1953,6 +1953,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void resetCooldown() { getHandle().resetCooldown(); } diff --git a/Spigot-Server-Patches/0361-Allow-Saving-of-Oversized-Chunks.patch b/Spigot-Server-Patches/0359-Allow-Saving-of-Oversized-Chunks.patch similarity index 99% rename from Spigot-Server-Patches/0361-Allow-Saving-of-Oversized-Chunks.patch rename to Spigot-Server-Patches/0359-Allow-Saving-of-Oversized-Chunks.patch index 30f9dd687..f9f029e57 100644 --- a/Spigot-Server-Patches/0361-Allow-Saving-of-Oversized-Chunks.patch +++ b/Spigot-Server-Patches/0359-Allow-Saving-of-Oversized-Chunks.patch @@ -1,4 +1,4 @@ -From 5e39f5c9c4bedcb73854976493e6a0aa4df4c585 Mon Sep 17 00:00:00 2001 +From 6600a81e2e68c4369bee74bb358ce39c6edfcb55 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 15 Feb 2019 01:08:19 -0500 Subject: [PATCH] Allow Saving of Oversized Chunks diff --git a/Spigot-Server-Patches/0362-BlockDestroyEvent.patch b/Spigot-Server-Patches/0360-BlockDestroyEvent.patch similarity index 95% rename from Spigot-Server-Patches/0362-BlockDestroyEvent.patch rename to Spigot-Server-Patches/0360-BlockDestroyEvent.patch index e4c1e8eab..8956d075d 100644 --- a/Spigot-Server-Patches/0362-BlockDestroyEvent.patch +++ b/Spigot-Server-Patches/0360-BlockDestroyEvent.patch @@ -1,4 +1,4 @@ -From 7d73d345fb5c9ad84aa68fa7d80de4dcee6088a6 Mon Sep 17 00:00:00 2001 +From 1113f9e96c05daefa52eb617e4166abad06a9201 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 6 Feb 2019 00:20:33 -0500 Subject: [PATCH] BlockDestroyEvent @@ -11,7 +11,7 @@ floating in the air. This can replace many uses of BlockPhysicsEvent diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 34d7b9314..ab56086e1 100644 +index 388692c32..98f9ac7de 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -478,8 +478,20 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose diff --git a/Spigot-Server-Patches/0363-Fix-Custom-Shapeless-Custom-Crafting-Recipes.patch b/Spigot-Server-Patches/0361-Fix-Custom-Shapeless-Custom-Crafting-Recipes.patch similarity index 96% rename from Spigot-Server-Patches/0363-Fix-Custom-Shapeless-Custom-Crafting-Recipes.patch rename to Spigot-Server-Patches/0361-Fix-Custom-Shapeless-Custom-Crafting-Recipes.patch index 592d259b9..0a7ecb765 100644 --- a/Spigot-Server-Patches/0363-Fix-Custom-Shapeless-Custom-Crafting-Recipes.patch +++ b/Spigot-Server-Patches/0361-Fix-Custom-Shapeless-Custom-Crafting-Recipes.patch @@ -1,4 +1,4 @@ -From 488aaf0d7001e17a95bf6cb1d5bbcbedc148cb17 Mon Sep 17 00:00:00 2001 +From 840ad42258da7577373eb2094ca7a20c3896ec2a Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 18 Jan 2019 00:08:15 -0500 Subject: [PATCH] Fix Custom Shapeless Custom Crafting Recipes @@ -10,7 +10,7 @@ This made the Bukkit RecipeChoice API not work for Shapeless. This reimplements vanilla logic using the same test logic as Shaped diff --git a/src/main/java/net/minecraft/server/ShapelessRecipes.java b/src/main/java/net/minecraft/server/ShapelessRecipes.java -index 070fc1e3ec..691e697d68 100644 +index 070fc1e3e..691e697d6 100644 --- a/src/main/java/net/minecraft/server/ShapelessRecipes.java +++ b/src/main/java/net/minecraft/server/ShapelessRecipes.java @@ -63,16 +63,46 @@ public class ShapelessRecipes implements RecipeCrafting { diff --git a/Spigot-Server-Patches/0364-Fix-sign-edit-memory-leak.patch b/Spigot-Server-Patches/0362-Fix-sign-edit-memory-leak.patch similarity index 91% rename from Spigot-Server-Patches/0364-Fix-sign-edit-memory-leak.patch rename to Spigot-Server-Patches/0362-Fix-sign-edit-memory-leak.patch index c68ca0926..44d23424b 100644 --- a/Spigot-Server-Patches/0364-Fix-sign-edit-memory-leak.patch +++ b/Spigot-Server-Patches/0362-Fix-sign-edit-memory-leak.patch @@ -1,4 +1,4 @@ -From 88c7354bb25d2a8c9085bff32e142c78768c647e Mon Sep 17 00:00:00 2001 +From 10f84a9bf3351fb48bf6ab781861e150b7b4398e Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 28 Feb 2019 00:15:28 -0500 Subject: [PATCH] Fix sign edit memory leak @@ -6,7 +6,7 @@ Subject: [PATCH] Fix sign edit memory leak when a player edits a sign, a reference to their Entity is never cleand up. diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 2fce176402..af3374e861 100644 +index 448645e52..1ff7825be 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -2560,7 +2560,7 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -19,7 +19,7 @@ index 2fce176402..af3374e861 100644 this.sendPacket(tileentity.getUpdatePacket()); // CraftBukkit return; diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java -index 4165c6d11a..7abf533c58 100644 +index 7b5d534f4..daf0aeb43 100644 --- a/src/main/java/net/minecraft/server/TileEntitySign.java +++ b/src/main/java/net/minecraft/server/TileEntitySign.java @@ -17,6 +17,7 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // @@ -30,7 +30,7 @@ index 4165c6d11a..7abf533c58 100644 // Paper end public TileEntitySign() { -@@ -142,7 +143,10 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // +@@ -141,7 +142,10 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // } public void a(EntityHuman entityhuman) { diff --git a/Spigot-Server-Patches/0365-Limit-Client-Sign-length-more.patch b/Spigot-Server-Patches/0363-Limit-Client-Sign-length-more.patch similarity index 96% rename from Spigot-Server-Patches/0365-Limit-Client-Sign-length-more.patch rename to Spigot-Server-Patches/0363-Limit-Client-Sign-length-more.patch index b3061d253..14cfe799c 100644 --- a/Spigot-Server-Patches/0365-Limit-Client-Sign-length-more.patch +++ b/Spigot-Server-Patches/0363-Limit-Client-Sign-length-more.patch @@ -1,4 +1,4 @@ -From 44ff22cec85f0a1938e0185294c7eded3c6542a8 Mon Sep 17 00:00:00 2001 +From 4ce31deee65fb7ff9e1d6cb451cca751cdc444ff Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 27 Feb 2019 22:18:40 -0500 Subject: [PATCH] Limit Client Sign length more @@ -22,7 +22,7 @@ it only impacts data sent from the client. Set -DPaper.maxSignLength=XX to change limit or -1 to disable diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index af3374e861..b3193bc3fa 100644 +index 1ff7825be..8f9a02629 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -103,6 +103,7 @@ public class PlayerConnection implements PacketListenerPlayIn { diff --git a/Spigot-Server-Patches/0366-Don-t-check-ConvertSigns-boolean-every-sign-save.patch b/Spigot-Server-Patches/0364-Don-t-check-ConvertSigns-boolean-every-sign-save.patch similarity index 93% rename from Spigot-Server-Patches/0366-Don-t-check-ConvertSigns-boolean-every-sign-save.patch rename to Spigot-Server-Patches/0364-Don-t-check-ConvertSigns-boolean-every-sign-save.patch index 3c8d783ab..6c6af290a 100644 --- a/Spigot-Server-Patches/0366-Don-t-check-ConvertSigns-boolean-every-sign-save.patch +++ b/Spigot-Server-Patches/0364-Don-t-check-ConvertSigns-boolean-every-sign-save.patch @@ -1,4 +1,4 @@ -From 2ea5b15f3e2585b2f20ee9aad0c764a0f83e5ea8 Mon Sep 17 00:00:00 2001 +From 1034846e7d49d8a9e34206ab37e640b2f16a74ad Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 2 Mar 2019 11:11:29 -0500 Subject: [PATCH] Don't check ConvertSigns boolean every sign save @@ -7,7 +7,7 @@ property lookups arent super cheap. they synchronize, validate and check security managers. diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java -index 7abf533c58..713bb4cd52 100644 +index daf0aeb43..91c99222d 100644 --- a/src/main/java/net/minecraft/server/TileEntitySign.java +++ b/src/main/java/net/minecraft/server/TileEntitySign.java @@ -18,6 +18,7 @@ public class TileEntitySign extends TileEntity implements ICommandListener { // diff --git a/Spigot-Server-Patches/0367-Handle-Excessive-Signs-in-Chunks-creating-too-large-.patch b/Spigot-Server-Patches/0365-Handle-Excessive-Signs-in-Chunks-creating-too-large-.patch similarity index 95% rename from Spigot-Server-Patches/0367-Handle-Excessive-Signs-in-Chunks-creating-too-large-.patch rename to Spigot-Server-Patches/0365-Handle-Excessive-Signs-in-Chunks-creating-too-large-.patch index 2f6636ad0..6ec5dcf50 100644 --- a/Spigot-Server-Patches/0367-Handle-Excessive-Signs-in-Chunks-creating-too-large-.patch +++ b/Spigot-Server-Patches/0365-Handle-Excessive-Signs-in-Chunks-creating-too-large-.patch @@ -1,4 +1,4 @@ -From f20b9a893da351bcc50180f12c8705eef5bf6b7c Mon Sep 17 00:00:00 2001 +From ad75d8048af225ed023b51771054e5590bd13e68 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 2 Mar 2019 14:55:01 -0500 Subject: [PATCH] Handle Excessive Signs in Chunks creating too large of @@ -11,7 +11,7 @@ Use -DPaper.excessiveSignsLimit=500 to configure that limit, or -1 to disable the limit and let your players be abused. diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java -index 1b0643c27f..4766f7b773 100644 +index 1b0643c27..4766f7b77 100644 --- a/src/main/java/net/minecraft/server/NetworkManager.java +++ b/src/main/java/net/minecraft/server/NetworkManager.java @@ -220,6 +220,15 @@ public class NetworkManager extends SimpleChannelInboundHandler> { @@ -31,7 +31,7 @@ index 1b0643c27f..4766f7b773 100644 private void sendPacketQueue() { this.o(); } // Paper - OBFHELPER diff --git a/src/main/java/net/minecraft/server/Packet.java b/src/main/java/net/minecraft/server/Packet.java -index 2d8e6a2f4a..8d0965a053 100644 +index 2d8e6a2f4..8d0965a05 100644 --- a/src/main/java/net/minecraft/server/Packet.java +++ b/src/main/java/net/minecraft/server/Packet.java @@ -11,6 +11,7 @@ public interface Packet { @@ -43,7 +43,7 @@ index 2d8e6a2f4a..8d0965a053 100644 return false; } diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java -index 58eccd9c63..ef71a1feb3 100644 +index 58eccd9c6..ef71a1feb 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java @@ -20,6 +20,15 @@ public class PacketPlayOutMapChunk implements Packet { diff --git a/Spigot-Server-Patches/0368-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch b/Spigot-Server-Patches/0366-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch similarity index 90% rename from Spigot-Server-Patches/0368-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch rename to Spigot-Server-Patches/0366-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch index 517b56030..908145a65 100644 --- a/Spigot-Server-Patches/0368-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch +++ b/Spigot-Server-Patches/0366-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch @@ -1,4 +1,4 @@ -From 3275c0e9ab25bfdb58ea04478cb83b454885654c Mon Sep 17 00:00:00 2001 +From 89e715f84dbd1e1af5f92e1305ed4cbe28f11643 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 2 Mar 2019 16:12:35 -0500 Subject: [PATCH] MC-145260: Fix Whitelist On/Off inconsistency @@ -11,7 +11,7 @@ everything to the Whitelist object. https://github.com/PaperMC/Paper/issues/1880 diff --git a/src/main/java/net/minecraft/server/JsonList.java b/src/main/java/net/minecraft/server/JsonList.java -index c169d01762..55bc4b265d 100644 +index c169d0176..55bc4b265 100644 --- a/src/main/java/net/minecraft/server/JsonList.java +++ b/src/main/java/net/minecraft/server/JsonList.java @@ -64,6 +64,7 @@ public class JsonList> { @@ -23,7 +23,7 @@ index c169d01762..55bc4b265d 100644 this.e = flag; } diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 417465c0e7..990aa330d7 100644 +index 1eae8057d..e6c894463 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -62,7 +62,7 @@ public abstract class PlayerList { @@ -33,9 +33,9 @@ index 417465c0e7..990aa330d7 100644 - private boolean hasWhitelist; + //private boolean hasWhitelist; protected final int maxPlayers; - private int s; + private int viewDistance; private EnumGamemode t; -@@ -898,9 +898,9 @@ public abstract class PlayerList { +@@ -899,9 +899,9 @@ public abstract class PlayerList { } public boolean isWhitelisted(GameProfile gameprofile, org.bukkit.event.player.PlayerLoginEvent loginEvent) { boolean isOp = this.operators.d(gameprofile); @@ -47,7 +47,7 @@ index 417465c0e7..990aa330d7 100644 event.callEvent(); if (!event.isWhitelisted()) { if (loginEvent != null) { -@@ -1029,11 +1029,11 @@ public abstract class PlayerList { +@@ -1030,11 +1030,11 @@ public abstract class PlayerList { } public boolean getHasWhitelist() { diff --git a/Spigot-Server-Patches/0369-Set-Zombie-last-tick-at-start-of-drowning-process.patch b/Spigot-Server-Patches/0367-Set-Zombie-last-tick-at-start-of-drowning-process.patch similarity index 89% rename from Spigot-Server-Patches/0369-Set-Zombie-last-tick-at-start-of-drowning-process.patch rename to Spigot-Server-Patches/0367-Set-Zombie-last-tick-at-start-of-drowning-process.patch index fcd6dbb0d..4d63b2fc3 100644 --- a/Spigot-Server-Patches/0369-Set-Zombie-last-tick-at-start-of-drowning-process.patch +++ b/Spigot-Server-Patches/0367-Set-Zombie-last-tick-at-start-of-drowning-process.patch @@ -1,4 +1,4 @@ -From aa2603b2b859a8435d19c86f229a4f018c4e106e Mon Sep 17 00:00:00 2001 +From 58afd3fbe341b0e72cde79ca176a8dae8fdd67e0 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Mon, 4 Mar 2019 02:23:28 -0500 Subject: [PATCH] Set Zombie last tick at start of drowning process @@ -6,7 +6,7 @@ Subject: [PATCH] Set Zombie last tick at start of drowning process Fixes GH-1887 diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java -index dea1d2d4d2..b06235d46d 100644 +index b20fe8e52..40a796384 100644 --- a/src/main/java/net/minecraft/server/EntityZombie.java +++ b/src/main/java/net/minecraft/server/EntityZombie.java @@ -167,6 +167,7 @@ public class EntityZombie extends EntityMonster { diff --git a/Spigot-Server-Patches/0370-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch b/Spigot-Server-Patches/0368-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch similarity index 79% rename from Spigot-Server-Patches/0370-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch rename to Spigot-Server-Patches/0368-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch index 030dfcac6..679621dee 100644 --- a/Spigot-Server-Patches/0370-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch +++ b/Spigot-Server-Patches/0368-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch @@ -1,14 +1,14 @@ -From 363886a7827855bd064381b61f2d070253f7fc42 Mon Sep 17 00:00:00 2001 +From 9c7cd0871e1fb54da242899be23a5c54841f1148 Mon Sep 17 00:00:00 2001 From: Mark Vainomaa Date: Wed, 13 Mar 2019 20:08:09 +0200 Subject: [PATCH] Call WhitelistToggleEvent when whitelist is toggled diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 990aa330d7..51272a51bb 100644 +index e6c894463..ce66596c6 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java -@@ -1033,6 +1033,7 @@ public abstract class PlayerList { +@@ -1034,6 +1034,7 @@ public abstract class PlayerList { } public void setHasWhitelist(boolean flag) { diff --git a/Spigot-Server-Patches/0371-Add-LivingEntity-getTargetEntity.patch b/Spigot-Server-Patches/0369-Add-LivingEntity-getTargetEntity.patch similarity index 98% rename from Spigot-Server-Patches/0371-Add-LivingEntity-getTargetEntity.patch rename to Spigot-Server-Patches/0369-Add-LivingEntity-getTargetEntity.patch index 9cf918f48..ecfef7123 100644 --- a/Spigot-Server-Patches/0371-Add-LivingEntity-getTargetEntity.patch +++ b/Spigot-Server-Patches/0369-Add-LivingEntity-getTargetEntity.patch @@ -1,4 +1,4 @@ -From 0d182f9394258fa2098734587c774a3a81eef263 Mon Sep 17 00:00:00 2001 +From d8ae1979c8d8088ae4086bdb8bb0e5314599fe51 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 22 Sep 2018 00:33:08 -0500 Subject: [PATCH] Add LivingEntity#getTargetEntity @@ -46,7 +46,7 @@ index b38fc50bb..d02c77664 100644 double[] adouble = new double[] { 1.0D}; double d0 = vec3d1.x - vec3d.x; diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index b1ab590d1..0adf4b69a 100644 +index c71dc3614..a49d02da1 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -1443,6 +1443,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -66,7 +66,7 @@ index b1ab590d1..0adf4b69a 100644 return 0.0F; } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 3e819f540..20e8ae96d 100644 +index 75608c8a1..75d845a75 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -3217,6 +3217,37 @@ public abstract class EntityLiving extends Entity { diff --git a/Spigot-Server-Patches/0372-Use-proper-max-length-when-serialising-BungeeCord-te.patch b/Spigot-Server-Patches/0370-Use-proper-max-length-when-serialising-BungeeCord-te.patch similarity index 96% rename from Spigot-Server-Patches/0372-Use-proper-max-length-when-serialising-BungeeCord-te.patch rename to Spigot-Server-Patches/0370-Use-proper-max-length-when-serialising-BungeeCord-te.patch index 026e542ec..a0bf677e3 100644 --- a/Spigot-Server-Patches/0372-Use-proper-max-length-when-serialising-BungeeCord-te.patch +++ b/Spigot-Server-Patches/0370-Use-proper-max-length-when-serialising-BungeeCord-te.patch @@ -1,4 +1,4 @@ -From 914af13a97c42cdb25c0577076f6efc39f1c9b64 Mon Sep 17 00:00:00 2001 +From 6456d7d5076e856e3f5fefbdfb3ced5aab8502b7 Mon Sep 17 00:00:00 2001 From: kashike Date: Wed, 20 Mar 2019 21:19:29 -0700 Subject: [PATCH] Use proper max length when serialising BungeeCord text diff --git a/Spigot-Server-Patches/0373-Entity-getEntitySpawnReason.patch b/Spigot-Server-Patches/0371-Entity-getEntitySpawnReason.patch similarity index 94% rename from Spigot-Server-Patches/0373-Entity-getEntitySpawnReason.patch rename to Spigot-Server-Patches/0371-Entity-getEntitySpawnReason.patch index 8017c7aad..dec6f5777 100644 --- a/Spigot-Server-Patches/0373-Entity-getEntitySpawnReason.patch +++ b/Spigot-Server-Patches/0371-Entity-getEntitySpawnReason.patch @@ -1,4 +1,4 @@ -From 27c174a8be5a9a526e6809af5e8d64fec60c8417 Mon Sep 17 00:00:00 2001 +From 0e5de1c6ae53d6eba93f429dfdb092e7dc485272 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 24 Mar 2019 00:24:52 -0400 Subject: [PATCH] Entity#getEntitySpawnReason @@ -10,7 +10,7 @@ persistenting Living Entity, SPAWNER for spawners, or DEFAULT since data was not stored. diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 0adf4b69a..b4bd05220 100644 +index a49d02da1..d02e48a86 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -68,6 +68,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -59,10 +59,10 @@ index 0adf4b69a..b4bd05220 100644 } catch (Throwable throwable) { diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 51272a51b..4bc465ef4 100644 +index ce66596c6..5645147da 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java -@@ -249,7 +249,7 @@ public abstract class PlayerList { +@@ -250,7 +250,7 @@ public abstract class PlayerList { // CraftBukkit start WorldServer finalWorldServer = worldserver; Entity entity = EntityTypes.a(nbttagcompound1.getCompound("Entity"), finalWorldServer, (entity1) -> { @@ -72,10 +72,10 @@ index 51272a51b..4bc465ef4 100644 }); diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 72b8561ac..03da9b3f2 100644 +index 661ea58b8..101f4ee5d 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -939,6 +939,7 @@ public class WorldServer extends World { +@@ -932,6 +932,7 @@ public class WorldServer extends World { // CraftBukkit start private boolean addEntity0(Entity entity, CreatureSpawnEvent.SpawnReason spawnReason) { org.spigotmc.AsyncCatcher.catchOp( "entity add"); // Spigot @@ -84,7 +84,7 @@ index 72b8561ac..03da9b3f2 100644 if (entity.dead) { // Paper start diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index af0fc9bd7..f1938695d 100644 +index 52f72e147..11a3e7b69 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -1053,5 +1053,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/Spigot-Server-Patches/0374-Update-entity-Metadata-for-all-tracked-players.patch b/Spigot-Server-Patches/0372-Update-entity-Metadata-for-all-tracked-players.patch similarity index 94% rename from Spigot-Server-Patches/0374-Update-entity-Metadata-for-all-tracked-players.patch rename to Spigot-Server-Patches/0372-Update-entity-Metadata-for-all-tracked-players.patch index 20946ccd4..d0d96ccb1 100644 --- a/Spigot-Server-Patches/0374-Update-entity-Metadata-for-all-tracked-players.patch +++ b/Spigot-Server-Patches/0372-Update-entity-Metadata-for-all-tracked-players.patch @@ -1,4 +1,4 @@ -From 1ff7126971d1710dfe5d0f9f9e96f0a790089423 Mon Sep 17 00:00:00 2001 +From 3fba1c0e308d323e7657e28ee82febef76a60f8f Mon Sep 17 00:00:00 2001 From: AgentTroll Date: Fri, 22 Mar 2019 22:24:03 -0700 Subject: [PATCH] Update entity Metadata for all tracked players @@ -22,7 +22,7 @@ index afd8748da..17b6ab57c 100644 this.f.accept(packet); if (this.tracker instanceof EntityPlayer) { diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index b3193bc3f..3587f73e1 100644 +index 8f9a02629..ef57cd68f 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -2020,7 +2020,7 @@ public class PlayerConnection implements PacketListenerPlayIn { diff --git a/Spigot-Server-Patches/0375-Fire-event-on-GS4-query.patch b/Spigot-Server-Patches/0373-Fire-event-on-GS4-query.patch similarity index 99% rename from Spigot-Server-Patches/0375-Fire-event-on-GS4-query.patch rename to Spigot-Server-Patches/0373-Fire-event-on-GS4-query.patch index 03ab271ff..ca81e35ca 100644 --- a/Spigot-Server-Patches/0375-Fire-event-on-GS4-query.patch +++ b/Spigot-Server-Patches/0373-Fire-event-on-GS4-query.patch @@ -1,4 +1,4 @@ -From 0e53ea4dd57aef9bc1250dc5d34ddceaea53d47b Mon Sep 17 00:00:00 2001 +From a3c3387cd562cea592c735a98e4774f91020c3cb Mon Sep 17 00:00:00 2001 From: Mark Vainomaa Date: Sun, 17 Mar 2019 21:46:56 +0200 Subject: [PATCH] Fire event on GS4 query diff --git a/Spigot-Server-Patches/0376-Implement-PlayerPostRespawnEvent.patch b/Spigot-Server-Patches/0374-Implement-PlayerPostRespawnEvent.patch similarity index 86% rename from Spigot-Server-Patches/0376-Implement-PlayerPostRespawnEvent.patch rename to Spigot-Server-Patches/0374-Implement-PlayerPostRespawnEvent.patch index 221b8ccfe..71d400067 100644 --- a/Spigot-Server-Patches/0376-Implement-PlayerPostRespawnEvent.patch +++ b/Spigot-Server-Patches/0374-Implement-PlayerPostRespawnEvent.patch @@ -1,14 +1,14 @@ -From 3254acb9263fd3571734030983a9b58f0f0a7202 Mon Sep 17 00:00:00 2001 +From ffae7d08159aaa41e9dcfe2353f3d02ae8537fe7 Mon Sep 17 00:00:00 2001 From: MisterVector Date: Fri, 26 Oct 2018 21:31:00 -0700 Subject: [PATCH] Implement PlayerPostRespawnEvent diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 4bc465ef4..67461cd2a 100644 +index 5645147da..0e7e47f83 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java -@@ -636,9 +636,14 @@ public abstract class PlayerList { +@@ -637,9 +637,14 @@ public abstract class PlayerList { // this.a(entityplayer1, entityplayer, worldserver); // CraftBukkit - removed @@ -24,7 +24,7 @@ index 4bc465ef4..67461cd2a 100644 CraftWorld cworld = (CraftWorld) this.server.server.getWorld(entityplayer.spawnWorld); if (cworld != null && blockposition != null) { Optional optional = EntityHuman.getBed(cworld.getHandle(), blockposition, flag1); -@@ -671,6 +676,7 @@ public abstract class PlayerList { +@@ -672,6 +677,7 @@ public abstract class PlayerList { location = respawnEvent.getRespawnLocation(); if (!flag) entityplayer.reset(); // SPIGOT-4785 @@ -32,7 +32,7 @@ index 4bc465ef4..67461cd2a 100644 } else { location.setWorld(server.getWorldServer(dimensionmanager).getWorld()); } -@@ -732,6 +738,13 @@ public abstract class PlayerList { +@@ -733,6 +739,13 @@ public abstract class PlayerList { if (entityplayer.playerConnection.isDisconnected()) { this.savePlayerFile(entityplayer); } diff --git a/Spigot-Server-Patches/0377-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch b/Spigot-Server-Patches/0375-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch similarity index 89% rename from Spigot-Server-Patches/0377-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch rename to Spigot-Server-Patches/0375-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch index bdca0db52..0ca662166 100644 --- a/Spigot-Server-Patches/0377-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch +++ b/Spigot-Server-Patches/0375-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch @@ -1,4 +1,4 @@ -From 4767b1bbc871b6a58aed21ca288b15924832fd4c Mon Sep 17 00:00:00 2001 +From dd3bf068fbdf1e9b24be75713abd4e983459a481 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 24 Mar 2019 18:09:20 -0400 Subject: [PATCH] don't go below 0 for pickupDelay, breaks picking up items @@ -6,7 +6,7 @@ Subject: [PATCH] don't go below 0 for pickupDelay, breaks picking up items vanilla checks for == 0 diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java -index c5fefa060..43fc790a6 100644 +index ddd1f6307..7e9256314 100644 --- a/src/main/java/net/minecraft/server/EntityItem.java +++ b/src/main/java/net/minecraft/server/EntityItem.java @@ -59,6 +59,7 @@ public class EntityItem extends Entity { @@ -17,7 +17,7 @@ index c5fefa060..43fc790a6 100644 if (this.age != -32768) this.age += elapsedTicks; this.lastTick = MinecraftServer.currentTick; // CraftBukkit end -@@ -143,6 +144,7 @@ public class EntityItem extends Entity { +@@ -145,6 +146,7 @@ public class EntityItem extends Entity { // CraftBukkit start - Use wall time for pickup and despawn timers int elapsedTicks = MinecraftServer.currentTick - this.lastTick; if (this.pickupDelay != 32767) this.pickupDelay -= elapsedTicks; diff --git a/Spigot-Server-Patches/0378-Implement-getters-and-setters-for-EntityItem-owner-a.patch b/Spigot-Server-Patches/0376-Implement-getters-and-setters-for-EntityItem-owner-a.patch similarity index 93% rename from Spigot-Server-Patches/0378-Implement-getters-and-setters-for-EntityItem-owner-a.patch rename to Spigot-Server-Patches/0376-Implement-getters-and-setters-for-EntityItem-owner-a.patch index 3b11bbeae..c47d57a13 100644 --- a/Spigot-Server-Patches/0378-Implement-getters-and-setters-for-EntityItem-owner-a.patch +++ b/Spigot-Server-Patches/0376-Implement-getters-and-setters-for-EntityItem-owner-a.patch @@ -1,4 +1,4 @@ -From 10204d4fa6ec2479dc404e08a4c401671717eb5b Mon Sep 17 00:00:00 2001 +From 86a985dcf01260eb221879345473b4267009d7f8 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sat, 6 Oct 2018 20:54:23 -0500 Subject: [PATCH] Implement getters and setters for EntityItem owner and @@ -6,7 +6,7 @@ Subject: [PATCH] Implement getters and setters for EntityItem owner and diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java -index 3f552b5905..cb756b1ba0 100644 +index 3f552b590..cb756b1ba 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java @@ -8,6 +8,11 @@ import org.bukkit.entity.EntityType; diff --git a/Spigot-Server-Patches/0379-Server-Tick-Events.patch b/Spigot-Server-Patches/0377-Server-Tick-Events.patch similarity index 93% rename from Spigot-Server-Patches/0379-Server-Tick-Events.patch rename to Spigot-Server-Patches/0377-Server-Tick-Events.patch index 0e7872929..208d5ed84 100644 --- a/Spigot-Server-Patches/0379-Server-Tick-Events.patch +++ b/Spigot-Server-Patches/0377-Server-Tick-Events.patch @@ -1,4 +1,4 @@ -From 2a67323ac67aa4357f86d01ce473d17ddf9f8097 Mon Sep 17 00:00:00 2001 +From 0939ef5dc79de68937f15014d63ae095ab9bcc3d Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 27 Mar 2019 22:48:45 -0400 Subject: [PATCH] Server Tick Events @@ -6,7 +6,7 @@ Subject: [PATCH] Server Tick Events Fires event at start and end of a server tick diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 200bac9c32..f8ec6a5184 100644 +index 1858e956b..6e77fa35b 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1050,6 +1050,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Wed, 27 Mar 2019 23:01:33 -0400 Subject: [PATCH] PlayerDeathEvent#getItemsToKeep @@ -8,7 +8,7 @@ Exposes a mutable array on items a player should keep on death Example Usage: https://gist.github.com/aikar/5bb202de6057a051a950ce1f29feb0b4 diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index a18afbcdde..f17e799309 100644 +index 3ecf18379..e9f158d8e 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -508,6 +508,46 @@ public class EntityPlayer extends EntityHuman implements ICrafting { diff --git a/Spigot-Server-Patches/0381-Optimize-Persistent-Data-Loading.patch b/Spigot-Server-Patches/0379-Optimize-Persistent-Data-Loading.patch similarity index 96% rename from Spigot-Server-Patches/0381-Optimize-Persistent-Data-Loading.patch rename to Spigot-Server-Patches/0379-Optimize-Persistent-Data-Loading.patch index e7e5f559c..a7e8198ba 100644 --- a/Spigot-Server-Patches/0381-Optimize-Persistent-Data-Loading.patch +++ b/Spigot-Server-Patches/0379-Optimize-Persistent-Data-Loading.patch @@ -1,4 +1,4 @@ -From 3eccc08f2ede9106b83b801535b818571f6f8e1a Mon Sep 17 00:00:00 2001 +From eed90fc4e6231fca13003863b1c1a8db975e48e3 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 29 Mar 2019 01:25:11 -0400 Subject: [PATCH] Optimize Persistent Data Loading @@ -14,7 +14,7 @@ These files take a long time to convert on large worlds and crashes the server. Additionally, cache the result of a file being missing so we don't keep spam checking it. diff --git a/src/main/java/net/minecraft/server/WorldPersistentData.java b/src/main/java/net/minecraft/server/WorldPersistentData.java -index 47a4ea9985..62081349f1 100644 +index 47a4ea998..62081349f 100644 --- a/src/main/java/net/minecraft/server/WorldPersistentData.java +++ b/src/main/java/net/minecraft/server/WorldPersistentData.java @@ -26,6 +26,7 @@ public class WorldPersistentData { diff --git a/Spigot-Server-Patches/0382-Allow-login-events-to-fire-only-after-the-server-plu.patch b/Spigot-Server-Patches/0380-Allow-login-events-to-fire-only-after-the-server-plu.patch similarity index 95% rename from Spigot-Server-Patches/0382-Allow-login-events-to-fire-only-after-the-server-plu.patch rename to Spigot-Server-Patches/0380-Allow-login-events-to-fire-only-after-the-server-plu.patch index bf9557cab..85e2be75e 100644 --- a/Spigot-Server-Patches/0382-Allow-login-events-to-fire-only-after-the-server-plu.patch +++ b/Spigot-Server-Patches/0380-Allow-login-events-to-fire-only-after-the-server-plu.patch @@ -1,4 +1,4 @@ -From 1bd99ef08a30a187374aa94ba3751bef4f20e5fc Mon Sep 17 00:00:00 2001 +From df4584e81bbed5243a3d0bd9a4132518e1a71bed Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Sun, 31 Mar 2019 22:02:24 -0700 Subject: [PATCH] Allow login events to fire only after the server plugins are @@ -7,7 +7,7 @@ Subject: [PATCH] Allow login events to fire only after the server plugins are Event threads will simply block until they're ready to accept. diff --git a/src/main/java/net/minecraft/server/LoginListener.java b/src/main/java/net/minecraft/server/LoginListener.java -index 9e4bc24058..028c23dbe6 100644 +index 9e4bc2405..028c23dbe 100644 --- a/src/main/java/net/minecraft/server/LoginListener.java +++ b/src/main/java/net/minecraft/server/LoginListener.java @@ -285,6 +285,36 @@ public class LoginListener implements PacketLoginInListener { @@ -56,7 +56,7 @@ index 9e4bc24058..028c23dbe6 100644 java.net.InetAddress address = ((java.net.InetSocketAddress) networkManager.getSocketAddress()).getAddress(); java.util.UUID uniqueId = i.getId(); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index f8ec6a5184..33c7a295ea 100644 +index 6e77fa35b..70f730996 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -462,6 +462,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Mon, 1 Apr 2019 18:57:32 -0700 Subject: [PATCH] Make region files more reliable to write to @@ -37,7 +37,7 @@ affect save performance if the startup flag is used (especially on HDDs). diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index ed2ccebb23..2e14d84657 100644 +index ed2ccebb2..2e14d8465 100644 --- a/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java @@ -29,7 +29,7 @@ public class RegionFile implements AutoCloseable { diff --git a/Spigot-Server-Patches/0384-Optimize-GameRules-to-use-LinkedHashMap.patch b/Spigot-Server-Patches/0382-Optimize-GameRules-to-use-LinkedHashMap.patch similarity index 96% rename from Spigot-Server-Patches/0384-Optimize-GameRules-to-use-LinkedHashMap.patch rename to Spigot-Server-Patches/0382-Optimize-GameRules-to-use-LinkedHashMap.patch index f372ee6be..05b054512 100644 --- a/Spigot-Server-Patches/0384-Optimize-GameRules-to-use-LinkedHashMap.patch +++ b/Spigot-Server-Patches/0382-Optimize-GameRules-to-use-LinkedHashMap.patch @@ -1,4 +1,4 @@ -From fc04d1491133783f7c34c7dd55e2bf109f747df8 Mon Sep 17 00:00:00 2001 +From 7f6af3d7949b464786340f3a11cd7678bdb35680 Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Thu, 4 Apr 2019 17:55:05 -0700 Subject: [PATCH] Optimize GameRules to use LinkedHashMap @@ -6,7 +6,7 @@ Subject: [PATCH] Optimize GameRules to use LinkedHashMap Previously TreeMap was used which has poor get(K) performance. diff --git a/src/main/java/net/minecraft/server/GameRules.java b/src/main/java/net/minecraft/server/GameRules.java -index 3de9d264db..c6a8004745 100644 +index 3de9d264d..c6a800474 100644 --- a/src/main/java/net/minecraft/server/GameRules.java +++ b/src/main/java/net/minecraft/server/GameRules.java @@ -17,7 +17,17 @@ import javax.annotation.Nullable; @@ -49,7 +49,7 @@ index 3de9d264db..c6a8004745 100644 } diff --git a/src/test/java/org/bukkit/GameRuleTest.java b/src/test/java/org/bukkit/GameRuleTest.java -index 1ed0f4cf2b..40edb8d668 100644 +index 1ed0f4cf2..40edb8d66 100644 --- a/src/test/java/org/bukkit/GameRuleTest.java +++ b/src/test/java/org/bukkit/GameRuleTest.java @@ -21,7 +21,7 @@ public class GameRuleTest { diff --git a/Spigot-Server-Patches/0385-Optimize-Captured-TileEntity-Lookup.patch b/Spigot-Server-Patches/0383-Optimize-Captured-TileEntity-Lookup.patch similarity index 89% rename from Spigot-Server-Patches/0385-Optimize-Captured-TileEntity-Lookup.patch rename to Spigot-Server-Patches/0383-Optimize-Captured-TileEntity-Lookup.patch index ddcc6e221..0a5595b41 100644 --- a/Spigot-Server-Patches/0385-Optimize-Captured-TileEntity-Lookup.patch +++ b/Spigot-Server-Patches/0383-Optimize-Captured-TileEntity-Lookup.patch @@ -1,4 +1,4 @@ -From d2b2e3091b3cf797a06a1fc5c86388e90d87f384 Mon Sep 17 00:00:00 2001 +From 931a4ab5fd5f003c2ea96f932a2054b8ac5623c6 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 6 Apr 2019 10:16:48 -0400 Subject: [PATCH] Optimize Captured TileEntity Lookup @@ -10,10 +10,10 @@ Optimize to check if the captured list even has values in it, and also to just do a get call since the value can never be null. diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index ab56086e1..a1e660767 100644 +index 98f9ac7de..8f8bc28a1 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -1051,12 +1051,13 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -1053,12 +1053,13 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose return null; } else { // CraftBukkit start diff --git a/Spigot-Server-Patches/0386-Add-Heightmap-API.patch b/Spigot-Server-Patches/0384-Add-Heightmap-API.patch similarity index 95% rename from Spigot-Server-Patches/0386-Add-Heightmap-API.patch rename to Spigot-Server-Patches/0384-Add-Heightmap-API.patch index 3e63938b1..583f5db64 100644 --- a/Spigot-Server-Patches/0386-Add-Heightmap-API.patch +++ b/Spigot-Server-Patches/0384-Add-Heightmap-API.patch @@ -1,11 +1,11 @@ -From 898e971f01f728b6ddddda340224e41a63a39a53 Mon Sep 17 00:00:00 2001 +From 5a098ad86885033e772180ab1512eded5323753d 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 a1e660767..4caf5d9af 100644 +index 8f8bc28a1..bcd397127 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -617,8 +617,8 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -20,7 +20,7 @@ index a1e660767..4caf5d9af 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 b9786909b..cd3814cdd 100644 +index 073400f23..e18ae24bf 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -317,6 +317,29 @@ public class CraftWorld implements World { diff --git a/Spigot-Server-Patches/0387-Handle-bad-chunks-more-gracefully.patch b/Spigot-Server-Patches/0385-Handle-bad-chunks-more-gracefully.patch similarity index 96% rename from Spigot-Server-Patches/0387-Handle-bad-chunks-more-gracefully.patch rename to Spigot-Server-Patches/0385-Handle-bad-chunks-more-gracefully.patch index 18b440c2f..0fc51cf84 100644 --- a/Spigot-Server-Patches/0387-Handle-bad-chunks-more-gracefully.patch +++ b/Spigot-Server-Patches/0385-Handle-bad-chunks-more-gracefully.patch @@ -1,4 +1,4 @@ -From 71807748b0b5a66e584ee33e6fbf7156bab458ff Mon Sep 17 00:00:00 2001 +From d8b88fa191c6889982feff85a41cdcfc7207b11c Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Mon, 15 Apr 2019 02:24:52 +0100 Subject: [PATCH] Handle bad chunks more gracefully @@ -15,7 +15,7 @@ Should Mojang choose to alter this behavior in the future, this change will simply defer to whatever that new behavior is. diff --git a/src/main/java/net/minecraft/server/RegionFileCache.java b/src/main/java/net/minecraft/server/RegionFileCache.java -index 6893f3cd34..717b0b1f08 100644 +index b61864641..d39d49944 100644 --- a/src/main/java/net/minecraft/server/RegionFileCache.java +++ b/src/main/java/net/minecraft/server/RegionFileCache.java @@ -171,8 +171,21 @@ public abstract class RegionFileCache implements AutoCloseable { diff --git a/Spigot-Server-Patches/0388-Mob-Spawner-API-Enhancements.patch b/Spigot-Server-Patches/0386-Mob-Spawner-API-Enhancements.patch similarity index 95% rename from Spigot-Server-Patches/0388-Mob-Spawner-API-Enhancements.patch rename to Spigot-Server-Patches/0386-Mob-Spawner-API-Enhancements.patch index 3be9ede98..bcd9ef993 100644 --- a/Spigot-Server-Patches/0388-Mob-Spawner-API-Enhancements.patch +++ b/Spigot-Server-Patches/0386-Mob-Spawner-API-Enhancements.patch @@ -1,11 +1,11 @@ -From b4ef112f5b372442d85cf0fd34b2b6b813f25e8e Mon Sep 17 00:00:00 2001 +From 748fd8addd85852e68cf2df3eddc548c571af9b0 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Fri, 19 Apr 2019 12:41:13 -0500 Subject: [PATCH] Mob Spawner API Enhancements diff --git a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java -index 96080b6c73..c0f5a55120 100644 +index dbb8098d6..e9bcb5aba 100644 --- a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java +++ b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java @@ -46,6 +46,7 @@ public abstract class MobSpawnerAbstract { @@ -40,7 +40,7 @@ index 96080b6c73..c0f5a55120 100644 NBTTagList nbttaglist = nbttagcompound.getList("SpawnPotentials", 10); @@ -237,10 +245,15 @@ public abstract class MobSpawnerAbstract { } else if (!this.mobs.isEmpty()) { - this.a((MobSpawnerData) WeightedRandom.a(this.a().random, this.mobs)); + this.setSpawnData((MobSpawnerData) WeightedRandom.a(this.a().random, this.mobs)); } - + // Paper start - use ints if set @@ -82,7 +82,7 @@ index 96080b6c73..c0f5a55120 100644 nbttagcompound.setShort("MaxNearbyEntities", (short) this.maxNearbyEntities); nbttagcompound.setShort("RequiredPlayerRange", (short) this.requiredPlayerRange); diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftCreatureSpawner.java b/src/main/java/org/bukkit/craftbukkit/block/CraftCreatureSpawner.java -index 5c4c3c70c7..e78e3804ba 100644 +index 5c4c3c70c..e78e3804b 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftCreatureSpawner.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftCreatureSpawner.java @@ -121,4 +121,16 @@ public class CraftCreatureSpawner extends CraftBlockEntityState Date: Mon, 22 Apr 2019 19:51:14 +0100 Subject: [PATCH] don't NPE on dimensionmanager toString @@ -14,22 +14,20 @@ this is not super elegant, but is the only route that promises not to break stuff. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 982dce4800..d18a530a4d 100644 +index 050bf3eb4..56e8a613e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -997,7 +997,14 @@ public final class CraftServer implements Server { +@@ -997,7 +997,12 @@ public final class CraftServer implements Server { } DimensionManager actualDimension = DimensionManager.a(creator.environment().getId()); -- DimensionManager internalDimension = new DimensionManager(dimension, name, name, (w, manager) -> actualDimension.getWorldProvider(w), actualDimension.hasSkyLight()); -+ // Paper start - override toString -+ DimensionManager internalDimension = new DimensionManager(dimension, name, name, (w, manager) -> actualDimension.getWorldProvider(w), actualDimension.hasSkyLight()) { +- DimensionManager internalDimension = DimensionManager.register(name, new DimensionManager(dimension, actualDimension.getSuffix(), actualDimension.folder, (w, manager) -> actualDimension.providerFactory.apply(w, manager), actualDimension.hasSkyLight(), actualDimension)); ++ DimensionManager internalDimension = DimensionManager.register(name, new DimensionManager(dimension, actualDimension.getSuffix(), actualDimension.folder, (w, manager) -> actualDimension.providerFactory.apply(w, manager), actualDimension.hasSkyLight(), actualDimension) { + @Override + public String toString() { + return name; + } -+ }; -+ // Paper end ++ }); WorldServer internal = (WorldServer) new WorldServer(console, console.executorService, sdm, worlddata, internalDimension, console.getMethodProfiler(), getServer().worldLoadListenerFactory.create(11), creator.environment(), generator); if (!(worlds.containsKey(name.toLowerCase(java.util.Locale.ENGLISH)))) { diff --git a/Spigot-Server-Patches/0390-Per-Player-View-Distance-API-placeholders.patch b/Spigot-Server-Patches/0388-Per-Player-View-Distance-API-placeholders.patch similarity index 94% rename from Spigot-Server-Patches/0390-Per-Player-View-Distance-API-placeholders.patch rename to Spigot-Server-Patches/0388-Per-Player-View-Distance-API-placeholders.patch index 8d1d94833..f29cbf2c5 100644 --- a/Spigot-Server-Patches/0390-Per-Player-View-Distance-API-placeholders.patch +++ b/Spigot-Server-Patches/0388-Per-Player-View-Distance-API-placeholders.patch @@ -1,4 +1,4 @@ -From bb70dfdde09bd9c4005e67d370f2401b3eea5295 Mon Sep 17 00:00:00 2001 +From 6eb897728c2cf8982d1406ed268ce608f1b04ad8 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Mon, 6 May 2019 01:29:25 -0400 Subject: [PATCH] Per-Player View Distance API placeholders @@ -7,7 +7,7 @@ I hope to look at this more in-depth soon. It appears doable. However this should not block the update. diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java -index 6d51413d18..fe4a3efa30 100644 +index 9ada10cc7..5751d39e0 100644 --- a/src/main/java/net/minecraft/server/EntityEnderDragon.java +++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java @@ -570,9 +570,9 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster { @@ -23,7 +23,7 @@ index 6d51413d18..fe4a3efa30 100644 double deltaX = this.locX - player.locX; double deltaZ = this.locZ - player.locZ; diff --git a/src/main/java/net/minecraft/server/EntityWither.java b/src/main/java/net/minecraft/server/EntityWither.java -index 48b22894aa..dbd8542069 100644 +index 48b22894a..dbd854206 100644 --- a/src/main/java/net/minecraft/server/EntityWither.java +++ b/src/main/java/net/minecraft/server/EntityWither.java @@ -208,9 +208,9 @@ public class EntityWither extends EntityMonster implements IRangedEntity { @@ -39,10 +39,10 @@ index 48b22894aa..dbd8542069 100644 double deltaX = this.locX - player.locX; double deltaZ = this.locZ - player.locZ; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 3bc7a64fac..d94f4c03c2 100644 +index c020d0b4e..9f267414d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1963,6 +1963,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1962,6 +1962,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { super.remove(); } } diff --git a/Spigot-Server-Patches/0391-Async-Chunk-placeholder.patch b/Spigot-Server-Patches/0389-Async-Chunk-placeholder.patch similarity index 88% rename from Spigot-Server-Patches/0391-Async-Chunk-placeholder.patch rename to Spigot-Server-Patches/0389-Async-Chunk-placeholder.patch index f8c4864f6..cbc212911 100644 --- a/Spigot-Server-Patches/0391-Async-Chunk-placeholder.patch +++ b/Spigot-Server-Patches/0389-Async-Chunk-placeholder.patch @@ -1,4 +1,4 @@ -From 75d57f76e6c5fd5c01f0696d01dbe7957267b017 Mon Sep 17 00:00:00 2001 +From 08d847cb80c0a7ba3b44f0ac6a9a0a91a45c6321 Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Mon, 6 May 2019 12:29:24 -0700 Subject: [PATCH] Async Chunk placeholder @@ -6,7 +6,7 @@ Subject: [PATCH] Async Chunk placeholder Until we figure out Mojang's ticket system. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index d2c3ea0dc3..f4ce7c59c8 100644 +index e18ae24bf..a263d8e7f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -14,6 +14,7 @@ import java.util.Objects; @@ -17,7 +17,7 @@ index d2c3ea0dc3..f4ce7c59c8 100644 import java.util.function.Predicate; import net.minecraft.server.AxisAlignedBB; import net.minecraft.server.BiomeBase; -@@ -2135,6 +2136,17 @@ public class CraftWorld implements World { +@@ -2118,6 +2119,17 @@ public class CraftWorld implements World { return (nearest == null) ? null : new Location(this, nearest.getX(), nearest.getY(), nearest.getZ()); } diff --git a/Spigot-Server-Patches/0392-Fix-CB-call-to-changed-postToMainThread-method.patch b/Spigot-Server-Patches/0390-Fix-CB-call-to-changed-postToMainThread-method.patch similarity index 88% rename from Spigot-Server-Patches/0392-Fix-CB-call-to-changed-postToMainThread-method.patch rename to Spigot-Server-Patches/0390-Fix-CB-call-to-changed-postToMainThread-method.patch index 374573873..4b68a5c2d 100644 --- a/Spigot-Server-Patches/0392-Fix-CB-call-to-changed-postToMainThread-method.patch +++ b/Spigot-Server-Patches/0390-Fix-CB-call-to-changed-postToMainThread-method.patch @@ -1,11 +1,11 @@ -From 2f3037b6d9668bdf41e57d7a54e3ad241f065fb3 Mon Sep 17 00:00:00 2001 +From 1c49d5e92992eed534dcf79ce695c622da25f932 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Fri, 10 May 2019 18:38:19 +0100 Subject: [PATCH] Fix CB call to changed postToMainThread method diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 4dcfc423c..8c663f90c 100644 +index ef57cd68f..2b48ebbc3 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -281,7 +281,7 @@ public class PlayerConnection implements PacketListenerPlayIn { diff --git a/Spigot-Server-Patches/0393-Fix-sounds-when-item-frames-are-modified-MC-123450.patch b/Spigot-Server-Patches/0391-Fix-sounds-when-item-frames-are-modified-MC-123450.patch similarity index 96% rename from Spigot-Server-Patches/0393-Fix-sounds-when-item-frames-are-modified-MC-123450.patch rename to Spigot-Server-Patches/0391-Fix-sounds-when-item-frames-are-modified-MC-123450.patch index 1946a47a0..bf550088e 100644 --- a/Spigot-Server-Patches/0393-Fix-sounds-when-item-frames-are-modified-MC-123450.patch +++ b/Spigot-Server-Patches/0391-Fix-sounds-when-item-frames-are-modified-MC-123450.patch @@ -1,4 +1,4 @@ -From 7f0c00a99054e83c7b46e49338c063f162c4b196 Mon Sep 17 00:00:00 2001 +From 4cf4195808543f331efd8e40cad8235fad0b8d72 Mon Sep 17 00:00:00 2001 From: Phoenix616 Date: Sat, 27 Apr 2019 20:00:43 +0100 Subject: [PATCH] Fix sounds when item frames are modified (MC-123450) diff --git a/Spigot-Server-Patches/0394-Fix-MC-151674-Close-RegionFiles-when-they-get-evicte.patch b/Spigot-Server-Patches/0392-Fix-MC-151674-Close-RegionFiles-when-they-get-evicte.patch similarity index 89% rename from Spigot-Server-Patches/0394-Fix-MC-151674-Close-RegionFiles-when-they-get-evicte.patch rename to Spigot-Server-Patches/0392-Fix-MC-151674-Close-RegionFiles-when-they-get-evicte.patch index 26e69fefe..dd4076f65 100644 --- a/Spigot-Server-Patches/0394-Fix-MC-151674-Close-RegionFiles-when-they-get-evicte.patch +++ b/Spigot-Server-Patches/0392-Fix-MC-151674-Close-RegionFiles-when-they-get-evicte.patch @@ -1,4 +1,4 @@ -From 4ee0a7fa87c1a754cdcd04bdea98dff8fa09a0dc Mon Sep 17 00:00:00 2001 +From b35691f592e433ffc5ad25a09639b337d923996c Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Sun, 12 May 2019 19:25:53 -0700 Subject: [PATCH] Fix MC-151674 Close RegionFiles when they get evicted from @@ -7,7 +7,7 @@ Subject: [PATCH] Fix MC-151674 Close RegionFiles when they get evicted from https://bugs.mojang.com/browse/MC-151674 diff --git a/src/main/java/net/minecraft/server/RegionFileCache.java b/src/main/java/net/minecraft/server/RegionFileCache.java -index d39d4994..e0bfa39c 100644 +index d39d49944..e0bfa39c3 100644 --- a/src/main/java/net/minecraft/server/RegionFileCache.java +++ b/src/main/java/net/minecraft/server/RegionFileCache.java @@ -56,7 +56,7 @@ public abstract class RegionFileCache implements AutoCloseable { diff --git a/work/BuildData b/work/BuildData index df6650718..e5aeddf8c 160000 --- a/work/BuildData +++ b/work/BuildData @@ -1 +1 @@ -Subproject commit df665071847a0ace1b4b7149f504e5bb8eca992c +Subproject commit e5aeddf8cfe1a4d3d4cf930f1bd0617a4a683437 diff --git a/work/Bukkit b/work/Bukkit index fe0cadf05..8bcd3fd1e 160000 --- a/work/Bukkit +++ b/work/Bukkit @@ -1 +1 @@ -Subproject commit fe0cadf0559d68852de1122f4c5e31f9bd4d4cef +Subproject commit 8bcd3fd1e139f791985113e0de85ccab3385bbc7 diff --git a/work/CraftBukkit b/work/CraftBukkit index 7d29eb5e5..89c52b7b0 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit 7d29eb5e5a25352a51096efb57a0900793bba2de +Subproject commit 89c52b7b0eced8aef6ebbab4adcc1d77e7e4c35f diff --git a/work/Spigot b/work/Spigot index 1eece4fcb..8043ebcb9 160000 --- a/work/Spigot +++ b/work/Spigot @@ -1 +1 @@ -Subproject commit 1eece4fcb49d23d9f09dd21e0e5462a5d3d81b83 +Subproject commit 8043ebcb9a2b897a8c4c9dd516373d7cbfbca853