From f9ccf6ddbc286dd0be4278b73db77e7e69390d21 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Sun, 23 May 2021 23:22:01 -0500 Subject: [PATCH] Updated Upstream (Paper & Airplane) Upstream has released updates that appear to apply and compile correctly Paper Changes: 47d48790d Change return type of ItemStack#editMeta to allow checking for successful vs non-successful edits 7aabe7d56 [CI-SKIP] fix minecart vs minecraft typos (#5713) f775e87b4 [CI-SKIP] ci: update setup-java action (#5710) c58b3b277 ci: replace Java 11 with Java 16 in GH Actions build flow (#5709) 4b72327a6 ItemStack#editMeta 68984b664 Add Unix domain socket support (#5611) 68c67e680 Add Mob#lookAt API (#5633) 4bacecd16 [Auto] Updated Upstream (Bukkit/CraftBukkit) 1f28e6eeb Fix default ChatRenderer when no plugins are installed (#5702) ecb0d32ca Enhance (Async)ChatEvent with per-viewer rendering API (#5684) Airplane Changes: 636dbff0f [ci skip] Cleanup mcdev import files c57932048 [ci skip] Remove icons 7ada9a476 [skip ci] Need to specify 1.16.5 in the README of course 813df1a44 Update README daf3f0b29 Optimize air case for raytracing --- Paper | 2 +- patches/api/0013-ItemFactory-getMonsterEgg.patch | 2 +- .../api/0019-ItemStack-convenience-methods.patch | 4 ++-- patches/api/0030-Left-handed-API.patch | 4 ++-- ...javadoc-warnings-missing-param-and-return.patch | 14 +++++++------- patches/server/0001-Tuinity-Server-Changes.patch | 14 +++++++------- patches/server/0002-Airplane-Server-Changes.patch | 9 +++++---- patches/server/0003-Rebrand.patch | 4 ++-- patches/server/0004-Purpur-config-files.patch | 2 +- patches/server/0026-Giants-AI-settings.patch | 6 +++--- ...pick-up-loot-bypass-mob-griefing-gamerule.patch | 2 +- patches/server/0063-Allow-leashing-villagers.patch | 4 ++-- ...070-Dispenser-curse-of-binding-protection.patch | 4 ++-- patches/server/0085-Entity-lifespan.patch | 4 ++-- patches/server/0103-Ridables.patch | 6 +++--- patches/server/0135-Left-handed-API.patch | 6 +++--- ...Origami-Fix-ProtocolLib-issues-on-Java-15.patch | 2 +- .../0137-Changeable-Mob-Left-Handed-Chance.patch | 4 ++-- patches/server/0153-Implement-TPSBar.patch | 4 ++-- ...167-Toggle-for-water-sensitive-mob-damage.patch | 2 +- .../server/0213-Iron-golem-poppy-calms-anger.patch | 12 ------------ ...18-Config-for-unverified-username-message.patch | 2 +- 22 files changed, 51 insertions(+), 62 deletions(-) diff --git a/Paper b/Paper index f3e541ca1..47d48790d 160000 --- a/Paper +++ b/Paper @@ -1 +1 @@ -Subproject commit f3e541ca1be95f48a82ccf09a1f843edba4deddb +Subproject commit 47d48790d152dc36ce67b275e560c35e18233d29 diff --git a/patches/api/0013-ItemFactory-getMonsterEgg.patch b/patches/api/0013-ItemFactory-getMonsterEgg.patch index eda7fa85a..f426c80eb 100644 --- a/patches/api/0013-ItemFactory-getMonsterEgg.patch +++ b/patches/api/0013-ItemFactory-getMonsterEgg.patch @@ -5,7 +5,7 @@ Subject: [PATCH] ItemFactory#getMonsterEgg diff --git a/src/main/java/org/bukkit/inventory/ItemFactory.java b/src/main/java/org/bukkit/inventory/ItemFactory.java -index 673477470d110c53922e9e774158d4dc58f1bba0..4b37b6108dd40c6d091a0e5e6b2188ff60567492 100644 +index ec7c07564608386c3f7d4322d0af4cbb7d92bc74..39323b3151c733392333858a2dbf1f3f8637341e 100644 --- a/src/main/java/org/bukkit/inventory/ItemFactory.java +++ b/src/main/java/org/bukkit/inventory/ItemFactory.java @@ -242,4 +242,15 @@ public interface ItemFactory { diff --git a/patches/api/0019-ItemStack-convenience-methods.patch b/patches/api/0019-ItemStack-convenience-methods.patch index f724355b8..cff9b1917 100644 --- a/patches/api/0019-ItemStack-convenience-methods.patch +++ b/patches/api/0019-ItemStack-convenience-methods.patch @@ -50,7 +50,7 @@ index 9b1c9e60dba9ea3ef8d8e164f13dd76daf57db8e..b04e9de7183f00a9a47c1fce26895c83 + // Purpur end } diff --git a/src/main/java/org/bukkit/inventory/ItemStack.java b/src/main/java/org/bukkit/inventory/ItemStack.java -index 0f8c593ae9bca46081f0b22c2d763a2699175398..ff17e3165beedee235c738ebc8e9c9f1a7ab52ca 100644 +index 3e2c08641edffcf00b230ad624685aaff30af0e5..fceba6780a15c274c4689eccbeb6dfb2eee25ed9 100644 --- a/src/main/java/org/bukkit/inventory/ItemStack.java +++ b/src/main/java/org/bukkit/inventory/ItemStack.java @@ -17,6 +17,18 @@ import org.bukkit.inventory.meta.ItemMeta; @@ -72,7 +72,7 @@ index 0f8c593ae9bca46081f0b22c2d763a2699175398..ff17e3165beedee235c738ebc8e9c9f1 /** * Represents a stack of items. -@@ -896,4 +908,626 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, net.kyor +@@ -914,4 +926,626 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, net.kyor return Bukkit.getUnsafe().isValidRepairItemStack(toBeRepaired, this); } // Paper end diff --git a/patches/api/0030-Left-handed-API.patch b/patches/api/0030-Left-handed-API.patch index f5bb5e3c5..5e8b1e020 100644 --- a/patches/api/0030-Left-handed-API.patch +++ b/patches/api/0030-Left-handed-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Left handed API diff --git a/src/main/java/org/bukkit/entity/Mob.java b/src/main/java/org/bukkit/entity/Mob.java -index d726453c041a980576312b6bee96a07837f37974..9d4eae5cf0bf8d01954db85b431bcdca8490ee8f 100644 +index 7d4ce660adb21e579e564796568945ee20f0ca59..4205dc5746dafd966f95103cdd2a1a55e79642f8 100644 --- a/src/main/java/org/bukkit/entity/Mob.java +++ b/src/main/java/org/bukkit/entity/Mob.java -@@ -64,4 +64,20 @@ public interface Mob extends LivingEntity, Lootable { +@@ -146,4 +146,20 @@ public interface Mob extends LivingEntity, Lootable { * @return whether the mob is aware */ public boolean isAware(); diff --git a/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch b/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch index 9acc05148..11d978284 100644 --- a/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch +++ b/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch @@ -420,10 +420,10 @@ index 5bb677ce585b856b3d3e589e29786a29619c56a7..613f00fa387dcc5af3191e550dea9d4d private final LongAdder cachedSize = new LongAdder(); diff --git a/src/main/java/io/papermc/paper/event/player/AsyncChatEvent.java b/src/main/java/io/papermc/paper/event/player/AsyncChatEvent.java -index a0f748957f4472103dd27fc95a711a42de7fae89..c66b49f05be7a9cc26ba595829d7751d38aebeb1 100644 +index d85006591808b61518545c9f5b0b5915c19e0a9d..363dc1e3157fb94671e07fbdc0f0f7357e308589 100644 --- a/src/main/java/io/papermc/paper/event/player/AsyncChatEvent.java +++ b/src/main/java/io/papermc/paper/event/player/AsyncChatEvent.java -@@ -19,6 +19,11 @@ public final class AsyncChatEvent extends AbstractChatEvent { +@@ -37,6 +37,11 @@ public final class AsyncChatEvent extends AbstractChatEvent { } /** @@ -432,14 +432,14 @@ index a0f748957f4472103dd27fc95a711a42de7fae89..c66b49f05be7a9cc26ba595829d7751d + * @param recipients Recipients + * @param formatter Formatter + * @param message Message - * @deprecated use {@link #AsyncChatEvent(boolean, Player, Set, ChatComposer, Component)} + * @deprecated for removal with 1.17, use {@link #AsyncChatEvent(boolean, Player, Set, ChatRenderer, Component)} */ @Deprecated diff --git a/src/main/java/io/papermc/paper/event/player/ChatEvent.java b/src/main/java/io/papermc/paper/event/player/ChatEvent.java -index 13c5df5fb8ce1d0203d99e88dd691019146a8f52..558d6531e9c06e25369074932fd9f0ab00e9e2c8 100644 +index 6219aabaf40ab89f8e08c256d1255bf5522db4d3..b94e9ff470203f46b27f461db6ca741a933e3411 100644 --- a/src/main/java/io/papermc/paper/event/player/ChatEvent.java +++ b/src/main/java/io/papermc/paper/event/player/ChatEvent.java -@@ -24,6 +24,10 @@ public final class ChatEvent extends AbstractChatEvent { +@@ -41,6 +41,10 @@ public final class ChatEvent extends AbstractChatEvent { } /** @@ -447,7 +447,7 @@ index 13c5df5fb8ce1d0203d99e88dd691019146a8f52..558d6531e9c06e25369074932fd9f0ab + * @param recipients Recipients + * @param formatter Formatter + * @param message Message - * @deprecated use {@link #ChatEvent(Player, Set, ChatComposer, Component)} + * @deprecated for removal with 1.17, use {@link #ChatEvent(Player, Set, ChatRenderer, Component)} */ @Deprecated diff --git a/src/main/java/io/papermc/paper/inventory/ItemRarity.java b/src/main/java/io/papermc/paper/inventory/ItemRarity.java @@ -1416,7 +1416,7 @@ index c7b17eabf07b829a02afe7c1f27a5127b6bfea70..d4e2bcf8ce8fc2af851b471490147f00 /** diff --git a/src/main/java/org/bukkit/inventory/ItemFactory.java b/src/main/java/org/bukkit/inventory/ItemFactory.java -index 4b37b6108dd40c6d091a0e5e6b2188ff60567492..0c4aa68f47f6ccab578dc1593cf6de5eea0e17d4 100644 +index 39323b3151c733392333858a2dbf1f3f8637341e..b2af5217a74266917365c3bf216a780b95c833bd 100644 --- a/src/main/java/org/bukkit/inventory/ItemFactory.java +++ b/src/main/java/org/bukkit/inventory/ItemFactory.java @@ -148,6 +148,7 @@ public interface ItemFactory { diff --git a/patches/server/0001-Tuinity-Server-Changes.patch b/patches/server/0001-Tuinity-Server-Changes.patch index d4c847a97..2e5536e9c 100644 --- a/patches/server/0001-Tuinity-Server-Changes.patch +++ b/patches/server/0001-Tuinity-Server-Changes.patch @@ -9947,7 +9947,7 @@ index 7d9a16eb81288b74425319c60525f57c98ad3b69..427413c668865e1660f1d81daf6a3385 } diff --git a/src/main/java/net/minecraft/network/NetworkManager.java b/src/main/java/net/minecraft/network/NetworkManager.java -index f86f430598026a3a7e27fb8d40cfc5fe7b9b845d..0f8cbe1f656b46f71c6494bd2e0057be63017272 100644 +index bf0c01eaf593972bbb18c22cfdb3abd658ec6498..b6c0ef0df93f0350fa70e857e06d79ae34d7d4b1 100644 --- a/src/main/java/net/minecraft/network/NetworkManager.java +++ b/src/main/java/net/minecraft/network/NetworkManager.java @@ -45,6 +45,8 @@ import org.apache.logging.log4j.Logger; @@ -11169,7 +11169,7 @@ index 848219f43b2bcb2d79147107c68df52efd46d461..72d1c1202581abc284848000663ada55 public CrashReport b(CrashReport crashreport) { diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index df8270c40ed7ce6f628686ff6f4fa4cf96af6738..fa7a78549a9bb92b93c305dc16f43a9ace7f6f43 100644 +index b7c637900bf9229069fb618fdda0bf49d36d776e..392a707d7d71f2009134741529fb9539bd025619 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -215,6 +215,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -11180,7 +11180,7 @@ index df8270c40ed7ce6f628686ff6f4fa4cf96af6738..fa7a78549a9bb92b93c305dc16f43a9a this.setPVP(dedicatedserverproperties.pvp); this.setAllowFlight(dedicatedserverproperties.allowFlight); -@@ -399,7 +400,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer +@@ -416,7 +417,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer } if (this.q != null) { @@ -15008,7 +15008,7 @@ index 6aace2155258d8257d53ebfcb20c37ea7497c02c..479605b5f8660b6968027a3d7b59075a this.tickingEntities = wasTicking; // Paper } diff --git a/src/main/java/net/minecraft/server/network/LoginListener.java b/src/main/java/net/minecraft/server/network/LoginListener.java -index f54af7cabc6b4e062948dc97e577e7fe04b5add4..4e28b58731c7e76a727ed8f0967150f8fe22ab66 100644 +index 5b69126142140c7fc96435a4d246752581f47c33..25437a993c02379fa43e5d46159cd9ba2aebf10f 100644 --- a/src/main/java/net/minecraft/server/network/LoginListener.java +++ b/src/main/java/net/minecraft/server/network/LoginListener.java @@ -256,7 +256,7 @@ public class LoginListener implements PacketLoginInListener { @@ -15240,10 +15240,10 @@ index fdc824c7b4e9aae29a8ea08a492fbdeb6519ca60..a4f7e57283950074005869e0098fe665 Stream stream = iworldreader.d(this.player, this.player.getBoundingBox().shrink(9.999999747378752E-6D), (entity) -> { return true; diff --git a/src/main/java/net/minecraft/server/network/ServerConnection.java b/src/main/java/net/minecraft/server/network/ServerConnection.java -index 69fc2789df88344587b6052f93661ed38f24a503..92836f1200461ba7fff2f8bcb5e1755ec9a0c9ce 100644 +index 06b0ed65905b9829564dfddd29012218af0f403d..69a982832489fc78fd46418341bdcba1e2be69e9 100644 --- a/src/main/java/net/minecraft/server/network/ServerConnection.java +++ b/src/main/java/net/minecraft/server/network/ServerConnection.java -@@ -87,6 +87,11 @@ public class ServerConnection { +@@ -96,6 +96,11 @@ public class ServerConnection { ServerConnection.LOGGER.info("Using default channel type"); } @@ -15852,7 +15852,7 @@ index 429f0591c6a55f6c5d08a0755f7d39da676468bc..feab0ae1930b5271fe0d06a40c180317 int j = MathHelper.floor(d1); int k = MathHelper.floor(d2); diff --git a/src/main/java/net/minecraft/world/entity/EntityInsentient.java b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -index a246edd09854dabf095da75c9d200f5cf26e7138..aae13c2e6c2a30b69c33417932c6a4d0aefeb7f5 100644 +index 837bf1b02a66602892c2f572b38b17de6ba6d266..bd66ee1b93fc776f77218b87717e0915668e7c04 100644 --- a/src/main/java/net/minecraft/world/entity/EntityInsentient.java +++ b/src/main/java/net/minecraft/world/entity/EntityInsentient.java @@ -779,7 +779,13 @@ public abstract class EntityInsentient extends EntityLiving { diff --git a/patches/server/0002-Airplane-Server-Changes.patch b/patches/server/0002-Airplane-Server-Changes.patch index d22e4f7b1..4fc4e484d 100644 --- a/patches/server/0002-Airplane-Server-Changes.patch +++ b/patches/server/0002-Airplane-Server-Changes.patch @@ -1784,7 +1784,7 @@ index 72d1c1202581abc284848000663ada5514cfcb15..06d0592bebaefc16c1995781a9e8a355 } diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index fa7a78549a9bb92b93c305dc16f43a9ace7f6f43..858bd62d2a17c15ee573c5cd607a876d3a99c2b1 100644 +index 392a707d7d71f2009134741529fb9539bd025619..60aad444eec3af7364b84ec3f696d3b78586cd6a 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -216,6 +216,8 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -2329,7 +2329,7 @@ index feab0ae1930b5271fe0d06a40c180317dcbc9d1d..99c93d48726b4b92a341ba98721173df // Paper end - optimise entity tracking diff --git a/src/main/java/net/minecraft/world/entity/EntityInsentient.java b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -index aae13c2e6c2a30b69c33417932c6a4d0aefeb7f5..dc78bafeddf6b584181c818b90efa7ff531377a3 100644 +index bd66ee1b93fc776f77218b87717e0915668e7c04..91eecf296905b85d7cc602dbc3a7b14479ec686a 100644 --- a/src/main/java/net/minecraft/world/entity/EntityInsentient.java +++ b/src/main/java/net/minecraft/world/entity/EntityInsentient.java @@ -201,10 +201,10 @@ public abstract class EntityInsentient extends EntityLiving { @@ -3008,7 +3008,7 @@ index 3783f3a83e3e70d77cf0fa1021f62a89c5950af5..d0c63be6ebfa2f95fb3d63eed2e11b1c private final String a; private final GameRules.GameRuleCategory b; diff --git a/src/main/java/net/minecraft/world/level/IBlockAccess.java b/src/main/java/net/minecraft/world/level/IBlockAccess.java -index e612e1d30f76e217b1aa23488ab025adce048f57..c9198d242b9053fad6fa5b53c1894679002d50a7 100644 +index e612e1d30f76e217b1aa23488ab025adce048f57..6109d59c02d0c7877e213213c6aec6f8513ccc47 100644 --- a/src/main/java/net/minecraft/world/level/IBlockAccess.java +++ b/src/main/java/net/minecraft/world/level/IBlockAccess.java @@ -14,9 +14,11 @@ import net.minecraft.world.level.block.state.IBlockData; @@ -3023,12 +3023,13 @@ index e612e1d30f76e217b1aa23488ab025adce048f57..c9198d242b9053fad6fa5b53c1894679 public interface IBlockAccess { -@@ -56,6 +58,15 @@ public interface IBlockAccess { +@@ -56,6 +58,16 @@ public interface IBlockAccess { return BlockPosition.a(axisalignedbb).map(this::getType); } + // Airplane start - broken down variant of below rayTraceBlock, used by World#rayTraceDirect + default MovingObjectPosition.EnumMovingObjectType rayTraceBlockDirect(Vec3D vec3d, Vec3D vec3d1, BlockPosition blockposition, IBlockData iblockdata, VoxelShapeCollision voxelshapecoll) { ++ if (iblockdata.isAir()) return null; // Tuinity - optimise air cases + VoxelShape voxelshape = RayTrace.BlockCollisionOption.COLLIDER.get(iblockdata, this, blockposition, voxelshapecoll); + MovingObjectPositionBlock movingobjectpositionblock = this.rayTrace(vec3d, vec3d1, blockposition, voxelshape, iblockdata); + diff --git a/patches/server/0003-Rebrand.patch b/patches/server/0003-Rebrand.patch index cd6e8f06b..a59ea3390 100644 --- a/patches/server/0003-Rebrand.patch +++ b/patches/server/0003-Rebrand.patch @@ -105,10 +105,10 @@ index 06d0592bebaefc16c1995781a9e8a3554f4a3205..e26b1d7b6ffc726c8ae8b469eab9df73 public CrashReport b(CrashReport crashreport) { diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 858bd62d2a17c15ee573c5cd607a876d3a99c2b1..3e63ea5ae2d31a502fa639806a926cd1ab8b6796 100644 +index 60aad444eec3af7364b84ec3f696d3b78586cd6a..ac701ac53bcf4340b012da5b7aaeb4c7260249df 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -@@ -260,11 +260,12 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer +@@ -277,11 +277,12 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer DedicatedServer.LOGGER.warn("**** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!"); DedicatedServer.LOGGER.warn("The server will make no attempt to authenticate usernames. Beware."); // Spigot start diff --git a/patches/server/0004-Purpur-config-files.patch b/patches/server/0004-Purpur-config-files.patch index 46f12520e..ffa96f263 100644 --- a/patches/server/0004-Purpur-config-files.patch +++ b/patches/server/0004-Purpur-config-files.patch @@ -45,7 +45,7 @@ index 14ac28d4d6b1ab0f0a70dfefc589f7723a1d2e1a..4eb122cfd31902df9789d2e8ff261520 config.save(CONFIG_FILE); } catch (IOException ex) { diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 3e63ea5ae2d31a502fa639806a926cd1ab8b6796..cbccb889167f8e235f417e224bbf5f025a6304f5 100644 +index ac701ac53bcf4340b012da5b7aaeb4c7260249df..b1ce70267506cde21dbb17d6ff19d13383e8c178 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -212,6 +212,15 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer diff --git a/patches/server/0026-Giants-AI-settings.patch b/patches/server/0026-Giants-AI-settings.patch index 38175841d..3a41457fa 100644 --- a/patches/server/0026-Giants-AI-settings.patch +++ b/patches/server/0026-Giants-AI-settings.patch @@ -18,10 +18,10 @@ index 99c93d48726b4b92a341ba98721173df8b4ff30a..b0cfd7e2be03222e3e34791e5bf6fb77 public float I; protected final Random random; diff --git a/src/main/java/net/minecraft/world/entity/EntityInsentient.java b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -index dc78bafeddf6b584181c818b90efa7ff531377a3..af04853ba114a80eb756c1700d27567fd8548e13 100644 +index 91eecf296905b85d7cc602dbc3a7b14479ec686a..dcc185b1e54886c8e82ee278e749d97044352405 100644 --- a/src/main/java/net/minecraft/world/entity/EntityInsentient.java +++ b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -@@ -1027,6 +1027,7 @@ public abstract class EntityInsentient extends EntityLiving { +@@ -1030,6 +1030,7 @@ public abstract class EntityInsentient extends EntityLiving { return f; } @@ -29,7 +29,7 @@ index dc78bafeddf6b584181c818b90efa7ff531377a3..af04853ba114a80eb756c1700d27567f protected void a(DifficultyDamageScaler difficultydamagescaler) { if (this.random.nextFloat() < 0.15F * difficultydamagescaler.d()) { int i = this.random.nextInt(2); -@@ -1134,6 +1135,7 @@ public abstract class EntityInsentient extends EntityLiving { +@@ -1137,6 +1138,7 @@ public abstract class EntityInsentient extends EntityLiving { } } diff --git a/patches/server/0060-Entities-pick-up-loot-bypass-mob-griefing-gamerule.patch b/patches/server/0060-Entities-pick-up-loot-bypass-mob-griefing-gamerule.patch index 285b07a24..15a0fdb4d 100644 --- a/patches/server/0060-Entities-pick-up-loot-bypass-mob-griefing-gamerule.patch +++ b/patches/server/0060-Entities-pick-up-loot-bypass-mob-griefing-gamerule.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Entities pick up loot bypass mob-griefing gamerule diff --git a/src/main/java/net/minecraft/world/entity/EntityInsentient.java b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -index af04853ba114a80eb756c1700d27567fd8548e13..92d8c5e716678862deadd7755db8e9270daafeda 100644 +index dcc185b1e54886c8e82ee278e749d97044352405..dd3f958c3a0403c1a17b2f1568cc235cf933083f 100644 --- a/src/main/java/net/minecraft/world/entity/EntityInsentient.java +++ b/src/main/java/net/minecraft/world/entity/EntityInsentient.java @@ -614,7 +614,7 @@ public abstract class EntityInsentient extends EntityLiving { diff --git a/patches/server/0063-Allow-leashing-villagers.patch b/patches/server/0063-Allow-leashing-villagers.patch index 16e5b2eff..a4de27bd0 100644 --- a/patches/server/0063-Allow-leashing-villagers.patch +++ b/patches/server/0063-Allow-leashing-villagers.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow leashing villagers diff --git a/src/main/java/net/minecraft/world/entity/EntityInsentient.java b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -index 92d8c5e716678862deadd7755db8e9270daafeda..4b4578e02fd4be72f20458c54a878892e3029d56 100644 +index dd3f958c3a0403c1a17b2f1568cc235cf933083f..ec38a27dfa6eebc818f54cf14bbe4287bee8bb29 100644 --- a/src/main/java/net/minecraft/world/entity/EntityInsentient.java +++ b/src/main/java/net/minecraft/world/entity/EntityInsentient.java @@ -49,6 +49,7 @@ import net.minecraft.world.entity.item.EntityItem; @@ -16,7 +16,7 @@ index 92d8c5e716678862deadd7755db8e9270daafeda..4b4578e02fd4be72f20458c54a878892 import net.minecraft.world.entity.player.EntityHuman; import net.minecraft.world.entity.vehicle.EntityBoat; import net.minecraft.world.item.Item; -@@ -1224,6 +1225,7 @@ public abstract class EntityInsentient extends EntityLiving { +@@ -1227,6 +1228,7 @@ public abstract class EntityInsentient extends EntityLiving { if (!this.isAlive()) { return EnumInteractionResult.PASS; } else if (this.getLeashHolder() == entityhuman) { diff --git a/patches/server/0070-Dispenser-curse-of-binding-protection.patch b/patches/server/0070-Dispenser-curse-of-binding-protection.patch index bf2489e63..c4720e21f 100644 --- a/patches/server/0070-Dispenser-curse-of-binding-protection.patch +++ b/patches/server/0070-Dispenser-curse-of-binding-protection.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Dispenser curse of binding protection diff --git a/src/main/java/net/minecraft/world/entity/EntityInsentient.java b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -index 4b4578e02fd4be72f20458c54a878892e3029d56..84995be65d033dd712211e1e479675815099c3b1 100644 +index ec38a27dfa6eebc818f54cf14bbe4287bee8bb29..db1863aac58409d13ec093506c23ab7cb29a2379 100644 --- a/src/main/java/net/minecraft/world/entity/EntityInsentient.java +++ b/src/main/java/net/minecraft/world/entity/EntityInsentient.java @@ -65,6 +65,7 @@ import net.minecraft.world.item.ItemSword; @@ -16,7 +16,7 @@ index 4b4578e02fd4be72f20458c54a878892e3029d56..84995be65d033dd712211e1e47967581 import net.minecraft.world.level.GameRules; import net.minecraft.world.level.GeneratorAccess; import net.minecraft.world.level.IBlockAccess; -@@ -1074,6 +1075,13 @@ public abstract class EntityInsentient extends EntityLiving { +@@ -1077,6 +1078,13 @@ public abstract class EntityInsentient extends EntityLiving { } diff --git a/patches/server/0085-Entity-lifespan.patch b/patches/server/0085-Entity-lifespan.patch index fe1bb2f1e..9b200e2ab 100644 --- a/patches/server/0085-Entity-lifespan.patch +++ b/patches/server/0085-Entity-lifespan.patch @@ -17,7 +17,7 @@ index 7a68762abd3334d6a5f43b680e5d18ace863ab95..fb19b16e452571a4199b5cd152642fc0 event = new PlayerInteractEntityEvent((Player) this.getPlayer(), entity.getBukkitEntity(), (packetplayinuseentity.c() == EnumHand.OFF_HAND) ? EquipmentSlot.OFF_HAND : EquipmentSlot.HAND); } else { diff --git a/src/main/java/net/minecraft/world/entity/EntityInsentient.java b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -index 84995be65d033dd712211e1e479675815099c3b1..e10377b379079bc467a60abe719075c5ef73e858 100644 +index db1863aac58409d13ec093506c23ab7cb29a2379..698997425a7f5a7a5d46fa5d825ec26f61e6c7c4 100644 --- a/src/main/java/net/minecraft/world/entity/EntityInsentient.java +++ b/src/main/java/net/minecraft/world/entity/EntityInsentient.java @@ -124,7 +124,7 @@ public abstract class EntityInsentient extends EntityLiving { @@ -94,7 +94,7 @@ index 84995be65d033dd712211e1e479675815099c3b1..e10377b379079bc467a60abe719075c5 } @Override -@@ -1632,7 +1664,7 @@ public abstract class EntityInsentient extends EntityLiving { +@@ -1635,7 +1667,7 @@ public abstract class EntityInsentient extends EntityLiving { this.a((EntityLiving) this, entity); this.z(entity); } diff --git a/patches/server/0103-Ridables.patch b/patches/server/0103-Ridables.patch index 56b72b35c..c577f0fab 100644 --- a/patches/server/0103-Ridables.patch +++ b/patches/server/0103-Ridables.patch @@ -322,7 +322,7 @@ index 4e084e26e0430422b0348a0a91f0e412ff3a9eff..2fed41af0416174a6e23282e3931f0b7 + // Purpur end } diff --git a/src/main/java/net/minecraft/world/entity/EntityInsentient.java b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -index e10377b379079bc467a60abe719075c5ef73e858..a5e3809d60a78d4638c81a2279ce15e6a66fd336 100644 +index 698997425a7f5a7a5d46fa5d825ec26f61e6c7c4..dd1f4c4202e30a837b48b591327b018a35a0edff 100644 --- a/src/main/java/net/minecraft/world/entity/EntityInsentient.java +++ b/src/main/java/net/minecraft/world/entity/EntityInsentient.java @@ -46,8 +46,6 @@ import net.minecraft.world.entity.ai.sensing.EntitySenses; @@ -387,7 +387,7 @@ index e10377b379079bc467a60abe719075c5ef73e858..a5e3809d60a78d4638c81a2279ce15e6 public void v(float f) { this.aR = f; } -@@ -1332,7 +1333,7 @@ public abstract class EntityInsentient extends EntityLiving { +@@ -1335,7 +1336,7 @@ public abstract class EntityInsentient extends EntityLiving { protected void a(EntityHuman entityhuman, EntityInsentient entityinsentient) {} protected EnumInteractionResult b(EntityHuman entityhuman, EnumHand enumhand) { @@ -396,7 +396,7 @@ index e10377b379079bc467a60abe719075c5ef73e858..a5e3809d60a78d4638c81a2279ce15e6 } public boolean ev() { -@@ -1713,4 +1714,54 @@ public abstract class EntityInsentient extends EntityLiving { +@@ -1716,4 +1717,54 @@ public abstract class EntityInsentient extends EntityLiving { this.unleash(true, event.isDropLeash()); // Paper end } diff --git a/patches/server/0135-Left-handed-API.patch b/patches/server/0135-Left-handed-API.patch index ca8fff80c..dc0b6d4b0 100644 --- a/patches/server/0135-Left-handed-API.patch +++ b/patches/server/0135-Left-handed-API.patch @@ -5,11 +5,11 @@ Subject: [PATCH] Left handed API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java -index 06cbe63ef04e0de824ac0b9d545b6da1f53701b3..d45d0913bd003bd1da23a62be62298eadadfe320 100644 +index 125be4ca56d38c6cba1d1f4e7587abda075ee491..30d3b2f89e08056db128aa95e76c319b196b89ea 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java -@@ -85,4 +85,14 @@ public abstract class CraftMob extends CraftLivingEntity implements Mob { - return getHandle().isInDaylight(); +@@ -133,4 +133,14 @@ public abstract class CraftMob extends CraftLivingEntity implements Mob { + return getHandle().getMaxHeadXRot(); } // Paper end + diff --git a/patches/server/0136-Origami-Fix-ProtocolLib-issues-on-Java-15.patch b/patches/server/0136-Origami-Fix-ProtocolLib-issues-on-Java-15.patch index 02df71ab5..158f2947e 100644 --- a/patches/server/0136-Origami-Fix-ProtocolLib-issues-on-Java-15.patch +++ b/patches/server/0136-Origami-Fix-ProtocolLib-issues-on-Java-15.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Origami - Fix ProtocolLib issues on Java 15 diff --git a/src/main/java/net/minecraft/network/NetworkManager.java b/src/main/java/net/minecraft/network/NetworkManager.java -index 0f8cbe1f656b46f71c6494bd2e0057be63017272..f46488155d8bd07719a282e4a1027562973dbef6 100644 +index b6c0ef0df93f0350fa70e857e06d79ae34d7d4b1..1dce5d3b1e994a060067de4901912dd5a9be7e15 100644 --- a/src/main/java/net/minecraft/network/NetworkManager.java +++ b/src/main/java/net/minecraft/network/NetworkManager.java @@ -435,9 +435,9 @@ public class NetworkManager extends SimpleChannelInboundHandler> { diff --git a/patches/server/0137-Changeable-Mob-Left-Handed-Chance.patch b/patches/server/0137-Changeable-Mob-Left-Handed-Chance.patch index 8617c890a..4a8fc4ea5 100644 --- a/patches/server/0137-Changeable-Mob-Left-Handed-Chance.patch +++ b/patches/server/0137-Changeable-Mob-Left-Handed-Chance.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Changeable Mob Left Handed Chance diff --git a/src/main/java/net/minecraft/world/entity/EntityInsentient.java b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -index a5e3809d60a78d4638c81a2279ce15e6a66fd336..0eae61c48e780225cd253e91d247d8814950afb5 100644 +index dd1f4c4202e30a837b48b591327b018a35a0edff..4da6e2dd956a44d7cd47a234f1b251c930722015 100644 --- a/src/main/java/net/minecraft/world/entity/EntityInsentient.java +++ b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -@@ -1214,7 +1214,7 @@ public abstract class EntityInsentient extends EntityLiving { +@@ -1217,7 +1217,7 @@ public abstract class EntityInsentient extends EntityLiving { @Nullable public GroupDataEntity prepare(WorldAccess worldaccess, DifficultyDamageScaler difficultydamagescaler, EnumMobSpawn enummobspawn, @Nullable GroupDataEntity groupdataentity, @Nullable NBTTagCompound nbttagcompound) { this.getAttributeInstance(GenericAttributes.FOLLOW_RANGE).addModifier(new AttributeModifier("Random spawn bonus", this.random.nextGaussian() * 0.05D, AttributeModifier.Operation.MULTIPLY_BASE)); diff --git a/patches/server/0153-Implement-TPSBar.patch b/patches/server/0153-Implement-TPSBar.patch index 0f81a6791..7bf449ab4 100644 --- a/patches/server/0153-Implement-TPSBar.patch +++ b/patches/server/0153-Implement-TPSBar.patch @@ -29,10 +29,10 @@ index 8ba25be0ea59483e824be9afc63d47cb75b5b334..61603bda0d1e305679ab2463188c3f6c this.isRestarting = isRestarting; this.hasLoggedStop = true; // Paper diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index cbccb889167f8e235f417e224bbf5f025a6304f5..df6eaa94f2928242dbd69a918d0b0b919bd3436b 100644 +index b1ce70267506cde21dbb17d6ff19d13383e8c178..7773f15f4eabb73b16ce971971f0c6c7625998ed 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -@@ -325,6 +325,8 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer +@@ -342,6 +342,8 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer MinecraftServerBeans.a((MinecraftServer) this); } diff --git a/patches/server/0167-Toggle-for-water-sensitive-mob-damage.patch b/patches/server/0167-Toggle-for-water-sensitive-mob-damage.patch index c2a2562b3..7d1e9a794 100644 --- a/patches/server/0167-Toggle-for-water-sensitive-mob-damage.patch +++ b/patches/server/0167-Toggle-for-water-sensitive-mob-damage.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Toggle for water sensitive mob damage diff --git a/src/main/java/net/minecraft/world/entity/EntityInsentient.java b/src/main/java/net/minecraft/world/entity/EntityInsentient.java -index 0eae61c48e780225cd253e91d247d8814950afb5..d838f5a85d561444f9a96e6f61161a2e4470c4c4 100644 +index 4da6e2dd956a44d7cd47a234f1b251c930722015..b69bc34bfc4873dc2214aea19bfa877c37740418 100644 --- a/src/main/java/net/minecraft/world/entity/EntityInsentient.java +++ b/src/main/java/net/minecraft/world/entity/EntityInsentient.java @@ -861,7 +861,8 @@ public abstract class EntityInsentient extends EntityLiving { diff --git a/patches/server/0213-Iron-golem-poppy-calms-anger.patch b/patches/server/0213-Iron-golem-poppy-calms-anger.patch index fc405dbb9..3763feae6 100644 --- a/patches/server/0213-Iron-golem-poppy-calms-anger.patch +++ b/patches/server/0213-Iron-golem-poppy-calms-anger.patch @@ -4,18 +4,6 @@ Date: Thu, 13 May 2021 21:22:51 -0500 Subject: [PATCH] Iron golem poppy calms anger -diff --git a/src/main/java/net/minecraft/world/entity/ai/control/ControllerLook.java b/src/main/java/net/minecraft/world/entity/ai/control/ControllerLook.java -index 3ce9edde641c8b8eea75479615bcd2866ffd2198..295d8614d611a185489a46527e7980dc9c38f12d 100644 ---- a/src/main/java/net/minecraft/world/entity/ai/control/ControllerLook.java -+++ b/src/main/java/net/minecraft/world/entity/ai/control/ControllerLook.java -@@ -24,6 +24,7 @@ public class ControllerLook { - this.a(vec3d.x, vec3d.y, vec3d.z); - } - -+ public void lookAt(Entity entity, float f, float f1) { a(entity, f, f1); } // Purpur - OBFHELPER - public void a(Entity entity, float f, float f1) { - this.a(entity.locX(), b(entity), entity.locZ(), f, f1); - } diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/target/PathfinderGoalReceiveFlower.java b/src/main/java/net/minecraft/world/entity/ai/goal/target/PathfinderGoalReceiveFlower.java new file mode 100644 index 0000000000000000000000000000000000000000..6a288fead988d424aa369b8ef6378ab3c9ec16af diff --git a/patches/server/0218-Config-for-unverified-username-message.patch b/patches/server/0218-Config-for-unverified-username-message.patch index 869407054..692faa90a 100644 --- a/patches/server/0218-Config-for-unverified-username-message.patch +++ b/patches/server/0218-Config-for-unverified-username-message.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Config for unverified username message diff --git a/src/main/java/net/minecraft/server/network/LoginListener.java b/src/main/java/net/minecraft/server/network/LoginListener.java -index 4e28b58731c7e76a727ed8f0967150f8fe22ab66..1e9e2ecc8e87104eb28ebd5363d1ca36b2adaaea 100644 +index 25437a993c02379fa43e5d46159cd9ba2aebf10f..f378d654a7fdd61ca31ca50ba45eff6acd93c3f1 100644 --- a/src/main/java/net/minecraft/server/network/LoginListener.java +++ b/src/main/java/net/minecraft/server/network/LoginListener.java @@ -280,7 +280,7 @@ public class LoginListener implements PacketLoginInListener {