seperate ui controls from gameplay controls, scrolling controls screen

This commit is contained in:
Haze Weathers 2024-04-01 14:12:32 -04:00
parent 3c69e4d14d
commit ab094fd6ce
8 changed files with 273 additions and 71 deletions

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=12 format=2]
[gd_scene load_steps=16 format=2]
[ext_resource path="res://objects/hud/options_screen_scholar.gd" type="Script" id=1]
[ext_resource path="res://ui/theme.tres" type="Theme" id=2]
@ -9,6 +9,8 @@
[ext_resource path="res://objects/hud/labeled_slider.gd" type="Script" id=7]
[ext_resource path="res://objects/hud/set_keyboard_button.gd" type="Script" id=8]
[ext_resource path="res://objects/hud/set_gamepad_button.gd" type="Script" id=9]
[ext_resource path="res://objects/hud/scroll_follow_focus.gd" type="Script" id=10]
[ext_resource path="res://graphics/hud/levelselect_nexlevel.png" type="Texture" id=11]
[sub_resource type="ShaderMaterial" id=1]
shader = ExtResource( 4 )
@ -24,6 +26,14 @@ shader_param/ammount = Vector2( 2, 0 )
shader_param/offset = Vector2( 0, 0 )
shader_param/delay = Vector2( 4, 0 )
[sub_resource type="AtlasTexture" id=3]
atlas = ExtResource( 11 )
region = Rect2( 0, 0, 8, 8 )
[sub_resource type="AtlasTexture" id=4]
atlas = ExtResource( 11 )
region = Rect2( 8, 0, 8, 8 )
[node name="OptionsScreen" type="Control"]
anchor_right = 1.0
anchor_bottom = 1.0
@ -49,13 +59,13 @@ margin_bottom = 157.0
custom_constants/margin_right = 8
custom_constants/margin_top = 4
custom_constants/margin_left = 8
custom_constants/margin_bottom = 4
custom_constants/margin_bottom = 2
[node name="VBoxContainer" type="VBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer"]
margin_left = 8.0
margin_top = 4.0
margin_right = 226.0
margin_bottom = 150.0
margin_bottom = 152.0
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer"]
margin_right = 218.0
@ -83,8 +93,10 @@ margin_bottom = 32.0
unique_name_in_owner = true
margin_top = 36.0
margin_right = 218.0
margin_bottom = 146.0
margin_bottom = 148.0
focus_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
tabs_visible = false
[node name="Game" type="VBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs"]
@ -449,19 +461,27 @@ options = [ "off", "on" ]
[node name="Input" type="VBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs"]
anchor_right = 1.0
anchor_bottom = 1.0
focus_next = NodePath("Left/Keyboard")
focus_next = NodePath("ScrollContainer/ControlsVBox/Left/Keyboard")
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Header" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input"]
margin_right = 218.0
margin_bottom = 12.0
rect_min_size = Vector2( 0, 12 )
[node name="Spacer" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Header"]
margin_top = 1.0
[node name="Spacer" type="CenterContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Header"]
margin_right = 92.0
margin_bottom = 11.0
margin_bottom = 12.0
rect_min_size = Vector2( 92, 0 )
align = 1
[node name="UpArrow" type="TextureRect" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Header/Spacer"]
unique_name_in_owner = true
margin_left = 42.0
margin_top = 2.0
margin_right = 50.0
margin_bottom = 10.0
texture = SubResource( 3 )
[node name="Keyboard" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Header"]
margin_left = 96.0
@ -481,29 +501,44 @@ size_flags_horizontal = 3
text = "Gamepad"
align = 1
[node name="Left" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input"]
[node name="ScrollContainer" type="ScrollContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input"]
margin_top = 16.0
margin_right = 218.0
margin_bottom = 26.0
margin_bottom = 98.0
size_flags_horizontal = 3
size_flags_vertical = 3
script = ExtResource( 10 )
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Left"]
[node name="ControlsVBox" type="VBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer"]
unique_name_in_owner = true
margin_right = 218.0
margin_bottom = 122.0
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="Left" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox"]
margin_right = 218.0
margin_bottom = 10.0
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Left"]
margin_right = 92.0
margin_bottom = 10.0
rect_min_size = Vector2( 92, 0 )
text = "left"
align = 1
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Left"]
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Left"]
margin_left = 96.0
margin_right = 155.0
margin_bottom = 10.0
focus_neighbour_left = NodePath("../..")
size_flags_horizontal = 3
text = "-"
script = ExtResource( 8 )
action = "move_left"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Left"]
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Left"]
margin_left = 159.0
margin_right = 218.0
margin_bottom = 10.0
@ -512,31 +547,32 @@ text = "-"
icon_align = 1
script = ExtResource( 9 )
action = "move_left"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Right" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input"]
margin_top = 30.0
[node name="Right" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox"]
margin_top = 14.0
margin_right = 218.0
margin_bottom = 40.0
margin_bottom = 24.0
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Right"]
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Right"]
margin_right = 92.0
margin_bottom = 10.0
rect_min_size = Vector2( 92, 0 )
text = "right"
align = 1
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Right"]
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Right"]
margin_left = 96.0
margin_right = 155.0
margin_bottom = 10.0
focus_neighbour_left = NodePath("../..")
size_flags_horizontal = 3
text = "-"
script = ExtResource( 8 )
action = "move_right"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Right"]
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Right"]
margin_left = 159.0
margin_right = 218.0
margin_bottom = 10.0
@ -544,31 +580,32 @@ size_flags_horizontal = 3
text = "-"
script = ExtResource( 9 )
action = "move_right"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Up" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input"]
margin_top = 44.0
[node name="Up" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox"]
margin_top = 28.0
margin_right = 218.0
margin_bottom = 54.0
margin_bottom = 38.0
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Up"]
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Up"]
margin_right = 92.0
margin_bottom = 10.0
rect_min_size = Vector2( 92, 0 )
text = "up"
align = 1
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Up"]
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Up"]
margin_left = 96.0
margin_right = 155.0
margin_bottom = 10.0
focus_neighbour_left = NodePath("../..")
size_flags_horizontal = 3
text = "-"
script = ExtResource( 8 )
action = "move_up"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Up"]
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Up"]
margin_left = 159.0
margin_right = 218.0
margin_bottom = 10.0
@ -576,31 +613,32 @@ size_flags_horizontal = 3
text = "-"
script = ExtResource( 9 )
action = "move_up"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Down" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input"]
margin_top = 58.0
[node name="Down" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox"]
margin_top = 42.0
margin_right = 218.0
margin_bottom = 68.0
margin_bottom = 52.0
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Down"]
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Down"]
margin_right = 92.0
margin_bottom = 10.0
rect_min_size = Vector2( 92, 0 )
text = "down"
align = 1
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Down"]
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Down"]
margin_left = 96.0
margin_right = 155.0
margin_bottom = 10.0
focus_neighbour_left = NodePath("../..")
size_flags_horizontal = 3
text = "-"
script = ExtResource( 8 )
action = "move_down"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Down"]
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Down"]
margin_left = 159.0
margin_right = 218.0
margin_bottom = 10.0
@ -608,31 +646,98 @@ size_flags_horizontal = 3
text = "-"
script = ExtResource( 9 )
action = "move_down"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Jump" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input"]
margin_top = 72.0
[node name="Confirm" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox"]
margin_top = 56.0
margin_right = 218.0
margin_bottom = 82.0
margin_bottom = 66.0
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Jump"]
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Confirm"]
margin_right = 92.0
margin_bottom = 10.0
rect_min_size = Vector2( 92, 0 )
text = "jump/confirm"
text = "confirm"
align = 1
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Jump"]
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Confirm"]
margin_left = 96.0
margin_right = 155.0
margin_bottom = 10.0
focus_neighbour_left = NodePath("../..")
size_flags_horizontal = 3
text = "-"
script = ExtResource( 8 )
action = "ui_accept"
options_screen = NodePath("../../../../../../../../../..")
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Confirm"]
margin_left = 159.0
margin_right = 218.0
margin_bottom = 10.0
size_flags_horizontal = 3
text = "-"
script = ExtResource( 9 )
action = "ui_accept"
options_screen = NodePath("../../../../../../../../../..")
[node name="Back" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox"]
margin_top = 70.0
margin_right = 218.0
margin_bottom = 80.0
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Back"]
margin_right = 92.0
margin_bottom = 10.0
rect_min_size = Vector2( 92, 0 )
text = "back"
align = 1
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Back"]
margin_left = 96.0
margin_right = 155.0
margin_bottom = 10.0
focus_neighbour_left = NodePath("../..")
size_flags_horizontal = 3
text = "-"
script = ExtResource( 8 )
action = "ui_cancel"
options_screen = NodePath("../../../../../../../../../..")
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Back"]
margin_left = 159.0
margin_right = 218.0
margin_bottom = 10.0
size_flags_horizontal = 3
text = "-"
script = ExtResource( 9 )
action = "ui_cancel"
options_screen = NodePath("../../../../../../../../../..")
[node name="Jump" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox"]
margin_top = 84.0
margin_right = 218.0
margin_bottom = 94.0
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Jump"]
margin_right = 92.0
margin_bottom = 10.0
rect_min_size = Vector2( 92, 0 )
text = "jump"
align = 1
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Jump"]
margin_left = 96.0
margin_right = 155.0
margin_bottom = 10.0
focus_neighbour_left = NodePath("../..")
size_flags_horizontal = 3
text = "-"
script = ExtResource( 8 )
action = "jump"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Jump"]
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Jump"]
margin_left = 159.0
margin_right = 218.0
margin_bottom = 10.0
@ -640,31 +745,32 @@ size_flags_horizontal = 3
text = "-"
script = ExtResource( 9 )
action = "jump"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Attack" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input"]
margin_top = 86.0
[node name="Attack" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox"]
margin_top = 98.0
margin_right = 218.0
margin_bottom = 96.0
margin_bottom = 108.0
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Attack"]
[node name="Label" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Attack"]
margin_right = 92.0
margin_bottom = 10.0
rect_min_size = Vector2( 92, 0 )
text = "attack/back"
text = "attack"
align = 1
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Attack"]
[node name="Keyboard" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Attack"]
margin_left = 96.0
margin_right = 155.0
margin_bottom = 10.0
focus_neighbour_left = NodePath("../..")
size_flags_horizontal = 3
text = "-"
script = ExtResource( 8 )
action = "shoot"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/Attack"]
[node name="Gamepad" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/Attack"]
margin_left = 159.0
margin_right = 218.0
margin_bottom = 10.0
@ -672,16 +778,50 @@ size_flags_horizontal = 3
text = "-"
script = ExtResource( 9 )
action = "shoot"
options_screen = NodePath("../../../../../../../..")
options_screen = NodePath("../../../../../../../../../..")
[node name="DefaultControls" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input"]
[node name="DefaultControls" type="Button" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox"]
margin_left = 81.0
margin_top = 100.0
margin_top = 112.0
margin_right = 137.0
margin_bottom = 110.0
margin_bottom = 122.0
focus_neighbour_left = NodePath("..")
focus_neighbour_right = NodePath("..")
size_flags_horizontal = 4
text = "defaults"
[node name="HBoxContainer" type="HBoxContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input"]
margin_top = 102.0
margin_right = 218.0
margin_bottom = 112.0
[node name="Spacer" type="CenterContainer" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/HBoxContainer"]
margin_right = 92.0
margin_bottom = 10.0
rect_min_size = Vector2( 92, 0 )
[node name="DownArrow" type="TextureRect" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/HBoxContainer/Spacer"]
unique_name_in_owner = true
margin_left = 42.0
margin_top = 1.0
margin_right = 50.0
margin_bottom = 9.0
texture = SubResource( 4 )
[node name="Keyboard" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/HBoxContainer"]
margin_left = 96.0
margin_right = 155.0
margin_bottom = 10.0
size_flags_horizontal = 3
align = 1
[node name="Gamepad" type="Label" parent="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/HBoxContainer"]
margin_left = 159.0
margin_right = 218.0
margin_bottom = 10.0
size_flags_horizontal = 3
align = 1
[connection signal="selected" from="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/SelectTab" to="." method="_on_tab_selected"]
[connection signal="selected" from="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Game/Rumble/SelectRumble" to="." method="_on_Rumble_selected"]
[connection signal="selected" from="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Game/Gore/SelectGore" to="." method="_on_Gore_selected"]
@ -697,3 +837,4 @@ text = "defaults"
[connection signal="value_changed" from="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Audio/Music/SelectMusicVol" to="." method="_on_MusicVol_value_changed"]
[connection signal="value_changed" from="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Audio/Sound/SelectSoundVol" to="." method="_on_SoundVol_value_changed"]
[connection signal="selected" from="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Audio/LandingSound/SelectLandingSound" to="." method="_on_LandingSound_selected"]
[connection signal="button_down" from="CenterContainer/PanelContainer/MarginContainer/VBoxContainer/Tabs/Input/ScrollContainer/ControlsVBox/DefaultControls" to="." method="_on_DefaultControls_button_down"]