From 29f421272b5b6df8e5366498ee72cbc8cbcebd20 Mon Sep 17 00:00:00 2001 From: Light_Quanta Date: Sun, 18 May 2025 23:31:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=87=E5=87=86=E5=8C=96=E6=B3=A8=E5=86=8CMo?= =?UTF-8?q?langVariable?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/atsuishio/superbwarfare/Mod.java | 3 ++- .../client/renderer/molang/MolangVariable.java | 8 +++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/atsuishio/superbwarfare/Mod.java b/src/main/java/com/atsuishio/superbwarfare/Mod.java index 2d6aa8e1c..74b3bd711 100644 --- a/src/main/java/com/atsuishio/superbwarfare/Mod.java +++ b/src/main/java/com/atsuishio/superbwarfare/Mod.java @@ -67,11 +67,12 @@ public class Mod { bus.addListener(this::onClientSetup); bus.addListener(FMLCommonSetupEvent.class, event -> onCommonSetup(bus)); - bus.addListener(FMLCommonSetupEvent.class, event -> MolangVariable.register()); bus.addListener(ModItems::registerDispenserBehavior); bus.addListener(NetworkRegistry::register); + MolangVariable.register(); + if (FMLEnvironment.dist == Dist.CLIENT) { CompatHolder.hasMod(CompatHolder.CLOTH_CONFIG, ClothConfigHelper::registerScreen); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/molang/MolangVariable.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/molang/MolangVariable.java index 537c916de..15de8f8a8 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/molang/MolangVariable.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/molang/MolangVariable.java @@ -3,8 +3,14 @@ package com.atsuishio.superbwarfare.client.renderer.molang; import software.bernie.geckolib.loading.math.MathParser; import software.bernie.geckolib.loading.math.value.Variable; +import java.util.function.DoubleSupplier; + public class MolangVariable { public static void register() { - MathParser.registerVariable(new Variable("sbw.system_time", System::currentTimeMillis)); + register("sbw.system_time", System::currentTimeMillis); + } + + private static void register(String name, DoubleSupplier supplier) { + MathParser.registerVariable(new Variable(name, supplier)); } }