initial add

This commit is contained in:
2026-04-10 17:53:31 -05:00
commit ebd36e4ef3
196 changed files with 51603 additions and 0 deletions

View File

@@ -0,0 +1,383 @@
[gd_scene load_steps=59 format=3 uid="uid://dhfawoy2d8lsq"]
[ext_resource type="Texture2D" uid="uid://cejt0nhot8uw4" path="res://assets/character/gobbo.png" id="2_0vjlc"]
[ext_resource type="Script" uid="uid://dwbhtjvpv0utl" path="res://scripts/states/StateMachine.cs" id="2_5y66v"]
[ext_resource type="Script" uid="uid://dvytggb7uhxsf" path="res://scripts/Player.cs" id="2_wmtbp"]
[ext_resource type="PackedScene" uid="uid://ciycf4hbxu0v5" path="res://assets/character/model.tscn" id="3_0vjlc"]
[ext_resource type="Script" uid="uid://dv3sve5vfcn55" path="res://scripts/states/player/PlayerGrounded.cs" id="3_wmtbp"]
[ext_resource type="Script" uid="uid://desj0bmav00ec" path="res://scripts/states/player/PlayerAirborn.cs" id="4_5y66v"]
[ext_resource type="Script" uid="uid://dn3js76wk06we" path="res://scripts/states/player/PlayerWallGrab.cs" id="5_uicah"]
[sub_resource type="LabelSettings" id="LabelSettings_wmtbp"]
font_size = 24
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_g2qfr"]
animation = &"parachute_up_left"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_e5n5u"]
animation = &"parachute_down_left"
[sub_resource type="AnimationNodeBlendSpace1D" id="AnimationNodeBlendSpace1D_jb4us"]
blend_point_0/node = SubResource("AnimationNodeAnimation_g2qfr")
blend_point_0/pos = -100.0
blend_point_1/node = SubResource("AnimationNodeAnimation_e5n5u")
blend_point_1/pos = 100.0
min_space = -100.0
max_space = 100.0
sync = true
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_x06ku"]
animation = &"parachute_up_right"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_pygui"]
animation = &"parachute_down_right"
[sub_resource type="AnimationNodeBlendSpace1D" id="AnimationNodeBlendSpace1D_okkwj"]
blend_point_0/node = SubResource("AnimationNodeAnimation_x06ku")
blend_point_0/pos = -100.0
blend_point_1/node = SubResource("AnimationNodeAnimation_pygui")
blend_point_1/pos = 100.0
min_space = -100.0
max_space = 100.0
sync = true
[sub_resource type="AnimationNodeBlendSpace1D" id="AnimationNodeBlendSpace1D_erpy8"]
blend_point_0/node = SubResource("AnimationNodeBlendSpace1D_jb4us")
blend_point_0/pos = -1.0
blend_point_1/node = SubResource("AnimationNodeBlendSpace1D_okkwj")
blend_point_1/pos = 1.0
sync = true
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_erpy8"]
animation = &"airborne_up_left"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_uicah"]
animation = &"airborne_down_left"
[sub_resource type="AnimationNodeBlendSpace1D" id="AnimationNodeBlendSpace1D_g2qfr"]
blend_point_0/node = SubResource("AnimationNodeAnimation_erpy8")
blend_point_0/pos = -100.0
blend_point_1/node = SubResource("AnimationNodeAnimation_uicah")
blend_point_1/pos = 100.0
min_space = -100.0
max_space = 100.0
sync = true
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_vreni"]
animation = &"airborne_up_right"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_7r6u0"]
animation = &"airborne_down_right"
[sub_resource type="AnimationNodeBlendSpace1D" id="AnimationNodeBlendSpace1D_e5n5u"]
blend_point_0/node = SubResource("AnimationNodeAnimation_vreni")
blend_point_0/pos = -100.0
blend_point_1/node = SubResource("AnimationNodeAnimation_7r6u0")
blend_point_1/pos = 100.0
min_space = -100.0
max_space = 100.0
sync = true
[sub_resource type="AnimationNodeBlendSpace1D" id="AnimationNodeBlendSpace1D_wmtbp"]
blend_point_0/node = SubResource("AnimationNodeBlendSpace1D_g2qfr")
blend_point_0/pos = -1.0
blend_point_1/node = SubResource("AnimationNodeBlendSpace1D_e5n5u")
blend_point_1/pos = 1.0
sync = true
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_vreni"]
switch_mode = 1
advance_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_e5n5u"]
xfade_time = 0.2
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ba010"]
xfade_time = 0.2
switch_mode = 1
[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_erpy8"]
states/Parachute/node = SubResource("AnimationNodeBlendSpace1D_erpy8")
states/Parachute/position = Vector2(596, 87)
states/Standard/node = SubResource("AnimationNodeBlendSpace1D_wmtbp")
states/Standard/position = Vector2(368, 87)
states/Start/position = Vector2(197, 87)
transitions = ["Start", "Standard", SubResource("AnimationNodeStateMachineTransition_vreni"), "Standard", "Parachute", SubResource("AnimationNodeStateMachineTransition_e5n5u"), "Parachute", "Standard", SubResource("AnimationNodeStateMachineTransition_ba010")]
graph_offset = Vector2(-169, -32)
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_wmtbp"]
animation = &"idle_left"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_5y66v"]
animation = &"idle_right"
[sub_resource type="AnimationNodeBlendSpace1D" id="AnimationNodeBlendSpace1D_uicah"]
blend_point_0/node = SubResource("AnimationNodeAnimation_wmtbp")
blend_point_0/pos = -1.0
blend_point_1/node = SubResource("AnimationNodeAnimation_5y66v")
blend_point_1/pos = 1.0
sync = true
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_jb4us"]
animation = &"skidturn_left_to_right"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_ux0ro"]
animation = &"skidturn_right_to_left"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_vhx6d"]
animation = &"sprint_left"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_2smwq"]
animation = &"sprint_right"
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_x06ku"]
xfade_time = 0.05
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_pygui"]
xfade_time = 0.1
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_okkwj"]
xfade_time = 0.05
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_p86hl"]
xfade_time = 0.1
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_71sfj"]
xfade_time = 0.15
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_o0173"]
xfade_time = 0.15
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ux0ro"]
xfade_time = 0.15
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_vhx6d"]
xfade_time = 0.15
switch_mode = 1
[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_g2qfr"]
states/End/position = Vector2(836.5, -7)
states/Start/position = Vector2(494, 78)
states/skidturn_left_to_right/node = SubResource("AnimationNodeAnimation_jb4us")
states/skidturn_left_to_right/position = Vector2(494, 152)
states/skidturn_right_to_left/node = SubResource("AnimationNodeAnimation_ux0ro")
states/skidturn_right_to_left/position = Vector2(489, -7)
states/sprint_left/node = SubResource("AnimationNodeAnimation_vhx6d")
states/sprint_left/position = Vector2(345, 78)
states/sprint_right/node = SubResource("AnimationNodeAnimation_2smwq")
states/sprint_right/position = Vector2(653, 78)
transitions = ["sprint_right", "skidturn_right_to_left", SubResource("AnimationNodeStateMachineTransition_x06ku"), "skidturn_right_to_left", "sprint_left", SubResource("AnimationNodeStateMachineTransition_pygui"), "sprint_left", "skidturn_left_to_right", SubResource("AnimationNodeStateMachineTransition_okkwj"), "skidturn_left_to_right", "sprint_right", SubResource("AnimationNodeStateMachineTransition_p86hl"), "Start", "sprint_left", SubResource("AnimationNodeStateMachineTransition_71sfj"), "Start", "sprint_right", SubResource("AnimationNodeStateMachineTransition_o0173"), "skidturn_left_to_right", "skidturn_right_to_left", SubResource("AnimationNodeStateMachineTransition_ux0ro"), "skidturn_right_to_left", "skidturn_left_to_right", SubResource("AnimationNodeStateMachineTransition_vhx6d")]
graph_offset = Vector2(147.187, -50.844)
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_xub24"]
animation = &"walk_left"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_iinkm"]
animation = &"walk_right"
[sub_resource type="AnimationNodeBlendSpace1D" id="AnimationNodeBlendSpace1D_vreni"]
blend_point_0/node = SubResource("AnimationNodeAnimation_xub24")
blend_point_0/pos = -1.0
blend_point_1/node = SubResource("AnimationNodeAnimation_iinkm")
blend_point_1/pos = 1.0
sync = true
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_7r6u0"]
xfade_time = 0.05
switch_mode = 1
advance_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_wmtbp"]
xfade_time = 0.1
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_5y66v"]
xfade_time = 0.1
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_uicah"]
xfade_time = 0.1
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_g2qfr"]
xfade_time = 0.1
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_xub24"]
xfade_time = 0.2
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_iinkm"]
xfade_time = 0.2
switch_mode = 1
[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_e5n5u"]
states/Idle/node = SubResource("AnimationNodeBlendSpace1D_uicah")
states/Idle/position = Vector2(474, 141)
states/Sprint/node = SubResource("AnimationNodeStateMachine_g2qfr")
states/Sprint/position = Vector2(645, 100)
states/Start/position = Vector2(275, 100)
states/Walk/node = SubResource("AnimationNodeBlendSpace1D_vreni")
states/Walk/position = Vector2(474, 39)
transitions = ["Start", "Idle", SubResource("AnimationNodeStateMachineTransition_7r6u0"), "Walk", "Idle", SubResource("AnimationNodeStateMachineTransition_wmtbp"), "Idle", "Walk", SubResource("AnimationNodeStateMachineTransition_5y66v"), "Idle", "Sprint", SubResource("AnimationNodeStateMachineTransition_uicah"), "Sprint", "Idle", SubResource("AnimationNodeStateMachineTransition_g2qfr"), "Walk", "Sprint", SubResource("AnimationNodeStateMachineTransition_xub24"), "Sprint", "Walk", SubResource("AnimationNodeStateMachineTransition_iinkm")]
graph_offset = Vector2(-79, -34)
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_erpy8"]
switch_mode = 1
advance_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_k0yad"]
xfade_time = 0.1
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_jb4us"]
xfade_time = 0.1
switch_mode = 1
[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_jb4us"]
states/Airborne/node = SubResource("AnimationNodeStateMachine_erpy8")
states/Airborne/position = Vector2(375, 33)
states/Grounded/node = SubResource("AnimationNodeStateMachine_e5n5u")
states/Grounded/position = Vector2(375, 128)
states/Start/position = Vector2(210, 128)
transitions = ["Start", "Grounded", SubResource("AnimationNodeStateMachineTransition_erpy8"), "Grounded", "Airborne", SubResource("AnimationNodeStateMachineTransition_k0yad"), "Airborne", "Grounded", SubResource("AnimationNodeStateMachineTransition_jb4us")]
graph_offset = Vector2(-133, -13.4125)
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_0vjlc"]
radius = 2.0
height = 7.0
[node name="Player" type="CharacterBody2D"]
collision_mask = 2
script = ExtResource("2_wmtbp")
[node name="StateLabel" type="Label" parent="."]
offset_left = -3.0
offset_top = 2.0
offset_right = 57.0
offset_bottom = 36.0
scale = Vector2(0.1, 0.1)
text = "State"
label_settings = SubResource("LabelSettings_wmtbp")
[node name="AnimationTree" type="AnimationTree" parent="."]
root_node = NodePath("../ModelContainer/SubViewportContainer/SubViewport/blockbench_export")
tree_root = SubResource("AnimationNodeStateMachine_jb4us")
anim_player = NodePath("../ModelContainer/SubViewportContainer/SubViewport/blockbench_export/AnimationPlayer")
parameters/Airborne/Parachute/blend_position = 1.0
parameters/Airborne/Parachute/0/blend_position = 0
parameters/Airborne/Parachute/1/blend_position = 0
parameters/Airborne/Standard/blend_position = -0.0893281
parameters/Airborne/Standard/0/blend_position = 0.0
parameters/Airborne/Standard/1/blend_position = 0.0
parameters/Grounded/Idle/blend_position = 1.0
parameters/Grounded/Walk/blend_position = 1.0
[node name="StateMachine" type="Node" parent="." node_paths=PackedStringArray("InitialState")]
script = ExtResource("2_5y66v")
InitialState = NodePath("PlayerGrounded")
[node name="PlayerGrounded" type="Node" parent="StateMachine"]
script = ExtResource("3_wmtbp")
[node name="PlayerAirborne" type="Node" parent="StateMachine"]
script = ExtResource("4_5y66v")
[node name="PlayerWallGrab" type="Node" parent="StateMachine"]
script = ExtResource("5_uicah")
[node name="WallCastTop" type="RayCast2D" parent="."]
position = Vector2(0, -7)
target_position = Vector2(3.8, 0)
collision_mask = 2
hit_from_inside = true
[node name="WallCastMid" type="RayCast2D" parent="."]
position = Vector2(0, -4)
target_position = Vector2(3.6, 0)
collision_mask = 2
hit_from_inside = true
[node name="WallCastLow" type="RayCast2D" parent="."]
position = Vector2(0, -1)
target_position = Vector2(3.6, 0)
collision_mask = 2
hit_from_inside = true
[node name="WallCastDelay" type="Timer" parent="."]
wait_time = 0.1
one_shot = true
[node name="CameraOffsetCast" type="RayCast2D" parent="."]
visible = false
position = Vector2(0, -8.1)
target_position = Vector2(0, -28)
collision_mask = 2
[node name="CameraDownCast" type="RayCast2D" parent="CameraOffsetCast"]
top_level = true
target_position = Vector2(0, 56)
collision_mask = 2
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(0, -3.5)
shape = SubResource("CapsuleShape2D_0vjlc")
[node name="Sprite2D" type="Sprite2D" parent="."]
visible = false
position = Vector2(0, -4)
texture = ExtResource("2_0vjlc")
[node name="ModelContainer" type="Node2D" parent="."]
position = Vector2(0, -0.39)
scale = Vector2(2, 2)
[node name="SubViewportContainer" type="SubViewportContainer" parent="ModelContainer"]
offset_left = -4.0
offset_top = -8.0
offset_right = 1020.0
offset_bottom = 1016.0
scale = Vector2(0.008, 0.008)
[node name="SubViewport" type="SubViewport" parent="ModelContainer/SubViewportContainer"]
transparent_bg = true
handle_input_locally = false
size = Vector2i(1024, 1024)
render_target_update_mode = 4
[node name="blockbench_export" parent="ModelContainer/SubViewportContainer/SubViewport" instance=ExtResource("3_0vjlc")]
[node name="Skeleton3D" parent="ModelContainer/SubViewportContainer/SubViewport/blockbench_export/root" index="0"]
bones/2/scale = Vector3(0, 0, 0)
bones/6/position = Vector3(-0.03125, 0.0288724, 0)
bones/6/rotation = Quaternion(0, 0, 0.00318058, 0.999995)
bones/9/rotation = Quaternion(0, 0.92388, 0, 0.382683)
bones/10/position = Vector3(0.09375, 0.125, 0.0625)
bones/10/rotation = Quaternion(0, 0, -0.000881489, 1)
bones/11/position = Vector3(-0.03125, 0.078125, -0.03125)
bones/13/rotation = Quaternion(0, 0.92388, 0, 0.382683)
bones/14/position = Vector3(-0.03125, 0.0625, -0.015625)
[node name="Camera3D" type="Camera3D" parent="ModelContainer/SubViewportContainer/SubViewport"]
transform = Transform3D(-1, 0, 1.50996e-07, 0, 1, 0, -1.50996e-07, 0, -1, 0, 0.5, -1)
projection = 1
[node name="BlinkTimer" type="Timer" parent="."]
[node name="CoyoteTimer" type="Timer" parent="."]
wait_time = 0.12
one_shot = true
[connection signal="timeout" from="WallCastDelay" to="." method="_on_wall_cast_delay_timeout"]
[connection signal="timeout" from="BlinkTimer" to="." method="_on_blink_timer_timeout"]
[connection signal="timeout" from="CoyoteTimer" to="." method="_on_coyote_timer_timeout"]
[editable path="ModelContainer/SubViewportContainer/SubViewport/blockbench_export"]

View File

@@ -0,0 +1,32 @@
[gd_scene load_steps=2 format=3 uid="uid://bx2uw8uoj4c03"]
[ext_resource type="Script" uid="uid://dqks36qvuhn7y" path="res://scripts/debug.gd" id="1_lgrwq"]
[node name="debug" type="Node"]
script = ExtResource("1_lgrwq")
[node name="VBoxContainer" type="VBoxContainer" parent="."]
offset_right = 175.0
offset_bottom = 50.0
[node name="fpsBox" type="HBoxContainer" parent="VBoxContainer"]
layout_mode = 2
[node name="fpsLabel" type="Label" parent="VBoxContainer/fpsBox"]
layout_mode = 2
text = "FPS: "
[node name="fpsValue" type="Label" parent="VBoxContainer/fpsBox"]
layout_mode = 2
text = "#"
[node name="simSpeedBox" type="HBoxContainer" parent="VBoxContainer"]
layout_mode = 2
[node name="simSpeedLabel" type="Label" parent="VBoxContainer/simSpeedBox"]
layout_mode = 2
text = "Simulation Speed:"
[node name="simSpeedValue" type="Label" parent="VBoxContainer/simSpeedBox"]
layout_mode = 2
text = "1.00"

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,38 @@
[gd_scene load_steps=3 format=3 uid="uid://d25timr8vhun4"]
[ext_resource type="Script" uid="uid://8yal1fqglvut" path="res://scripts/user_interface/loading_screen.gd" id="1_77x1d"]
[ext_resource type="Texture2D" uid="uid://bai33al6u8ywo" path="res://assets/ui/loading_wheel.png" id="1_q1p2u"]
[node name="LoadingScreen" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_77x1d")
[node name="ColorRect" type="ColorRect" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0.0784314, 0.180392, 0.14902, 1)
[node name="TextureProgressBar" type="TextureProgressBar" parent="."]
texture_filter = 1
layout_mode = 1
anchors_preset = -1
anchor_left = 0.472222
anchor_top = 0.450617
anchor_right = 0.527778
anchor_bottom = 0.549383
offset_bottom = 3.05176e-05
grow_horizontal = 2
grow_vertical = 2
fill_mode = 4
nine_patch_stretch = true
texture_progress = ExtResource("1_q1p2u")
metadata/_edit_use_anchors_ = true

View File

@@ -0,0 +1,64 @@
[gd_scene load_steps=3 format=3 uid="uid://bqscbwk67fkf5"]
[ext_resource type="Script" uid="uid://cydmxkxpei0o3" path="res://scripts/user_interface/pause_menu/pause_menu.gd" id="1_m2jqd"]
[ext_resource type="PackedScene" uid="uid://cki48fruo8bym" path="res://scenes/user_interface/settings_menu.tscn" id="2_r41ql"]
[node name="PauseMenu" type="Control"]
process_mode = 3
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_m2jqd")
[node name="SettingsMenu" parent="." instance=ExtResource("2_r41ql")]
layout_mode = 2
anchors_preset = 0
anchor_right = 0.0
anchor_bottom = 0.0
offset_left = 526.0
offset_top = 376.5
offset_right = 626.0
offset_bottom = 376.5
[node name="Background" type="ColorRect" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
color = Color(0.0774, 0.18, 0.14922, 0.498039)
[node name="VBoxContainer" type="VBoxContainer" parent="."]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -47.5
offset_top = -50.5
offset_right = 47.5
offset_bottom = 50.5
grow_horizontal = 2
grow_vertical = 2
[node name="ResumeButton" type="Button" parent="VBoxContainer"]
layout_mode = 2
text = "Resume"
[node name="SettingsButton" type="Button" parent="VBoxContainer"]
layout_mode = 2
text = "Settings"
[node name="QuitButton" type="Button" parent="VBoxContainer"]
layout_mode = 2
text = "Quit to Title"
[connection signal="pressed" from="VBoxContainer/ResumeButton" to="." method="_on_resume_pressed"]
[connection signal="pressed" from="VBoxContainer/SettingsButton" to="." method="_on_settings_button_pressed"]
[connection signal="pressed" from="VBoxContainer/QuitButton" to="." method="_on_quit_button_pressed"]

View File

@@ -0,0 +1,115 @@
[gd_scene load_steps=3 format=3 uid="uid://cki48fruo8bym"]
[ext_resource type="Script" uid="uid://3uqf5dorg2et" path="res://scripts/user_interface/slider_label.gd" id="1_66447"]
[ext_resource type="Script" uid="uid://f1f4otkm5x0r" path="res://scripts/user_interface/settings_menu/settings.gd" id="1_gh5wx"]
[node name="SettingsMenu" type="Control"]
process_mode = 3
z_index = 2
texture_filter = 1
layout_direction = 1
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_gh5wx")
[node name="VBoxContainer" type="VBoxContainer" parent="."]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -412.0
offset_top = -237.0
offset_right = 413.0
offset_bottom = 176.0
grow_horizontal = 2
grow_vertical = 2
metadata/_edit_group_ = true
[node name="TabContainer" type="TabContainer" parent="VBoxContainer"]
layout_mode = 2
size_flags_vertical = 3
current_tab = 1
clip_tabs = false
[node name="Game" type="VBoxContainer" parent="VBoxContainer/TabContainer"]
visible = false
layout_mode = 2
metadata/_tab_index = 0
[node name="Control" type="VBoxContainer" parent="VBoxContainer/TabContainer"]
layout_mode = 2
metadata/_tab_index = 1
[node name="InvertMouse" type="HBoxContainer" parent="VBoxContainer/TabContainer/Control"]
layout_mode = 2
[node name="Label" type="Label" parent="VBoxContainer/TabContainer/Control/InvertMouse"]
layout_mode = 2
text = "Invert Mouse"
[node name="InvertMouse" type="CheckBox" parent="VBoxContainer/TabContainer/Control/InvertMouse"]
layout_mode = 2
[node name="CameraSens" type="HBoxContainer" parent="VBoxContainer/TabContainer/Control"]
layout_mode = 2
[node name="Label" type="Label" parent="VBoxContainer/TabContainer/Control/CameraSens"]
layout_mode = 2
text = "Camera Sensitivity :"
[node name="SliderLabel" type="Label" parent="VBoxContainer/TabContainer/Control/CameraSens" node_paths=PackedStringArray("LabeledSlider")]
layout_mode = 2
size_flags_horizontal = 3
text = "#
"
horizontal_alignment = 1
script = ExtResource("1_66447")
LabeledSlider = NodePath("../CameraSens")
[node name="Panel" type="Panel" parent="VBoxContainer/TabContainer/Control/CameraSens"]
modulate = Color(1, 1, 1, 0)
custom_minimum_size = Vector2(48, 0)
layout_direction = 2
layout_mode = 2
[node name="CameraSens" type="HSlider" parent="VBoxContainer/TabContainer/Control/CameraSens"]
custom_minimum_size = Vector2(500, 0)
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 1
min_value = 1.0
value = 1.0
ticks_on_borders = true
[node name="Panel2" type="Panel" parent="VBoxContainer/TabContainer/Control/CameraSens"]
modulate = Color(1, 1, 1, 0)
custom_minimum_size = Vector2(48, 0)
layout_direction = 2
layout_mode = 2
[node name="Audio" type="VBoxContainer" parent="VBoxContainer/TabContainer"]
visible = false
layout_mode = 2
metadata/_tab_index = 2
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"]
layout_mode = 2
[node name="ExitButton" type="Button" parent="VBoxContainer/HBoxContainer"]
layout_mode = 2
text = "Back
"
[node name="Panel" type="Panel" parent="VBoxContainer/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
[connection signal="toggled" from="VBoxContainer/TabContainer/Control/InvertMouse/InvertMouse" to="." method="_on_invert_mouse_toggled"]
[connection signal="drag_ended" from="VBoxContainer/TabContainer/Control/CameraSens/CameraSens" to="." method="_on_camera_sens_drag_ended"]
[connection signal="pressed" from="VBoxContainer/HBoxContainer/ExitButton" to="." method="_on_exit_button_pressed"]

View File

@@ -0,0 +1,92 @@
[gd_scene load_steps=8 format=3 uid="uid://4sjryt00hgse"]
[ext_resource type="Script" uid="uid://bs1g3xjxf8i3k" path="res://scripts/user_interface/title_screen/title_screen.gd" id="1_0rdiu"]
[ext_resource type="Script" uid="uid://b34ocehefekp3" path="res://scripts/user_interface/title_screen/start_button.gd" id="1_00sld"]
[ext_resource type="PackedScene" uid="uid://cki48fruo8bym" path="res://scenes/user_interface/settings_menu.tscn" id="2_0t2hv"]
[ext_resource type="Script" uid="uid://cx5wq6cs2lqxg" path="res://scripts/user_interface/title_screen/quit_button.gd" id="2_df56y"]
[sub_resource type="LabelSettings" id="LabelSettings_yby3l"]
font_size = 66
shadow_size = 11
shadow_color = Color(0, 0.08, 0.0253333, 0.368627)
shadow_offset = Vector2(5.19, 3.49)
[sub_resource type="InputEventKey" id="InputEventKey_2vhw3"]
device = -1
keycode = 4194309
[sub_resource type="Shortcut" id="Shortcut_chj2k"]
events = [SubResource("InputEventKey_2vhw3")]
[node name="TitleScreen" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_0rdiu")
[node name="SettingsMenu" parent="." instance=ExtResource("2_0t2hv")]
layout_mode = 1
[node name="Background" type="ColorRect" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
color = Color(0.0792, 0.18, 0.14976, 1)
[node name="Title" type="Label" parent="."]
layout_mode = 1
anchors_preset = -1
anchor_top = 0.310185
anchor_right = 1.0
anchor_bottom = 0.450617
grow_horizontal = 2
grow_vertical = 2
text = "Gobbo's Delivery"
label_settings = SubResource("LabelSettings_yby3l")
horizontal_alignment = 1
uppercase = true
metadata/_edit_use_anchors_ = true
[node name="VBoxContainer" type="VBoxContainer" parent="."]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -48.0
offset_top = 66.0
offset_right = 48.0
offset_bottom = 200.0
grow_horizontal = 2
grow_vertical = 2
[node name="StartButton" type="Button" parent="VBoxContainer"]
layout_mode = 2
shortcut = SubResource("Shortcut_chj2k")
text = "Start Game"
script = ExtResource("1_00sld")
goto_scene = "res://scenes/levels/prototype.tscn"
[node name="SettingsButton" type="Button" parent="VBoxContainer"]
layout_mode = 2
shortcut = SubResource("Shortcut_chj2k")
text = "Settings"
[node name="QuitButton" type="Button" parent="VBoxContainer"]
layout_mode = 2
shortcut = SubResource("Shortcut_chj2k")
text = "Exit Game
"
script = ExtResource("2_df56y")
[connection signal="pressed" from="VBoxContainer/StartButton" to="VBoxContainer/StartButton" method="_on_pressed"]
[connection signal="pressed" from="VBoxContainer/SettingsButton" to="." method="_on_settings_button_pressed"]
[connection signal="pressed" from="VBoxContainer/QuitButton" to="VBoxContainer/QuitButton" method="_on_pressed"]