diff --git a/project.godot b/project.godot index b30fdb4..38e80c7 100644 --- a/project.godot +++ b/project.godot @@ -62,11 +62,7 @@ grab_item={ "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":32,"physical_keycode":0,"key_label":0,"unicode":32,"location":0,"echo":false,"script":null) ] } -put_item={ -"deadzone": 0.5, -"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":82,"physical_keycode":0,"key_label":0,"unicode":114,"location":0,"echo":false,"script":null) -] -} + move_north={ "deadzone": 0.5, "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":87,"physical_keycode":0,"key_label":0,"unicode":119,"location":0,"echo":false,"script":null) diff --git a/scenes/main.tscn b/scenes/main.tscn index 7c90888..5379838 100644 --- a/scenes/main.tscn +++ b/scenes/main.tscn @@ -1616,10 +1616,10 @@ anchor_left = 1.0 anchor_top = 1.0 anchor_right = 1.0 anchor_bottom = 1.0 -offset_left = -1246.0 -offset_top = -120.00006 -offset_right = -1246.0 -offset_bottom = -120.00006 +offset_left = -1219.0 +offset_top = -209.99982 +offset_right = -1219.0 +offset_bottom = -209.99982 grow_horizontal = 0 grow_vertical = 0 rotation = -0.10297442 @@ -1628,8 +1628,9 @@ script = ExtResource("powerup_ui_script") [node name="PowerUpBtn" type="Button" parent="PowerUpInventoryUI" unique_id=1549270030] layout_mode = 0 -offset_right = 74.28728 -offset_bottom = 78.35126 +offset_top = 2.547058 +offset_right = 85.498886 +offset_bottom = 83.304146 size_flags_horizontal = 3 size_flags_vertical = 3 focus_mode = 0 @@ -1695,10 +1696,10 @@ expand_icon = true [node name="InteractionBtn" type="VBoxContainer" parent="TouchLayer/TouchControls" unique_id=1738242916] layout_mode = 0 -offset_left = 139.14175 -offset_top = 108.42897 -offset_right = 221.14175 -offset_bottom = 275.429 +offset_left = 136.00002 +offset_top = 109.0 +offset_right = 218.00002 +offset_bottom = 186.0877 rotation = -0.10297442 theme_override_constants/separation = 10 @@ -1710,9 +1711,11 @@ focus_mode = 0 icon = ExtResource("25_qkpxi") flat = true icon_alignment = 1 +vertical_icon_alignment = 0 expand_icon = true [node name="PutBtn" type="Button" parent="TouchLayer/TouchControls/InteractionBtn" unique_id=1027790362] +visible = false layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 3 diff --git a/scenes/ui/settings_menu.tscn b/scenes/ui/settings_menu.tscn index a564aa1..b9a78c5 100644 --- a/scenes/ui/settings_menu.tscn +++ b/scenes/ui/settings_menu.tscn @@ -506,21 +506,5 @@ custom_minimum_size = Vector2(150, 40) layout_mode = 2 text = "N/A" -[node name="PutLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/OtherGrid" unique_id=100000038] -layout_mode = 2 -size_flags_horizontal = 3 -text = "Put Item" -label_settings = SubResource("LabelSettings_heading") -[node name="PutBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/OtherGrid" unique_id=100000039] -unique_name_in_owner = true -custom_minimum_size = Vector2(150, 40) -layout_mode = 2 -text = "R" - -[node name="PutAltBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/OtherGrid" unique_id=100000139] -unique_name_in_owner = true -custom_minimum_size = Vector2(150, 40) -layout_mode = 2 -text = "N/A" diff --git a/scenes/ui/settings_menu.tscn.tmp b/scenes/ui/settings_menu.tscn.tmp new file mode 100644 index 0000000..4af62d5 --- /dev/null +++ b/scenes/ui/settings_menu.tscn.tmp @@ -0,0 +1,526 @@ +[gd_scene format=3 uid="uid://b1two2tvv5prx"] + +[ext_resource type="Script" uid="uid://cdege6m8u5cp" path="res://scripts/ui/settings_menu.gd" id="1_script"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_bg"] +bg_color = Color(0.05, 0.05, 0.08, 0.85) +border_width_left = 2 +border_width_top = 2 +border_width_right = 2 +border_width_bottom = 2 +border_color = Color(0.2, 0.8, 1, 0.5) +corner_radius_top_left = 20 +corner_radius_top_right = 20 +corner_radius_bottom_right = 20 +corner_radius_bottom_left = 20 +shadow_color = Color(0, 0, 0, 0.5) +shadow_size = 20 + +[sub_resource type="LabelSettings" id="LabelSettings_title"] +font_size = 32 +font_color = Color(0.2, 0.9, 1, 1) +outline_size = 8 +outline_color = Color(0, 0, 0, 1) + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_tab_bg"] +content_margin_left = 20.0 +content_margin_top = 20.0 +content_margin_right = 20.0 +content_margin_bottom = 20.0 +bg_color = Color(0.1, 0.1, 0.15, 0.6) +corner_radius_top_left = 10 +corner_radius_top_right = 10 +corner_radius_bottom_right = 10 +corner_radius_bottom_left = 10 + +[sub_resource type="LabelSettings" id="LabelSettings_heading"] +font_size = 24 +font_color = Color(0.9, 0.9, 0.9, 1) + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_section_header"] +content_margin_left = 15.0 +content_margin_top = 5.0 +content_margin_right = 15.0 +content_margin_bottom = 5.0 +bg_color = Color(0.2, 0.5, 0.8, 0.3) +corner_radius_top_left = 5 +corner_radius_top_right = 5 +corner_radius_bottom_right = 5 +corner_radius_bottom_left = 5 + +[sub_resource type="LabelSettings" id="LabelSettings_section"] +font_size = 18 +font_color = Color(0.4, 0.9, 1, 1) +outline_size = 2 +outline_color = Color(0, 0, 0, 1) + +[node name="SettingsMenu" type="CanvasLayer" unique_id=1319114632] +layer = 100 +script = ExtResource("1_script") + +[node name="ColorRect" type="ColorRect" parent="." unique_id=1754757020] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(0, 0, 0, 0.4) + +[node name="PanelContainer" type="PanelContainer" parent="." unique_id=1635225045] +custom_minimum_size = Vector2(800, 600) +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -400.0 +offset_top = -300.0 +offset_right = 400.0 +offset_bottom = 300.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_bg") + +[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer" unique_id=1608766484] +layout_mode = 2 +theme_override_constants/separation = 20 + +[node name="Header" type="HBoxContainer" parent="PanelContainer/VBoxContainer" unique_id=1476625293] +custom_minimum_size = Vector2(0, 80) +layout_mode = 2 +theme_override_constants/separation = 20 + +[node name="MarginContainer" type="MarginContainer" parent="PanelContainer/VBoxContainer/Header" unique_id=22122987] +layout_mode = 2 +size_flags_horizontal = 3 +theme_override_constants/margin_left = 30 + +[node name="Title" type="Label" parent="PanelContainer/VBoxContainer/Header/MarginContainer" unique_id=1831070364] +layout_mode = 2 +text = "SYSTEM SETTINGS" +label_settings = SubResource("LabelSettings_title") + +[node name="CloseButton" type="Button" parent="PanelContainer/VBoxContainer/Header" unique_id=1345773906] +custom_minimum_size = Vector2(60, 60) +layout_mode = 2 +size_flags_vertical = 4 +theme_override_font_sizes/font_size = 32 +text = "X" +flat = true + +[node name="ContentSection" type="MarginContainer" parent="PanelContainer/VBoxContainer" unique_id=1702280876] +layout_mode = 2 +size_flags_vertical = 3 +theme_override_constants/margin_left = 20 +theme_override_constants/margin_top = 0 +theme_override_constants/margin_right = 20 +theme_override_constants/margin_bottom = 30 + +[node name="TabContainer" type="TabContainer" parent="PanelContainer/VBoxContainer/ContentSection" unique_id=1795678842] +layout_mode = 2 +theme_override_constants/side_margin = 20 +theme_override_styles/panel = SubResource("StyleBoxFlat_tab_bg") +current_tab = 0 + +[node name="Video" type="ScrollContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer" unique_id=964480166] +layout_mode = 2 +metadata/_tab_index = 0 + +[node name="VBox" type="VBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video" unique_id=1271648419] +layout_mode = 2 +size_flags_horizontal = 3 +theme_override_constants/separation = 15 + +[node name="Fullscreen" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox" unique_id=683482011] +layout_mode = 2 + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/Fullscreen" unique_id=2085318401] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Fullscreen Mode" +label_settings = SubResource("LabelSettings_heading") + +[node name="FullscreenToggle" type="CheckButton" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/Fullscreen" unique_id=1955016407] +unique_name_in_owner = true +layout_mode = 2 + +[node name="VSync" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox" unique_id=1497653967] +layout_mode = 2 + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/VSync" unique_id=76372424] +layout_mode = 2 +size_flags_horizontal = 3 +text = "V-Sync" +label_settings = SubResource("LabelSettings_heading") + +[node name="VSyncToggle" type="CheckButton" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/VSync" unique_id=412645188] +unique_name_in_owner = true +layout_mode = 2 + +[node name="Resolution" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox" unique_id=100000100] +layout_mode = 2 + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/Resolution" unique_id=100000101] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Resolution" +label_settings = SubResource("LabelSettings_heading") + +[node name="ResolutionBtn" type="OptionButton" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/Resolution" unique_id=100000102] +unique_name_in_owner = true +custom_minimum_size = Vector2(240, 40) +layout_mode = 2 + +[node name="MSAA" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox" unique_id=100000103] +layout_mode = 2 + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/MSAA" unique_id=100000104] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Anti-Aliasing (MSAA)" +label_settings = SubResource("LabelSettings_heading") + +[node name="MSAABtn" type="OptionButton" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/MSAA" unique_id=100000105] +unique_name_in_owner = true +custom_minimum_size = Vector2(240, 40) +layout_mode = 2 + +[node name="Shadows" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox" unique_id=100000106] +layout_mode = 2 + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/Shadows" unique_id=100000107] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Shadow Quality" +label_settings = SubResource("LabelSettings_heading") + +[node name="ShadowBtn" type="OptionButton" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/Shadows" unique_id=100000108] +unique_name_in_owner = true +custom_minimum_size = Vector2(240, 40) +layout_mode = 2 + +[node name="FPSCap" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox" unique_id=100000109] +layout_mode = 2 + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/FPSCap" unique_id=100000110] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Max FPS Cap" +label_settings = SubResource("LabelSettings_heading") + +[node name="FPSCapBtn" type="OptionButton" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Video/VBox/FPSCap" unique_id=100000111] +unique_name_in_owner = true +custom_minimum_size = Vector2(240, 40) +layout_mode = 2 + +[node name="Audio" type="VBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer" unique_id=1585166620] +visible = false +layout_mode = 2 +theme_override_constants/separation = 20 +metadata/_tab_index = 1 + +[node name="Master" type="VBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Audio" unique_id=2083739941] +layout_mode = 2 + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Audio/Master" unique_id=526445980] +layout_mode = 2 +text = "Master Volume" +label_settings = SubResource("LabelSettings_heading") + +[node name="MasterSlider" type="HSlider" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Audio/Master" unique_id=1787962533] +unique_name_in_owner = true +layout_mode = 2 +max_value = 1.0 +step = 0.05 +value = 0.8 + +[node name="Music" type="VBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Audio" unique_id=81064625] +layout_mode = 2 + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Audio/Music" unique_id=1985407106] +layout_mode = 2 +text = "Music Volume" +label_settings = SubResource("LabelSettings_heading") + +[node name="MusicSlider" type="HSlider" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Audio/Music" unique_id=750703557] +unique_name_in_owner = true +layout_mode = 2 +max_value = 1.0 +step = 0.05 +value = 0.7 + +[node name="SFX" type="VBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Audio" unique_id=1147135370] +layout_mode = 2 + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Audio/SFX" unique_id=1539898557] +layout_mode = 2 +text = "SFX Volume" +label_settings = SubResource("LabelSettings_heading") + +[node name="SFXSlider" type="HSlider" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Audio/SFX" unique_id=1301108449] +unique_name_in_owner = true +layout_mode = 2 +max_value = 1.0 +step = 0.05 +value = 0.9 + +[node name="Controls" type="ScrollContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer" unique_id=1553036843] +visible = false +layout_mode = 2 +metadata/_tab_index = 2 + +[node name="VBox" type="VBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls" unique_id=1592525164] +layout_mode = 2 +size_flags_horizontal = 3 +theme_override_constants/separation = 15 + +[node name="ControllerToggleContainer" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox" unique_id=100000001] +layout_mode = 2 + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/ControllerToggleContainer" unique_id=100000002] +layout_mode = 2 +size_flags_horizontal = 3 +text = "ENABLE CONTROLLER (JOYSTICK)" +label_settings = SubResource("LabelSettings_heading") + +[node name="UseControllerBtn" type="CheckButton" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/ControllerToggleContainer" unique_id=100000003] +unique_name_in_owner = true +layout_mode = 2 + +[node name="MovementSection" type="PanelContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox" unique_id=100000004] +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_section_header") + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MovementSection" unique_id=100000005] +layout_mode = 2 +text = "MOVEMENT CONTROL" +label_settings = SubResource("LabelSettings_section") + +[node name="MoveGrid" type="GridContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox" unique_id=100000006] +layout_mode = 2 +theme_override_constants/h_separation = 20 +theme_override_constants/v_separation = 10 +columns = 3 + +[node name="ColH1" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid"] +layout_mode = 2 +text = "Action" +label_settings = SubResource("LabelSettings_section") + +[node name="ColH2" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid"] +layout_mode = 2 +text = "Primary" +label_settings = SubResource("LabelSettings_section") + +[node name="ColH3" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid"] +layout_mode = 2 +text = "Secondary" +label_settings = SubResource("LabelSettings_section") + +[node name="UpLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000007] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Move Up" +label_settings = SubResource("LabelSettings_heading") + +[node name="MoveUpBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000008] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "W" + +[node name="MoveUpAltBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000108] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "Up" + +[node name="DownLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000009] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Move Down" +label_settings = SubResource("LabelSettings_heading") + +[node name="MoveDownBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000010] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "S" + +[node name="MoveDownAltBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000110] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "Down" + +[node name="LeftLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000011] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Move Left" +label_settings = SubResource("LabelSettings_heading") + +[node name="MoveLeftBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000012] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "A" + +[node name="MoveLeftAltBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000112] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "Left" + +[node name="RightLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000013] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Move Right" +label_settings = SubResource("LabelSettings_heading") + +[node name="MoveRightBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000014] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "D" + +[node name="MoveRightAltBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/MoveGrid" unique_id=100000114] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "Right" + +[node name="PowerUpSection" type="PanelContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox" unique_id=100000015] +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_section_header") + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerUpSection" unique_id=100000016] +layout_mode = 2 +text = "POWER UP CONTROL" +label_settings = SubResource("LabelSettings_section") + +[node name="PowerUpGrid" type="GridContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox" unique_id=100000017] +layout_mode = 2 +theme_override_constants/h_separation = 20 +theme_override_constants/v_separation = 10 +columns = 3 + +[node name="UsePowerupLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerUpGrid" unique_id=100000118] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Activate PowerUp (Universal)" +label_settings = SubResource("LabelSettings_heading") + +[node name="UsePowerupBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerUpGrid" unique_id=100000119] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "F" + +[node name="UsePowerupAltBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerUpGrid" unique_id=100000120] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "N/A" + +[node name="PowerBarSection" type="PanelContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox" unique_id=100000026] +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_section_header") + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerBarSection" unique_id=100000027] +layout_mode = 2 +text = "POWER BAR CONTROL" +label_settings = SubResource("LabelSettings_section") + +[node name="PowerBarGrid" type="GridContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox" unique_id=100000028] +layout_mode = 2 +theme_override_constants/h_separation = 20 +theme_override_constants/v_separation = 10 +columns = 3 + +[node name="AttackLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerBarGrid" unique_id=100000029] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Attack Mode" +label_settings = SubResource("LabelSettings_heading") + +[node name="AttackModeBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerBarGrid" unique_id=100000030] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "Q" + +[node name="AttackModeAltBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerBarGrid" unique_id=100000130] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "N/A" + +[node name="TektonGrabLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerBarGrid" unique_id=100000040] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Grab Tekton" +label_settings = SubResource("LabelSettings_heading") + +[node name="TektonGrabBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerBarGrid" unique_id=100000041] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "G" + +[node name="TektonGrabAltBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/PowerBarGrid" unique_id=100000141] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "N/A" + +[node name="OtherSection" type="PanelContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox" unique_id=100000033] +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_section_header") + +[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/OtherSection" unique_id=100000034] +layout_mode = 2 +text = "INTERACTION CONTROL" +label_settings = SubResource("LabelSettings_section") + +[node name="OtherGrid" type="GridContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox" unique_id=100000035] +layout_mode = 2 +theme_override_constants/h_separation = 20 +theme_override_constants/v_separation = 10 +columns = 3 + +[node name="GrabLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/OtherGrid" unique_id=100000036] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Grab Item" +label_settings = SubResource("LabelSettings_heading") + +[node name="GrabBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/OtherGrid" unique_id=100000037] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "Space" + +[node name="GrabAltBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controls/VBox/OtherGrid" unique_id=100000137] +unique_name_in_owner = true +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "N/A" + +visible = false +layout_mode = 2 +size_flags_horizontal = 3 +text = "Put Item" +label_settings = SubResource("LabelSettings_heading") + +unique_name_in_owner = true +visible = false +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "R" + +unique_name_in_owner = true +visible = false +custom_minimum_size = Vector2(150, 40) +layout_mode = 2 +text = "N/A" + diff --git a/scripts/managers/player_input_manager.gd b/scripts/managers/player_input_manager.gd index 051b7b3..e8fe3d9 100644 --- a/scripts/managers/player_input_manager.gd +++ b/scripts/managers/player_input_manager.gd @@ -48,8 +48,6 @@ func _process(delta): # 3. Action inputs (momentary) if Input.is_action_just_pressed("action_grab"): player.grab_item(player.current_position) - elif Input.is_action_just_pressed("action_put"): - player.auto_put_item() if move_vec != Vector2i.ZERO: var target_position = player.current_position + move_vec diff --git a/scripts/managers/settings_manager.gd b/scripts/managers/settings_manager.gd index f4fd226..7a290e0 100644 --- a/scripts/managers/settings_manager.gd +++ b/scripts/managers/settings_manager.gd @@ -44,8 +44,6 @@ var settings = { # Actions "grab": KEY_SPACE, "grab_alt": KEY_J, - "put": KEY_R, - "put_alt": KEY_K, "tekton_grab": KEY_G, "tekton_grab_alt": KEY_L, @@ -77,6 +75,14 @@ func load_settings(): print("[Settings] Loaded.") else: print("[Settings] Using defaults.") + + # Remove deprecated keys that may persist in old saved configs + var deprecated_keys = ["put", "put_alt"] + for k in deprecated_keys: + if settings.controls.has(k): + settings.controls.erase(k) + print("[Settings] Removed deprecated control: ", k) + func save_settings(): var config = ConfigFile.new() @@ -166,7 +172,6 @@ func apply_control_settings(): "move_left": "move_west", "move_right": "move_east", "grab": "action_grab", - "put": "action_put", "use_powerup": "use_powerup", "tekton_grab": "action_grab_tekton", "attack_mode": "action_knock_tekton" diff --git a/scripts/managers/touch_controls.gd b/scripts/managers/touch_controls.gd index 62257e1..dd5903c 100644 --- a/scripts/managers/touch_controls.gd +++ b/scripts/managers/touch_controls.gd @@ -189,7 +189,7 @@ func _create_touch_ui(): # Hide Put Button if put_button: - put_button.visible = true + put_button.visible = false # SettingsBtn signal is handled by main.gd (_toggle_pause_menu). # We only grab the reference here in case touch_controls needs it in future, @@ -494,6 +494,7 @@ func _apply_settings(): if grab_button: grab_button.visible = true + grab_button.vertical_icon_alignment = VERTICAL_ALIGNMENT_TOP grab_button.scale = Vector2(button_scale, button_scale) grab_button.set_anchors_preset(Control.PRESET_BOTTOM_RIGHT) grab_button.offset_left = button_positions.grab.x @@ -502,7 +503,7 @@ func _apply_settings(): grab_button.offset_bottom = button_positions.grab.y + button_size if put_button: - put_button.visible = true + put_button.visible = false if attack_mode_button: attack_mode_button.visible = true diff --git a/scripts/ui/settings_menu.gd b/scripts/ui/settings_menu.gd index d9fa7e6..a215d90 100644 --- a/scripts/ui/settings_menu.gd +++ b/scripts/ui/settings_menu.gd @@ -23,6 +23,9 @@ extends CanvasLayer @onready var SettingsManager = get_node_or_null("/root/SettingsManager") var listening_action: String = "" # Set when waiting for a keypress +# Keys removed from the game - skip them even if stale user config has them +const DEPRECATED_ACTIONS: Array = ["put", "put_alt"] + func _ready(): # Theme inheritance is broken by CanvasLayer root, no need for theme = null _load_ui_values() @@ -107,7 +110,7 @@ func _connect_signals(): # Connect remapping buttons for action_name in SettingsManager.settings.controls.keys(): - if action_name == "use_controller": + if action_name == "use_controller" or action_name in DEPRECATED_ACTIONS: continue # Check Primary Button @@ -197,6 +200,8 @@ func _input(event): func _update_all_key_labels(): for action_name in SettingsManager.settings.controls.keys(): + if action_name in DEPRECATED_ACTIONS: + continue _update_key_label(action_name) func _update_key_label(action_name: String):