From 281face3ad944caa1f67e52112678506e4411832 Mon Sep 17 00:00:00 2001 From: Davide Cristini Date: Mon, 9 Oct 2023 21:13:26 +0200 Subject: [PATCH] fix: debug shortcuts. Closes Debug shortcuts are still functional on release builds #86 --- addons/ggt-debug-shortcuts/autoload/debug_shortcuts.gd | 6 ++++++ .../ggt-debug-shortcuts/autoload/debug_shortcuts.tscn | 4 +++- addons/ggt-debug-shortcuts/ggt-debug-shortcuts.gd | 10 +++------- .../ggt-debug-shortcuts/shortcuts/restart_scene.tscn | 2 +- 4 files changed, 13 insertions(+), 9 deletions(-) create mode 100644 addons/ggt-debug-shortcuts/autoload/debug_shortcuts.gd diff --git a/addons/ggt-debug-shortcuts/autoload/debug_shortcuts.gd b/addons/ggt-debug-shortcuts/autoload/debug_shortcuts.gd new file mode 100644 index 0000000..95673e4 --- /dev/null +++ b/addons/ggt-debug-shortcuts/autoload/debug_shortcuts.gd @@ -0,0 +1,6 @@ +extends Node + + +func _ready(): + if OS.is_debug_build() == false: + queue_free() diff --git a/addons/ggt-debug-shortcuts/autoload/debug_shortcuts.tscn b/addons/ggt-debug-shortcuts/autoload/debug_shortcuts.tscn index 065c415..ac33d96 100644 --- a/addons/ggt-debug-shortcuts/autoload/debug_shortcuts.tscn +++ b/addons/ggt-debug-shortcuts/autoload/debug_shortcuts.tscn @@ -1,5 +1,6 @@ -[gd_scene load_steps=5 format=3 uid="uid://dwudswealbjw5"] +[gd_scene load_steps=6 format=3 uid="uid://dwudswealbjw5"] +[ext_resource type="Script" path="res://addons/ggt-debug-shortcuts/autoload/debug_shortcuts.gd" id="1_h8jbq"] [ext_resource type="PackedScene" uid="uid://b5hm57d3waa77" path="res://addons/ggt-debug-shortcuts/shortcuts/pause_game.tscn" id="2_in6k6"] [ext_resource type="PackedScene" uid="uid://gulo6hdwe6ug" path="res://addons/ggt-debug-shortcuts/shortcuts/quit_game.tscn" id="2_pto5j"] [ext_resource type="PackedScene" uid="uid://ctsbjmhftjw2e" path="res://addons/ggt-debug-shortcuts/shortcuts/toggle_fullscreen.tscn" id="3_o3see"] @@ -8,6 +9,7 @@ [node name="DebugShortcuts" type="Node"] process_mode = 3 editor_description = "Node automatically removed on release builds." +script = ExtResource("1_h8jbq") [node name="PauseGame" parent="." instance=ExtResource("2_in6k6")] diff --git a/addons/ggt-debug-shortcuts/ggt-debug-shortcuts.gd b/addons/ggt-debug-shortcuts/ggt-debug-shortcuts.gd index 43d401d..6b899d2 100644 --- a/addons/ggt-debug-shortcuts/ggt-debug-shortcuts.gd +++ b/addons/ggt-debug-shortcuts/ggt-debug-shortcuts.gd @@ -12,14 +12,12 @@ const default_debug_shortcuts = { func _enter_tree(): - if OS.is_debug_build(): - register_input_mappings(func(): save_project_settings()) + register_input_mappings(func(): save_project_settings()) func _enable_plugin(): - if OS.is_debug_build(): - add_autoload_singleton("DebugShortcuts", "res://addons/ggt-debug-shortcuts/autoload/debug_shortcuts.tscn") - register_input_mappings(func(): save_project_settings()) + add_autoload_singleton("DebugShortcuts", "res://addons/ggt-debug-shortcuts/autoload/debug_shortcuts.tscn") + register_input_mappings(func(): save_project_settings()) func _exit_tree(): @@ -52,14 +50,12 @@ func register_input_mappings(on_project_settings_changed: Callable): for k in default_debug_shortcuts: var v = default_debug_shortcuts[k] if ProjectSettings.has_setting(k): -# push_warning("{0} shortcut already set in ProjectSettings, skipping...".format([k])) pass # leave user configured action else: dirty = true ProjectSettings.set_setting(k, create_input_action(v)) # set default value if dirty: if on_project_settings_changed is Callable: - print("saving projsettings") on_project_settings_changed.call() diff --git a/addons/ggt-debug-shortcuts/shortcuts/restart_scene.tscn b/addons/ggt-debug-shortcuts/shortcuts/restart_scene.tscn index 78a90f8..52031e1 100644 --- a/addons/ggt-debug-shortcuts/shortcuts/restart_scene.tscn +++ b/addons/ggt-debug-shortcuts/shortcuts/restart_scene.tscn @@ -8,11 +8,11 @@ func _unhandled_input(event): if event is InputEventKey: if event.is_action_pressed(\"debug_restart_game\"): var ggt_game_autoload = get_node_or_null(\"/root/Game\") + # if \"ggt-core\" addon is enabled if ggt_game_autoload: ggt_game_autoload.restart_scene() else: get_tree().reload_current_scene() - print(\"/root/Game not found \") " [node name="RestartCurrentScene" type="Node"]