diff --git a/src/main/java/dev/micle/firefly_bush_backport/config/Config.java b/src/main/java/dev/micle/firefly_bush_backport/config/Config.java index 3ec34fa..1c46794 100644 --- a/src/main/java/dev/micle/firefly_bush_backport/config/Config.java +++ b/src/main/java/dev/micle/firefly_bush_backport/config/Config.java @@ -1,45 +1,43 @@ package dev.micle.firefly_bush_backport.config; -import dev.micle.firefly_bush_backport.FireflyBushBackport; import net.minecraft.util.random.SimpleWeightedRandomList; import net.minecraft.world.level.Level; -import net.minecraftforge.common.ForgeConfigSpec; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.config.ModConfig; -import net.minecraftforge.fml.event.config.ModConfigEvent; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.fml.ModContainer; +import net.neoforged.fml.config.ModConfig; +import net.neoforged.fml.event.config.ModConfigEvent; +import net.neoforged.neoforge.common.ModConfigSpec; import org.apache.commons.lang3.tuple.Pair; import java.awt.*; import java.util.List; -@Mod.EventBusSubscriber(modid = FireflyBushBackport.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD) public final class Config { public static final Client CLIENT; - public static final ForgeConfigSpec CLIENT_SPEC; + public static final ModConfigSpec CLIENT_SPEC; public static final Common COMMON; - public static final ForgeConfigSpec COMMON_SPEC; + public static final ModConfigSpec COMMON_SPEC; public static final Server SERVER; - public static final ForgeConfigSpec SERVER_SPEC; + public static final ModConfigSpec SERVER_SPEC; static { - Pair clientSpecPair = new ForgeConfigSpec.Builder().configure(Client::new); + Pair clientSpecPair = new ModConfigSpec.Builder().configure(Client::new); CLIENT = clientSpecPair.getLeft(); CLIENT_SPEC = clientSpecPair.getRight(); - Pair commonSpecPair = new ForgeConfigSpec.Builder().configure(Common::new); + Pair commonSpecPair = new ModConfigSpec.Builder().configure(Common::new); COMMON = commonSpecPair.getLeft(); COMMON_SPEC = commonSpecPair.getRight(); - Pair serverSpecPair = new ForgeConfigSpec.Builder().configure(Server::new); + Pair serverSpecPair = new ModConfigSpec.Builder().configure(Server::new); SERVER = serverSpecPair.getLeft(); SERVER_SPEC = serverSpecPair.getRight(); } - public static void register() { - FireflyBushBackport.getFMLJavaModLoadingContext().registerConfig(ModConfig.Type.CLIENT, CLIENT_SPEC); - FireflyBushBackport.getFMLJavaModLoadingContext().registerConfig(ModConfig.Type.COMMON, COMMON_SPEC); - FireflyBushBackport.getFMLJavaModLoadingContext().registerConfig(ModConfig.Type.SERVER, SERVER_SPEC); + public static void register(ModContainer modContainer) { + modContainer.registerConfig(ModConfig.Type.CLIENT, CLIENT_SPEC); + modContainer.registerConfig(ModConfig.Type.COMMON, COMMON_SPEC); + modContainer.registerConfig(ModConfig.Type.SERVER, SERVER_SPEC); } @SubscribeEvent @@ -54,29 +52,29 @@ public final class Config { } public static class Client { - public static ForgeConfigSpec.DoubleValue bushFireflyChancePerTick; - public static ForgeConfigSpec.DoubleValue bushFireflyHorizontalRange; - public static ForgeConfigSpec.DoubleValue bushFireflyVerticalRange; - public static ForgeConfigSpec.IntValue bushFireflySpawnMaxBrightnessLevel; - public static ForgeConfigSpec.IntValue bushFireflyAmbientSoundChanceOneIn; + public static ModConfigSpec.DoubleValue bushFireflyChancePerTick; + public static ModConfigSpec.DoubleValue bushFireflyHorizontalRange; + public static ModConfigSpec.DoubleValue bushFireflyVerticalRange; + public static ModConfigSpec.IntValue bushFireflySpawnMaxBrightnessLevel; + public static ModConfigSpec.IntValue bushFireflyAmbientSoundChanceOneIn; - public static ForgeConfigSpec.BooleanValue bushExtraAlwaysPlayAmbientSound; - public static ForgeConfigSpec.BooleanValue bushExtraAlwaysSpawnParticles; + public static ModConfigSpec.BooleanValue bushExtraAlwaysPlayAmbientSound; + public static ModConfigSpec.BooleanValue bushExtraAlwaysSpawnParticles; - public static ForgeConfigSpec.DoubleValue particleFadeOutLightTime; - public static ForgeConfigSpec.DoubleValue particleFadeInLightTime; - public static ForgeConfigSpec.DoubleValue particleFadeOutAlphaTime; - public static ForgeConfigSpec.DoubleValue particleFadeInAlphaTime; - public static ForgeConfigSpec.IntValue particleMinLifetime; - public static ForgeConfigSpec.IntValue particleMaxLifetime; + public static ModConfigSpec.DoubleValue particleFadeOutLightTime; + public static ModConfigSpec.DoubleValue particleFadeInLightTime; + public static ModConfigSpec.DoubleValue particleFadeOutAlphaTime; + public static ModConfigSpec.DoubleValue particleFadeInAlphaTime; + public static ModConfigSpec.IntValue particleMinLifetime; + public static ModConfigSpec.IntValue particleMaxLifetime; - public static ForgeConfigSpec.DoubleValue particleExtraFriction; - public static ForgeConfigSpec.DoubleValue particleExtraScale; - public static ForgeConfigSpec.DoubleValue particleExtraBrightness; - private static ForgeConfigSpec.ConfigValue> particleExtraColors; + public static ModConfigSpec.DoubleValue particleExtraFriction; + public static ModConfigSpec.DoubleValue particleExtraScale; + public static ModConfigSpec.DoubleValue particleExtraBrightness; + private static ModConfigSpec.ConfigValue> particleExtraColors; public static SimpleWeightedRandomList particleExtraColorsWeightedList; - Client(ForgeConfigSpec.Builder builder) { + Client(ModConfigSpec.Builder builder) { builder.comment("Settings for the firefly bush.").push("bush"); bushFireflyChancePerTick = builder .defineInRange("bushFireflyChancePerTick", 0.7, 0, 1); @@ -120,7 +118,7 @@ public final class Config { .defineInRange("particleExtraBrightness", 255.0, 0, 255); particleExtraColors = builder .comment("List of color hex values and their weight. Format: ','") - .defineList("particleExtraColors", List.of("#ffffff,1"), Client::isValidColorEntry); + .defineList("particleExtraColors", List.of(getDefaultColorEntry()), Client::getDefaultColorEntry, Client::isValidColorEntry); builder.pop(); builder.pop(); } @@ -137,16 +135,20 @@ public final class Config { private static boolean isValidColorEntry(Object entry) { return entry instanceof String && ((String) entry).matches("#\\w{6},\\d+$"); } + + private static String getDefaultColorEntry() { + return "#ffffff,1"; + } } public static class Common { - Common(ForgeConfigSpec.Builder builder) {} + Common(ModConfigSpec.Builder builder) {} private static void onConfigReload() {} } public static class Server { - Server(ForgeConfigSpec.Builder builder) {} + Server(ModConfigSpec.Builder builder) {} private static void onConfigReload() {} }