[ci skip] only set default world config values once

this stops migrated values under "default" from being overwritten when migrating world-specific config values
This commit is contained in:
granny
2025-05-01 21:09:13 -07:00
parent 93011bc195
commit c2f485914e

View File

@@ -49,8 +49,10 @@ public class PurpurWorldConfig {
}
private void set(String path, Object val) {
PurpurConfig.config.addDefault("world-settings.default." + path, val);
PurpurConfig.config.set("world-settings.default." + path, val);
if (PurpurConfig.config.get("world-settings.default." + path) == null || val == null) {
PurpurConfig.config.addDefault("world-settings.default." + path, val);
PurpurConfig.config.set("world-settings.default." + path, val);
}
if (PurpurConfig.config.get("world-settings." + worldName + "." + path) != null) {
PurpurConfig.config.addDefault("world-settings." + worldName + "." + path, val);
PurpurConfig.config.set("world-settings." + worldName + "." + path, val);
@@ -63,12 +65,16 @@ public class PurpurWorldConfig {
}
private String getString(String path, String def) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
if (PurpurConfig.config.get("world-settings.default." + path) == null) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
}
return PurpurConfig.config.getString("world-settings." + worldName + "." + path, PurpurConfig.config.getString("world-settings.default." + path));
}
private boolean getBoolean(String path, boolean def) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
if (PurpurConfig.config.get("world-settings.default." + path) == null) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
}
return PurpurConfig.config.getBoolean("world-settings." + worldName + "." + path, PurpurConfig.config.getBoolean("world-settings.default." + path));
}
@@ -79,17 +85,23 @@ public class PurpurWorldConfig {
}
private double getDouble(String path, double def) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
if (PurpurConfig.config.get("world-settings.default." + path) == null) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
}
return PurpurConfig.config.getDouble("world-settings." + worldName + "." + path, PurpurConfig.config.getDouble("world-settings.default." + path));
}
private int getInt(String path, int def) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
if (PurpurConfig.config.get("world-settings.default." + path) == null) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
}
return PurpurConfig.config.getInt("world-settings." + worldName + "." + path, PurpurConfig.config.getInt("world-settings.default." + path));
}
private <T> List<?> getList(String path, T def) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
if (PurpurConfig.config.get("world-settings.default." + path) == null) {
PurpurConfig.config.addDefault("world-settings.default." + path, def);
}
return PurpurConfig.config.getList("world-settings." + worldName + "." + path, PurpurConfig.config.getList("world-settings.default." + path));
}