From 28e3a7946c18f25ff37bac3282075fcba8fde7c7 Mon Sep 17 00:00:00 2001 From: Light_Quanta Date: Sat, 11 May 2024 14:47:45 +0800 Subject: [PATCH] =?UTF-8?q?=E5=86=85=E8=81=94ReleaseFireProcedure?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mcreator/target/network/FireMessage.java | 24 ++++++++++++------- .../procedures/ReleaseFireProcedure.java | 17 ------------- 2 files changed, 15 insertions(+), 26 deletions(-) delete mode 100644 src/main/java/net/mcreator/target/procedures/ReleaseFireProcedure.java diff --git a/src/main/java/net/mcreator/target/network/FireMessage.java b/src/main/java/net/mcreator/target/network/FireMessage.java index b7dbc9973..73d0255ac 100644 --- a/src/main/java/net/mcreator/target/network/FireMessage.java +++ b/src/main/java/net/mcreator/target/network/FireMessage.java @@ -1,8 +1,8 @@ package net.mcreator.target.network; import net.mcreator.target.TargetMod; +import net.mcreator.target.procedures.BowlooseProcedure; import net.mcreator.target.procedures.PressFireProcedure; -import net.mcreator.target.procedures.ReleaseFireProcedure; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; @@ -34,20 +34,26 @@ public class FireMessage { public static void handler(FireMessage message, Supplier contextSupplier) { NetworkEvent.Context context = contextSupplier.get(); - context.enqueueWork(() -> pressAction(context.getSender(), message.type, message.pressedms)); + context.enqueueWork(() -> pressAction(context.getSender(), message.type)); context.setPacketHandled(true); } - public static void pressAction(Player entity, int type, int pressedms) { - Level world = entity.level(); + public static void pressAction(Player player, int type) { + Level world = player.level(); // security measure to prevent arbitrary chunk generation - if (!world.hasChunkAt(entity.blockPosition())) + if (!world.hasChunkAt(player.blockPosition())) return; if (type == 0) { - PressFireProcedure.execute(entity); - } - if (type == 1) { - ReleaseFireProcedure.execute(entity); + PressFireProcedure.execute(player); + } else if (type == 1) { + player.getPersistentData().putDouble("firing", 0); + player.getPersistentData().putDouble("minifiring", 0); + player.getPersistentData().putDouble("minigunfiring", 0); + player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).ifPresent(capability -> { + capability.bowpullhold = false; + capability.syncPlayerVariables(player); + }); + BowlooseProcedure.execute(player); } } diff --git a/src/main/java/net/mcreator/target/procedures/ReleaseFireProcedure.java b/src/main/java/net/mcreator/target/procedures/ReleaseFireProcedure.java deleted file mode 100644 index 8affcb63f..000000000 --- a/src/main/java/net/mcreator/target/procedures/ReleaseFireProcedure.java +++ /dev/null @@ -1,17 +0,0 @@ -package net.mcreator.target.procedures; - -import net.mcreator.target.network.TargetModVariables; -import net.minecraft.world.entity.player.Player; - -public class ReleaseFireProcedure { - public static void execute(Player player) { - player.getPersistentData().putDouble("firing", 0); - player.getPersistentData().putDouble("minifiring", 0); - player.getPersistentData().putDouble("minigunfiring", 0); - player.getCapability(TargetModVariables.PLAYER_VARIABLES_CAPABILITY, null).ifPresent(capability -> { - capability.bowpullhold = false; - capability.syncPlayerVariables(player); - }); - BowlooseProcedure.execute(player); - } -}