Files
SpaceBots/addons/netfox.internals/plugin.gd

35 lines
883 B
GDScript3
Raw Normal View History

2026-01-21 23:51:53 +01:00
@tool
extends EditorPlugin
var SETTINGS = [
_NetfoxLogger.make_setting("netfox/logging/log_level")
]
func _enter_tree():
for setting in SETTINGS:
add_setting(setting)
func _exit_tree():
if ProjectSettings.get_setting("netfox/general/clear_settings", false):
for setting in SETTINGS:
remove_setting(setting)
func add_setting(setting: Dictionary):
if ProjectSettings.has_setting(setting.name):
return
ProjectSettings.set_setting(setting.name, setting.value)
ProjectSettings.set_initial_value(setting.name, setting.value)
ProjectSettings.add_property_info({
"name": setting.get("name"),
"type": setting.get("type"),
"hint": setting.get("hint", PROPERTY_HINT_NONE),
"hint_string": setting.get("hint_string", "")
})
func remove_setting(setting: Dictionary):
if not ProjectSettings.has_setting(setting.name):
return
ProjectSettings.clear(setting.name)