Button remapping work
This commit is contained in:
42
Zennysoft.Game.Ma/addons/input_helper/settings.gd
Normal file
42
Zennysoft.Game.Ma/addons/input_helper/settings.gd
Normal file
@@ -0,0 +1,42 @@
|
||||
class_name InputHelperSettings extends Node
|
||||
|
||||
const USE_GRANULAR_DEVICE_IDENTIFIERS = "devices/use_granular_device_identifiers"
|
||||
|
||||
const SETTINGS_CONFIGURATION = {
|
||||
USE_GRANULAR_DEVICE_IDENTIFIERS: {
|
||||
value = false,
|
||||
type = TYPE_BOOL,
|
||||
is_advanced = true
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
static func prepare() -> void:
|
||||
for key: String in SETTINGS_CONFIGURATION:
|
||||
var setting_config: Dictionary = SETTINGS_CONFIGURATION[key]
|
||||
var setting_name: String = "input_helper/%s" % key
|
||||
if not ProjectSettings.has_setting(setting_name):
|
||||
ProjectSettings.set_setting(setting_name, setting_config.value)
|
||||
ProjectSettings.set_initial_value(setting_name, setting_config.value)
|
||||
ProjectSettings.add_property_info({
|
||||
"name" = setting_name,
|
||||
"type" = setting_config.type,
|
||||
"hint" = setting_config.get("hint", PROPERTY_HINT_NONE),
|
||||
"hint_string" = setting_config.get("hint_string", "")
|
||||
})
|
||||
ProjectSettings.set_as_basic(setting_name, not setting_config.has("is_advanced"))
|
||||
ProjectSettings.set_as_internal(setting_name, setting_config.has("is_hidden"))
|
||||
|
||||
|
||||
static func set_setting(key: String, value) -> void:
|
||||
if get_setting(key, value) != value:
|
||||
ProjectSettings.set_setting("input_helper/%s" % key, value)
|
||||
ProjectSettings.set_initial_value("input_helper/%s" % key, SETTINGS_CONFIGURATION[key].value)
|
||||
ProjectSettings.save()
|
||||
|
||||
|
||||
static func get_setting(key: String, default):
|
||||
if ProjectSettings.has_setting("input_helper/%s" % key):
|
||||
return ProjectSettings.get_setting("input_helper/%s" % key)
|
||||
else:
|
||||
return default
|
||||
Reference in New Issue
Block a user