diff --git a/src/main/java/me/kawaiizenbo/moonlight/Config.java b/src/main/java/me/kawaiizenbo/moonlight/Config.java index 3b7c8bd..87650ec 100644 --- a/src/main/java/me/kawaiizenbo/moonlight/Config.java +++ b/src/main/java/me/kawaiizenbo/moonlight/Config.java @@ -6,17 +6,23 @@ import java.nio.file.Files; import java.util.HashMap; import java.util.Map; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import com.google.gson.Gson; import me.kawaiizenbo.moonlight.module.Category; import me.kawaiizenbo.moonlight.module.ModuleManager; import me.kawaiizenbo.moonlight.module.Module_; +import me.kawaiizenbo.moonlight.module.settings.BooleanSetting; +import me.kawaiizenbo.moonlight.module.settings.DoubleSetting; import me.kawaiizenbo.moonlight.module.settings.Setting; import me.kawaiizenbo.moonlight.ui.clickgui.ClickGUIScreen; import net.minecraft.client.MinecraftClient; public class Config { + public static final Logger LOGGER = LoggerFactory.getLogger("mcfg"); MinecraftClient mc = MinecraftClient.getInstance(); public File configDir = new File(mc.runDirectory.getPath() + "/moonlight"); public File configFile = new File(configDir, "config.json"); @@ -41,10 +47,19 @@ public class Config { Map mo = new HashMap<>(); mo.put("enabled", m.enabled); + Map ms = new HashMap<>(); for (Setting s : m.settings) { - mo.put(s.name, s.value); + if (s instanceof BooleanSetting) + { + ms.put(s.name, ((BooleanSetting)s).value); + } + else if (s instanceof DoubleSetting) + { + ms.put(s.name, ((DoubleSetting)s).value); + } } + mo.put("settings", ms); mi.put(m.name, mo); } config.put("modules", mi); diff --git a/src/main/java/me/kawaiizenbo/moonlight/Moonlight.java b/src/main/java/me/kawaiizenbo/moonlight/Moonlight.java index 0834fa1..851cfb7 100644 --- a/src/main/java/me/kawaiizenbo/moonlight/Moonlight.java +++ b/src/main/java/me/kawaiizenbo/moonlight/Moonlight.java @@ -10,6 +10,8 @@ import org.slf4j.LoggerFactory; import me.kawaiizenbo.moonlight.module.ModuleManager; import me.kawaiizenbo.moonlight.module.Module_; +import me.kawaiizenbo.moonlight.module.settings.BooleanSetting; +import me.kawaiizenbo.moonlight.module.settings.DoubleSetting; import me.kawaiizenbo.moonlight.module.settings.Setting; import me.kawaiizenbo.moonlight.ui.clickgui.CategoryPane; import me.kawaiizenbo.moonlight.ui.clickgui.ClickGUIScreen; @@ -44,9 +46,22 @@ public class Moonlight implements ModInitializer for (Module_ m : ModuleManager.INSTANCE.modules) { m.enabled = (boolean)((Map)((Map)CONFIG.config.get("modules")).get(m.name)).get("enabled"); + if (m.enabled) + { + //m.onEnable(); + /// brocken :( + } for (Setting s : m.settings) { - s.value = ((Map)((Map)CONFIG.config.get("modules")).get(m.name)).get(s.name); + if (s instanceof BooleanSetting) + { + ((BooleanSetting)s).value = (boolean)((Map)((Map)((Map)CONFIG.config.get("modules")).get(m.name)).get("settings")).get(s.name); + } + else if (s instanceof DoubleSetting) + { + ((DoubleSetting)s).value = (Double)((Map)((Map)((Map)CONFIG.config.get("modules")).get(m.name)).get("settings")).get(s.name); + + } } } } @@ -59,10 +74,19 @@ public class Moonlight implements ModInitializer { Map mo = new HashMap<>(); mo.put("enabled", m.enabled); + Map ms = new HashMap<>(); for (Setting s : m.settings) { - mo.put(s.name, s.value); + if (s instanceof BooleanSetting) + { + ms.put(s.name, ((BooleanSetting)s).value); + } + else if (s instanceof DoubleSetting) + { + ms.put(s.name, ((DoubleSetting)s).value); + } } + mo.put("settings", ms); mi.put(m.name, mo); } CONFIG.config.put("modules", mi); diff --git a/src/main/java/me/kawaiizenbo/moonlight/module/settings/Setting.java b/src/main/java/me/kawaiizenbo/moonlight/module/settings/Setting.java index 5df5c5a..dba3a57 100644 --- a/src/main/java/me/kawaiizenbo/moonlight/module/settings/Setting.java +++ b/src/main/java/me/kawaiizenbo/moonlight/module/settings/Setting.java @@ -7,7 +7,6 @@ public class Setting { public String name; public int height = 24; - public Object value; int x = 0, y = 0; public void render(DrawContext drawContext, int x, int y, int mouseX, int mouseY, TextRenderer textRenderer)