diff --git a/scenes/test.tscn b/scenes/test.tscn index 1f6a976..cfe445e 100644 --- a/scenes/test.tscn +++ b/scenes/test.tscn @@ -23,11 +23,11 @@ glow_strength = 1.5 [node name="OrthogonalCamera" type="Camera3D" parent="."] transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 4.76838e-07, 4.90848, -0.212414) projection = 1 +current = true size = 2.895 [node name="PerspectiveCamera" type="Camera3D" parent="."] transform = Transform3D(1, 0, 0, 0, 0.48725, 0.873262, 0, -0.873262, 0.48725, 2.38419e-07, 2.79306, 0.864002) -current = true [node name="FloorMesh" type="MeshInstance3D" parent="."] visible = false diff --git a/scripts/game_key.gd b/scripts/game_key.gd index 91f24de..54a0f76 100644 --- a/scripts/game_key.gd +++ b/scripts/game_key.gd @@ -136,11 +136,9 @@ func _unhandled_input(event: InputEvent) -> void: func load_props(_props: KeyProps, default_position: Vector3) -> void: _default_position = default_position - if not props: - props = _props - else: - props.width_ratio = _props.width_ratio - props.width_ratio_init = _props.width_ratio_init + if props: + _props.from_dictionary(props.to_dictionary()) + props = _props _mesh.scale.x = props.width_ratio diff --git a/scripts/globals/layout_config.gd b/scripts/globals/layout_config.gd index 72c0026..1e8983e 100644 --- a/scripts/globals/layout_config.gd +++ b/scripts/globals/layout_config.gd @@ -3,7 +3,7 @@ extends Node const CONFIG_PATH := "user://layout.cfg" const SECTION_INFO := "info" const SECTION_KEYS := "keys" -const PARAM_NAME := "name" +const PARAM_TYPE := "type" var layout_name: String var layout_rows: Array[Array] @@ -11,12 +11,12 @@ var is_configuring: bool = false func _ready() -> void: - # var err := load_config() - # if err != OK: - # print("config failed.....") - # set_defaults() + var err := load_config() + if err != OK: + print("config not loaded.....") + set_defaults() is_configuring = true - set_defaults() + # set_defaults() func _unhandled_input(event: InputEvent) -> void: @@ -26,10 +26,10 @@ func _unhandled_input(event: InputEvent) -> void: func set_defaults() -> void: - # layout_name = LayoutANSI.NAME - # layout_rows = LayoutANSI.rows() - layout_name = LayoutISO.NAME - layout_rows = LayoutISO.rows() + layout_name = LayoutANSI.NAME + layout_rows = LayoutANSI.rows() + # layout_name = LayoutISO.NAME + # layout_rows = LayoutISO.rows() func load_config() -> Error: @@ -43,15 +43,17 @@ func load_config() -> Error: printerr("failed to load layout config file: %s" % err) return FAILED - if not config.has_section_key(SECTION_INFO, PARAM_NAME): + if not config.has_section_key(SECTION_INFO, PARAM_TYPE): return FAILED - layout_name = config.get_value(SECTION_INFO, PARAM_NAME) + layout_name = config.get_value(SECTION_INFO, PARAM_TYPE) var rows: Array[Array] = [] if layout_name == LayoutANSI.NAME: rows = LayoutANSI.rows() + elif layout_name == LayoutISO.NAME: + rows = LayoutISO.rows() else: return FAILED @@ -77,7 +79,7 @@ func load_config() -> Error: func save_config() -> Error: var config := ConfigFile.new() - config.set_value(SECTION_INFO, PARAM_NAME, layout_name) + config.set_value(SECTION_INFO, PARAM_TYPE, layout_name) for row: Array[KeyProps] in layout_rows: for key_props: KeyProps in row: