Bladeren bron

Improve default GUI builder

Lortseam 4 jaren geleden
bovenliggende
commit
833c9ab875

+ 1 - 1
src/main/java/me/lortseam/completeconfig/ConfigHandler.java

@@ -44,7 +44,7 @@ public final class ConfigHandler {
     public Screen buildScreen(Screen parentScreen) {
         if (guiBuilder == null) {
             if (GuiBuilder.DEFAULT != null) {
-                guiBuilder = GuiBuilder.DEFAULT;
+                guiBuilder = GuiBuilder.DEFAULT.get();
             } else {
                 throw new UnsupportedOperationException("No GUI builder provided");
             }

+ 3 - 1
src/main/java/me/lortseam/completeconfig/gui/GuiBuilder.java

@@ -7,10 +7,12 @@ import net.fabricmc.api.Environment;
 import net.fabricmc.loader.api.FabricLoader;
 import net.minecraft.client.gui.screen.Screen;
 
+import java.util.function.Supplier;
+
 public interface GuiBuilder {
 
     @Environment(EnvType.CLIENT)
-    GuiBuilder DEFAULT = FabricLoader.getInstance().isModLoaded("cloth-config2") ? new ClothGuiBuilder() : null;
+    Supplier<GuiBuilder> DEFAULT = FabricLoader.getInstance().isModLoaded("cloth-config2") ? ClothGuiBuilder::new : null;
 
     @Environment(EnvType.CLIENT)
     Screen buildScreen(Screen parentScreen, Config config, Runnable savingRunnable);