Always fire onChange for node even if old and new values may be equal

This commit is contained in:
Ben Woo committed 2025-12-12 11:56:50 +08:00
1 parent 5f9b0af8d1
commit 00944ed3b2
2 files changed
+3 -4

No files matched your search

@@ -179,10 +179,8 @@ public abstract class BaseConfigurationHandle<C extends ConfigurationSection> {
return node.validate(value).map(ignore -> {
T oldValue = get(node);
nodeValueMap.put(node, value);
if (!Objects.equals(oldValue, value)) {
node.onLoadAndChange(sender, oldValue, value);
node.onChange(sender, oldValue, value);
}
node.onLoadAndChange(sender, oldValue, value);
node.onChange(sender, oldValue, value);
return null;
});
}
@@ -61,6 +61,7 @@ final class WorldConfigNodes {
private <T> ConfigNode<T> node(ConfigNode.Builder<T, ?> nodeBuilder) {
nodeBuilder.onChange((oldValue, newValue) -> {
if (Objects.equals(oldValue, newValue)) return;
if (world == null) return;
MVWorldPropertyChangedEvent<?> mvWorldPropertyChangeEvent = new MVWorldPropertyChangedEvent<>(
world,