From ddc07511f72870ea4ec8a2d6e450338737705d8a Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Wed, 2 Feb 2022 21:43:54 -0600 Subject: [PATCH] Fix #882 --- .../0009-Barrels-and-enderchests-6-rows.patch | 68 +++++++++++++------ patches/server/0011-AFK-API.patch | 4 +- ...-settings-suppressing-pointless-logs.patch | 2 +- ...Add-player-death-exp-control-options.patch | 6 +- ...therite-armor-grants-fire-resistance.patch | 6 +- ...nge-multiplier-critical-damage-value.patch | 6 +- .../server/0192-Flying-Fall-Damage-API.patch | 8 +-- ...ing-food-fills-hunger-bar-completely.patch | 10 +-- ...permission-bypass-for-portal-waiting.patch | 10 +-- .../0212-Player-ridable-in-water-option.patch | 6 +- ...Configurable-player-pickup-exp-delay.patch | 6 +- ...tion-for-villager-display-trade-item.patch | 2 +- 12 files changed, 81 insertions(+), 53 deletions(-) diff --git a/patches/server/0009-Barrels-and-enderchests-6-rows.patch b/patches/server/0009-Barrels-and-enderchests-6-rows.patch index 7fe97b6ee..7b4c8779d 100644 --- a/patches/server/0009-Barrels-and-enderchests-6-rows.patch +++ b/patches/server/0009-Barrels-and-enderchests-6-rows.patch @@ -4,6 +4,50 @@ Date: Thu, 23 May 2019 21:50:37 -0500 Subject: [PATCH] Barrels and enderchests 6 rows +diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java +index 6b4cb3a94dc998e7a087c888876a15c36763bfd0..0c7afc7787bf9303a8f8a7b4125a3bc45b70ccff 100644 +--- a/src/main/java/net/minecraft/server/players/PlayerList.java ++++ b/src/main/java/net/minecraft/server/players/PlayerList.java +@@ -1168,6 +1168,27 @@ public abstract class PlayerList { + player.getBukkitEntity().recalculatePermissions(); // CraftBukkit + this.server.getCommands().sendCommands(player); + } // Paper ++ ++ // Purpur start ++ if (org.purpurmc.purpur.PurpurConfig.enderChestSixRows && org.purpurmc.purpur.PurpurConfig.enderChestPermissionRows) { ++ org.bukkit.craftbukkit.entity.CraftHumanEntity bukkit = player.getBukkitEntity(); ++ if (bukkit.hasPermission("purpur.enderchest.rows.six")) { ++ player.sixRowEnderchestSlotCount = 54; ++ } else if (bukkit.hasPermission("purpur.enderchest.rows.five")) { ++ player.sixRowEnderchestSlotCount = 45; ++ } else if (bukkit.hasPermission("purpur.enderchest.rows.four")) { ++ player.sixRowEnderchestSlotCount = 36; ++ } else if (bukkit.hasPermission("purpur.enderchest.rows.three")) { ++ player.sixRowEnderchestSlotCount = 27; ++ } else if (bukkit.hasPermission("purpur.enderchest.rows.two")) { ++ player.sixRowEnderchestSlotCount = 18; ++ } else if (bukkit.hasPermission("purpur.enderchest.rows.one")) { ++ player.sixRowEnderchestSlotCount = 9; ++ } ++ } else { ++ player.sixRowEnderchestSlotCount = -1; ++ } ++ //Purpur end + } + + // Paper start +diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java +index a706ab000eba2d996862a73a3bd38f1971b31b82..daf47163bcb3e2ef260b9af5baf2e4409d75cef2 100644 +--- a/src/main/java/net/minecraft/world/entity/player/Player.java ++++ b/src/main/java/net/minecraft/world/entity/player/Player.java +@@ -180,6 +180,7 @@ public abstract class Player extends LivingEntity { + // Paper start + public boolean affectsSpawning = true; + // Paper end ++ public int sixRowEnderchestSlotCount = -1; // Purpur + + // CraftBukkit start + public boolean fauxSleeping; diff --git a/src/main/java/net/minecraft/world/inventory/ChestMenu.java b/src/main/java/net/minecraft/world/inventory/ChestMenu.java index e9d9245f7efaaeefc8f107b8016a462ce173816a..56dcc1b6ceaad998be62e3b8c125e8f5e833e4c0 100644 --- a/src/main/java/net/minecraft/world/inventory/ChestMenu.java @@ -40,10 +84,10 @@ index e9d9245f7efaaeefc8f107b8016a462ce173816a..56dcc1b6ceaad998be62e3b8c125e8f5 return new ChestMenu(MenuType.GENERIC_9x6, syncId, playerInventory, inventory, 6); } diff --git a/src/main/java/net/minecraft/world/inventory/PlayerEnderChestContainer.java b/src/main/java/net/minecraft/world/inventory/PlayerEnderChestContainer.java -index 59acb1aab21e2dce0f046942f124b50ac1cb8d0f..6675f9fa1767389a1166302e27427f5e54330552 100644 +index 59acb1aab21e2dce0f046942f124b50ac1cb8d0f..5058b30994fe38d8db2336267121476eaf4f1ff6 100644 --- a/src/main/java/net/minecraft/world/inventory/PlayerEnderChestContainer.java +++ b/src/main/java/net/minecraft/world/inventory/PlayerEnderChestContainer.java -@@ -29,11 +29,34 @@ public class PlayerEnderChestContainer extends SimpleContainer { +@@ -29,11 +29,18 @@ public class PlayerEnderChestContainer extends SimpleContainer { } public PlayerEnderChestContainer(Player owner) { @@ -56,23 +100,7 @@ index 59acb1aab21e2dce0f046942f124b50ac1cb8d0f..6675f9fa1767389a1166302e27427f5e + // Purpur start + @Override + public int getContainerSize() { -+ if (org.purpurmc.purpur.PurpurConfig.enderChestSixRows && org.purpurmc.purpur.PurpurConfig.enderChestPermissionRows && owner != null && owner.getGameProfile() != null) { -+ org.bukkit.craftbukkit.entity.CraftHumanEntity bukkit = owner.getBukkitEntity(); -+ if (bukkit.hasPermission("purpur.enderchest.rows.six")) { -+ return 54; -+ } else if (bukkit.hasPermission("purpur.enderchest.rows.five")) { -+ return 45; -+ } else if (bukkit.hasPermission("purpur.enderchest.rows.four")) { -+ return 36; -+ } else if (bukkit.hasPermission("purpur.enderchest.rows.three")) { -+ return 27; -+ } else if (bukkit.hasPermission("purpur.enderchest.rows.two")) { -+ return 18; -+ } else if (bukkit.hasPermission("purpur.enderchest.rows.one")) { -+ return 9; -+ } -+ } -+ return super.getContainerSize(); ++ return owner.sixRowEnderchestSlotCount < 0 ? super.getContainerSize() : owner.sixRowEnderchestSlotCount; + } + // Purpur end + @@ -208,7 +236,7 @@ index 396a4ae3d5a829eda78ef98561333aea300aa722..91478d614a56d1ac371187515d4c92b2 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java -index 85208c8d1058d46f3b2500efa752647138c74751..f9f0585c86f5d421d0265c8e9b24610e6e8e4533 100644 +index e8150d1bec60f7e32d5475c8402fd7b53df359e7..1717eb5f8fdaf8432113a297602f2eaa10559583 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java @@ -172,4 +172,39 @@ public class PurpurConfig { diff --git a/patches/server/0011-AFK-API.patch b/patches/server/0011-AFK-API.patch index f13767a60..c0b91d89f 100644 --- a/patches/server/0011-AFK-API.patch +++ b/patches/server/0011-AFK-API.patch @@ -182,10 +182,10 @@ index e752c83df50fb9b670ecea2abc95426c2a009b6f..baa4f9026d31de92210300ecb8ee8c1b if (baseEntity == null) { if (this.isCombat && (!targetEntity.canBeSeenAsEnemy() || targetEntity.level.getDifficulty() == Difficulty.PEACEFUL)) { diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index a706ab000eba2d996862a73a3bd38f1971b31b82..fd83ec264d2d2dabadd50a73065ba61544196bfa 100644 +index daf47163bcb3e2ef260b9af5baf2e4409d75cef2..dc9a7d1f68b9208d15358b4c3d8e953a1ebed260 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -194,6 +194,13 @@ public abstract class Player extends LivingEntity { +@@ -195,6 +195,13 @@ public abstract class Player extends LivingEntity { // Purpur start public abstract void resetLastActionTime(); diff --git a/patches/server/0025-Logger-settings-suppressing-pointless-logs.patch b/patches/server/0025-Logger-settings-suppressing-pointless-logs.patch index 1b1c1d1c0..8ab999afa 100644 --- a/patches/server/0025-Logger-settings-suppressing-pointless-logs.patch +++ b/patches/server/0025-Logger-settings-suppressing-pointless-logs.patch @@ -24,7 +24,7 @@ index 9b25d36fe5230e287d81b99be31b9eddd8e76002..298a19f7b2bd5733823afe1d0ac0b1ef return true; } else { -+ if (!org.purpurmc.purpur.PurpurConfig.loggerSuppressSetBlockFarChunk) ++ if (!org.purpurmc.purpur.PurpurConfig.loggerSuppressSetBlockFarChunk) // Purpur Util.logAndPauseIfInIde("Detected setBlock in a far chunk [" + i + ", " + j + "], pos: " + pos + ", status: " + this.generatingStatus + (this.currentlyGenerating == null ? "" : ", currently generating: " + (String) this.currentlyGenerating.get())); return false; } diff --git a/patches/server/0060-Add-player-death-exp-control-options.patch b/patches/server/0060-Add-player-death-exp-control-options.patch index d41ed6a48..f9e7c1640 100644 --- a/patches/server/0060-Add-player-death-exp-control-options.patch +++ b/patches/server/0060-Add-player-death-exp-control-options.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add player death exp control options diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index fd83ec264d2d2dabadd50a73065ba61544196bfa..ad41bfb05122086aafc290c2b816a28bfc7d8e7e 100644 +index dc9a7d1f68b9208d15358b4c3d8e953a1ebed260..b08028f67441051083a08110c1bfaff288ae9591 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -1908,9 +1908,18 @@ public abstract class Player extends LivingEntity { +@@ -1909,9 +1909,18 @@ public abstract class Player extends LivingEntity { @Override protected int getExperienceReward(Player player) { if (!this.level.getGameRules().getBoolean(GameRules.RULE_KEEPINVENTORY) && !this.isSpectator()) { @@ -31,7 +31,7 @@ index fd83ec264d2d2dabadd50a73065ba61544196bfa..ad41bfb05122086aafc290c2b816a28b return 0; } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 30b611ff62b07ba8eaade89e2409b06023608382..d5778eb9b05257703e366588cc3f66bd260ef52a 100644 +index 33ed5c2be8017e833d807907fea100d72dc37a23..429aec4522771c728a9586b69dcd1978b5bff8b9 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -172,6 +172,8 @@ public class PurpurWorldConfig { diff --git a/patches/server/0130-Full-netherite-armor-grants-fire-resistance.patch b/patches/server/0130-Full-netherite-armor-grants-fire-resistance.patch index bc2251916..8b97a4dfa 100644 --- a/patches/server/0130-Full-netherite-armor-grants-fire-resistance.patch +++ b/patches/server/0130-Full-netherite-armor-grants-fire-resistance.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Full netherite armor grants fire resistance diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index ad41bfb05122086aafc290c2b816a28bfc7d8e7e..9716110e910ae3d73be54333050214cd53a885d3 100644 +index b08028f67441051083a08110c1bfaff288ae9591..36f9e0c9fd1ad9550d454317ee011da6450abf4a 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -357,6 +357,16 @@ public abstract class Player extends LivingEntity { +@@ -358,6 +358,16 @@ public abstract class Player extends LivingEntity { this.addEffect(new MobEffectInstance(MobEffects.WATER_BREATHING, 200, 0, false, false, true), org.bukkit.event.entity.EntityPotionEffectEvent.Cause.TURTLE_HELMET); // CraftBukkit } @@ -26,7 +26,7 @@ index ad41bfb05122086aafc290c2b816a28bfc7d8e7e..9716110e910ae3d73be54333050214cd protected ItemCooldowns createItemCooldowns() { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 332025053dd547e46c9d1f59114bea989e54bb3b..b644eda947883d1f6d6be427d234a9e534f0061e 100644 +index 80485a8cb979ffc4ff698127574350ec78cc57e7..edd79e3e05652b7fa5bbeefb85e391db3ccd6137 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -289,6 +289,19 @@ public class PurpurWorldConfig { diff --git a/patches/server/0181-Add-config-change-multiplier-critical-damage-value.patch b/patches/server/0181-Add-config-change-multiplier-critical-damage-value.patch index f1d983640..ac65a725c 100644 --- a/patches/server/0181-Add-config-change-multiplier-critical-damage-value.patch +++ b/patches/server/0181-Add-config-change-multiplier-critical-damage-value.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add config change multiplier critical damage value diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 9716110e910ae3d73be54333050214cd53a885d3..2004f291610c0089aab92e863b439ca25bf77a47 100644 +index 36f9e0c9fd1ad9550d454317ee011da6450abf4a..3b25bbb0cc86c8fba1fb770556c0f8c9ef6ac46e 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -1254,7 +1254,7 @@ public abstract class Player extends LivingEntity { +@@ -1255,7 +1255,7 @@ public abstract class Player extends LivingEntity { flag2 = flag2 && !level.paperConfig.disablePlayerCrits; // Paper flag2 = flag2 && !this.isSprinting(); if (flag2) { @@ -18,7 +18,7 @@ index 9716110e910ae3d73be54333050214cd53a885d3..2004f291610c0089aab92e863b439ca2 f += f1; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 454762868f010804f23f8251ca9015e6a74baf86..845a530c2c11615714e54303e5ef361cb2e1f296 100644 +index 28af6e298e78811ce4e53de5bdb3fb384a966924..32245cea169762eaccd076a953cfb3c67678b958 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -364,6 +364,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0192-Flying-Fall-Damage-API.patch b/patches/server/0192-Flying-Fall-Damage-API.patch index 7a914e1bc..25c73ac30 100644 --- a/patches/server/0192-Flying-Fall-Damage-API.patch +++ b/patches/server/0192-Flying-Fall-Damage-API.patch @@ -5,18 +5,18 @@ Subject: [PATCH] Flying Fall Damage API diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 2004f291610c0089aab92e863b439ca25bf77a47..f88d187dc16c8a0b997b6ee26bf17ea63c0b752a 100644 +index 3b25bbb0cc86c8fba1fb770556c0f8c9ef6ac46e..15a8c193d7f5a0dda7e3d2d1aa967a918741cf80 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -180,6 +180,7 @@ public abstract class Player extends LivingEntity { - // Paper start +@@ -181,6 +181,7 @@ public abstract class Player extends LivingEntity { public boolean affectsSpawning = true; // Paper end + public int sixRowEnderchestSlotCount = -1; // Purpur + public boolean flyingFallDamage = false; // Purpur // CraftBukkit start public boolean fauxSleeping; -@@ -1728,7 +1729,7 @@ public abstract class Player extends LivingEntity { +@@ -1729,7 +1730,7 @@ public abstract class Player extends LivingEntity { @Override public boolean causeFallDamage(float fallDistance, float damageMultiplier, DamageSource damageSource) { diff --git a/patches/server/0194-Burp-after-eating-food-fills-hunger-bar-completely.patch b/patches/server/0194-Burp-after-eating-food-fills-hunger-bar-completely.patch index fea76cc84..e07ab3f84 100644 --- a/patches/server/0194-Burp-after-eating-food-fills-hunger-bar-completely.patch +++ b/patches/server/0194-Burp-after-eating-food-fills-hunger-bar-completely.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Burp after eating food fills hunger bar completely diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index f88d187dc16c8a0b997b6ee26bf17ea63c0b752a..b9e02d997b2521d505379156561c4990fa02ff5f 100644 +index 15a8c193d7f5a0dda7e3d2d1aa967a918741cf80..536552f9764a647246c218c102690db958814348 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -193,6 +193,8 @@ public abstract class Player extends LivingEntity { +@@ -194,6 +194,8 @@ public abstract class Player extends LivingEntity { // CraftBukkit end // Purpur start @@ -17,7 +17,7 @@ index f88d187dc16c8a0b997b6ee26bf17ea63c0b752a..b9e02d997b2521d505379156561c4990 public abstract void resetLastActionTime(); public void setAfk(boolean afk) { -@@ -255,6 +257,12 @@ public abstract class Player extends LivingEntity { +@@ -256,6 +258,12 @@ public abstract class Player extends LivingEntity { @Override public void tick() { @@ -30,7 +30,7 @@ index f88d187dc16c8a0b997b6ee26bf17ea63c0b752a..b9e02d997b2521d505379156561c4990 this.noPhysics = this.isSpectator(); if (this.isSpectator()) { this.onGround = false; -@@ -2297,7 +2305,7 @@ public abstract class Player extends LivingEntity { +@@ -2298,7 +2306,7 @@ public abstract class Player extends LivingEntity { public ItemStack eat(Level world, ItemStack stack) { this.getFoodData().eat(stack.getItem(), stack); this.awardStat(Stats.ITEM_USED.get(stack.getItem())); @@ -55,7 +55,7 @@ index 2934b6de1f1fb914a532ee20184df99d1acd8e65..65421cfff05c0493f5fef1bdff03172c public void eat(Item item, ItemStack stack) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 54f4b642306f458bab2d051595fe0f125f3d63db..13d14c46e801ea76a4aa8a15d8531b4eb5dfa549 100644 +index 90fb53ea2de11f24024240fa35bd4dd4da333d0e..e6527157369e2babfbdfcf0cd3056ac0b450f4eb 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -380,6 +380,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0196-Add-permission-bypass-for-portal-waiting.patch b/patches/server/0196-Add-permission-bypass-for-portal-waiting.patch index 7c46c7570..4f41f0ff1 100644 --- a/patches/server/0196-Add-permission-bypass-for-portal-waiting.patch +++ b/patches/server/0196-Add-permission-bypass-for-portal-waiting.patch @@ -5,18 +5,18 @@ Subject: [PATCH] Add permission bypass for portal waiting diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 055e11c1a180f74a6d2bd3d20e1451ff027b10e2..175b839a8b8c52b05b59c40f6b30b6e374d83cf1 100644 +index 536552f9764a647246c218c102690db958814348..e4c129f0dcf61bcb5ca5f1afe7486ffe021607d5 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -181,6 +181,7 @@ public abstract class Player extends LivingEntity { - public boolean affectsSpawning = true; +@@ -182,6 +182,7 @@ public abstract class Player extends LivingEntity { // Paper end + public int sixRowEnderchestSlotCount = -1; // Purpur public boolean flyingFallDamage = false; // Purpur + public boolean canPortalInstant = false; // Purpur // CraftBukkit start public boolean fauxSleeping; -@@ -462,7 +463,7 @@ public abstract class Player extends LivingEntity { +@@ -463,7 +464,7 @@ public abstract class Player extends LivingEntity { @Override public int getPortalWaitTime() { @@ -26,7 +26,7 @@ index 055e11c1a180f74a6d2bd3d20e1451ff027b10e2..175b839a8b8c52b05b59c40f6b30b6e3 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index b39117c4505926da0be9c8248964a233393e8e2d..c31af7b3c186244857e9f2c40005daa764d7ba7c 100644 +index e7108dd70f1eb91f38e04ad71e595bc679560f75..9f326161e13155283acfc9d73b2d568fdc135168 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java @@ -245,6 +245,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { diff --git a/patches/server/0212-Player-ridable-in-water-option.patch b/patches/server/0212-Player-ridable-in-water-option.patch index f6e0c599e..0ca4a5ac5 100644 --- a/patches/server/0212-Player-ridable-in-water-option.patch +++ b/patches/server/0212-Player-ridable-in-water-option.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player ridable in water option diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 41d163e35dc9d9e7732974b16891aa16f599973d..c8792fee068c13ae45f9eb936ef34fc5cae7ba57 100644 +index e4c129f0dcf61bcb5ca5f1afe7486ffe021607d5..7261cb0c281bc0aaa6f0a0cc707ac7edff80a865 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -2014,6 +2014,11 @@ public abstract class Player extends LivingEntity { +@@ -2015,6 +2015,11 @@ public abstract class Player extends LivingEntity { return this.inventory.armor; } @@ -21,7 +21,7 @@ index 41d163e35dc9d9e7732974b16891aa16f599973d..c8792fee068c13ae45f9eb936ef34fc5 if (!this.isPassenger() && this.onGround && !this.isInWater() && !this.isInPowderSnow) { if (this.getShoulderEntityLeft().isEmpty()) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index a3422a2fef4edc176f44a32061f7ca26b6b80c3e..1075358dba79c3e4a7593ed4bb5506a41126a68f 100644 +index 6960ee951bc3980c18a101e1285411e40572f9c8..38232e48fd7e415b2403d96c04170c18691afa1c 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -387,6 +387,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0257-Configurable-player-pickup-exp-delay.patch b/patches/server/0257-Configurable-player-pickup-exp-delay.patch index 4578e705e..3c2afd7ee 100644 --- a/patches/server/0257-Configurable-player-pickup-exp-delay.patch +++ b/patches/server/0257-Configurable-player-pickup-exp-delay.patch @@ -24,10 +24,10 @@ index 68072fae050fb83735725f3dc2525bfc9c0cc159..a069035f9bfc821d5bb52a654aec5842 int i = this.repairPlayerItems(player, this.value); diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index c8792fee068c13ae45f9eb936ef34fc5cae7ba57..e014859b52f31f29923dc4cf7cc0bf4a37b12fa3 100644 +index 7261cb0c281bc0aaa6f0a0cc707ac7edff80a865..9fef9468d010a8e152c6936b3efbe74f501b02ba 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -620,7 +620,7 @@ public abstract class Player extends LivingEntity { +@@ -621,7 +621,7 @@ public abstract class Player extends LivingEntity { for (int i = 0; i < list.size(); ++i) { Entity entity = (Entity) list.get(i); @@ -37,7 +37,7 @@ index c8792fee068c13ae45f9eb936ef34fc5cae7ba57..e014859b52f31f29923dc4cf7cc0bf4a } else if (!entity.isRemoved()) { this.touch(entity); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 319f88a66cdcf490ca190f2a0545d4b45a44187f..fc0352be0e7ed7f5ed6a90c2952bccd2ebee018b 100644 +index 248ed206c8cfdf1dc3363a8f8a930a7d6acea97f..0f03c0e7c9b22f0144730153eb70f82fe8df4a35 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -413,6 +413,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0265-Option-for-villager-display-trade-item.patch b/patches/server/0265-Option-for-villager-display-trade-item.patch index cb965257b..cbfb25f3d 100644 --- a/patches/server/0265-Option-for-villager-display-trade-item.patch +++ b/patches/server/0265-Option-for-villager-display-trade-item.patch @@ -12,7 +12,7 @@ index 385f3df7044e3f03f17c3ec7484b268004a3def9..47f9832bbba6f9c6038aa96022c28bf0 @Override public boolean canStillUse(ServerLevel serverLevel, Villager villager, long l) { -+ if (!villager.level.purpurConfig.villagerDisplayTradeItem) return false; ++ if (!villager.level.purpurConfig.villagerDisplayTradeItem) return false; // Purpur return this.checkExtraStartConditions(serverLevel, villager) && this.lookTime > 0 && villager.getBrain().getMemory(MemoryModuleType.INTERACTION_TARGET).isPresent(); }