소스 검색

Code improvements

Lortseam 4 년 전
부모
커밋
f733c91f93

+ 7 - 5
lib/src/main/java/me/lortseam/completeconfig/data/Config.java

@@ -13,8 +13,6 @@ import java.util.*;
 @Log4j2
 @Log4j2
 public final class Config extends BaseCollection {
 public final class Config extends BaseCollection {
 
 
-    public static final String ID = "config";
-
     private static final Map<String, Config> mainConfigs = new HashMap<>();
     private static final Map<String, Config> mainConfigs = new HashMap<>();
     private static final Set<Config> saveOnExitConfigs = new HashSet<>();
     private static final Set<Config> saveOnExitConfigs = new HashSet<>();
 
 
@@ -52,15 +50,19 @@ public final class Config extends BaseCollection {
 
 
     @Override
     @Override
     public String getID() {
     public String getID() {
-        return ID;
+        return String.valueOf(source.hashCode());
     }
     }
 
 
     public ModMetadata getMod() {
     public ModMetadata getMod() {
         return FabricLoader.getInstance().getModContainer(source.getModID()).get().getMetadata();
         return FabricLoader.getInstance().getModContainer(source.getModID()).get().getMetadata();
     }
     }
 
 
-    public TranslationIdentifier getTranslation() {
-        return translation.append(source.getBranch());
+    public TranslationIdentifier getTranslation(boolean includeBranch) {
+        if (includeBranch) {
+            return translation.append(source.getBranch());
+        } else {
+            return translation;
+        }
     }
     }
 
 
     private void load() {
     private void load() {

+ 1 - 2
lib/src/main/java/me/lortseam/completeconfig/data/text/TranslationIdentifier.java

@@ -1,6 +1,5 @@
 package me.lortseam.completeconfig.data.text;
 package me.lortseam.completeconfig.data.text;
 
 
-import me.lortseam.completeconfig.data.Config;
 import me.lortseam.completeconfig.io.ConfigSource;
 import me.lortseam.completeconfig.io.ConfigSource;
 import net.minecraft.client.resource.language.I18n;
 import net.minecraft.client.resource.language.I18n;
 import net.minecraft.text.Text;
 import net.minecraft.text.Text;
@@ -16,7 +15,7 @@ import java.util.regex.Pattern;
 public final class TranslationIdentifier {
 public final class TranslationIdentifier {
 
 
     public static TranslationIdentifier from(ConfigSource source) {
     public static TranslationIdentifier from(ConfigSource source) {
-        return new TranslationIdentifier(Config.ID + "." + source.getModID());
+        return new TranslationIdentifier("config." + source.getModID());
     }
     }
 
 
     private final String modKey;
     private final String modKey;

+ 2 - 2
lib/src/main/java/me/lortseam/completeconfig/gui/ConfigScreenBuilder.java

@@ -13,11 +13,11 @@ public abstract class ConfigScreenBuilder {
 
 
     private static final Map<String, ConfigScreenBuilder> mainBuilders = new HashMap<>();
     private static final Map<String, ConfigScreenBuilder> mainBuilders = new HashMap<>();
 
 
-    public static void setMainBuilder(String modID, ConfigScreenBuilder screenBuilder) {
+    public static void setMain(String modID, ConfigScreenBuilder screenBuilder) {
         mainBuilders.put(modID, screenBuilder);
         mainBuilders.put(modID, screenBuilder);
     }
     }
 
 
-    public static Optional<ConfigScreenBuilder> getMainBuilder(String modID) {
+    public static Optional<ConfigScreenBuilder> getMain(String modID) {
         return Optional.ofNullable(mainBuilders.get(modID));
         return Optional.ofNullable(mainBuilders.get(modID));
     }
     }
 
 

+ 1 - 1
lib/src/main/java/me/lortseam/completeconfig/gui/ModMenuIntegration.java

@@ -15,7 +15,7 @@ public final class ModMenuIntegration implements ModMenuApi {
     @Override
     @Override
     public Map<String, ConfigScreenFactory<?>> getProvidedConfigScreenFactories() {
     public Map<String, ConfigScreenFactory<?>> getProvidedConfigScreenFactories() {
         return Maps.transformValues(Config.getMainConfigs(), config -> parentScreen -> {
         return Maps.transformValues(Config.getMainConfigs(), config -> parentScreen -> {
-            return ConfigScreenBuilder.getMainBuilder(config.getMod().getId()).orElse(defaultScreenBuilder).build(parentScreen, config);
+            return ConfigScreenBuilder.getMain(config.getMod().getId()).orElse(defaultScreenBuilder).build(parentScreen, config);
         });
         });
     }
     }
 
 

+ 1 - 1
lib/src/main/java/me/lortseam/completeconfig/gui/cloth/ClothConfigScreenBuilder.java

@@ -45,7 +45,7 @@ public final class ClothConfigScreenBuilder extends ConfigScreenBuilder {
         ConfigBuilder builder = supplier.get()
         ConfigBuilder builder = supplier.get()
                 .setParentScreen(parentScreen)
                 .setParentScreen(parentScreen)
                 .setSavingRunnable(config::save);
                 .setSavingRunnable(config::save);
-        TranslationIdentifier customTitle = config.getTranslation().append("title");
+        TranslationIdentifier customTitle = config.getTranslation(true).append("title");
         builder.setTitle(customTitle.exists() ? customTitle.toText() : new TranslatableText("completeconfig.gui.defaultTitle", config.getMod().getName()));
         builder.setTitle(customTitle.exists() ? customTitle.toText() : new TranslatableText("completeconfig.gui.defaultTitle", config.getMod().getName()));
         if (!config.getEntries().isEmpty()) {
         if (!config.getEntries().isEmpty()) {
             ConfigCategory category = builder.getOrCreateCategory(config.getText());
             ConfigCategory category = builder.getOrCreateCategory(config.getText());