From 7455e08036fa0739dc6ed8629ee046abb2b2b866 Mon Sep 17 00:00:00 2001 From: Atsuishio <842960157@qq.com> Date: Thu, 10 Apr 2025 17:43:59 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=B3=A2=E5=A1=9E=E7=A7=91?= =?UTF-8?q?=E6=8B=89=E5=BC=93=E5=90=8E=E5=88=87=E6=8D=A2=E6=AD=A6=E5=99=A8?= =?UTF-8?q?=E4=BF=9D=E7=95=99=E6=8B=89=E5=BC=93=E8=BF=9B=E5=BA=A6=E7=9A=84?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../superbwarfare/event/ClientEventHandler.java | 4 ++++ .../superbwarfare/event/LivingEventHandler.java | 13 ++++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/atsuishio/superbwarfare/event/ClientEventHandler.java b/src/main/java/com/atsuishio/superbwarfare/event/ClientEventHandler.java index e864392c8..794df512d 100644 --- a/src/main/java/com/atsuishio/superbwarfare/event/ClientEventHandler.java +++ b/src/main/java/com/atsuishio/superbwarfare/event/ClientEventHandler.java @@ -1507,6 +1507,10 @@ public class ClientEventHandler { lungeSprint = 0; lungeAttack = 0; burstFireAmount = 0; + pullTimer = 0; + bowTimer = 0; + handTimer = 0; + handPos = 0; } private static void handleWeaponDraw(LivingEntity entity) { diff --git a/src/main/java/com/atsuishio/superbwarfare/event/LivingEventHandler.java b/src/main/java/com/atsuishio/superbwarfare/event/LivingEventHandler.java index 80f33410a..86227a967 100644 --- a/src/main/java/com/atsuishio/superbwarfare/event/LivingEventHandler.java +++ b/src/main/java/com/atsuishio/superbwarfare/event/LivingEventHandler.java @@ -381,6 +381,12 @@ public class LivingEventHandler { var cap = player.getData(ModAttachments.PLAYER_VARIABLE).watch(); cap.edit = false; + + if (oldStack.is(ModItems.BOCEK)) { + oldData.data().putInt("Power", 0); + cap.bowPullHold = false; + } + player.setData(ModAttachments.PLAYER_VARIABLE, cap); cap.sync(player); @@ -414,6 +420,12 @@ public class LivingEventHandler { newData.charge.timer.reset(); } + var cap = player.getData(ModAttachments.PLAYER_VARIABLE).watch(); + if (newStack.is(ModItems.BOCEK)) { + newData.data().putInt("Power", 0); + cap.bowPullHold = false; + } + int level = newData.perk.getLevel(ModPerks.KILLING_TALLY); if (level != 0) { GunsTool.setPerkIntTag(newTag, "KillingTally", 0); @@ -423,7 +435,6 @@ public class LivingEventHandler { PacketDistributor.sendToPlayer(serverPlayer, new DrawClientMessage(true)); } - var cap = player.getData(ModAttachments.PLAYER_VARIABLE).watch(); cap.tacticalSprint = false; player.setData(ModAttachments.PLAYER_VARIABLE, cap); cap.sync(player);