-
-
Notifications
You must be signed in to change notification settings - Fork 275
Description
Overview
Primarily, this serves as a tracker issue. There is a discussion available on our Discord.
Currently, the saving system does not accommodate for various detailed property changes to various properties in Dialogic.
Examples
Any changes made to Layered Portraits won't be saved; any changes made to the Background property won't be saved.
Options
We discussed various approaches to this deficiency:
Overriding _set
We can listen to changes to properties via the _set
method. However, we also need to track for stale data, likely cleaning saved properties on transitional states: Changing displayed characters or backgrounds.
Exposing _set_persistent
A new method that needs to be implemented by Dialogic classes: DialogicBackground
, LayeredPortrait
, and more.
It would internally perform code as such:
func _set_persistent(property: String, value: Variant) -> void:
DialogicUtil.autoload().current_state_info[UNIQUE_OBJECT_NAME][property] = value
Importance
This is a blocker for the release of Dialogic 2 Beta and for Timeline Rollback.