mirror of
https://github.com/FalsePattern/FalsePatternLib.git
synced 2026-11-11 19:37:34 +00:00
fixed config gui not saving to disk
This commit is contained in:
1 file changed
+5
-7
+5
-7
@@ -69,6 +69,7 @@ import java.util.function.BiConsumer;
|
||||
@NoArgsConstructor(access = AccessLevel.PRIVATE)
|
||||
public final class ConfigurationManagerImpl {
|
||||
private static final Map<Path, Configuration> configs = new HashMap<>();
|
||||
private static final Map<String, Set<Class<?>>> modConfigs = new HashMap<>();
|
||||
private static final Map<Configuration, Set<Class<?>>> configToClassMap = new HashMap<>();
|
||||
private static final Map<Class<?>, ParsedConfiguration> parsedConfigMap = new HashMap<>();
|
||||
private static final BiMap<String, Class<?>> serializedNames = HashBiMap.create();
|
||||
@@ -82,6 +83,7 @@ public final class ConfigurationManagerImpl {
|
||||
configToClassMap.computeIfAbsent(parsedConfig.rawConfig, (ignored) -> new HashSet<>()).add(configClass);
|
||||
parsedConfigMap.put(configClass, parsedConfig);
|
||||
serializedNames.put(parsedConfig.modid + "$" + parsedConfig.category, configClass);
|
||||
modConfigs.computeIfAbsent(parsedConfig.modid, (x) -> new HashSet<>()).add(configClass);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -286,14 +288,10 @@ public final class ConfigurationManagerImpl {
|
||||
|
||||
public static void onConfigChanged(ConfigChangedEvent.OnConfigChangedEvent event) {
|
||||
init();
|
||||
val rawConfig = configs.get(event.modID);
|
||||
if (rawConfig == null) {
|
||||
val configs = modConfigs.get(event.modID);
|
||||
if (configs == null) {
|
||||
return;
|
||||
}
|
||||
val configClasses = configToClassMap.get(rawConfig);
|
||||
for (val clazz : configClasses) {
|
||||
val config = parsedConfigMap.get(clazz);
|
||||
config.configChanged();
|
||||
}
|
||||
configs.stream().map(parsedConfigMap::get).distinct().forEach(ParsedConfiguration::configChanged);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user