diff --git a/addons/escoria-core/game/core-scripts/esc/esc_globals_manager.gd b/addons/escoria-core/game/core-scripts/esc/esc_globals_manager.gd index 5aed8e65..df0e2068 100644 --- a/addons/escoria-core/game/core-scripts/esc/esc_globals_manager.gd +++ b/addons/escoria-core/game/core-scripts/esc/esc_globals_manager.gd @@ -41,11 +41,12 @@ func register_reserved_global(key: String, value = null) -> void: "Global key %s is already registered as reserved" % key ] ) + var old_value = _globals[key] _reserved_globals[key] = value _globals[key] = value if value != null: - emit_signal("global_changed", key, _globals[key], value) + emit_signal("global_changed", key, old_value, _globals[key]) # Get the current value of a global @@ -91,8 +92,9 @@ func set_global(key: String, value, ignore_reserved: bool = false) -> void: "Global key %s is reserved and can not be overridden" % key ] ) - _globals[key] = value emit_signal("global_changed", key, _globals[key], value) + _globals[key] = value + # Set all globals that match the pattern to the value