From e745a37fb5138cd0712e23b2fc332f65aabb096d Mon Sep 17 00:00:00 2001 From: 17146 <1714673995@qq.com> Date: Sun, 13 Apr 2025 21:37:50 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=A9=BF=E9=80=8F=E6=95=B0?= =?UTF-8?q?=E5=80=BC=E8=AF=BB=E5=8F=96=E9=97=AE=E9=A2=98=EF=BC=8C=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=87=A0=E5=A4=84=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/atsuishio/superbwarfare/event/ClientEventHandler.java | 1 + .../atsuishio/superbwarfare/item/gun/data/DefaultGunData.java | 2 +- .../atsuishio/superbwarfare/item/gun/launcher/JavelinItem.java | 1 + .../com/atsuishio/superbwarfare/item/gun/shotgun/Aa12Item.java | 1 - .../superbwarfare/network/message/send/FireMessage.java | 1 + .../superbwarfare/network/message/send/ShootMessage.java | 1 + 6 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/atsuishio/superbwarfare/event/ClientEventHandler.java b/src/main/java/com/atsuishio/superbwarfare/event/ClientEventHandler.java index f3bb4f403..5cfa4bd13 100644 --- a/src/main/java/com/atsuishio/superbwarfare/event/ClientEventHandler.java +++ b/src/main/java/com/atsuishio/superbwarfare/event/ClientEventHandler.java @@ -657,6 +657,7 @@ public class ClientEventHandler { public static void shootClient(Player player, final CompoundTag tag) { ItemStack stack = player.getMainHandItem(); + if (!stack.is(ModTags.Items.GUN)) return; var data = GunData.from(stack); if (stack.is(ModTags.Items.NORMAL_GUN)) { if (data.ammo.get() > 0) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/data/DefaultGunData.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/data/DefaultGunData.java index dd86b8217..bc7bb0b70 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/data/DefaultGunData.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/data/DefaultGunData.java @@ -34,7 +34,7 @@ public class DefaultGunData { public int fireMode; @SerializedName("BurstAmount") public int burstAmount; - @SerializedName("BypassArmor") + @SerializedName("BypassesArmor") public double bypassArmor; @SerializedName("NormalReloadTime") diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/JavelinItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/JavelinItem.java index f5bfdbe68..96ca8ed3b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/JavelinItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/JavelinItem.java @@ -241,6 +241,7 @@ public class JavelinItem extends GunItem implements GeoItem, SpecialFireWeapon { private void fire(Player player) { Level level = player.level(); ItemStack stack = player.getMainHandItem(); + if (!stack.is(ModTags.Items.GUN)) return; var data = GunData.from(stack); CompoundTag tag = data.tag(); diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/Aa12Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/Aa12Item.java index 7a16e6b3a..d7afd7788 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/Aa12Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/Aa12Item.java @@ -57,7 +57,6 @@ public class Aa12Item extends GunItem implements GeoItem { if (!stack.is(ModTags.Items.GUN)) return PlayState.STOP; if (this.animationProcedure.equals("empty")) { - if (GunData.from(stack).reload.empty()) { return event.setAndContinue(RawAnimation.begin().thenPlay("animation.aa12.reload_empty")); } diff --git a/src/main/java/com/atsuishio/superbwarfare/network/message/send/FireMessage.java b/src/main/java/com/atsuishio/superbwarfare/network/message/send/FireMessage.java index c7fbc0fc5..32c63b410 100644 --- a/src/main/java/com/atsuishio/superbwarfare/network/message/send/FireMessage.java +++ b/src/main/java/com/atsuishio/superbwarfare/network/message/send/FireMessage.java @@ -113,6 +113,7 @@ public record FireMessage(int msgType, double power, boolean zoom) implements Cu public static void spawnBullet(Player player, final CompoundTag tag, double power, boolean zoom) { ItemStack stack = player.getMainHandItem(); if (player.level().isClientSide()) return; + if (!stack.is(ModTags.Items.GUN)) return; var data = GunData.from(stack); var perk = data.perk.get(Perk.Type.AMMO); diff --git a/src/main/java/com/atsuishio/superbwarfare/network/message/send/ShootMessage.java b/src/main/java/com/atsuishio/superbwarfare/network/message/send/ShootMessage.java index e83c06445..3c678ebf6 100644 --- a/src/main/java/com/atsuishio/superbwarfare/network/message/send/ShootMessage.java +++ b/src/main/java/com/atsuishio/superbwarfare/network/message/send/ShootMessage.java @@ -40,6 +40,7 @@ public record ShootMessage(double spread, boolean zoom) implements CustomPacketP public static void pressAction(Player player, double spared, boolean zoom) { ItemStack stack = player.getMainHandItem(); + if (!stack.is(ModTags.Items.GUN)) return; var data = GunData.from(stack); var tag = data.tag();