From c805d03630592e72c228e1cd6bc6f2c294dcfdf5 Mon Sep 17 00:00:00 2001 From: Motschen Date: Tue, 7 Jun 2022 21:11:13 +0200 Subject: [PATCH] MidnightLib 0.4.4 - Some more fixes --- gradle.properties | 2 +- .../java/eu/midnightdust/core/MidnightLibClient.java | 7 +++++-- .../core/screen/MidnightConfigOverviewScreen.java | 8 ++++++-- .../java/eu/midnightdust/lib/config/AutoModMenu.java | 9 ++------- 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/gradle.properties b/gradle.properties index 797f479..33faaba 100755 --- a/gradle.properties +++ b/gradle.properties @@ -8,7 +8,7 @@ org.gradle.jvmargs=-Xmx1G loader_version=0.11.7 # Mod Properties - mod_version = 0.4.3 + mod_version = 0.4.4 maven_group = eu.midnightdust archives_base_name = midnightlib diff --git a/src/main/java/eu/midnightdust/core/MidnightLibClient.java b/src/main/java/eu/midnightdust/core/MidnightLibClient.java index 3027f3d..6cdeb61 100755 --- a/src/main/java/eu/midnightdust/core/MidnightLibClient.java +++ b/src/main/java/eu/midnightdust/core/MidnightLibClient.java @@ -3,21 +3,24 @@ import eu.midnightdust.core.config.MidnightLibConfig; import eu.midnightdust.hats.web.HatLoader; import eu.midnightdust.hats.witch.WitchHatFeatureRenderer; -import eu.midnightdust.lib.config.AutoModMenu; import eu.midnightdust.lib.config.MidnightConfig; import eu.midnightdust.lib.util.MidnightColorUtil; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; import net.fabricmc.fabric.api.client.rendering.v1.EntityModelLayerRegistry; +import java.util.ArrayList; +import java.util.List; + public class MidnightLibClient implements ClientModInitializer { + public static List hiddenMods = new ArrayList<>(); public static final String MOD_ID = "midnightlib"; @Override public void onInitializeClient() { MidnightConfig.init("midnightlib", MidnightLibConfig.class); - AutoModMenu.hideFromModMenu("puzzle"); + if (hiddenMods.contains("puzzle")) hiddenMods.add("puzzle"); EntityModelLayerRegistry.registerModelLayer(WitchHatFeatureRenderer.WITCH_HAT_MODEL_LAYER, WitchHatFeatureRenderer::getTexturedModelData); if (MidnightLibConfig.special_hats) HatLoader.init(); diff --git a/src/main/java/eu/midnightdust/core/screen/MidnightConfigOverviewScreen.java b/src/main/java/eu/midnightdust/core/screen/MidnightConfigOverviewScreen.java index df70d19..a8a2946 100755 --- a/src/main/java/eu/midnightdust/core/screen/MidnightConfigOverviewScreen.java +++ b/src/main/java/eu/midnightdust/core/screen/MidnightConfigOverviewScreen.java @@ -1,5 +1,6 @@ package eu.midnightdust.core.screen; +import eu.midnightdust.core.MidnightLibClient; import eu.midnightdust.lib.config.MidnightConfig; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; @@ -31,9 +32,12 @@ protected void init() { this.list = new MidnightOverviewListWidget(this.client, this.width, this.height, 32, this.height - 32, 25); if (this.client != null && this.client.world != null) this.list.setRenderBackground(false); this.addSelectableChild(this.list); - MidnightConfig.configClass.forEach((modid, configClass) -> + MidnightConfig.configClass.forEach((modid, configClass) -> { + if (!MidnightLibClient.hiddenMods.contains(modid)) { list.addButton(new ButtonWidget(this.width / 2 - 100, this.height - 28, 200, 20, new TranslatableText(modid +".midnightconfig.title"), (button) -> - Objects.requireNonNull(client).setScreen(MidnightConfig.getScreen(this,modid))))); + Objects.requireNonNull(client).setScreen(MidnightConfig.getScreen(this,modid)))); + } + }); super.init(); } @Override diff --git a/src/main/java/eu/midnightdust/lib/config/AutoModMenu.java b/src/main/java/eu/midnightdust/lib/config/AutoModMenu.java index 4dc1745..6b5fcc5 100755 --- a/src/main/java/eu/midnightdust/lib/config/AutoModMenu.java +++ b/src/main/java/eu/midnightdust/lib/config/AutoModMenu.java @@ -2,15 +2,13 @@ import com.terraformersmc.modmenu.api.ConfigScreenFactory; import com.terraformersmc.modmenu.api.ModMenuApi; +import eu.midnightdust.core.MidnightLibClient; import eu.midnightdust.core.config.MidnightLibConfig; -import java.util.ArrayList; import java.util.HashMap; -import java.util.List; import java.util.Map; public class AutoModMenu implements ModMenuApi { - private static List hiddenMods = new ArrayList<>(); @Override public ConfigScreenFactory getModConfigScreenFactory() { @@ -21,13 +19,10 @@ public ConfigScreenFactory getModConfigScreenFactory() { public Map> getProvidedConfigScreenFactories() { HashMap> map = new HashMap<>(); MidnightConfig.configClass.forEach((modid, cClass) -> { - if (!hiddenMods.contains(modid)) + if (!MidnightLibClient.hiddenMods.contains(modid)) map.put(modid, parent -> MidnightConfig.getScreen(parent, modid)); } ); return map; } - public static void hideFromModMenu(String hiddenMod) { - hiddenMods.add(hiddenMod); - } }