From 5a4ceb68c6980ad1d1ced6e664e8c15b5334615a Mon Sep 17 00:00:00 2001 From: altrisi Date: Thu, 7 Jul 2022 11:45:37 +0200 Subject: [PATCH] Fix language fallbacks for rules not being available early Fixes #1483 --- src/main/java/carpet/api/settings/SettingsManager.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/carpet/api/settings/SettingsManager.java b/src/main/java/carpet/api/settings/SettingsManager.java index c79189b6..9eb9c148 100644 --- a/src/main/java/carpet/api/settings/SettingsManager.java +++ b/src/main/java/carpet/api/settings/SettingsManager.java @@ -174,8 +174,6 @@ public class SettingsManager { */ public void parseSettingsClass(Class settingsClass) { - // In the current translation system languages are not loaded this early. Ensure they are loaded - Translations.updateLanguage(); boolean warned = settingsClass == CarpetSettings.class; // don't warn for ourselves nextRule: for (Field field : settingsClass.getDeclaredFields()) @@ -212,6 +210,10 @@ public class SettingsManager { CarpetRule parsed = ParsedRule.of(field, this); rules.put(parsed.name(), parsed); } + // In the current translation system languages are not loaded this early. Ensure they are loaded + // after we've added fallbacks, else early systems such as the rule printer won't function for + // legacy rules given the validator (that triggers adding fallbacks normally) won't have ran + Translations.updateLanguage(); } /**