From 0bb603e3d83363870c6c8a2abc5bf3f2a2664580 Mon Sep 17 00:00:00 2001 From: MC_XiaoHei Date: Thu, 3 Jul 2025 21:34:41 +0800 Subject: [PATCH] feat: keep leash connect when use firework(#585) --- ...Old-leash-behavior-when-use-firework.patch | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 leaves-server/minecraft-patches/features/0133-Old-leash-behavior-when-use-firework.patch diff --git a/leaves-server/minecraft-patches/features/0133-Old-leash-behavior-when-use-firework.patch b/leaves-server/minecraft-patches/features/0133-Old-leash-behavior-when-use-firework.patch new file mode 100644 index 00000000..6f174208 --- /dev/null +++ b/leaves-server/minecraft-patches/features/0133-Old-leash-behavior-when-use-firework.patch @@ -0,0 +1,19 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: MC_XiaoHei +Date: Thu, 3 Jul 2025 21:33:29 +0800 +Subject: [PATCH] Old leash behavior when use firework + + +diff --git a/net/minecraft/world/item/FireworkRocketItem.java b/net/minecraft/world/item/FireworkRocketItem.java +index c3ae57d515ca1879c5f278097435b7308436c579..9f54698ecd92ca9514ce10bc59356bcc21f77604 100644 +--- a/net/minecraft/world/item/FireworkRocketItem.java ++++ b/net/minecraft/world/item/FireworkRocketItem.java +@@ -87,7 +87,7 @@ public class FireworkRocketItem extends Item implements ProjectileItem { + com.destroystokyo.paper.event.player.PlayerElytraBoostEvent event = new com.destroystokyo.paper.event.player.PlayerElytraBoostEvent((org.bukkit.entity.Player) player.getBukkitEntity(), org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(itemInHand), (org.bukkit.entity.Firework) delayed.projectile().getBukkitEntity(), org.bukkit.craftbukkit.CraftEquipmentSlot.getHand(hand)); + if (event.callEvent() && delayed.attemptSpawn()) { + player.awardStat(Stats.ITEM_USED.get(this)); // Moved up from below +- if (player.dropAllLeashConnections(null)) { ++ if (!org.leavesmc.leaves.LeavesConfig.modify.oldMC.keepLeashConnectWhenUseFirework && player.dropAllLeashConnections(null)) { // Leaves - Keep leash connection when using firework + level.playSound(null, player, SoundEvents.LEAD_BREAK, SoundSource.NEUTRAL, 1.0F, 1.0F); + } + if (event.shouldConsume() && !player.hasInfiniteMaterials()) {