From d39e746c73dcdfdd83a8f079f2bf256e1b479400 Mon Sep 17 00:00:00 2001 From: FalsePattern <30945458+FalsePattern@users.noreply.github.com> Date: Mon, 25 Jul 2022 00:07:49 +0200 Subject: [PATCH] config manager bugfixes --- .../internal/impl/config/ConfigurationManagerImpl.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main/java/com/falsepattern/lib/internal/impl/config/ConfigurationManagerImpl.java b/src/main/java/com/falsepattern/lib/internal/impl/config/ConfigurationManagerImpl.java index dbb889a..5ced94d 100644 --- a/src/main/java/com/falsepattern/lib/internal/impl/config/ConfigurationManagerImpl.java +++ b/src/main/java/com/falsepattern/lib/internal/impl/config/ConfigurationManagerImpl.java @@ -34,6 +34,8 @@ import java.util.stream.Collectors; /** * The actual implementation of ConfigurationManager. Migrated stuff here so that we don't unnecessarily expose * internal-use functionality. + * + * Do not read if you value your sanity. */ @NoArgsConstructor(access = AccessLevel.PRIVATE) public class ConfigurationManagerImpl { @@ -95,6 +97,12 @@ public class ConfigurationManagerImpl { throws IllegalAccessException, NoSuchMethodException, InvocationTargetException, NoSuchFieldException, ConfigException { val cat = rawConfig.getCategory(category); + if (configClass.isAnnotationPresent(Config.RequiresWorldRestart.class)) { + cat.setRequiresWorldRestart(true); + } + if (configClass.isAssignableFrom(Config.RequiresMcRestart.class)) { + cat.setRequiresMcRestart(true); + } for (val field : configClass.getDeclaredFields()) { if (field.getAnnotation(Config.Ignore.class) != null) { continue;