diff --git a/paper-server/patches/sources/net/minecraft/world/entity/Mob.java.patch b/paper-server/patches/sources/net/minecraft/world/entity/Mob.java.patch index 6e9bf95ddf..deac638824 100644 --- a/paper-server/patches/sources/net/minecraft/world/entity/Mob.java.patch +++ b/paper-server/patches/sources/net/minecraft/world/entity/Mob.java.patch @@ -326,6 +326,16 @@ } } } +@@ -981,7 +_,9 @@ + double d = this.getEquipmentDropChance(equipmentSlot); + if (d > 1.0) { + this.setItemSlot(equipmentSlot, ItemStack.EMPTY); ++ this.forceDrops = true; // Paper - Add missing forceDrop toggles + this.spawnAtLocation(level, itemBySlot); ++ this.forceDrops = false; // Paper - Add missing forceDrop toggles + } + } + } @@ -1269,6 +_,22 @@ public T convertTo( EntityType entityType, ConversionParams conversionParams, EntitySpawnReason spawnReason, ConversionParams.AfterConversion afterConversion diff --git a/paper-server/patches/sources/net/minecraft/world/entity/monster/ZombieVillager.java.patch b/paper-server/patches/sources/net/minecraft/world/entity/monster/ZombieVillager.java.patch index d86b3f0005..220356954d 100644 --- a/paper-server/patches/sources/net/minecraft/world/entity/monster/ZombieVillager.java.patch +++ b/paper-server/patches/sources/net/minecraft/world/entity/monster/ZombieVillager.java.patch @@ -57,14 +57,6 @@ EntityType.VILLAGER, ConversionParams.single(this, false, false), villager -> { -@@ -223,6 +_,7 @@ - SlotAccess slot = villager.getSlot(equipmentSlot.getIndex() + 300); - slot.set(this.getItemBySlot(equipmentSlot)); - } -+ this.forceDrops = false; // CraftBukkit - - villager.setVillagerData(this.getVillagerData()); - if (this.gossips != null) { @@ -237,19 +_,24 @@ villager.finalizeSpawn(serverLevel, serverLevel.getCurrentDifficultyAt(villager.blockPosition()), EntitySpawnReason.CONVERSION, null); villager.refreshBrain(serverLevel);