Files
parasitic-god/addons/limbo_console/plugin.gd

58 lines
1.9 KiB
GDScript

@tool
extends EditorPlugin
const ConsoleOptions := preload("res://addons/limbo_console/console_options.gd")
const ConfigMapper := preload("res://addons/limbo_console/config_mapper.gd")
func _enter_tree() -> void:
add_autoload_singleton("LimboConsole", "res://addons/limbo_console/limbo_console.gd")
# Sync config file (create if not exists)
var console_options := ConsoleOptions.new()
var do_project_setting_save: bool = false
ConfigMapper.load_from_config(console_options)
ConfigMapper.save_to_config(console_options)
if not ProjectSettings.has_setting("input/limbo_console_toggle"):
print("LimboConsole: Adding \"limbo_console_toggle\" input action to project settings...")
var key_event := InputEventKey.new()
key_event.keycode = KEY_QUOTELEFT
ProjectSettings.set_setting("input/limbo_console_toggle", {
"deadzone": 0.5,
"events": [key_event],
})
do_project_setting_save = true
if not ProjectSettings.has_setting("input/limbo_auto_complete_reverse"):
print("LimboConsole: Adding \"limbo_auto_complete_reverse\" input action to project settings...")
var key_event = InputEventKey.new()
key_event.keycode = KEY_TAB
key_event.shift_pressed = true
ProjectSettings.set_setting("input/limbo_auto_complete_reverse", {
"deadzone": 0.5,
"events": [key_event],
})
do_project_setting_save = true
if not ProjectSettings.has_setting("input/limbo_console_search_history"):
print("LimboConsole: Adding \"limbo_console_search_history\" input action to project settings...")
var key_event = InputEventKey.new()
key_event.keycode = KEY_R
key_event.ctrl_pressed = true
ProjectSettings.set_setting("input/limbo_console_search_history", {
"deadzone": 0.5,
"events": [key_event],
})
do_project_setting_save = true
if do_project_setting_save:
ProjectSettings.save()
func _exit_tree() -> void:
remove_autoload_singleton("LimboConsole")