Files
project-vivi/addons/debug_menu/plugin.gd
T
2026-09-19 10:06:28 -04:00

51 lines
1.8 KiB
GDScript

@tool
extends EditorPlugin
func _enter_tree() -> void:
if not ProjectSettings.has_setting("autoload/DebugMenu"):
add_autoload_singleton("DebugMenu", "res://addons/debug_menu/debug_menu.tscn")
if not ProjectSettings.has_setting("application/config/version") or ProjectSettings.get_setting("application/config/version") == "":
ProjectSettings.set_setting("application/config/version", "1.0.0")
print('Debug Menu: Setting "application/config/version" was missing or empty and has been set to "1.0.0".')
ProjectSettings.add_property_info({
name = "application/config/version",
type = TYPE_STRING,
})
ProjectSettings.save()
# Add new Project Setting for font_size
if not ProjectSettings.has_setting("DebugMenu/settings/font_size"):
ProjectSettings.set_setting("DebugMenu/settings/font_size", 12)
var property_info = {
"name": "DebugMenu/settings/font_size",
"type": TYPE_INT,
"hint": PROPERTY_HINT_RANGE,
"hint_string" : "3,72"
}
ProjectSettings.add_property_info(property_info)
ProjectSettings.set_initial_value("DebugMenu/settings/font_size", 12)
ProjectSettings.save()
# Add new Project Setting for startup visibility
if not ProjectSettings.has_setting("DebugMenu/settings/startup_visibility"):
ProjectSettings.set_setting("DebugMenu/settings/startup_visibility", 0)
property_info = {
"name": "DebugMenu/settings/startup_visibility",
"type": TYPE_INT ,
"hint": PROPERTY_HINT_ENUM,
"hint_string" : "hidden,visible compact,visible detailed"
}
ProjectSettings.add_property_info(property_info)
ProjectSettings.set_initial_value("DebugMenu/settings/startup_visibility", 0)
ProjectSettings.save()
func _exit_tree() -> void:
remove_autoload_singleton("DebugMenu")
# Don't remove the project setting's value and input map action,
# as the plugin may be re-enabled in the future.