[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) { private void set(String path, Object val) {
PurpurConfig.config.addDefault("world-settings.default." + path, val); if (PurpurConfig.config.get("world-settings.default." + path) == null || val == null) {
PurpurConfig.config.set("world-settings.default." + path, val); 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) { if (PurpurConfig.config.get("world-settings." + worldName + "." + path) != null) {
PurpurConfig.config.addDefault("world-settings." + worldName + "." + path, val); PurpurConfig.config.addDefault("world-settings." + worldName + "." + path, val);
PurpurConfig.config.set("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) { 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)); return PurpurConfig.config.getString("world-settings." + worldName + "." + path, PurpurConfig.config.getString("world-settings.default." + path));
} }
private boolean getBoolean(String path, boolean def) { 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)); 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) { 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)); return PurpurConfig.config.getDouble("world-settings." + worldName + "." + path, PurpurConfig.config.getDouble("world-settings.default." + path));
} }
private int getInt(String path, int def) { 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)); return PurpurConfig.config.getInt("world-settings." + worldName + "." + path, PurpurConfig.config.getInt("world-settings.default." + path));
} }
private <T> List<?> getList(String path, T def) { 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)); return PurpurConfig.config.getList("world-settings." + worldName + "." + path, PurpurConfig.config.getList("world-settings.default." + path));
} }