From 83cfabe90832d689ca8e1f070920c22bb1b94688 Mon Sep 17 00:00:00 2001 From: Atsuihsio <842960157@qq.com> Date: Tue, 18 Jun 2024 01:12:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=9D=E8=AF=95=E4=BF=AE=E5=A4=8D=E5=A4=9A?= =?UTF-8?q?=E4=BA=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mcreator/target/client/ClickHandler.java | 23 ++++++++++++++++--- .../message/AdjustMortarAngleMessage.java | 7 ------ .../network/message/AdjustZoomFovMessage.java | 3 --- 3 files changed, 20 insertions(+), 13 deletions(-) diff --git a/src/main/java/net/mcreator/target/client/ClickHandler.java b/src/main/java/net/mcreator/target/client/ClickHandler.java index bb7fe83fb..80c9b566b 100644 --- a/src/main/java/net/mcreator/target/client/ClickHandler.java +++ b/src/main/java/net/mcreator/target/client/ClickHandler.java @@ -2,15 +2,15 @@ package net.mcreator.target.client; import com.mojang.blaze3d.platform.InputConstants; import net.mcreator.target.TargetMod; +import net.mcreator.target.client.gui.RangeHelper; import net.mcreator.target.entity.MortarEntity; import net.mcreator.target.entity.Target1Entity; import net.mcreator.target.entity.TargetEntity; -import net.mcreator.target.init.TargetModKeyMappings; -import net.mcreator.target.init.TargetModMobEffects; -import net.mcreator.target.init.TargetModTags; +import net.mcreator.target.init.*; import net.mcreator.target.item.gun.GunItem; import net.mcreator.target.network.TargetModVariables; import net.mcreator.target.network.message.*; +import net.mcreator.target.tools.SoundTool; import net.mcreator.target.tools.TraceTool; import net.minecraft.client.KeyMapping; import net.minecraft.client.Minecraft; @@ -19,6 +19,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; import net.minecraft.util.Mth; import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.state.BlockState; @@ -122,13 +123,29 @@ public class ClickHandler { if (tag.getDouble("min_zoom") != 0 && tag.getDouble("max_zoom") != 0) { TargetMod.PACKET_HANDLER.sendToServer(new AdjustZoomFovMessage(scroll)); } + + double min_zoom = tag.getDouble("min_zoom") - tag.getDouble("zoom"); + double max_zoom = tag.getDouble("max_zoom") - tag.getDouble("zoom"); + if (tag.getDouble("custom_zoom") > min_zoom && tag.getDouble("custom_zoom") < max_zoom) { + SoundTool.playLocalSound(player, TargetModSounds.ADJUST_FOV.get(), 1f, 0.7f); + } + event.setCanceled(true); } Entity looking = TraceTool.findLookingEntity(player, 6); if (looking == null) return; if (looking instanceof MortarEntity && player.isShiftKeyDown()){ + TargetMod.PACKET_HANDLER.sendToServer(new AdjustMortarAngleMessage(scroll)); + double angle = 0; + var range = -looking.getXRot(); + if (looking instanceof LivingEntity living){ + angle = living.getAttribute(TargetModAttributes.MORTAR_PITCH.get()).getBaseValue(); + } + SoundTool.playLocalSound(player, TargetModSounds.ADJUST_FOV.get(), 1f, 0.7f); + player.displayClientMessage(Component.literal("Angle:" + new java.text.DecimalFormat("##.#").format(angle) + " Range:" + new java.text.DecimalFormat("##.#").format((int) RangeHelper.getRange(range)) + "M"), true); + event.setCanceled(true); } diff --git a/src/main/java/net/mcreator/target/network/message/AdjustMortarAngleMessage.java b/src/main/java/net/mcreator/target/network/message/AdjustMortarAngleMessage.java index cfb489932..b05e089a6 100644 --- a/src/main/java/net/mcreator/target/network/message/AdjustMortarAngleMessage.java +++ b/src/main/java/net/mcreator/target/network/message/AdjustMortarAngleMessage.java @@ -43,17 +43,10 @@ public class AdjustMortarAngleMessage { Entity looking = TraceTool.findLookingEntity(player, 6); if (looking == null) return; - double angle = 0; - if (looking instanceof LivingEntity living){ living.getAttribute(TargetModAttributes.MORTAR_PITCH.get()).setBaseValue(Mth.clamp(living.getAttribute(TargetModAttributes.MORTAR_PITCH.get()).getBaseValue() + message.scroll,20,89)); - angle = living.getAttribute(TargetModAttributes.MORTAR_PITCH.get()).getBaseValue(); } - var range = -looking.getXRot(); - - player.displayClientMessage(Component.literal("Angle:" + new java.text.DecimalFormat("##.#").format(angle) + " Range:" + new java.text.DecimalFormat("##.#").format((int) RangeHelper.getRange(range)) + "M"), true); - SoundTool.playLocalSound(player, TargetModSounds.ADJUST_FOV.get(), 1f, 0.7f); }); context.get().setPacketHandled(true); } diff --git a/src/main/java/net/mcreator/target/network/message/AdjustZoomFovMessage.java b/src/main/java/net/mcreator/target/network/message/AdjustZoomFovMessage.java index 6ec91516a..6a7ba656f 100644 --- a/src/main/java/net/mcreator/target/network/message/AdjustZoomFovMessage.java +++ b/src/main/java/net/mcreator/target/network/message/AdjustZoomFovMessage.java @@ -43,9 +43,6 @@ public class AdjustZoomFovMessage { double min_zoom = tag.getDouble("min_zoom") - tag.getDouble("zoom"); double max_zoom = tag.getDouble("max_zoom") - tag.getDouble("zoom"); tag.putDouble("custom_zoom", Mth.clamp(tag.getDouble("custom_zoom") + 0.5 * message.scroll, min_zoom,max_zoom)); - if (tag.getDouble("custom_zoom") > min_zoom && tag.getDouble("custom_zoom") < max_zoom) { - SoundTool.playLocalSound(player, TargetModSounds.ADJUST_FOV.get(), 1f, 0.7f); - } }); context.get().setPacketHandled(true); }