From 97e9c2a05f3faf6044532b9955b3199176a6e725 Mon Sep 17 00:00:00 2001 From: Atsuihsio <842960157@qq.com> Date: Sun, 3 Nov 2024 21:21:37 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=86=E8=A7=A6=E5=8F=91=E6=8A=9B=E5=A3=B3?= =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E5=88=B0=E5=AE=A2=E6=88=B7=E7=AB=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../event/ClientEventHandler.java | 29 +++++++------------ .../network/message/ShootClientMessage.java | 2 +- .../network/message/ShootMessage.java | 11 ------- 3 files changed, 12 insertions(+), 30 deletions(-) diff --git a/src/main/java/net/mcreator/superbwarfare/event/ClientEventHandler.java b/src/main/java/net/mcreator/superbwarfare/event/ClientEventHandler.java index 39af586c2..155f82759 100644 --- a/src/main/java/net/mcreator/superbwarfare/event/ClientEventHandler.java +++ b/src/main/java/net/mcreator/superbwarfare/event/ClientEventHandler.java @@ -106,7 +106,7 @@ public class ClientEventHandler { public static double drawTime = 1; public static int shellIndex = 0; - public static double[] shellIndexTime = {0, 0, 0, 0, 0}; + public static double[] shellIndexTime = {0, 0, 0, 0, 0, 0}; public static double[] randomShell = {0, 0, 0}; public static double customZoom = 0; @@ -316,6 +316,16 @@ public class ClientEventHandler { float gunRecoilY = (float) tag.getDouble("recoil_y") * 10; recoilY = (float) (2 * Math.random() - 1) * gunRecoilY; + if (shellIndex < 5) { + shellIndex++; + } + + shellIndexTime[shellIndex] = 0.001; + + randomShell[0] = (1 + 0.2 * (Math.random() - 0.5)); + randomShell[1] = (0.2 + (Math.random() - 0.5)); + randomShell[2] = (0.7 + (Math.random() - 0.5)); + } public static void playGunClientSounds(Player player) { @@ -358,23 +368,6 @@ public class ClientEventHandler { } } - public static void handleFireRecoilTimeMessage(double time, Supplier ctx) { - if (ctx.get().getDirection().getReceptionSide() == LogicalSide.CLIENT) { - Player player = Minecraft.getInstance().player; - if (player == null) return; - if (!player.getMainHandItem().is(ModTags.Items.GUN)) return; - - -// fireRecoilTime = time; - shellIndex++; - shellIndexTime[shellIndex] = 0.001; - - randomShell[0] = (1 + 0.2 * (Math.random() - 0.5)); - randomShell[1] = (0.2 + (Math.random() - 0.5)); - randomShell[2] = (0.7 + (Math.random() - 0.5)); - } - } - @SubscribeEvent public static void handleWeaponBreathSway(TickEvent.RenderTickEvent event) { Player player = Minecraft.getInstance().player; diff --git a/src/main/java/net/mcreator/superbwarfare/network/message/ShootClientMessage.java b/src/main/java/net/mcreator/superbwarfare/network/message/ShootClientMessage.java index 4209ff883..624d57e4c 100644 --- a/src/main/java/net/mcreator/superbwarfare/network/message/ShootClientMessage.java +++ b/src/main/java/net/mcreator/superbwarfare/network/message/ShootClientMessage.java @@ -25,7 +25,7 @@ public class ShootClientMessage { public static void handle(ShootClientMessage message, Supplier context) { context.get().enqueueWork(() -> DistExecutor.unsafeRunWhenOn(Dist.CLIENT, - () -> () -> ClientEventHandler.handleFireRecoilTimeMessage(message.time, context))); + () -> ClientEventHandler::handleClientShoot)); context.get().setPacketHandled(true); } } diff --git a/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java b/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java index fa4750387..f7aab8604 100644 --- a/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java +++ b/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java @@ -1,6 +1,5 @@ package net.mcreator.superbwarfare.network.message; -import net.mcreator.superbwarfare.ModUtils; import net.mcreator.superbwarfare.init.ModItems; import net.mcreator.superbwarfare.init.ModPerks; import net.mcreator.superbwarfare.init.ModSounds; @@ -22,7 +21,6 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraftforge.common.capabilities.ForgeCapabilities; import net.minecraftforge.network.NetworkEvent; -import net.minecraftforge.network.PacketDistributor; import java.util.function.Supplier; @@ -148,11 +146,6 @@ public class ShootMessage { } playGunSounds(player); - - if (player.level() instanceof ServerLevel && player instanceof ServerPlayer serverPlayer) { - ModUtils.PACKET_HANDLER.send(PacketDistributor.PLAYER.with(() -> serverPlayer), new ShootClientMessage(10)); - } - } } else if (stack.is(ModItems.MINIGUN.get())) { var tag = stack.getOrCreateTag(); @@ -194,10 +187,6 @@ public class ShootMessage { } tag.putInt("fire_animation", 2); - - if (player.level() instanceof ServerLevel && player instanceof ServerPlayer serverPlayer) { - ModUtils.PACKET_HANDLER.send(PacketDistributor.PLAYER.with(() -> serverPlayer), new ShootClientMessage(10)); - } } } }