From 2ab2a48f3c1d6001bccf15033dc70d866b29aa3b Mon Sep 17 00:00:00 2001 From: 17146 <1714673995@qq.com> Date: Fri, 6 Jun 2025 23:03:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=86=B7=E6=B1=97=E8=81=94?= =?UTF-8?q?=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 3 +++ .../java/com/atsuishio/superbwarfare/Mod.java | 4 ++++ .../superbwarfare/compat/CompatHolder.java | 1 + .../coldsweat/ColdSweatCompatHandler.java | 21 +++++++++++++++++++ 4 files changed, 29 insertions(+) create mode 100644 src/main/java/com/atsuishio/superbwarfare/compat/coldsweat/ColdSweatCompatHandler.java diff --git a/build.gradle b/build.gradle index f10fa6a54..19570e8ed 100644 --- a/build.gradle +++ b/build.gradle @@ -143,6 +143,9 @@ dependencies { // implementation "curse.maven:cupboard-326652:6078150" // implementation "curse.maven:connectivity-470193:6229173" + // 冷汗 + implementation "curse.maven:cold-sweat-506194:6176789" + // 测试用mod implementation "curse.maven:better-combat-by-daedelus-639842:6532547" implementation "curse.maven:playeranimator-658587:6024462" diff --git a/src/main/java/com/atsuishio/superbwarfare/Mod.java b/src/main/java/com/atsuishio/superbwarfare/Mod.java index 9c31bfedf..3a7a4a41d 100644 --- a/src/main/java/com/atsuishio/superbwarfare/Mod.java +++ b/src/main/java/com/atsuishio/superbwarfare/Mod.java @@ -7,6 +7,7 @@ import com.atsuishio.superbwarfare.client.renderer.molang.MolangVariable; import com.atsuishio.superbwarfare.client.sound.ModSoundInstances; import com.atsuishio.superbwarfare.compat.CompatHolder; import com.atsuishio.superbwarfare.compat.clothconfig.ClothConfigHelper; +import com.atsuishio.superbwarfare.compat.coldsweat.ColdSweatCompatHandler; import com.atsuishio.superbwarfare.component.ModDataComponents; import com.atsuishio.superbwarfare.config.ClientConfig; import com.atsuishio.superbwarfare.config.CommonConfig; @@ -80,6 +81,9 @@ public class Mod { if (FMLEnvironment.dist == Dist.CLIENT) { CompatHolder.hasMod(CompatHolder.CLOTH_CONFIG, ClothConfigHelper::registerScreen); } + if (ColdSweatCompatHandler.hasMod()) { + NeoForge.EVENT_BUS.addListener(ColdSweatCompatHandler::onPlayerInVehicle); + } NeoForge.EVENT_BUS.register(this); } diff --git a/src/main/java/com/atsuishio/superbwarfare/compat/CompatHolder.java b/src/main/java/com/atsuishio/superbwarfare/compat/CompatHolder.java index f65dfc5fc..6744059ab 100644 --- a/src/main/java/com/atsuishio/superbwarfare/compat/CompatHolder.java +++ b/src/main/java/com/atsuishio/superbwarfare/compat/CompatHolder.java @@ -7,6 +7,7 @@ public class CompatHolder { public static final String DMV = "dreamaticvoyage"; public static final String VRC = "virtuarealcraft"; public static final String CLOTH_CONFIG = "cloth_config"; + public static final String COLD_SWEAT = "cold_sweat"; // @ObjectHolder(registryName = "minecraft:mob_effect", value = DMV + ":bleeding") // public static final MobEffect DMV_BLEEDING = null; diff --git a/src/main/java/com/atsuishio/superbwarfare/compat/coldsweat/ColdSweatCompatHandler.java b/src/main/java/com/atsuishio/superbwarfare/compat/coldsweat/ColdSweatCompatHandler.java new file mode 100644 index 000000000..4699a345a --- /dev/null +++ b/src/main/java/com/atsuishio/superbwarfare/compat/coldsweat/ColdSweatCompatHandler.java @@ -0,0 +1,21 @@ +package com.atsuishio.superbwarfare.compat.coldsweat; + +import com.atsuishio.superbwarfare.compat.CompatHolder; +import com.atsuishio.superbwarfare.entity.vehicle.base.ArmedVehicleEntity; +import com.momosoftworks.coldsweat.api.util.Temperature; +import net.neoforged.fml.ModList; +import net.neoforged.neoforge.event.tick.PlayerTickEvent; + +public class ColdSweatCompatHandler { + + public static void onPlayerInVehicle(PlayerTickEvent.Pre event) { + var player = event.getEntity(); + if (player.getVehicle() instanceof ArmedVehicleEntity vehicle && vehicle.hidePassenger(player)) { + Temperature.set(player, Temperature.Trait.WORLD, 1); + } + } + + public static boolean hasMod() { + return ModList.get().isLoaded(CompatHolder.COLD_SWEAT); + } +}