From ceacfddaf91e20cd6adc6e305b888555c74522b5 Mon Sep 17 00:00:00 2001 From: granny Date: Tue, 3 Dec 2024 20:55:24 -0800 Subject: [PATCH] 50 patches done --- ...-Configurable-entity-base-attributes.patch | 92 +++++++++---------- .../0011-Barrels-and-enderchests-6-rows.patch | 14 +-- .../0012-Llama-API.patch | 0 .../0013-AFK-API.patch | 24 ++--- .../0014-Bring-back-server-name.patch | 0 .../0015-Configurable-server-mod-name.patch | 4 +- .../0016-Lagging-threshold.patch | 4 +- ...017-PlayerSetSpawnerTypeWithEggEvent.patch | 11 +-- .../0018-Anvil-API.patch | 0 .../0019-Alternative-Keepalive-Handling.patch | 0 ...0020-Enchantment-convenience-methods.patch | 2 +- .../0021-Silk-touch-spawners.patch | 16 ++-- .../0022-Add-turtle-egg-block-options.patch | 0 ...-settings-suppressing-pointless-logs.patch | 0 .../0024-Disable-outdated-build-check.patch | 2 +- .../0025-Giants-AI-settings.patch | 0 .../0026-Zombie-horse-naturally-spawn.patch | 4 +- ...0027-Charged-creeper-naturally-spawn.patch | 0 ...bit-naturally-spawn-toast-and-killer.patch | 2 +- ...ver-showing-in-ping-before-server-fu.patch | 0 .../0030-Tulips-change-fox-type.patch | 2 +- .../0031-Breedable-Polar-Bears.patch | 0 .../0032-Chickens-can-retaliate.patch | 0 ...option-to-set-armorstand-step-height.patch | 4 +- .../0034-Cat-spawning-options.patch | 0 .../0035-Cows-eat-mushrooms.patch | 0 ...cow-rotation-when-shearing-mooshroom.patch | 4 +- .../0037-Pigs-give-saddle-back.patch | 0 ...38-Snowman-drop-and-put-back-pumpkin.patch | 0 ...39-Ender-dragon-always-drop-full-exp.patch | 2 +- ...moisten-from-water-directly-under-it.patch | 0 ...-Minecart-settings-and-WASD-controls.patch | 12 +-- ...able-loot-drops-on-death-by-cramming.patch | 6 +- ...ption-to-toggle-milk-curing-bad-omen.patch | 0 ...-Skip-events-if-there-s-no-listeners.patch | 0 .../0045-Add-permission-for-F3-N-debug.patch | 2 +- .../0046-Configurable-TPS-Catchup.patch | 4 +- ...low-loyalty-on-tridents-to-work-in-t.patch | 4 +- ...derman-and-creeper-griefing-controls.patch | 6 +- ...0049-Villagers-follow-emerald-blocks.patch | 8 +- .../0050-Allow-leashing-villagers.patch | 6 +- 41 files changed, 117 insertions(+), 118 deletions(-) rename patches/{unapplied-server => server}/0010-Configurable-entity-base-attributes.patch (97%) rename patches/{unapplied-server => server}/0011-Barrels-and-enderchests-6-rows.patch (96%) rename patches/{unapplied-server => server}/0012-Llama-API.patch (100%) rename patches/{unapplied-server => server}/0013-AFK-API.patch (95%) rename patches/{unapplied-server => server}/0014-Bring-back-server-name.patch (100%) rename patches/{unapplied-server => server}/0015-Configurable-server-mod-name.patch (91%) rename patches/{unapplied-server => server}/0016-Lagging-threshold.patch (94%) rename patches/{unapplied-server => server}/0017-PlayerSetSpawnerTypeWithEggEvent.patch (90%) rename patches/{unapplied-server => server}/0018-Anvil-API.patch (100%) rename patches/{unapplied-server => server}/0019-Alternative-Keepalive-Handling.patch (100%) rename patches/{unapplied-server => server}/0020-Enchantment-convenience-methods.patch (92%) rename patches/{unapplied-server => server}/0021-Silk-touch-spawners.patch (92%) rename patches/{unapplied-server => server}/0022-Add-turtle-egg-block-options.patch (100%) rename patches/{unapplied-server => server}/0023-Logger-settings-suppressing-pointless-logs.patch (100%) rename patches/{unapplied-server => server}/0024-Disable-outdated-build-check.patch (92%) rename patches/{unapplied-server => server}/0025-Giants-AI-settings.patch (100%) rename patches/{unapplied-server => server}/0026-Zombie-horse-naturally-spawn.patch (95%) rename patches/{unapplied-server => server}/0027-Charged-creeper-naturally-spawn.patch (100%) rename patches/{unapplied-server => server}/0028-Rabbit-naturally-spawn-toast-and-killer.patch (96%) rename patches/{unapplied-server => server}/0029-Fix-outdated-server-showing-in-ping-before-server-fu.patch (100%) rename patches/{unapplied-server => server}/0030-Tulips-change-fox-type.patch (97%) rename patches/{unapplied-server => server}/0031-Breedable-Polar-Bears.patch (100%) rename patches/{unapplied-server => server}/0032-Chickens-can-retaliate.patch (100%) rename patches/{unapplied-server => server}/0033-Add-option-to-set-armorstand-step-height.patch (94%) rename patches/{unapplied-server => server}/0034-Cat-spawning-options.patch (100%) rename patches/{unapplied-server => server}/0035-Cows-eat-mushrooms.patch (100%) rename patches/{unapplied-server => server}/0036-Fix-cow-rotation-when-shearing-mooshroom.patch (89%) rename patches/{unapplied-server => server}/0037-Pigs-give-saddle-back.patch (100%) rename patches/{unapplied-server => server}/0038-Snowman-drop-and-put-back-pumpkin.patch (100%) rename patches/{unapplied-server => server}/0039-Ender-dragon-always-drop-full-exp.patch (95%) rename patches/{unapplied-server => server}/0040-Allow-soil-to-moisten-from-water-directly-under-it.patch (100%) rename patches/{unapplied-server => server}/0041-Minecart-settings-and-WASD-controls.patch (94%) rename patches/{unapplied-server => server}/0042-Disable-loot-drops-on-death-by-cramming.patch (91%) rename patches/{unapplied-server => server}/0043-Option-to-toggle-milk-curing-bad-omen.patch (100%) rename patches/{unapplied-server => server}/0044-Skip-events-if-there-s-no-listeners.patch (100%) rename patches/{unapplied-server => server}/0045-Add-permission-for-F3-N-debug.patch (89%) rename patches/{unapplied-server => server}/0046-Configurable-TPS-Catchup.patch (92%) rename patches/{unapplied-server => server}/0047-Add-option-to-allow-loyalty-on-tridents-to-work-in-t.patch (93%) rename patches/{unapplied-server => server}/0048-Add-enderman-and-creeper-griefing-controls.patch (95%) rename patches/{unapplied-server => server}/0049-Villagers-follow-emerald-blocks.patch (96%) rename patches/{unapplied-server => server}/0050-Allow-leashing-villagers.patch (95%) diff --git a/patches/unapplied-server/0010-Configurable-entity-base-attributes.patch b/patches/server/0010-Configurable-entity-base-attributes.patch similarity index 97% rename from patches/unapplied-server/0010-Configurable-entity-base-attributes.patch rename to patches/server/0010-Configurable-entity-base-attributes.patch index 5684aee49..25809fb7f 100644 --- a/patches/unapplied-server/0010-Configurable-entity-base-attributes.patch +++ b/patches/server/0010-Configurable-entity-base-attributes.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable entity base attributes diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 0e084e2dcd0294274aa42b2a15fe58bee54ff393..163af180a12bf2847d6eab87e1fa77aef7cd3550 100644 +index d6b48ad015e118ec9599110f54f462ef3a5debc3..fddc4a5e5c4f9f3552b3254fec8254774b20f9f1 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -177,7 +177,7 @@ import org.bukkit.plugin.PluginManager; @@ -18,7 +18,7 @@ index 0e084e2dcd0294274aa42b2a15fe58bee54ff393..163af180a12bf2847d6eab87e1fa77ae private static final int CURRENT_LEVEL = 2; public boolean preserveMotion = true; // Paper - Fix Entity Teleportation and cancel velocity if teleported; keep initial motion on first setPositionRotation diff --git a/src/main/java/net/minecraft/world/entity/GlowSquid.java b/src/main/java/net/minecraft/world/entity/GlowSquid.java -index 7c11b5e73d4f3c0be7c467f7522c2d974ab330f3..27aee968718af1ae78e2076ddc890114b2c9bb94 100644 +index 0e1c89923ac5dfd339e591ab19b0212ab57fde4a..5a49c44b8f18a1c16f18a4798c733f99ca4e47b7 100644 --- a/src/main/java/net/minecraft/world/entity/GlowSquid.java +++ b/src/main/java/net/minecraft/world/entity/GlowSquid.java @@ -38,6 +38,11 @@ public class GlowSquid extends Squid { @@ -34,10 +34,10 @@ index 7c11b5e73d4f3c0be7c467f7522c2d974ab330f3..27aee968718af1ae78e2076ddc890114 protected ParticleOptions getInkParticle() { return ParticleTypes.GLOW_SQUID_INK; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 30ffb90dda6c95c6f3bc42d1b9747acef0f0f19a..1077eae6e0952d09410518a856ebece808aefef5 100644 +index 1135737e16849417df1cdcd5f3858ebb04160f06..a16c7069a2ac349a6de366229b77da9a7cec71c0 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -326,6 +326,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -324,6 +324,7 @@ public abstract class LivingEntity extends Entity implements Attackable { this.activeLocationDependentEnchantments = new EnumMap(EquipmentSlot.class); this.appliedScale = 1.0F; this.attributes = new AttributeMap(DefaultAttributes.getSupplier(type), this); // Purpur @@ -45,7 +45,7 @@ index 30ffb90dda6c95c6f3bc42d1b9747acef0f0f19a..1077eae6e0952d09410518a856ebece8 this.craftAttributes = new CraftAttributeMap(this.attributes); // CraftBukkit // CraftBukkit - setHealth(getMaxHealth()) inlined and simplified to skip the instanceof check for EntityPlayer, as getBukkitEntity() is not initialized in constructor this.entityData.set(LivingEntity.DATA_HEALTH_ID, (float) this.getAttribute(Attributes.MAX_HEALTH).getValue()); -@@ -340,6 +341,8 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -338,6 +339,8 @@ public abstract class LivingEntity extends Entity implements Attackable { this.brain = this.makeBrain(new Dynamic(dynamicopsnbt, (Tag) dynamicopsnbt.createMap((Map) ImmutableMap.of(dynamicopsnbt.createString("memories"), (Tag) dynamicopsnbt.emptyMap())))); } @@ -79,10 +79,10 @@ index 1348ec21d1ede67026897563e5c09406c9902043..656088e81781a5711521edec565f4e34 public void readAdditionalSaveData(CompoundTag nbt) { super.readAdditionalSaveData(nbt); diff --git a/src/main/java/net/minecraft/world/entity/animal/Bee.java b/src/main/java/net/minecraft/world/entity/animal/Bee.java -index cf095cf77724c3bbf4c6f867449d27d4638e3c9c..d000acd339a1967d2c448ed8d66c4f1347f797fd 100644 +index 6ae52fa7c0cb3eda4f0d7f8c7dbbf97078dd2d59..5ad7612788c4ef5cc3a6cf5f706999aa6eed4718 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Bee.java +++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java -@@ -485,6 +485,12 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { +@@ -489,6 +489,12 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { return tileentitybeehive != null && tileentitybeehive.isFireNearby(); } @@ -96,7 +96,7 @@ index cf095cf77724c3bbf4c6f867449d27d4638e3c9c..d000acd339a1967d2c448ed8d66c4f13 public int getRemainingPersistentAngerTime() { return (Integer) this.entityData.get(Bee.DATA_REMAINING_ANGER_TIME); diff --git a/src/main/java/net/minecraft/world/entity/animal/Cat.java b/src/main/java/net/minecraft/world/entity/animal/Cat.java -index 014813371d8699dae7595464e0db85438dde6d8b..6c773af722ccb9e144d8858a013c120ecbbcfa4c 100644 +index e9b6816c34a58b374f25e68d942c5ecc05a9ae78..821499778e2b97e39f5d439c4a8c55a283610750 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Cat.java +++ b/src/main/java/net/minecraft/world/entity/animal/Cat.java @@ -123,6 +123,12 @@ public class Cat extends TamableAnimal implements VariantHolder { @@ -214,10 +214,10 @@ index 9d82fec6f5969816095dbd5a11325c79002dbb61..500109364b4741fc310eb22c151754a1 @Override diff --git a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java -index ba8d47111cf80c8e9a0b47793f125ca91f5f906e..0005cd7156e46ae790d629d7a985cdace1cc5577 100644 +index 7518f24e564a68380e46bcefc6cc5b42c0e282d6..575a3f5e2c003474a4a4d09db4ba495eddad3ce7 100644 --- a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java +++ b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java -@@ -82,6 +82,11 @@ public class MushroomCow extends Cow implements Shearable, VariantHolder { @@ -361,10 +361,10 @@ index b1a7e7d708aaed3d2dbfe51887f1f9189c690ca4..6f3fdf72dd4e8d7399b205818c863e75 @Override diff --git a/src/main/java/net/minecraft/world/entity/animal/Salmon.java b/src/main/java/net/minecraft/world/entity/animal/Salmon.java -index 18e5d9787590dbb2c78087326652558565a6b1f4..9ec3479b0db1f42493db127081e341fa5acc8e41 100644 +index 93c43963edebee4bd75fa35000ae39ed62a5ffe7..1295003dfceb585ef23705c17862efb3feff3868 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Salmon.java +++ b/src/main/java/net/minecraft/world/entity/animal/Salmon.java -@@ -44,6 +44,11 @@ public class Salmon extends AbstractSchoolingFish implements VariantHolder type, ServerLevelAccessor world, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random ) { diff --git a/src/main/java/net/minecraft/world/entity/monster/Strider.java b/src/main/java/net/minecraft/world/entity/monster/Strider.java -index 2214e3e473214a8e8340c4ded0e2c797adde0815..6a45a62c578f033558c26935681f7de74dd98bac 100644 +index 7d76e8120d664d537367c16cba83385425c23762..1ea797619359cca106aafa0b1e14a5cb00af582a 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Strider.java +++ b/src/main/java/net/minecraft/world/entity/monster/Strider.java @@ -114,6 +114,12 @@ public class Strider extends Animal implements ItemSteerable, Saddleable { @@ -1444,10 +1444,10 @@ index 654baff60d6afe6b9bd9479d6ac35ff773d1bf2e..790e36ae4bd1d6290e16ec579127f801 protected void registerGoals() { super.registerGoals(); diff --git a/src/main/java/net/minecraft/world/entity/monster/WitherSkeleton.java b/src/main/java/net/minecraft/world/entity/monster/WitherSkeleton.java -index e38963f05e460b1a94c3c5d1ade99af78dcc8e6f..89ed0d044426aa0415f5cb4eb3f02342fcdddc7d 100644 +index 8a166bf5c90169f85d85c8a4715116850ab0a5b7..b0054b998e5494d64de538450daae432416c4d55 100644 --- a/src/main/java/net/minecraft/world/entity/monster/WitherSkeleton.java +++ b/src/main/java/net/minecraft/world/entity/monster/WitherSkeleton.java -@@ -50,6 +50,12 @@ public class WitherSkeleton extends AbstractSkeleton { +@@ -53,6 +53,12 @@ public class WitherSkeleton extends AbstractSkeleton { } // Purpur end @@ -1504,7 +1504,7 @@ index 5c443a961900e6eb0d7f410ca6b7da2c5e53772f..978f610d31312f36093c0111ce623d11 @Override diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java -index 4a95f791ba167be700f982fefe6896be6a0567c2..a2447844a6a6e08d41bb5152d01da91c852665cf 100644 +index 27e8442301e1d3a526e9f0d7e3e5aa40f385bc06..09d44e4965e820b3cfae909040697d717e3c6643 100644 --- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java +++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java @@ -102,6 +102,16 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder { @@ -1551,10 +1551,10 @@ index aa4160892b9ba2486806b5a54bc1465a4e273370..ba1ce7e0ed888bd47312e9d7da5426f5 @Nullable diff --git a/src/main/java/net/minecraft/world/entity/monster/creaking/Creaking.java b/src/main/java/net/minecraft/world/entity/monster/creaking/Creaking.java -index f935d475fd1aca407bde420e9ba8002002ea55f6..9bf251915c8a126ba480f44ea203f1a48e1ecde3 100644 +index 2afb53a33b612faf6aac6fc8a27dc285cc558b4d..cf4714b7a81819097f997d08c8c65ec8b1aef1e6 100644 --- a/src/main/java/net/minecraft/world/entity/monster/creaking/Creaking.java +++ b/src/main/java/net/minecraft/world/entity/monster/creaking/Creaking.java -@@ -208,6 +208,14 @@ public class Creaking extends Monster { +@@ -497,6 +497,14 @@ public class Creaking extends Monster { return this.isActive() ? null : SoundEvents.CREAKING_AMBIENT; } @@ -1587,10 +1587,10 @@ index e978aab6055f9365885e2412afdc44cb6c729af2..fc78df484bf747d4a00acd85a3f9f377 @VisibleForTesting diff --git a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java -index 9a3bc9c0ad1b0af3c8196a773dd93b069ca4e92c..23673d9ce87acda718d12fce9af0ef5f27983f1a 100644 +index 49af4cb966dc1b72088c46eee758386b24bfed31..fd756b9f51d3ca857ea520288230afa5ab455b95 100644 --- a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java +++ b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java -@@ -113,6 +113,12 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento +@@ -116,6 +116,12 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento } // Purpur end @@ -1621,7 +1621,7 @@ index d7578f7d4eba9d630feb589dd2761789f8bcfde9..6459e588e6feb6d7bcf999e36b658bba return Monster.createMonsterAttributes() .add(Attributes.MAX_HEALTH, 50.0) diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index 80b6deade244d5ac2a6245fd2f3575af216a302c..9505402564893b3046b86f95fa1e34a64ac98e8e 100644 +index e6c6929901b15c5caa691bc41667a399c7453fa8..24b456dfa4d5383639fb79a45ffceb5c31e8ae53 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -180,6 +180,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler diff --git a/patches/unapplied-server/0011-Barrels-and-enderchests-6-rows.patch b/patches/server/0011-Barrels-and-enderchests-6-rows.patch similarity index 96% rename from patches/unapplied-server/0011-Barrels-and-enderchests-6-rows.patch rename to patches/server/0011-Barrels-and-enderchests-6-rows.patch index adf8bb23d..45c961821 100644 --- a/patches/unapplied-server/0011-Barrels-and-enderchests-6-rows.patch +++ b/patches/server/0011-Barrels-and-enderchests-6-rows.patch @@ -5,7 +5,7 @@ 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 cf8b7f93a1ba027c00d7f45809fa51f1ab55a5de..595302e0177824c1e3ad54e9a088337eeb2d872b 100644 +index b973a07d199bc856643b23c090eb56bd1aeb0104..88678fb527f170c81d5e2d4a28f65e398dab8939 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1116,6 +1116,27 @@ public abstract class PlayerList { @@ -37,10 +37,10 @@ index cf8b7f93a1ba027c00d7f45809fa51f1ab55a5de..595302e0177824c1e3ad54e9a088337e public boolean isWhiteListed(GameProfile profile) { 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 21f85ffe12a6ac11a67c808e4878f9a46f01344e..7e9f9b1f9e932116fc12db9cc2c0135144156eda 100644 +index e4d8fadd6ef32823f8581dab68567c5da9270566..e5c11504f85abdf49cea4ebd2aaaccdaff35a75c 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -197,6 +197,7 @@ public abstract class Player extends LivingEntity { +@@ -200,6 +200,7 @@ public abstract class Player extends LivingEntity { private int currentImpulseContextResetGraceTime; public boolean affectsSpawning = true; // Paper - Affects Spawning API public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET; // Paper - flying fall damage @@ -108,10 +108,10 @@ index a15d5ff872dbd77f3c3145e0328f3d02e431ff8c..1dcf36d502990d32fc4cd3ea69c3ea33 this.activeChest = blockEntity; } diff --git a/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java b/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java -index 2a207fb2e1c26b562de42240e11c856bd2a23458..6ad4aa371607ab92616626285a7e71757c76a3db 100644 +index 9b6ab617ab7f503cf0b2d4e29333c706ffe95f46..bfe79431dc5707677671df5c0787817c6e14a676 100644 --- a/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java +++ b/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java -@@ -89,7 +89,7 @@ public class EnderChestBlock extends AbstractChestBlock i +@@ -84,7 +84,7 @@ public class EnderChestBlock extends AbstractChestBlock i // Paper start - Fix InventoryOpenEvent cancellation - moved up; playerEnderChestContainer.setActiveChest(enderChestBlockEntity); // Needs to happen before ChestMenu.threeRows as it is required for opening animations if (world instanceof ServerLevel serverLevel && player.openMenu( @@ -120,7 +120,7 @@ index 2a207fb2e1c26b562de42240e11c856bd2a23458..6ad4aa371607ab92616626285a7e7175 ).isPresent()) { // Paper end - Fix InventoryOpenEvent cancellation - moved up; // Paper - Fix InventoryOpenEvent cancellation - moved up; -@@ -104,6 +104,35 @@ public class EnderChestBlock extends AbstractChestBlock i +@@ -99,6 +99,35 @@ public class EnderChestBlock extends AbstractChestBlock i } } @@ -240,7 +240,7 @@ index 6d3f9d5dab6c9a2860ae31cae24310aa2d62da7c..4f29c579f94efe59a8c78520d75676fc case DISPENSER: case DROPPER: diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java -index af1ae3dacb628da23f7d2988c6e76d3fb2d64103..4ee2d501f882279b48edb4b8bf0824587c276bf6 100644 +index c6159c70f7a37b9bffe268b91905ce848d1d2927..d02adaaa6fbdc1c0eff44cb4a1f1642f9575a821 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java @@ -84,7 +84,7 @@ public class CraftInventory implements Inventory { diff --git a/patches/unapplied-server/0012-Llama-API.patch b/patches/server/0012-Llama-API.patch similarity index 100% rename from patches/unapplied-server/0012-Llama-API.patch rename to patches/server/0012-Llama-API.patch diff --git a/patches/unapplied-server/0013-AFK-API.patch b/patches/server/0013-AFK-API.patch similarity index 95% rename from patches/unapplied-server/0013-AFK-API.patch rename to patches/server/0013-AFK-API.patch index 9d76d485d..4ded8d986 100644 --- a/patches/unapplied-server/0013-AFK-API.patch +++ b/patches/server/0013-AFK-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] AFK API diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 749145ac5ee84b5ebbf4b1eba2df680c1c51bd88..d4ed1dd4e4c56cf40632b0857af82a944579da65 100644 +index cff9e1877d3abcf92417ff56f4db2d14ad188f97..ae4733c402662630a3892aecd01646d2e7613eed 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -2641,8 +2641,68 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple +@@ -2621,8 +2621,68 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple public void resetLastActionTime() { this.lastActionTime = Util.getMillis(); @@ -78,10 +78,10 @@ index 749145ac5ee84b5ebbf4b1eba2df680c1c51bd88..d4ed1dd4e4c56cf40632b0857af82a94 return this.stats; } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index d2145df4e9b0dd16e7d394b8983c36fd073d3e31..f48b13b9b57e3a25e8afeb37f54e883fd1cadf4d 100644 +index e6c4b62daece71edae995a3c3fd21e18b5616bb1..236402e35eb04a2c12ed7ef28ce7c78d7be125cf 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -342,6 +342,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -344,6 +344,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl private boolean justTeleported = false; // CraftBukkit end @@ -102,7 +102,7 @@ index d2145df4e9b0dd16e7d394b8983c36fd073d3e31..f48b13b9b57e3a25e8afeb37f54e883f @Override public void tick() { if (this.ackBlockChangesUpTo > -1) { -@@ -398,6 +412,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -400,6 +414,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.recipeSpamPackets.tick(); // Paper - auto recipe limit this.dropSpamThrottler.tick(); if (this.player.getLastActionTime() > 0L && this.server.getPlayerIdleTimeout() > 0 && Util.getMillis() - this.player.getLastActionTime() > (long) this.server.getPlayerIdleTimeout() * 1000L * 60L && !this.player.wonGame) { // Paper - Prevent AFK kick while watching end credits @@ -115,7 +115,7 @@ index d2145df4e9b0dd16e7d394b8983c36fd073d3e31..f48b13b9b57e3a25e8afeb37f54e883f this.player.resetLastActionTime(); // CraftBukkit - SPIGOT-854 this.disconnect((Component) Component.translatable("multiplayer.disconnect.idling"), org.bukkit.event.player.PlayerKickEvent.Cause.IDLING); // Paper - kick event cause } -@@ -663,6 +683,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -656,6 +676,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.lastYaw = to.getYaw(); this.lastPitch = to.getPitch(); @@ -124,7 +124,7 @@ index d2145df4e9b0dd16e7d394b8983c36fd073d3e31..f48b13b9b57e3a25e8afeb37f54e883f Location oldTo = to.clone(); PlayerMoveEvent event = new PlayerMoveEvent(player, from, to); this.cserver.getPluginManager().callEvent(event); -@@ -1501,7 +1523,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1554,7 +1576,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl movedWrongly = true; if (event.getLogWarning()) // Paper end @@ -133,7 +133,7 @@ index d2145df4e9b0dd16e7d394b8983c36fd073d3e31..f48b13b9b57e3a25e8afeb37f54e883f } // Paper } -@@ -1569,6 +1591,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1622,6 +1644,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.lastYaw = to.getYaw(); this.lastPitch = to.getPitch(); @@ -192,10 +192,10 @@ index 52982c1e6a4da36392569c791853279f5f9ac31a..b3d4c61b1769b6fcc98b7af854f774d2 if (tester == null) { if (this.isCombat && (!target.canBeSeenAsEnemy() || world.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 7e9f9b1f9e932116fc12db9cc2c0135144156eda..d1b6e7cf8d110d9106ea99431cf9719ea3b102d5 100644 +index e5c11504f85abdf49cea4ebd2aaaccdaff35a75c..47d2f1af81d64054e30b353b66c0a6ad68583298 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -203,6 +203,13 @@ public abstract class Player extends LivingEntity { +@@ -206,6 +206,13 @@ public abstract class Player extends LivingEntity { public boolean fauxSleeping; public int oldLevel = -1; @@ -223,7 +223,7 @@ index 5d7a6e4b73f032db356e7ec369b150013e940ee6..6b2cda6d578a0983b2401ea206292754 if (range < 0.0 || d < range * range) { return true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 3d2322233aff511bcc5c85b24230c2e08dc0bcd0..358f42585c865efbd814787879f919f70234e5c4 100644 +index d86bf4f995e8156f594fa90ebbab4165e52c0e09..350165d6616a1dfe931d0a35de0dbbd9222da216 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -583,10 +583,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -243,7 +243,7 @@ index 3d2322233aff511bcc5c85b24230c2e08dc0bcd0..358f42585c865efbd814787879f919f7 if (this.getHandle().connection == null) return; // Paper - Updates are possible before the player has fully joined for (ServerPlayer player : (List) this.server.getHandle().players) { if (player.getBukkitEntity().canSee(this)) { -@@ -3586,5 +3591,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3571,5 +3576,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public boolean usesPurpurClient() { return getHandle().purpurClient; } diff --git a/patches/unapplied-server/0014-Bring-back-server-name.patch b/patches/server/0014-Bring-back-server-name.patch similarity index 100% rename from patches/unapplied-server/0014-Bring-back-server-name.patch rename to patches/server/0014-Bring-back-server-name.patch diff --git a/patches/unapplied-server/0015-Configurable-server-mod-name.patch b/patches/server/0015-Configurable-server-mod-name.patch similarity index 91% rename from patches/unapplied-server/0015-Configurable-server-mod-name.patch rename to patches/server/0015-Configurable-server-mod-name.patch index 5b65fb53d..a08c17673 100644 --- a/patches/unapplied-server/0015-Configurable-server-mod-name.patch +++ b/patches/server/0015-Configurable-server-mod-name.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable server mod name diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index ff4d04092aa6322788d55d3c0253cb7f6f3cd493..85e04c38cfda8c546f241a71deeb31efde22dc91 100644 +index 48e40ef7fba63d9354152a02440656ceb3a9b7a6..5a85471d26130c893ad619dbfc9b61c0ee1b938b 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -2019,7 +2019,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop implements FeatureElement, EntityTypeT @@ -25,7 +25,7 @@ index 7e7603680310976312050aaff5bdaa805901617f..23b921a79bd563fd0a1bf7afd55a8e52 public static ResourceLocation getKey(EntityType type) { return BuiltInRegistries.ENTITY_TYPE.getKey(type); } -@@ -605,6 +615,16 @@ public class EntityType implements FeatureElement, EntityTypeT +@@ -615,6 +625,16 @@ public class EntityType implements FeatureElement, EntityTypeT return this.category; } @@ -43,14 +43,13 @@ index 7e7603680310976312050aaff5bdaa805901617f..23b921a79bd563fd0a1bf7afd55a8e52 return this.descriptionId; } diff --git a/src/main/java/net/minecraft/world/item/SpawnEggItem.java b/src/main/java/net/minecraft/world/item/SpawnEggItem.java -index 9956ed42df55daa6d97fd6e3ab5368dad91cfaf0..e0e746d6c78421b40777125ba49f0a04809f5415 100644 +index cc7e9b87e919b4ef8cf77cd780c890fd9a9cfa50..a185d098175e504b7bb93d2cff03ca99eabc11eb 100644 --- a/src/main/java/net/minecraft/world/item/SpawnEggItem.java +++ b/src/main/java/net/minecraft/world/item/SpawnEggItem.java -@@ -73,6 +73,24 @@ public class SpawnEggItem extends Item { +@@ -68,6 +68,23 @@ public class SpawnEggItem extends Item { Spawner spawner = (Spawner) tileentity; - entitytypes = this.getType(itemstack); -+ + entitytypes = this.getType(world.registryAccess(), itemstack); + // Purpur start + if (spawner instanceof net.minecraft.world.level.block.entity.SpawnerBlockEntity) { + org.bukkit.block.Block bukkitBlock = world.getWorld().getBlockAt(blockposition.getX(), blockposition.getY(), blockposition.getZ()); diff --git a/patches/unapplied-server/0018-Anvil-API.patch b/patches/server/0018-Anvil-API.patch similarity index 100% rename from patches/unapplied-server/0018-Anvil-API.patch rename to patches/server/0018-Anvil-API.patch diff --git a/patches/unapplied-server/0019-Alternative-Keepalive-Handling.patch b/patches/server/0019-Alternative-Keepalive-Handling.patch similarity index 100% rename from patches/unapplied-server/0019-Alternative-Keepalive-Handling.patch rename to patches/server/0019-Alternative-Keepalive-Handling.patch diff --git a/patches/unapplied-server/0020-Enchantment-convenience-methods.patch b/patches/server/0020-Enchantment-convenience-methods.patch similarity index 92% rename from patches/unapplied-server/0020-Enchantment-convenience-methods.patch rename to patches/server/0020-Enchantment-convenience-methods.patch index eac011c5c..573bafb9b 100644 --- a/patches/unapplied-server/0020-Enchantment-convenience-methods.patch +++ b/patches/server/0020-Enchantment-convenience-methods.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Enchantment convenience methods diff --git a/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java b/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java -index f99b87cf70df7eaac13d46f4e0234b1e6483d342..d8fc10f9cd0ab2c26e64613006569a86ce201550 100644 +index 4dd074d04c9a535f6cf24420058fd68594c59edc..64c315372277300e58ce413210f47eed5b6e1d6c 100644 --- a/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java +++ b/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java @@ -578,4 +578,14 @@ public class EnchantmentHelper { diff --git a/patches/unapplied-server/0021-Silk-touch-spawners.patch b/patches/server/0021-Silk-touch-spawners.patch similarity index 92% rename from patches/unapplied-server/0021-Silk-touch-spawners.patch rename to patches/server/0021-Silk-touch-spawners.patch index 7f106b8fd..d867ba596 100644 --- a/patches/unapplied-server/0021-Silk-touch-spawners.patch +++ b/patches/server/0021-Silk-touch-spawners.patch @@ -5,22 +5,22 @@ Subject: [PATCH] Silk touch spawners diff --git a/src/main/java/net/minecraft/world/item/BlockItem.java b/src/main/java/net/minecraft/world/item/BlockItem.java -index c816c935ecc74a811ffdffbe6ded73c06e92324a..b5b7f1db21a22f16f06ced775c8173f90e36a91c 100644 +index 4377fa2400c4320e0023ece230090a2a3b4b2ab6..ac5dc472337cd9613db5fc03f64763245129dfd9 100644 --- a/src/main/java/net/minecraft/world/item/BlockItem.java +++ b/src/main/java/net/minecraft/world/item/BlockItem.java -@@ -213,6 +213,7 @@ public class BlockItem extends Item { +@@ -223,6 +223,7 @@ public class BlockItem extends Item { + } - if (tileentity != null) { - if (!world.isClientSide && tileentity.onlyOpCanSetNbt() && (player == null || !(player.canUseGameMasterBlocks() || (player.getAbilities().instabuild && player.getBukkitEntity().hasPermission("minecraft.nbt.place"))))) { // Spigot - add permission -+ if (!(!world.isClientSide && world.purpurConfig.silkTouchEnabled && tileentity instanceof net.minecraft.world.level.block.entity.SpawnerBlockEntity && player.getBukkitEntity().hasPermission("purpur.drop.spawners"))) + if (tileentitytypes1.onlyOpCanSetNbt() && (player == null || !(player.canUseGameMasterBlocks() || (player.getAbilities().instabuild && player.getBukkitEntity().hasPermission("minecraft.nbt.place"))))) { // Spigot - add permission ++ if (!(world.purpurConfig.silkTouchEnabled && tileentity instanceof net.minecraft.world.level.block.entity.SpawnerBlockEntity && player.getBukkitEntity().hasPermission("purpur.drop.spawners"))) return false; } diff --git a/src/main/java/net/minecraft/world/item/Items.java b/src/main/java/net/minecraft/world/item/Items.java -index 5a70111cd39af50981cfd440c021340da1de5eab..bf7d12594375d5b252db540a6d669a6e6aca7de8 100644 +index 6d16b4433e79eca0ff8008941f0b9b807b1db9db..41fbe61268c0a16078b5f846ab12bde172872ff7 100644 --- a/src/main/java/net/minecraft/world/item/Items.java +++ b/src/main/java/net/minecraft/world/item/Items.java -@@ -363,7 +363,7 @@ public class Items { +@@ -367,7 +367,7 @@ public class Items { public static final Item PURPUR_BLOCK = registerBlock(Blocks.PURPUR_BLOCK); public static final Item PURPUR_PILLAR = registerBlock(Blocks.PURPUR_PILLAR); public static final Item PURPUR_STAIRS = registerBlock(Blocks.PURPUR_STAIRS); @@ -30,7 +30,7 @@ index 5a70111cd39af50981cfd440c021340da1de5eab..bf7d12594375d5b252db540a6d669a6e public static final Item CHEST = registerBlock(Blocks.CHEST, settings -> settings.component(DataComponents.CONTAINER, ItemContainerContents.EMPTY)); public static final Item CRAFTING_TABLE = registerBlock(Blocks.CRAFTING_TABLE); diff --git a/src/main/java/net/minecraft/world/level/block/SpawnerBlock.java b/src/main/java/net/minecraft/world/level/block/SpawnerBlock.java -index 4f190a40b8474aa06a92c8afcc06d0044120ff7b..80ee7a6f010cc838625674007a3ea908f2f9dadd 100644 +index d751b280a8bf2066d458f8eb548d7aa123fa69c9..fb88b5c1d9e764bf1211d601527133ea8e8268b3 100644 --- a/src/main/java/net/minecraft/world/level/block/SpawnerBlock.java +++ b/src/main/java/net/minecraft/world/level/block/SpawnerBlock.java @@ -42,6 +42,57 @@ public class SpawnerBlock extends BaseEntityBlock { diff --git a/patches/unapplied-server/0022-Add-turtle-egg-block-options.patch b/patches/server/0022-Add-turtle-egg-block-options.patch similarity index 100% rename from patches/unapplied-server/0022-Add-turtle-egg-block-options.patch rename to patches/server/0022-Add-turtle-egg-block-options.patch diff --git a/patches/unapplied-server/0023-Logger-settings-suppressing-pointless-logs.patch b/patches/server/0023-Logger-settings-suppressing-pointless-logs.patch similarity index 100% rename from patches/unapplied-server/0023-Logger-settings-suppressing-pointless-logs.patch rename to patches/server/0023-Logger-settings-suppressing-pointless-logs.patch diff --git a/patches/unapplied-server/0024-Disable-outdated-build-check.patch b/patches/server/0024-Disable-outdated-build-check.patch similarity index 92% rename from patches/unapplied-server/0024-Disable-outdated-build-check.patch rename to patches/server/0024-Disable-outdated-build-check.patch index 845632208..e5bb0daee 100644 --- a/patches/unapplied-server/0024-Disable-outdated-build-check.patch +++ b/patches/server/0024-Disable-outdated-build-check.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Disable outdated build check diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 9ad9239ae0804cc7a4a9ea4a05401b303ae9b372..5bce26e9671aab15ac4bac9a0d00b5184bef74ea 100644 +index ae274a56f7cb6200b3c556ed61254bb28146c771..628f7f784c830189c5718a20ce43a9352e400c33 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -267,7 +267,7 @@ public class Main { diff --git a/patches/unapplied-server/0025-Giants-AI-settings.patch b/patches/server/0025-Giants-AI-settings.patch similarity index 100% rename from patches/unapplied-server/0025-Giants-AI-settings.patch rename to patches/server/0025-Giants-AI-settings.patch diff --git a/patches/unapplied-server/0026-Zombie-horse-naturally-spawn.patch b/patches/server/0026-Zombie-horse-naturally-spawn.patch similarity index 95% rename from patches/unapplied-server/0026-Zombie-horse-naturally-spawn.patch rename to patches/server/0026-Zombie-horse-naturally-spawn.patch index 57847a580..a4bd3c950 100644 --- a/patches/unapplied-server/0026-Zombie-horse-naturally-spawn.patch +++ b/patches/server/0026-Zombie-horse-naturally-spawn.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Zombie horse naturally spawn diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 1f49d018683fa19f498c8e68dab8a7ddde6cfad0..c05d0d836ced6db6b4a3e85fe0973dd7b1aaad81 100644 +index d571b4a56807bcc4206d54573604c01290cd3dd7..9451c6fa2307bc12b47a106f2d82508548b109a8 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -953,10 +953,18 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -954,10 +954,18 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe boolean flag1 = this.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && this.random.nextDouble() < (double) difficultydamagescaler.getEffectiveDifficulty() * this.paperConfig().entities.spawning.skeletonHorseThunderSpawnChance.or(0.01D) && !this.getBlockState(blockposition.below()).is(Blocks.LIGHTNING_ROD); // Paper - Configurable spawn chances for skeleton horses if (flag1) { diff --git a/patches/unapplied-server/0027-Charged-creeper-naturally-spawn.patch b/patches/server/0027-Charged-creeper-naturally-spawn.patch similarity index 100% rename from patches/unapplied-server/0027-Charged-creeper-naturally-spawn.patch rename to patches/server/0027-Charged-creeper-naturally-spawn.patch diff --git a/patches/unapplied-server/0028-Rabbit-naturally-spawn-toast-and-killer.patch b/patches/server/0028-Rabbit-naturally-spawn-toast-and-killer.patch similarity index 96% rename from patches/unapplied-server/0028-Rabbit-naturally-spawn-toast-and-killer.patch rename to patches/server/0028-Rabbit-naturally-spawn-toast-and-killer.patch index d5147a970..0466b174e 100644 --- a/patches/unapplied-server/0028-Rabbit-naturally-spawn-toast-and-killer.patch +++ b/patches/server/0028-Rabbit-naturally-spawn-toast-and-killer.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Rabbit naturally spawn toast and killer diff --git a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java -index 6f3fdf72dd4e8d7399b205818c863e754c898101..b0cdc25f6592d44a3ad3fdf4d461e95887105257 100644 +index bd513a21c9fb683f5768cebb69058bd00c808412..d851f25ca886f0e0939e397c4562b88db59f6885 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java +++ b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java @@ -469,10 +469,23 @@ public class Rabbit extends Animal implements VariantHolder { diff --git a/patches/unapplied-server/0029-Fix-outdated-server-showing-in-ping-before-server-fu.patch b/patches/server/0029-Fix-outdated-server-showing-in-ping-before-server-fu.patch similarity index 100% rename from patches/unapplied-server/0029-Fix-outdated-server-showing-in-ping-before-server-fu.patch rename to patches/server/0029-Fix-outdated-server-showing-in-ping-before-server-fu.patch diff --git a/patches/unapplied-server/0030-Tulips-change-fox-type.patch b/patches/server/0030-Tulips-change-fox-type.patch similarity index 97% rename from patches/unapplied-server/0030-Tulips-change-fox-type.patch rename to patches/server/0030-Tulips-change-fox-type.patch index 75b4b223b..5c3aac7ed 100644 --- a/patches/unapplied-server/0030-Tulips-change-fox-type.patch +++ b/patches/server/0030-Tulips-change-fox-type.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Tulips change fox type diff --git a/src/main/java/net/minecraft/world/entity/animal/Fox.java b/src/main/java/net/minecraft/world/entity/animal/Fox.java -index bb98caa1e5ca711293e50ac82a5cad2fa5972db9..355965d88d5ef008111cc72f39e4f8d35741fdfd 100644 +index 23ee27f70ae4c02a9add7562f75c6dd5e12028b4..75fd5fb03aec52c76df55ab75ba5d446e094c9c8 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Fox.java +++ b/src/main/java/net/minecraft/world/entity/animal/Fox.java @@ -384,6 +384,11 @@ public class Fox extends Animal implements VariantHolder { diff --git a/patches/unapplied-server/0031-Breedable-Polar-Bears.patch b/patches/server/0031-Breedable-Polar-Bears.patch similarity index 100% rename from patches/unapplied-server/0031-Breedable-Polar-Bears.patch rename to patches/server/0031-Breedable-Polar-Bears.patch diff --git a/patches/unapplied-server/0032-Chickens-can-retaliate.patch b/patches/server/0032-Chickens-can-retaliate.patch similarity index 100% rename from patches/unapplied-server/0032-Chickens-can-retaliate.patch rename to patches/server/0032-Chickens-can-retaliate.patch diff --git a/patches/unapplied-server/0033-Add-option-to-set-armorstand-step-height.patch b/patches/server/0033-Add-option-to-set-armorstand-step-height.patch similarity index 94% rename from patches/unapplied-server/0033-Add-option-to-set-armorstand-step-height.patch rename to patches/server/0033-Add-option-to-set-armorstand-step-height.patch index cf4d6f0b9..1638f62cb 100644 --- a/patches/unapplied-server/0033-Add-option-to-set-armorstand-step-height.patch +++ b/patches/server/0033-Add-option-to-set-armorstand-step-height.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add option to set armorstand step height diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 163af180a12bf2847d6eab87e1fa77aef7cd3550..1057497963a615ae1aaafa5aac1f53471a00c763 100644 +index fddc4a5e5c4f9f3552b3254fec8254774b20f9f1..2e57077a184809e70481c9bba1891e01a9e203f7 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -300,6 +300,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -16,7 +16,7 @@ index 163af180a12bf2847d6eab87e1fa77aef7cd3550..1057497963a615ae1aaafa5aac1f5347 public boolean noPhysics; private boolean wasOnFire; public final RandomSource random; -@@ -5142,7 +5143,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5172,7 +5173,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public float maxUpStep() { diff --git a/patches/unapplied-server/0034-Cat-spawning-options.patch b/patches/server/0034-Cat-spawning-options.patch similarity index 100% rename from patches/unapplied-server/0034-Cat-spawning-options.patch rename to patches/server/0034-Cat-spawning-options.patch diff --git a/patches/unapplied-server/0035-Cows-eat-mushrooms.patch b/patches/server/0035-Cows-eat-mushrooms.patch similarity index 100% rename from patches/unapplied-server/0035-Cows-eat-mushrooms.patch rename to patches/server/0035-Cows-eat-mushrooms.patch diff --git a/patches/unapplied-server/0036-Fix-cow-rotation-when-shearing-mooshroom.patch b/patches/server/0036-Fix-cow-rotation-when-shearing-mooshroom.patch similarity index 89% rename from patches/unapplied-server/0036-Fix-cow-rotation-when-shearing-mooshroom.patch rename to patches/server/0036-Fix-cow-rotation-when-shearing-mooshroom.patch index 9e7f3ea08..71c0dc850 100644 --- a/patches/unapplied-server/0036-Fix-cow-rotation-when-shearing-mooshroom.patch +++ b/patches/server/0036-Fix-cow-rotation-when-shearing-mooshroom.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix cow rotation when shearing mooshroom diff --git a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java -index 0005cd7156e46ae790d629d7a985cdace1cc5577..c7039d7d5e38392fef8787f6e245a44842e2f2a3 100644 +index 575a3f5e2c003474a4a4d09db4ba495eddad3ce7..e5d8f23032244c77b4e2bcb8ead0b20a27acadf7 100644 --- a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java +++ b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java -@@ -217,6 +217,13 @@ public class MushroomCow extends Cow implements Shearable, VariantHolder { world.sendParticles(ParticleTypes.EXPLOSION, this.getX(), this.getY(0.5D), this.getZ(), 1, 0.0D, 0.0D, 0.0D, 0.0D); diff --git a/patches/unapplied-server/0037-Pigs-give-saddle-back.patch b/patches/server/0037-Pigs-give-saddle-back.patch similarity index 100% rename from patches/unapplied-server/0037-Pigs-give-saddle-back.patch rename to patches/server/0037-Pigs-give-saddle-back.patch diff --git a/patches/unapplied-server/0038-Snowman-drop-and-put-back-pumpkin.patch b/patches/server/0038-Snowman-drop-and-put-back-pumpkin.patch similarity index 100% rename from patches/unapplied-server/0038-Snowman-drop-and-put-back-pumpkin.patch rename to patches/server/0038-Snowman-drop-and-put-back-pumpkin.patch diff --git a/patches/unapplied-server/0039-Ender-dragon-always-drop-full-exp.patch b/patches/server/0039-Ender-dragon-always-drop-full-exp.patch similarity index 95% rename from patches/unapplied-server/0039-Ender-dragon-always-drop-full-exp.patch rename to patches/server/0039-Ender-dragon-always-drop-full-exp.patch index 52df8536c..f9542af74 100644 --- a/patches/unapplied-server/0039-Ender-dragon-always-drop-full-exp.patch +++ b/patches/server/0039-Ender-dragon-always-drop-full-exp.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Ender dragon always drop full exp diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java -index 0faae8faeba4300a44b8dadedc73c9f1a4022e4f..f356110850dd71d066243ec29853f547d94e4400 100644 +index d1134a81cc3ada28790e8fcd4489d64e9650dae3..8cfe0d5f09fa08c3606f29ce243d6ce5f84090a0 100644 --- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java +++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java @@ -732,7 +732,7 @@ public class EnderDragon extends Mob implements Enemy { diff --git a/patches/unapplied-server/0040-Allow-soil-to-moisten-from-water-directly-under-it.patch b/patches/server/0040-Allow-soil-to-moisten-from-water-directly-under-it.patch similarity index 100% rename from patches/unapplied-server/0040-Allow-soil-to-moisten-from-water-directly-under-it.patch rename to patches/server/0040-Allow-soil-to-moisten-from-water-directly-under-it.patch diff --git a/patches/unapplied-server/0041-Minecart-settings-and-WASD-controls.patch b/patches/server/0041-Minecart-settings-and-WASD-controls.patch similarity index 94% rename from patches/unapplied-server/0041-Minecart-settings-and-WASD-controls.patch rename to patches/server/0041-Minecart-settings-and-WASD-controls.patch index 0294834e0..6afc173bc 100644 --- a/patches/unapplied-server/0041-Minecart-settings-and-WASD-controls.patch +++ b/patches/server/0041-Minecart-settings-and-WASD-controls.patch @@ -5,17 +5,17 @@ Subject: [PATCH] Minecart settings and WASD controls diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index d4ed1dd4e4c56cf40632b0857af82a944579da65..a91a4602b5bc72dc0162fd2d60eebf3a05df4065 100644 +index ae4733c402662630a3892aecd01646d2e7613eed..d8a5d37e3b796392d6b0548371d4f0801d4d9bec 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1442,6 +1442,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple +@@ -1439,6 +1439,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple if (this.isInvulnerableTo(world, source)) { return false; } else { -+ if (source.is(DamageTypeTags.IS_FALL) && getRootVehicle() instanceof net.minecraft.world.entity.vehicle.AbstractMinecart && level().purpurConfig.minecartControllable && !level().purpurConfig.minecartControllableFallDamage) return false; // Purpur - boolean flag = this.server.isDedicatedServer() && this.isPvpAllowed() && source.is(DamageTypeTags.IS_FALL); ++ if (source.is(net.minecraft.tags.DamageTypeTags.IS_FALL) && getRootVehicle() instanceof net.minecraft.world.entity.vehicle.AbstractMinecart && level().purpurConfig.minecartControllable && !level().purpurConfig.minecartControllableFallDamage) return false; // Purpur + Entity entity = source.getEntity(); - if (!flag && this.spawnInvulnerableTime > 0 && !source.is(DamageTypeTags.BYPASSES_INVULNERABILITY)) { + if (entity instanceof net.minecraft.world.entity.player.Player) { diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java index cdc8606ffe5c75ee19d92e9f86f26b2a502d765e..b31940441596079aae1cd2a38b9d22be18358448 100644 --- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java @@ -148,7 +148,7 @@ index 7153d9ed12276a0f2d8b8a17c79734aa25ed1fa5..dc49ea6454e04ae8ec68af12c4bf2ff0 } } diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -index 99fd67a78539133adf78d65e2c520ff3dd260301..6b987ee220d94b482d2aeb4ff6bf271853605dc1 100644 +index 8c0f332a1a0918f60226d969918ae7fe4fe74166..6376b8b3ff444f4cab93e2bb5d2becc77c33c118 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java @@ -99,7 +99,7 @@ public abstract class BlockBehaviour implements FeatureElement { diff --git a/patches/unapplied-server/0042-Disable-loot-drops-on-death-by-cramming.patch b/patches/server/0042-Disable-loot-drops-on-death-by-cramming.patch similarity index 91% rename from patches/unapplied-server/0042-Disable-loot-drops-on-death-by-cramming.patch rename to patches/server/0042-Disable-loot-drops-on-death-by-cramming.patch index 6e1b88dee..83f2cf2bf 100644 --- a/patches/unapplied-server/0042-Disable-loot-drops-on-death-by-cramming.patch +++ b/patches/server/0042-Disable-loot-drops-on-death-by-cramming.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Disable loot drops on death by cramming diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 1077eae6e0952d09410518a856ebece808aefef5..af017da528924bae0542dd0e59d23c3bf59aa7b3 100644 +index a16c7069a2ac349a6de366229b77da9a7cec71c0..9c31efc4d8c16c8f3c3e384ad247db28e82628d2 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -1927,6 +1927,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -1938,6 +1938,7 @@ public abstract class LivingEntity extends Entity implements Attackable { this.dropEquipment(world); // CraftBukkit - from below if (this.shouldDropLoot() && world.getGameRules().getBoolean(GameRules.RULE_DOMOBLOOT)) { @@ -16,7 +16,7 @@ index 1077eae6e0952d09410518a856ebece808aefef5..af017da528924bae0542dd0e59d23c3b this.dropFromLootTable(world, damageSource, flag); // Paper start final boolean prev = this.clearEquipmentSlots; -@@ -1935,6 +1936,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -1946,6 +1947,7 @@ public abstract class LivingEntity extends Entity implements Attackable { // Paper end this.dropCustomDeathLoot(world, damageSource, flag); this.clearEquipmentSlots = prev; // Paper diff --git a/patches/unapplied-server/0043-Option-to-toggle-milk-curing-bad-omen.patch b/patches/server/0043-Option-to-toggle-milk-curing-bad-omen.patch similarity index 100% rename from patches/unapplied-server/0043-Option-to-toggle-milk-curing-bad-omen.patch rename to patches/server/0043-Option-to-toggle-milk-curing-bad-omen.patch diff --git a/patches/unapplied-server/0044-Skip-events-if-there-s-no-listeners.patch b/patches/server/0044-Skip-events-if-there-s-no-listeners.patch similarity index 100% rename from patches/unapplied-server/0044-Skip-events-if-there-s-no-listeners.patch rename to patches/server/0044-Skip-events-if-there-s-no-listeners.patch diff --git a/patches/unapplied-server/0045-Add-permission-for-F3-N-debug.patch b/patches/server/0045-Add-permission-for-F3-N-debug.patch similarity index 89% rename from patches/unapplied-server/0045-Add-permission-for-F3-N-debug.patch rename to patches/server/0045-Add-permission-for-F3-N-debug.patch index fc63dee39..af892d946 100644 --- a/patches/unapplied-server/0045-Add-permission-for-F3-N-debug.patch +++ b/patches/server/0045-Add-permission-for-F3-N-debug.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add permission for F3+N debug diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 595302e0177824c1e3ad54e9a088337eeb2d872b..73c83770e1acd6c57742405a04ffa7a733aea4f6 100644 +index 88678fb527f170c81d5e2d4a28f65e398dab8939..98992aae7c7724a25fc6f6aaee27b07dccbe2292 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1108,6 +1108,7 @@ public abstract class PlayerList { diff --git a/patches/unapplied-server/0046-Configurable-TPS-Catchup.patch b/patches/server/0046-Configurable-TPS-Catchup.patch similarity index 92% rename from patches/unapplied-server/0046-Configurable-TPS-Catchup.patch rename to patches/server/0046-Configurable-TPS-Catchup.patch index 6223b1cad..b6a27acc8 100644 --- a/patches/unapplied-server/0046-Configurable-TPS-Catchup.patch +++ b/patches/server/0046-Configurable-TPS-Catchup.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable TPS Catchup diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 85f5f8a30053cae087b223f0d80432c5318e67d6..f6ad220e3e228e978c8b635064e8d5bf65ac5a89 100644 +index 93aa1dce5c9bfdfff9372b0a84bfa2d5bf5c1169..d94f92730063454a1acaa037d5c5eed7a7a73490 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1345,7 +1345,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop