diff --git a/src/main/java/com/atsuishio/superbwarfare/network/message/AdjustZoomFovMessage.java b/src/main/java/com/atsuishio/superbwarfare/network/message/AdjustZoomFovMessage.java index fcd44895b..570ad7a9f 100644 --- a/src/main/java/com/atsuishio/superbwarfare/network/message/AdjustZoomFovMessage.java +++ b/src/main/java/com/atsuishio/superbwarfare/network/message/AdjustZoomFovMessage.java @@ -65,10 +65,10 @@ public class AdjustZoomFovMessage { SoundTool.playLocalSound(player, ModSounds.ADJUST_FOV.get(), 1f, 0.7f); } } else { - double min_zoom = tag.getDouble("MinZoom") - 1.25; - double max_zoom = tag.getDouble("MaxZoom") - 1.25; - tag.putDouble("CustomZoom", Mth.clamp(tag.getDouble("CustomZoom") + 0.5 * message.scroll, min_zoom, max_zoom)); - if (tag.getDouble("CustomZoom") > min_zoom && tag.getDouble("CustomZoom") < max_zoom) { + double minZoom = GunsTool.getGunDoubleTag(stack, "MinZoom", 0) - 1.25; + double maxZoom = GunsTool.getGunDoubleTag(stack, "MaxZoom", 0) - 1.25; + tag.putDouble("CustomZoom", Mth.clamp(tag.getDouble("CustomZoom") + 0.5 * message.scroll, minZoom, maxZoom)); + if (tag.getDouble("CustomZoom") > minZoom && tag.getDouble("CustomZoom") < maxZoom) { SoundTool.playLocalSound(player, ModSounds.ADJUST_FOV.get(), 1f, 0.7f); } } diff --git a/src/main/java/com/atsuishio/superbwarfare/tools/GunsTool.java b/src/main/java/com/atsuishio/superbwarfare/tools/GunsTool.java index dcad3bd97..04d218348 100644 --- a/src/main/java/com/atsuishio/superbwarfare/tools/GunsTool.java +++ b/src/main/java/com/atsuishio/superbwarfare/tools/GunsTool.java @@ -56,7 +56,7 @@ public class GunsTool { // TODO 临时使用,移植完毕后删除 private static final Set STRING_SET = Set.of("EmptyReloadTime", "FireMode", "Weight", "SoundRadius", "BurstSize", "ProjectileAmount", "Spread", "NormalReloadTime", "Headshot", "Semi", "Burst", "Auto", "RecoilX", "RecoilY", "Velocity", "Damage", "BypassesArmor", - "RPM", "Magazine"); + "RPM", "Magazine", "MinZoom", "MaxZoom"); public static void initGun(Level level, ItemStack stack, String location) { if (level.getServer() == null) return;