feat : mobile input controller

This commit is contained in:
2026-04-13 18:15:49 +08:00
parent a478e3fc2e
commit a592eb1de0
25 changed files with 771 additions and 2058 deletions
+203
View File
@@ -506,5 +506,208 @@ custom_minimum_size = Vector2(143, 38)
layout_mode = 2
text = "N/A"
[node name="Controller" type="ScrollContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer" unique_id=300000001]
visible = false
layout_mode = 2
metadata/_tab_index = 3
[node name="VBox" type="VBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller" unique_id=300000002]
layout_mode = 2
size_flags_horizontal = 3
theme_override_constants/separation = 15
[node name="CtrlInfoSection" type="PanelContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox" unique_id=300000003]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_section_header")
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlInfoSection" unique_id=300000004]
layout_mode = 2
text = "CONTROLLER BINDINGS (Press any button to rebind)"
label_settings = SubResource("LabelSettings_section")
[node name="CtrlGrid" type="GridContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox" unique_id=300000005]
layout_mode = 2
theme_override_constants/h_separation = 20
theme_override_constants/v_separation = 10
columns = 2
[node name="ColH1" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlGrid" unique_id=300000006]
layout_mode = 2
text = "Action"
label_settings = SubResource("LabelSettings_section")
[node name="ColH2" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlGrid" unique_id=300000007]
layout_mode = 2
text = "Button"
label_settings = SubResource("LabelSettings_section")
[node name="CtrlGrabLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlGrid" unique_id=300000010]
layout_mode = 2
size_flags_horizontal = 3
text = "Grab Item"
label_settings = SubResource("LabelSettings_heading")
[node name="CtrlGrabBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlGrid" unique_id=300000011]
unique_name_in_owner = true
custom_minimum_size = Vector2(200, 38)
layout_mode = 2
text = "A / Cross"
[node name="CtrlPowerupLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlGrid" unique_id=300000020]
layout_mode = 2
size_flags_horizontal = 3
text = "Use PowerUp"
label_settings = SubResource("LabelSettings_heading")
[node name="CtrlPowerupBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlGrid" unique_id=300000021]
unique_name_in_owner = true
custom_minimum_size = Vector2(200, 38)
layout_mode = 2
text = "Y / Triangle"
[node name="CtrlTektonGrabLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlGrid" unique_id=300000030]
layout_mode = 2
size_flags_horizontal = 3
text = "Grab Tekton"
label_settings = SubResource("LabelSettings_heading")
[node name="CtrlTektonGrabBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlGrid" unique_id=300000031]
unique_name_in_owner = true
custom_minimum_size = Vector2(200, 38)
layout_mode = 2
text = "RB / R1"
[node name="CtrlAttackLabel" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlGrid" unique_id=300000040]
layout_mode = 2
size_flags_horizontal = 3
text = "Attack / Knock"
label_settings = SubResource("LabelSettings_heading")
[node name="CtrlAttackBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlGrid" unique_id=300000041]
unique_name_in_owner = true
custom_minimum_size = Vector2(200, 38)
layout_mode = 2
text = "X / Square"
[node name="CtrlResetContainer" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox" unique_id=300000050]
layout_mode = 2
[node name="CtrlResetBtn" type="Button" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/Controller/VBox/CtrlResetContainer" unique_id=300000051]
unique_name_in_owner = true
custom_minimum_size = Vector2(200, 38)
layout_mode = 2
text = "Reset to Defaults"
[node name="TouchInput" type="ScrollContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer" unique_id=200000001]
visible = false
layout_mode = 2
metadata/_tab_index = 4
[node name="VBox" type="VBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput" unique_id=200000002]
layout_mode = 2
size_flags_horizontal = 3
theme_override_constants/separation = 20
[node name="JoystickSection" type="PanelContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox" unique_id=200000003]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_section_header")
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/JoystickSection" unique_id=200000004]
layout_mode = 2
text = "VIRTUAL JOYSTICK"
label_settings = SubResource("LabelSettings_section")
[node name="JoystickSizeContainer" type="VBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox" unique_id=200000005]
layout_mode = 2
theme_override_constants/separation = 8
[node name="JoystickSizeHeader" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/JoystickSizeContainer" unique_id=200000006]
layout_mode = 2
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/JoystickSizeContainer/JoystickSizeHeader" unique_id=200000007]
layout_mode = 2
size_flags_horizontal = 3
text = "Joystick Size"
label_settings = SubResource("LabelSettings_heading")
[node name="JoystickSizeValue" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/JoystickSizeContainer/JoystickSizeHeader" unique_id=200000008]
unique_name_in_owner = true
custom_minimum_size = Vector2(50, 0)
layout_mode = 2
text = "60"
label_settings = SubResource("LabelSettings_heading")
horizontal_alignment = 2
[node name="JoystickSizeSlider" type="HSlider" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/JoystickSizeContainer" unique_id=200000009]
unique_name_in_owner = true
layout_mode = 2
min_value = 40.0
max_value = 140.0
step = 5.0
value = 60.0
[node name="JoystickToggleContainer" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox" unique_id=200000010]
layout_mode = 2
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/JoystickToggleContainer" unique_id=200000011]
layout_mode = 2
size_flags_horizontal = 3
text = "Show Joystick"
label_settings = SubResource("LabelSettings_heading")
[node name="JoystickEnabledToggle" type="CheckButton" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/JoystickToggleContainer" unique_id=200000012]
unique_name_in_owner = true
layout_mode = 2
button_pressed = true
[node name="ButtonsSection" type="PanelContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox" unique_id=200000013]
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_section_header")
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/ButtonsSection" unique_id=200000014]
layout_mode = 2
text = "TOUCH BUTTONS"
label_settings = SubResource("LabelSettings_section")
[node name="ButtonOpacityContainer" type="VBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox" unique_id=200000015]
layout_mode = 2
theme_override_constants/separation = 8
[node name="ButtonOpacityHeader" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/ButtonOpacityContainer" unique_id=200000016]
layout_mode = 2
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/ButtonOpacityContainer/ButtonOpacityHeader" unique_id=200000017]
layout_mode = 2
size_flags_horizontal = 3
text = "Button Opacity"
label_settings = SubResource("LabelSettings_heading")
[node name="ButtonOpacityValue" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/ButtonOpacityContainer/ButtonOpacityHeader" unique_id=200000018]
unique_name_in_owner = true
custom_minimum_size = Vector2(50, 0)
layout_mode = 2
text = "70%"
label_settings = SubResource("LabelSettings_heading")
horizontal_alignment = 2
[node name="ButtonOpacitySlider" type="HSlider" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/ButtonOpacityContainer" unique_id=200000019]
unique_name_in_owner = true
layout_mode = 2
min_value = 0.1
max_value = 1.0
step = 0.05
value = 0.7
[node name="TouchButtonsToggleContainer" type="HBoxContainer" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox" unique_id=200000020]
layout_mode = 2
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/TouchButtonsToggleContainer" unique_id=200000021]
layout_mode = 2
size_flags_horizontal = 3
text = "Show Touch Buttons"
label_settings = SubResource("LabelSettings_heading")
[node name="TouchButtonsEnabledToggle" type="CheckButton" parent="PanelContainer/VBoxContainer/ContentSection/TabContainer/TouchInput/VBox/TouchButtonsToggleContainer" unique_id=200000022]
unique_name_in_owner = true
layout_mode = 2
button_pressed = true