Sync fillLimit rule with the equivalent gamerule

This commit is contained in:
altrisi authored and gnembon committed 2023-03-08 20:52:44 +01:00
1 parent 50470dd59a
commit 4801534229
6 files changed
+50 -53

No files matched your search

+12
View File
@@ -23,6 +23,8 @@ import carpet.helpers.HopperCounter;
import carpet.helpers.TickSpeed;
import carpet.logging.LoggerRegistry;
import carpet.script.CarpetScriptServer;
import carpet.api.settings.CarpetRule;
import carpet.api.settings.InvalidRuleValueException;
import carpet.api.settings.SettingsManager;
import carpet.logging.HUDController;
import carpet.script.external.Carpet;
@@ -104,6 +106,16 @@ public class CarpetServer // static for now - easier to handle all around the co
extensions.forEach(e -> e.onServerLoadedWorlds(minecraftServer));
// initialize scarpet rules after all extensions are loaded
settingsManager.initializeScarpetRules();
// run fillLimit rule migration now that gamerules are available
@SuppressWarnings("unchecked")
CarpetRule<Integer> fillLimit = (CarpetRule<Integer>) settingsManager.getCarpetRule("fillLimit");
try
{
fillLimit.set(minecraftServer.createCommandSourceStack(), fillLimit.value());
} catch (InvalidRuleValueException e)
{
throw new AssertionError();
}
extensions.forEach(e -> {
if (e.extensionSettingsManager() != null)
{