Per-project settings are currently set with a custom ControllerSettings class, and a pre-filled resource instance under res://addons/controller_icons/settings.tres. However, it is possible for addons to introduce custom settings in the Project Settings, which would not require any custom solution at all. Several benefits of these are:
- Removing a custom class (may also alleviate C# issues?)
- Easier manipulation of settings in real time (
ProjectSettings.has/get_setting() instead of having to load settings.tres)
- Easier upgrade of the addon without overriding project settings
This change cannot introduce compatibility changes (settings should be migrated seamlessly to the new system), and users should be notified when this occurs.
Per-project settings are currently set with a custom
ControllerSettingsclass, and a pre-filled resource instance underres://addons/controller_icons/settings.tres. However, it is possible for addons to introduce custom settings in the Project Settings, which would not require any custom solution at all. Several benefits of these are:ProjectSettings.has/get_setting()instead of having to loadsettings.tres)This change cannot introduce compatibility changes (settings should be migrated seamlessly to the new system), and users should be notified when this occurs.