Add new level and level transitions

This commit is contained in:
Nathan Chapman 2025-06-01 15:39:29 -06:00
parent f844ca7f8c
commit 7753ed8b87
86 changed files with 780 additions and 110 deletions

View File

@ -18,6 +18,8 @@ config/icon="res://icon.svg"
[autoload] [autoload]
VFXManager="*res://src/scenes/autoload/vfx_manager.tscn" VFXManager="*res://src/scenes/autoload/vfx_manager.tscn"
SceneTransition="*res://src/scenes/ui/scene_transition.tscn"
PersistentData="*res://src/scenes/autoload/persistent_data.tscn"
[debug] [debug]

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,35 @@
[gd_scene load_steps=2 format=3 uid="uid://nh7vvr3udjl8"]
[ext_resource type="Script" uid="uid://bt167yngsn8dw" path="res://src/scripts/autoload/persistent_data.gd" id="1_l0pkx"]
[node name="PersistentData" type="Control"]
visible = false
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
script = ExtResource("1_l0pkx")
[node name="InventoryNode" type="Control" parent="."]
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0
mouse_filter = 2
[node name="WeaponNode" type="Control" parent="."]
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0
[node name="ShieldNode" type="Control" parent="."]
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0
[node name="ArmorNode" type="Control" parent="."]
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0

View File

@ -0,0 +1,35 @@
[gd_scene load_steps=2 format=3 uid="uid://nh7vvr3udjl8"]
[ext_resource type="Script" uid="uid://bt167yngsn8dw" path="res://src/scripts/autoload/persistent_data.gd" id="1_l0pkx"]
[node name="PersistentData" type="Control"]
visible = false
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
script = ExtResource("1_l0pkx")
[node name="InventoryNode" type="Control" parent="."]
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0
mouse_filter = 2
[node name="WeaponsNode" type="Control" parent="."]
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0
[node name="ShieldNode" type="Control" parent="."]
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0
[node name="ArmorNode" type="Control" parent="."]
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0

View File

@ -36,37 +36,37 @@ shape = SubResource("CapsuleShape3D_r8u7w")
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
[node name="Skeleton3D" parent="Rig/CharacterRig/GameRig" index="0"] [node name="Skeleton3D" parent="Rig/CharacterRig/GameRig" index="0"]
bones/0/position = Vector3(4.44089e-15, 0.910953, -0.0481736) bones/0/position = Vector3(4.02237e-15, 0.906557, -0.0481736)
bones/2/rotation = Quaternion(0.00715016, -0.000270345, 0.00321101, 0.999969) bones/2/rotation = Quaternion(0.00427687, -0.000316915, 0.00321231, 0.999986)
bones/3/rotation = Quaternion(-0.0883515, -0.000274197, 0.00852491, 0.996053) bones/3/rotation = Quaternion(-0.0909296, -0.000307747, 0.00852351, 0.995821)
bones/4/rotation = Quaternion(0.269789, 1.43987e-08, 9.16453e-08, 0.96292) bones/4/rotation = Quaternion(0.27205, 1.50414e-08, 9.03284e-08, 0.962283)
bones/6/rotation = Quaternion(-0.165313, -1.17569e-07, -1.97069e-08, 0.986241) bones/6/rotation = Quaternion(-0.16249, -1.17426e-07, -2.0583e-08, 0.98671)
bones/7/position = Vector3(-3.02053e-08, 0.910953, -0.0481735) bones/7/position = Vector3(-2.62133e-08, 0.906557, -0.0481735)
bones/8/position = Vector3(-5.54676e-08, 0.910953, -0.0481735) bones/8/position = Vector3(-2.28571e-08, 0.906557, -0.0481735)
bones/9/position = Vector3(0.131144, 0.977157, -0.0351291) bones/9/position = Vector3(0.131144, 0.972761, -0.0351291)
bones/9/rotation = Quaternion(0.994319, 0.0202095, -0.0312668, 0.0997189) bones/9/rotation = Quaternion(0.9939, 0.0204295, -0.0311604, 0.103801)
bones/11/rotation = Quaternion(0.393204, -0.000694492, 0.000297126, 0.919451) bones/11/rotation = Quaternion(0.402591, -0.000697316, 0.000306836, 0.91538)
bones/13/rotation = Quaternion(-0.74009, 0.011843, 0.024358, 0.671962) bones/13/rotation = Quaternion(-0.744008, 0.0118574, 0.0243724, 0.667621)
bones/15/position = Vector3(-0.131144, 0.977157, -0.0351291) bones/15/position = Vector3(-0.131144, 0.972761, -0.0351291)
bones/15/rotation = Quaternion(0.975987, -0.00524444, 0.0276951, 0.215996) bones/15/rotation = Quaternion(0.975057, -0.00542666, 0.0275689, 0.220171)
bones/17/rotation = Quaternion(0.41958, 0.00314561, -0.00145412, 0.907712) bones/17/rotation = Quaternion(0.428066, 0.00319591, -0.00151385, 0.903741)
bones/19/rotation = Quaternion(-0.677426, -0.0281345, -0.00149649, 0.735051) bones/19/rotation = Quaternion(-0.681122, -0.0281548, -0.00123699, 0.731628)
bones/21/position = Vector3(0.0251286, 1.44036, 0.0474137) bones/21/position = Vector3(0.0251286, 1.43629, 0.045864)
bones/21/rotation = Quaternion(-0.46932, -0.267709, -0.417628, 0.730519) bones/21/rotation = Quaternion(-0.476775, -0.264756, -0.412138, 0.729885)
bones/22/position = Vector3(0.191593, 1.4794, -0.00923866) bones/22/position = Vector3(0.190673, 1.47466, -0.0138298)
bones/22/rotation = Quaternion(0.0197668, -0.164243, 0.975516, -0.144921) bones/22/rotation = Quaternion(0.0292472, -0.162826, 0.975278, -0.146511)
bones/23/rotation = Quaternion(7.1093e-08, -0.0403403, 2.07269e-08, 0.999186) bones/23/rotation = Quaternion(1.76026e-08, -0.0327145, 3.89572e-08, 0.999465)
bones/24/rotation = Quaternion(0.354444, -0.0404196, -0.0221276, 0.933941) bones/24/rotation = Quaternion(0.337126, -0.0327154, -0.0210206, 0.940656)
bones/46/position = Vector3(-0.0113635, 1.44036, 0.0474137) bones/46/position = Vector3(-0.0113635, 1.43629, 0.045864)
bones/46/rotation = Quaternion(-0.468803, 0.266677, 0.417532, 0.731282) bones/46/rotation = Quaternion(-0.482401, 0.25213, 0.40392, 0.735233)
bones/47/position = Vector3(-0.177709, 1.47954, -0.00948774) bones/47/position = Vector3(-0.174745, 1.47507, -0.0192641)
bones/47/rotation = Quaternion(-0.00744272, -0.148237, 0.976085, 0.158837) bones/47/rotation = Quaternion(-0.0291667, -0.144664, 0.975677, 0.162097)
bones/48/rotation = Quaternion(-1.46507e-07, 0.0591718, -1.3974e-07, 0.998248) bones/48/rotation = Quaternion(-9.65957e-08, 0.0447727, -1.43539e-07, 0.998997)
bones/49/rotation = Quaternion(0.39551, 0.0593204, 0.0277605, 0.916124) bones/49/rotation = Quaternion(0.375675, 0.0447733, 0.0285221, 0.92523)
bones/71/position = Vector3(0.127191, 1.3616, -0.0243553) bones/71/position = Vector3(0.127191, 1.35657, -0.0249918)
bones/71/rotation = Quaternion(2.03481e-08, 0.597841, 0.801615, -4.58317e-08) bones/71/rotation = Quaternion(2.00287e-08, 0.602526, 0.798099, -4.60171e-08)
bones/72/position = Vector3(-0.113426, 1.3616, -0.0243553) bones/72/position = Vector3(-0.113426, 1.35657, -0.0249918)
bones/72/rotation = Quaternion(2.03481e-08, 0.597841, 0.801615, -4.58316e-08) bones/72/rotation = Quaternion(2.00287e-08, 0.602526, 0.798099, -4.6017e-08)
[node name="Knight_02" parent="Rig/CharacterRig/GameRig/Skeleton3D" index="1"] [node name="Knight_02" parent="Rig/CharacterRig/GameRig/Skeleton3D" index="1"]
visible = false visible = false
@ -75,12 +75,12 @@ visible = false
visible = true visible = true
[node name="RightHandBone" parent="Rig" index="2"] [node name="RightHandBone" parent="Rig" index="2"]
transform = Transform3D(-0.962406, -0.270594, -0.023532, 0.220109, -0.827734, 0.516149, -0.159145, 0.491565, 0.856175, -0.351473, 1.01394, 0.0326189) transform = Transform3D(-0.962343, -0.270803, -0.0237119, 0.227232, -0.849239, 0.476611, -0.149205, 0.453275, 0.878794, -0.348562, 1.00394, 0.0133554)
[node name="broken_sword" parent="Rig/RightHandBone/WeaponSlot" index="0" instance=ExtResource("6_aygwl")] [node name="broken_sword" parent="Rig/RightHandBone/WeaponSlot" index="0" instance=ExtResource("6_aygwl")]
[node name="LeftHandBone" parent="Rig" index="3"] [node name="LeftHandBone" parent="Rig" index="3"]
transform = Transform3D(-0.970516, 0.239097, 0.0305111, -0.208084, -0.894985, 0.394591, 0.121653, 0.376608, 0.91835, 0.348401, 0.996406, -0.00542178) transform = Transform3D(-0.970513, 0.239108, 0.0305209, -0.212668, -0.908962, 0.358553, 0.113475, 0.34149, 0.93301, 0.347484, 0.98803, -0.0187558)
[node name="PlayerDetectorAttack" type="ShapeCast3D" parent="Rig"] [node name="PlayerDetectorAttack" type="ShapeCast3D" parent="Rig"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1)

View File

@ -70,53 +70,53 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
[node name="Rig" parent="RigPivot" instance=ExtResource("3_n52bt")] [node name="Rig" parent="RigPivot" instance=ExtResource("3_n52bt")]
[node name="Skeleton3D" parent="RigPivot/Rig/CharacterRig/GameRig" index="0"] [node name="Skeleton3D" parent="RigPivot/Rig/CharacterRig/GameRig" index="0"]
bones/0/position = Vector3(3.37508e-15, 0.891802, -0.0481736) bones/0/position = Vector3(4.44089e-15, 0.910675, -0.0481736)
bones/0/rotation = Quaternion(0.12582, 1.18262e-07, 1.49989e-08, 0.992053) bones/0/rotation = Quaternion(0.12582, 1.18262e-07, 1.49989e-08, 0.992053)
bones/1/rotation = Quaternion(-0.0566577, -0.00072973, -0.0117082, 0.998325) bones/1/rotation = Quaternion(-0.0566577, -0.00072973, -0.0117082, 0.998325)
bones/2/position = Vector3(3.20474e-09, 0.146689, -1.95578e-08) bones/2/position = Vector3(3.20474e-09, 0.146689, -1.95578e-08)
bones/2/rotation = Quaternion(-0.00477157, -0.000463564, 0.00321576, 0.999983) bones/2/rotation = Quaternion(0.00704413, -0.000272063, 0.00321107, 0.99997)
bones/3/position = Vector3(-2.01263e-09, 0.202058, -2.51457e-08) bones/3/position = Vector3(-2.01263e-09, 0.202058, -2.51457e-08)
bones/3/rotation = Quaternion(-0.0995774, -0.000420182, 0.00851791, 0.994993) bones/3/rotation = Quaternion(-0.0885404, -0.000276658, 0.00852481, 0.996036)
bones/4/position = Vector3(3.02934e-10, 0.0925562, 3.91155e-08) bones/4/position = Vector3(3.02934e-10, 0.0925562, 3.91155e-08)
bones/4/rotation = Quaternion(0.279128, 1.42007e-08, 9.62163e-08, 0.960254) bones/4/rotation = Quaternion(0.269911, 1.44047e-08, 9.16755e-08, 0.962885)
bones/5/rotation = Quaternion(-0.0948564, -2.80691e-14, -2.26155e-08, 0.995491) bones/5/rotation = Quaternion(-0.0948564, -2.80691e-14, -2.26155e-08, 0.995491)
bones/6/rotation = Quaternion(-0.15348, -1.18034e-07, -1.67592e-08, 0.988152) bones/6/rotation = Quaternion(-0.16516, -1.17572e-07, -1.96886e-08, 0.986267)
bones/7/position = Vector3(-3.58587e-08, 0.891802, -0.0481735) bones/7/position = Vector3(-2.98252e-08, 0.910675, -0.0481735)
bones/7/rotation = Quaternion(-0.0863677, -0.751104, -0.383052, 0.530711) bones/7/rotation = Quaternion(-0.0863677, -0.751104, -0.383052, 0.530711)
bones/8/position = Vector3(-4.91649e-08, 0.891802, -0.0481735) bones/8/position = Vector3(-6.19506e-08, 0.910675, -0.0481735)
bones/8/rotation = Quaternion(-0.0863677, 0.751104, 0.383052, 0.530711) bones/8/rotation = Quaternion(-0.0863677, 0.751104, 0.383052, 0.530711)
bones/9/position = Vector3(0.131144, 0.958007, -0.0351291) bones/9/position = Vector3(0.131144, 0.976879, -0.0351291)
bones/9/rotation = Quaternion(0.992468, 0.0211448, -0.0308219, 0.11666) bones/9/rotation = Quaternion(0.994302, 0.0202187, -0.0312623, 0.0998906)
bones/10/position = Vector3(-2.36129e-08, 0.26601, -2.14789e-08) bones/10/position = Vector3(-2.36129e-08, 0.26601, -2.14789e-08)
bones/10/rotation = Quaternion(-3.13921e-08, -0.000695086, 1.20449e-08, 1) bones/10/rotation = Quaternion(-3.13921e-08, -0.000695086, 1.20449e-08, 1)
bones/11/position = Vector3(-4.6306e-08, 0.26601, 2.42145e-08) bones/11/position = Vector3(-4.6306e-08, 0.26601, 2.42145e-08)
bones/11/rotation = Quaternion(0.431745, -0.000700548, 0.000335449, 0.901996) bones/11/rotation = Quaternion(0.393701, -0.000694664, 0.000297644, 0.919238)
bones/12/position = Vector3(3.05151e-08, 0.22603, 5.03768e-08) bones/12/position = Vector3(3.05151e-08, 0.22603, 5.03768e-08)
bones/12/rotation = Quaternion(-8.19226e-09, -0.00710644, 4.16102e-08, 0.999975) bones/12/rotation = Quaternion(-8.19226e-09, -0.00710644, 4.16102e-08, 0.999975)
bones/13/position = Vector3(-2.95495e-08, 0.22603, 2.68392e-09) bones/13/position = Vector3(-2.95495e-08, 0.22603, 2.68392e-09)
bones/13/rotation = Quaternion(-0.756488, 0.0119036, 0.024431, 0.653443) bones/13/rotation = Quaternion(-0.740256, 0.0118436, 0.0243586, 0.67178)
bones/14/position = Vector3(-3.05481e-08, 0.139877, 1.64787e-08) bones/14/position = Vector3(-3.05481e-08, 0.139877, 1.64787e-08)
bones/14/rotation = Quaternion(-9.66743e-05, 0.967474, -0.252972, -0.000383447) bones/14/rotation = Quaternion(-9.66743e-05, 0.967474, -0.252972, -0.000383447)
bones/15/position = Vector3(-0.131144, 0.958007, -0.0351291) bones/15/position = Vector3(-0.131144, 0.976879, -0.0351291)
bones/15/rotation = Quaternion(0.972077, -0.00599083, 0.0271768, 0.233005) bones/15/rotation = Quaternion(0.975928, -0.00525603, 0.0276871, 0.216262)
bones/16/position = Vector3(-1.10042e-08, 0.265705, -3.31989e-08) bones/16/position = Vector3(-1.10042e-08, 0.265705, -3.31989e-08)
bones/16/rotation = Quaternion(-3.43227e-08, 0.00314323, 8.33075e-10, 0.999995) bones/16/rotation = Quaternion(-3.43227e-08, 0.00314323, 8.33075e-10, 0.999995)
bones/17/position = Vector3(1.83545e-08, 0.265705, 6.98543e-10) bones/17/position = Vector3(1.83545e-08, 0.265705, 6.98543e-10)
bones/17/rotation = Quaternion(0.455066, 0.00335549, -0.0017149, 0.89045) bones/17/rotation = Quaternion(0.420029, 0.00314826, -0.00145723, 0.907504)
bones/18/position = Vector3(1.2807e-08, 0.225719, -8.28774e-09) bones/18/position = Vector3(1.2807e-08, 0.225719, -8.28774e-09)
bones/18/rotation = Quaternion(-2.29017e-08, -0.00785732, 3.30149e-08, 0.999969) bones/18/rotation = Quaternion(-2.29017e-08, -0.00785732, 3.30149e-08, 0.999969)
bones/19/position = Vector3(-1.27748e-08, 0.225719, 1.12004e-08) bones/19/position = Vector3(-1.27748e-08, 0.225719, 1.12004e-08)
bones/19/rotation = Quaternion(-0.692381, -0.0282147, -0.000432916, 0.72098) bones/19/rotation = Quaternion(-0.677559, -0.0281353, -0.00148719, 0.734928)
bones/20/position = Vector3(-1.30142e-08, 0.139877, -2.77457e-09) bones/20/position = Vector3(-1.30142e-08, 0.139877, -2.77457e-09)
bones/20/rotation = Quaternion(-9.96472e-05, 0.967461, -0.253021, -0.000383039) bones/20/rotation = Quaternion(-9.96472e-05, 0.967461, -0.253021, -0.000383039)
bones/21/position = Vector3(0.0251286, 1.42287, 0.0407677) bones/21/position = Vector3(0.0251286, 1.44019, 0.047349)
bones/21/rotation = Quaternion(-0.501716, -0.254442, -0.39392, 0.726889) bones/21/rotation = Quaternion(-0.46971, -0.267556, -0.41734, 0.730489)
bones/22/position = Vector3(0.187338, 1.45827, -0.0289832) bones/22/position = Vector3(0.191561, 1.47923, -0.00940303)
bones/22/rotation = Quaternion(0.0606447, -0.158023, 0.97383, -0.151679) bones/22/rotation = Quaternion(0.0202643, -0.164169, 0.975506, -0.145005)
bones/23/position = Vector3(-5.41331e-09, 0.143946, -2.98023e-08) bones/23/position = Vector3(-5.41331e-09, 0.143946, -2.98023e-08)
bones/23/rotation = Quaternion(8.8908e-08, -0.0073359, 3.28813e-09, 0.999973) bones/23/rotation = Quaternion(7.48446e-08, -0.0400679, 5.54183e-08, 0.999197)
bones/24/position = Vector3(-6.33301e-08, 0.143946, 4.3873e-08) bones/24/position = Vector3(-6.33301e-08, 0.143946, 4.3873e-08)
bones/24/rotation = Quaternion(0.278516, -0.00704655, -0.0166663, 0.960261) bones/24/rotation = Quaternion(0.353683, -0.0400797, -0.0220808, 0.934245)
bones/25/position = Vector3(1.30385e-08, 0.127601, 6.51926e-09) bones/25/position = Vector3(1.30385e-08, 0.127601, 6.51926e-09)
bones/25/rotation = Quaternion(1.49943e-07, -1.20606e-07, 9.91859e-08, 1) bones/25/rotation = Quaternion(1.49943e-07, -1.20606e-07, 9.91859e-08, 1)
bones/26/position = Vector3(2.06034e-08, 0.127601, 2.42761e-08) bones/26/position = Vector3(2.06034e-08, 0.127601, 2.42761e-08)
@ -141,14 +141,14 @@ bones/42/rotation = Quaternion(-0.120913, 0.799109, 0.0358921, 0.587807)
bones/43/rotation = Quaternion(0.498693, -0.0202705, -0.0256953, 0.866161) bones/43/rotation = Quaternion(0.498693, -0.0202705, -0.0256953, 0.866161)
bones/44/rotation = Quaternion(0.715385, 0.035306, 0.0573145, 0.695481) bones/44/rotation = Quaternion(0.715385, 0.035306, 0.0573145, 0.695481)
bones/45/rotation = Quaternion(-0.129059, 0.728936, -0.0250259, 0.67184) bones/45/rotation = Quaternion(-0.129059, 0.728936, -0.0250259, 0.67184)
bones/46/position = Vector3(-0.0113635, 1.42287, 0.0407677) bones/46/position = Vector3(-0.0113635, 1.44019, 0.047349)
bones/46/rotation = Quaternion(-0.527406, 0.202335, 0.358051, 0.743441) bones/46/rotation = Quaternion(-0.469404, 0.266039, 0.416933, 0.731471)
bones/47/position = Vector3(-0.162235, 1.45827, -0.0510164) bones/47/position = Vector3(-0.177613, 1.47939, -0.00982476)
bones/47/rotation = Quaternion(-0.100988, -0.132326, 0.970875, 0.172317) bones/47/rotation = Quaternion(-0.00840254, -0.14808, 0.976077, 0.158982)
bones/48/position = Vector3(1.88476e-07, 0.143946, 1.02445e-08) bones/48/position = Vector3(1.88476e-07, 0.143946, 1.02445e-08)
bones/48/rotation = Quaternion(1.35188e-08, -0.00396547, -2.21344e-08, 0.999992) bones/48/rotation = Quaternion(-1.14487e-07, 0.0586796, -1.06087e-07, 0.998277)
bones/49/position = Vector3(6.5191e-09, 0.143946, -1.95094e-08) bones/49/position = Vector3(6.5191e-09, 0.143946, -1.95094e-08)
bones/49/rotation = Quaternion(0.308264, -0.00406624, 0.028514, 0.950865) bones/49/rotation = Quaternion(0.394639, 0.0586801, 0.0278018, 0.916539)
bones/50/position = Vector3(-1.48779e-07, 0.1276, 5.9139e-08) bones/50/position = Vector3(-1.48779e-07, 0.1276, 5.9139e-08)
bones/50/rotation = Quaternion(-8.73115e-08, 2.7474e-08, -1.28057e-07, 1) bones/50/rotation = Quaternion(-8.73115e-08, 2.7474e-08, -1.28057e-07, 1)
bones/51/position = Vector3(1.9461e-07, 0.127601, 6.06248e-08) bones/51/position = Vector3(1.9461e-07, 0.127601, 6.06248e-08)
@ -174,19 +174,19 @@ bones/67/rotation = Quaternion(0.108364, -0.768224, 0.166291, 0.608635)
bones/68/rotation = Quaternion(0.629954, 0.0295149, 0.0177509, 0.775869) bones/68/rotation = Quaternion(0.629954, 0.0295149, 0.0177509, 0.775869)
bones/69/rotation = Quaternion(0.816678, -0.0439534, -0.0509861, 0.573155) bones/69/rotation = Quaternion(0.816678, -0.0439534, -0.0509861, 0.573155)
bones/70/rotation = Quaternion(-0.12906, -0.728937, 0.0250258, 0.67184) bones/70/rotation = Quaternion(-0.12906, -0.728937, 0.0250258, 0.67184)
bones/71/position = Vector3(0.127191, 1.33983, -0.0270516) bones/71/position = Vector3(0.127191, 1.36142, -0.0243782)
bones/71/rotation = Quaternion(1.89417e-08, 0.618384, 0.785876, -4.66143e-08) bones/71/rotation = Quaternion(2.03347e-08, 0.598037, 0.801468, -4.58396e-08)
bones/72/position = Vector3(-0.113426, 1.33983, -0.0270516) bones/72/position = Vector3(-0.113426, 1.36142, -0.0243782)
bones/72/rotation = Quaternion(1.89418e-08, 0.618384, 0.785876, -4.66142e-08) bones/72/rotation = Quaternion(2.03348e-08, 0.598037, 0.801468, -4.58395e-08)
[node name="RightHandBone" parent="RigPivot/Rig" index="2"] [node name="RightHandBone" parent="RigPivot/Rig" index="2"]
transform = Transform3D(-0.962309, -0.270911, -0.0238701, 0.247289, -0.908164, 0.337768, -0.113183, 0.319135, 0.940926, -0.336079, 0.971891, -0.0516855) transform = Transform3D(-0.962344, -0.270799, -0.0237172, 0.220499, -0.828653, 0.514504, -0.15898, 0.4899, 0.857159, -0.351429, 1.01356, 0.031865)
[node name="LeftHandBone" parent="RigPivot/Rig" index="3"] [node name="LeftHandBone" parent="RigPivot/Rig" index="3"]
transform = Transform3D(-0.970456, 0.239301, 0.030828, -0.225683, -0.94548, 0.234808, 0.0853371, 0.220914, 0.971553, 0.344198, 0.962045, -0.0639757) transform = Transform3D(-0.970465, 0.23928, 0.030714, -0.208375, -0.895578, 0.39309, 0.121565, 0.375081, 0.918986, 0.348415, 0.996086, -0.00597102)
[node name="RayAttachment" type="BoneAttachment3D" parent="RigPivot/Rig"] [node name="RayAttachment" type="BoneAttachment3D" parent="RigPivot/Rig"]
transform = Transform3D(-0.962309, -0.270911, -0.0238701, 0.247289, -0.908164, 0.337768, -0.113183, 0.319135, 0.940926, -0.336079, 0.971891, -0.0516855) transform = Transform3D(-0.962344, -0.270799, -0.0237172, 0.220499, -0.828653, 0.514504, -0.15898, 0.4899, 0.857159, -0.351429, 1.01356, 0.031865)
bone_name = "DEF-hand.R" bone_name = "DEF-hand.R"
bone_idx = 51 bone_idx = 51
use_external_skeleton = true use_external_skeleton = true
@ -203,13 +203,14 @@ script = ExtResource("4_cx3ie")
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1)
collision_mask = 8 collision_mask = 8
[node name="InteractionCast" type="ShapeCast3D" parent="RigPivot" node_paths=PackedStringArray("ui")] [node name="InteractionCast" type="ShapeCast3D" parent="RigPivot" node_paths=PackedStringArray("ui", "player")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
shape = SubResource("CapsuleShape3D_wdvff") shape = SubResource("CapsuleShape3D_wdvff")
target_position = Vector3(0, 0, 1) target_position = Vector3(0, 0, 1)
collision_mask = 2 collision_mask = 2
script = ExtResource("8_n7yyv") script = ExtResource("8_n7yyv")
ui = NodePath("../../UserInterface") ui = NodePath("../../UserInterface")
player = NodePath("../..")
[node name="Dash" parent="RigPivot" node_paths=PackedStringArray("player") instance=ExtResource("7_yvk1n")] [node name="Dash" parent="RigPivot" node_paths=PackedStringArray("player") instance=ExtResource("7_yvk1n")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.191783, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.191783, 0)

View File

@ -81,53 +81,53 @@ script = ExtResource("1_n80wy")
[node name="CharacterRig" parent="." instance=ExtResource("2_ow4sk")] [node name="CharacterRig" parent="." instance=ExtResource("2_ow4sk")]
[node name="Skeleton3D" parent="CharacterRig/GameRig" index="0"] [node name="Skeleton3D" parent="CharacterRig/GameRig" index="0"]
bones/0/position = Vector3(3.37508e-15, 0.892508, -0.0481736) bones/0/position = Vector3(1.38253e-14, 0.899178, -0.0481735)
bones/0/rotation = Quaternion(0.12582, 1.18262e-07, 1.49989e-08, 0.992053) bones/0/rotation = Quaternion(0.12582, 1.18262e-07, 1.49989e-08, 0.992053)
bones/1/rotation = Quaternion(-0.0566577, -0.00072973, -0.0117082, 0.998325) bones/1/rotation = Quaternion(-0.0566577, -0.00072973, -0.0117082, 0.998325)
bones/2/position = Vector3(3.20474e-09, 0.146689, -1.95578e-08) bones/2/position = Vector3(3.20474e-09, 0.146689, -1.95578e-08)
bones/2/rotation = Quaternion(-0.00410794, -0.000452809, 0.00321553, 0.999986) bones/2/rotation = Quaternion(-0.000487655, -0.000394132, 0.00321429, 0.999995)
bones/3/position = Vector3(-2.01263e-09, 0.202058, -2.51457e-08) bones/3/position = Vector3(-2.01263e-09, 0.202058, -2.51457e-08)
bones/3/rotation = Quaternion(-0.0990228, -0.000412976, 0.00851834, 0.995049) bones/3/rotation = Quaternion(-0.0952556, -0.000364013, 0.00852084, 0.995416)
bones/4/position = Vector3(3.02934e-10, 0.0925562, 3.91155e-08) bones/4/position = Vector3(3.02934e-10, 0.0925562, 3.91155e-08)
bones/4/rotation = Quaternion(0.2786, 1.44138e-08, 9.52674e-08, 0.960407) bones/4/rotation = Quaternion(0.275989, 1.48371e-08, 9.27153e-08, 0.961161)
bones/5/rotation = Quaternion(-0.0948564, -2.80691e-14, -2.26155e-08, 0.995491) bones/5/rotation = Quaternion(-0.0948564, -2.80691e-14, -2.26155e-08, 0.995491)
bones/6/rotation = Quaternion(-0.153933, -1.1762e-07, -1.94217e-08, 0.988081) bones/6/rotation = Quaternion(-0.157527, -1.17721e-07, -1.87786e-08, 0.987515)
bones/7/position = Vector3(-2.81172e-08, 0.892507, -0.0481735) bones/7/position = Vector3(-1.90372e-08, 0.899178, -0.0481735)
bones/7/rotation = Quaternion(-0.0863677, -0.751104, -0.383052, 0.530711) bones/7/rotation = Quaternion(-0.0863677, -0.751104, -0.383052, 0.530711)
bones/8/position = Vector3(-5.62248e-08, 0.892507, -0.0481735) bones/8/position = Vector3(-8.2718e-08, 0.899178, -0.0481735)
bones/8/rotation = Quaternion(-0.0863677, 0.751104, 0.383052, 0.530711) bones/8/rotation = Quaternion(-0.0863677, 0.751104, 0.383052, 0.530711)
bones/9/position = Vector3(0.131144, 0.958712, -0.0351291) bones/9/position = Vector3(0.131144, 0.965382, -0.0351291)
bones/9/rotation = Quaternion(0.992536, 0.0211118, -0.0308373, 0.116081) bones/9/rotation = Quaternion(0.993175, 0.0207962, -0.0309845, 0.110506)
bones/10/position = Vector3(-2.36129e-08, 0.26601, -2.14789e-08) bones/10/position = Vector3(-2.36129e-08, 0.26601, -2.14789e-08)
bones/10/rotation = Quaternion(-3.13921e-08, -0.000695086, 1.20449e-08, 1) bones/10/rotation = Quaternion(-3.13921e-08, -0.000695086, 1.20449e-08, 1)
bones/11/position = Vector3(-4.6306e-08, 0.26601, 2.42145e-08) bones/11/position = Vector3(-4.6306e-08, 0.26601, 2.42145e-08)
bones/11/rotation = Quaternion(0.430903, -0.000700591, 0.000334683, 0.902398) bones/11/rotation = Quaternion(0.417731, -0.000700302, 0.000322116, 0.90857)
bones/12/position = Vector3(3.05151e-08, 0.22603, 5.03768e-08) bones/12/position = Vector3(3.05151e-08, 0.22603, 5.03768e-08)
bones/12/rotation = Quaternion(-8.19226e-09, -0.00710644, 4.16102e-08, 0.999975) bones/12/rotation = Quaternion(-8.19226e-09, -0.00710644, 4.16102e-08, 0.999975)
bones/13/position = Vector3(-2.95495e-08, 0.22603, 2.68392e-09) bones/13/position = Vector3(-2.95495e-08, 0.22603, 2.68392e-09)
bones/13/rotation = Quaternion(-0.756224, 0.0119025, 0.0244295, 0.653749) bones/13/rotation = Quaternion(-0.750513, 0.0118817, 0.0243987, 0.660299)
bones/14/position = Vector3(-3.05481e-08, 0.139877, 1.64787e-08) bones/14/position = Vector3(-3.05481e-08, 0.139877, 1.64787e-08)
bones/14/rotation = Quaternion(-9.66743e-05, 0.967474, -0.252972, -0.000383447) bones/14/rotation = Quaternion(-9.66743e-05, 0.967474, -0.252972, -0.000383447)
bones/15/position = Vector3(-0.131144, 0.958712, -0.0351291) bones/15/position = Vector3(-0.131144, 0.965382, -0.0351291)
bones/15/rotation = Quaternion(0.972222, -0.00596415, 0.0271954, 0.232401) bones/15/rotation = Quaternion(0.973487, -0.00572759, 0.0273601, 0.22703)
bones/16/position = Vector3(-1.10042e-08, 0.265705, -3.31989e-08) bones/16/position = Vector3(-1.10042e-08, 0.265705, -3.31989e-08)
bones/16/rotation = Quaternion(-3.43227e-08, 0.00314323, 8.33075e-10, 0.999995) bones/16/rotation = Quaternion(-3.43227e-08, 0.00314323, 8.33075e-10, 0.999995)
bones/17/position = Vector3(1.83545e-08, 0.265705, 6.98543e-10) bones/17/position = Vector3(1.83545e-08, 0.265705, 6.98543e-10)
bones/17/rotation = Quaternion(0.454277, 0.00335078, -0.0017088, 0.890853) bones/17/rotation = Quaternion(0.441879, 0.0032776, -0.00161458, 0.897068)
bones/18/position = Vector3(1.2807e-08, 0.225719, -8.28774e-09) bones/18/position = Vector3(1.2807e-08, 0.225719, -8.28774e-09)
bones/18/rotation = Quaternion(-2.29017e-08, -0.00785732, 3.30149e-08, 0.999969) bones/18/rotation = Quaternion(-2.29017e-08, -0.00785732, 3.30149e-08, 0.999969)
bones/19/position = Vector3(-1.27748e-08, 0.225719, 1.12004e-08) bones/19/position = Vector3(-1.27748e-08, 0.225719, 1.12004e-08)
bones/19/rotation = Quaternion(-0.691852, -0.0282119, -0.000471194, 0.721488) bones/19/rotation = Quaternion(-0.687143, -0.0281871, -0.000809628, 0.725975)
bones/20/position = Vector3(-1.30142e-08, 0.139877, -2.77457e-09) bones/20/position = Vector3(-1.30142e-08, 0.139877, -2.77457e-09)
bones/20/rotation = Quaternion(-9.96472e-05, 0.967461, -0.253021, -0.000383039) bones/20/rotation = Quaternion(-9.96472e-05, 0.967461, -0.253021, -0.000383039)
bones/21/position = Vector3(0.0251286, 1.42354, 0.0410183) bones/21/position = Vector3(0.0251286, 1.42928, 0.0431979)
bones/21/rotation = Quaternion(-0.500953, -0.254768, -0.394473, 0.727001) bones/21/rotation = Quaternion(-0.489234, -0.259689, -0.403009, 0.728557)
bones/22/position = Vector3(0.187513, 1.45911, -0.0282358) bones/22/position = Vector3(0.189045, 1.46652, -0.0214781)
bones/22/rotation = Quaternion(0.0596921, -0.158171, 0.973889, -0.151524) bones/22/rotation = Quaternion(0.0449731, -0.160442, 0.974679, -0.149118)
bones/23/position = Vector3(-5.41331e-09, 0.143946, -2.98023e-08) bones/23/position = Vector3(-5.41331e-09, 0.143946, -2.98023e-08)
bones/23/rotation = Quaternion(6.73217e-08, -0.00859443, -4.00158e-08, 0.999963) bones/23/rotation = Quaternion(6.28556e-08, -0.0199371, 8.79865e-10, 0.999801)
bones/24/position = Vector3(-6.33301e-08, 0.143946, 4.3873e-08) bones/24/position = Vector3(-6.33301e-08, 0.143946, 4.3873e-08)
bones/24/rotation = Quaternion(0.28033, -0.00783227, -0.0168139, 0.959725) bones/24/rotation = Quaternion(0.308095, -0.0199275, -0.0189751, 0.950958)
bones/25/position = Vector3(1.30385e-08, 0.127601, 6.51926e-09) bones/25/position = Vector3(1.30385e-08, 0.127601, 6.51926e-09)
bones/25/rotation = Quaternion(1.49943e-07, -1.20606e-07, 9.91859e-08, 1) bones/25/rotation = Quaternion(1.49943e-07, -1.20606e-07, 9.91859e-08, 1)
bones/26/position = Vector3(2.06034e-08, 0.127601, 2.42761e-08) bones/26/position = Vector3(2.06034e-08, 0.127601, 2.42761e-08)
@ -152,14 +152,14 @@ bones/42/rotation = Quaternion(-0.120913, 0.799109, 0.0358921, 0.587807)
bones/43/rotation = Quaternion(0.498693, -0.0202705, -0.0256953, 0.866161) bones/43/rotation = Quaternion(0.498693, -0.0202705, -0.0256953, 0.866161)
bones/44/rotation = Quaternion(0.715385, 0.035306, 0.0573145, 0.695481) bones/44/rotation = Quaternion(0.715385, 0.035306, 0.0573145, 0.695481)
bones/45/rotation = Quaternion(-0.129059, 0.728936, -0.0250259, 0.67184) bones/45/rotation = Quaternion(-0.129059, 0.728936, -0.0250259, 0.67184)
bones/46/position = Vector3(-0.0113635, 1.42354, 0.0410183) bones/46/position = Vector3(-0.0113635, 1.42928, 0.0431979)
bones/46/rotation = Quaternion(-0.526037, 0.203889, 0.359467, 0.743302) bones/46/rotation = Quaternion(-0.504888, 0.227579, 0.381172, 0.740273)
bones/47/position = Vector3(-0.162646, 1.45879, -0.0501346) bones/47/position = Vector3(-0.168987, 1.46703, -0.0353437)
bones/47/rotation = Quaternion(-0.0988031, -0.132713, 0.9711, 0.172018) bones/47/rotation = Quaternion(-0.0650572, -0.1386, 0.973943, 0.167311)
bones/48/position = Vector3(1.88476e-07, 0.143946, 1.02445e-08) bones/48/position = Vector3(1.88476e-07, 0.143946, 1.02445e-08)
bones/48/rotation = Quaternion(5.81737e-08, -0.00256509, 7.29782e-08, 0.999997) bones/48/rotation = Quaternion(1.03085e-07, 0.0205034, 8.08337e-08, 0.99979)
bones/49/position = Vector3(6.5191e-09, 0.143946, -1.95094e-08) bones/49/position = Vector3(6.5191e-09, 0.143946, -1.95094e-08)
bones/49/rotation = Quaternion(0.310354, -0.00256461, 0.0285704, 0.950188) bones/49/rotation = Quaternion(0.342323, 0.0205038, 0.0289985, 0.938911)
bones/50/position = Vector3(-1.48779e-07, 0.1276, 5.9139e-08) bones/50/position = Vector3(-1.48779e-07, 0.1276, 5.9139e-08)
bones/50/rotation = Quaternion(-8.73115e-08, 2.7474e-08, -1.28057e-07, 1) bones/50/rotation = Quaternion(-8.73115e-08, 2.7474e-08, -1.28057e-07, 1)
bones/51/position = Vector3(1.9461e-07, 0.127601, 6.06248e-08) bones/51/position = Vector3(1.9461e-07, 0.127601, 6.06248e-08)
@ -185,10 +185,10 @@ bones/67/rotation = Quaternion(0.108364, -0.768224, 0.166291, 0.608635)
bones/68/rotation = Quaternion(0.629954, 0.0295149, 0.0177509, 0.775869) bones/68/rotation = Quaternion(0.629954, 0.0295149, 0.0177509, 0.775869)
bones/69/rotation = Quaternion(0.816678, -0.0439534, -0.0509861, 0.573155) bones/69/rotation = Quaternion(0.816678, -0.0439534, -0.0509861, 0.573155)
bones/70/rotation = Quaternion(-0.12906, -0.728937, 0.0250258, 0.67184) bones/70/rotation = Quaternion(-0.12906, -0.728937, 0.0250258, 0.67184)
bones/71/position = Vector3(0.127191, 1.34066, -0.0269514) bones/71/position = Vector3(0.127191, 1.34815, -0.0260385)
bones/71/rotation = Quaternion(1.89659e-08, 0.618033, 0.786152, -4.66016e-08) bones/71/rotation = Quaternion(1.94809e-08, 0.610534, 0.791991, -4.63246e-08)
bones/72/position = Vector3(-0.113426, 1.34066, -0.0269514) bones/72/position = Vector3(-0.113426, 1.34815, -0.0260386)
bones/72/rotation = Quaternion(1.89659e-08, 0.618033, 0.786152, -4.66015e-08) bones/72/rotation = Quaternion(1.9481e-08, 0.610534, 0.79199, -4.63245e-08)
[node name="Knight_01" parent="CharacterRig/GameRig/Skeleton3D" index="0"] [node name="Knight_01" parent="CharacterRig/GameRig/Skeleton3D" index="0"]
visible = false visible = false
@ -206,7 +206,7 @@ anim_player = NodePath("../CharacterRig/AnimationPlayer")
parameters/MoveSpace/blend_position = -1.0 parameters/MoveSpace/blend_position = -1.0
[node name="RightHandBone" type="BoneAttachment3D" parent="."] [node name="RightHandBone" type="BoneAttachment3D" parent="."]
transform = Transform3D(-0.962344, -0.270799, -0.0237169, 0.24671, -0.9067, 0.342096, -0.114143, 0.323362, 0.939366, -0.336462, 0.972791, -0.0497499) transform = Transform3D(-0.962343, -0.270804, -0.0237123, 0.237889, -0.881156, 0.408624, -0.131551, 0.387595, 0.912395, -0.342804, 0.987667, -0.0190099)
bone_name = "DEF-hand.R" bone_name = "DEF-hand.R"
bone_idx = 51 bone_idx = 51
use_external_skeleton = true use_external_skeleton = true
@ -217,7 +217,7 @@ unique_name_in_owner = true
transform = Transform3D(0.16656, 0.0770401, -0.983017, -0.982939, 0.0918653, -0.159347, 0.078029, 0.992787, 0.0910268, -0.0211409, 0.0798348, 0.00721136) transform = Transform3D(0.16656, 0.0770401, -0.983017, -0.982939, 0.0918653, -0.159347, 0.078029, 0.992787, 0.0910268, -0.0211409, 0.0798348, 0.00721136)
[node name="LeftHandBone" type="BoneAttachment3D" parent="."] [node name="LeftHandBone" type="BoneAttachment3D" parent="."]
transform = Transform3D(-0.970311, 0.239791, 0.0315918, -0.225623, -0.944459, 0.238938, 0.0871324, 0.224717, 0.97052, 0.344499, 0.963157, -0.0622944) transform = Transform3D(-0.970517, 0.239097, 0.0305045, -0.219551, -0.929133, 0.297504, 0.0994752, 0.282036, 0.954233, 0.345852, 0.974618, -0.0412179)
bone_name = "DEF-hand.L" bone_name = "DEF-hand.L"
bone_idx = 26 bone_idx = 26
use_external_skeleton = true use_external_skeleton = true

View File

@ -0,0 +1,7 @@
[gd_scene load_steps=2 format=3 uid="uid://cn2c8v1jia4gq"]
[ext_resource type="PackedScene" uid="uid://dv1316xdw1rxm" path="res://assets/models/environment/house_modular_01.glb" id="1_4kkg7"]
[node name="House" type="Node3D"]
[node name="house_modular_01" parent="." instance=ExtResource("1_4kkg7")]

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=38 format=3 uid="uid://dw0lbkh31rofd"] [gd_scene load_steps=40 format=3 uid="uid://dw0lbkh31rofd"]
[ext_resource type="Script" uid="uid://bmywk4wvcp0lr" path="res://addons/sky_3d/src/Sky3D.gd" id="1_1jhfv"] [ext_resource type="Script" uid="uid://bmywk4wvcp0lr" path="res://addons/sky_3d/src/Sky3D.gd" id="1_1jhfv"]
[ext_resource type="Texture2D" uid="uid://bpamrp14tk2cp" path="res://assets/textures/terrain/sand_albedo_height.png" id="1_7iny7"] [ext_resource type="Texture2D" uid="uid://bpamrp14tk2cp" path="res://assets/textures/terrain/sand_albedo_height.png" id="1_7iny7"]
@ -14,7 +14,9 @@
[ext_resource type="PackedScene" uid="uid://blv7opxftdc6o" path="res://assets/models/environment/stone_wall_bldg_04.glb" id="6_dn2un"] [ext_resource type="PackedScene" uid="uid://blv7opxftdc6o" path="res://assets/models/environment/stone_wall_bldg_04.glb" id="6_dn2un"]
[ext_resource type="PackedScene" uid="uid://cwvrti8hmxj0k" path="res://src/scenes/characters/enemy.tscn" id="6_uvsco"] [ext_resource type="PackedScene" uid="uid://cwvrti8hmxj0k" path="res://src/scenes/characters/enemy.tscn" id="6_uvsco"]
[ext_resource type="PackedScene" uid="uid://dqkuaw84gl1t2" path="res://assets/models/environment/turret_square_bldg_02.glb" id="7_7iny7"] [ext_resource type="PackedScene" uid="uid://dqkuaw84gl1t2" path="res://assets/models/environment/turret_square_bldg_02.glb" id="7_7iny7"]
[ext_resource type="PackedScene" uid="uid://dadx4i1rio3bh" path="res://src/scenes/structures/passage.tscn" id="7_rr1al"]
[ext_resource type="PackedScene" uid="uid://dv1316xdw1rxm" path="res://assets/models/environment/house_modular_01.glb" id="8_cxs0p"] [ext_resource type="PackedScene" uid="uid://dv1316xdw1rxm" path="res://assets/models/environment/house_modular_01.glb" id="8_cxs0p"]
[ext_resource type="PackedScene" uid="uid://1tkd11xw04uy" path="res://src/scenes/levels/rocky_mountains.tscn" id="8_jwlmk"]
[ext_resource type="PackedScene" uid="uid://8iicuufue8k5" path="res://src/scenes/structures/chest.tscn" id="9_856t6"] [ext_resource type="PackedScene" uid="uid://8iicuufue8k5" path="res://src/scenes/structures/chest.tscn" id="9_856t6"]
[ext_resource type="PackedScene" uid="uid://6dmbuecqolod" path="res://src/scenes/structures/fire_pit.tscn" id="10_juj6f"] [ext_resource type="PackedScene" uid="uid://6dmbuecqolod" path="res://src/scenes/structures/fire_pit.tscn" id="10_juj6f"]
[ext_resource type="PackedScene" uid="uid://cyhw4ocljvikh" path="res://src/scenes/ui/currency_icon.tscn" id="10_vltgv"] [ext_resource type="PackedScene" uid="uid://cyhw4ocljvikh" path="res://src/scenes/ui/currency_icon.tscn" id="10_vltgv"]
@ -114,12 +116,12 @@ texture_list = Array[Terrain3DTextureAsset]([SubResource("Terrain3DTextureAsset_
energy_multiplier = 4.0 energy_multiplier = 4.0
use_debanding = false use_debanding = false
[sub_resource type="Sky" id="Sky_7iny7"] [sub_resource type="Sky" id="Sky_jwlmk"]
sky_material = SubResource("PhysicalSkyMaterial_dn2un") sky_material = SubResource("PhysicalSkyMaterial_dn2un")
[sub_resource type="Environment" id="Environment_cxs0p"] [sub_resource type="Environment" id="Environment_cxs0p"]
background_mode = 2 background_mode = 2
sky = SubResource("Sky_7iny7") sky = SubResource("Sky_jwlmk")
ambient_light_source = 3 ambient_light_source = 3
ambient_light_color = Color(0.807338, 0.74087, 0.707563, 1) ambient_light_color = Color(0.807338, 0.74087, 0.707563, 1)
reflected_light_source = 2 reflected_light_source = 2
@ -139,6 +141,12 @@ script = ExtResource("1_m8n0u")
[node name="FirePit" parent="." instance=ExtResource("10_juj6f")] [node name="FirePit" parent="." instance=ExtResource("10_juj6f")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 41.2201, 94.5773, -58.0352) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 41.2201, 94.5773, -58.0352)
[node name="house_modular_01" parent="." instance=ExtResource("8_cxs0p")]
transform = Transform3D(0.93598, 0, -0.352054, 0, 1, 0, 0.352054, 0, 0.93598, 45.6923, 94.5589, -70.1131)
[node name="house_modular_02" parent="." instance=ExtResource("8_cxs0p")]
transform = Transform3D(0.611071, 0, -0.791576, 0, 1, 0, 0.791576, 0, 0.611071, 55.9864, 94.5589, -60.0366)
[node name="Castle" type="Node3D" parent="."] [node name="Castle" type="Node3D" parent="."]
[node name="wall_stone_gate_bldg_01" parent="Castle" instance=ExtResource("5_0eo66")] [node name="wall_stone_gate_bldg_01" parent="Castle" instance=ExtResource("5_0eo66")]
@ -165,11 +173,35 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.0896, -1, 0.0723419)
[node name="turret_square_bldg_03" parent="Castle/wall_stone_gate_bldg_01" instance=ExtResource("7_7iny7")] [node name="turret_square_bldg_03" parent="Castle/wall_stone_gate_bldg_01" instance=ExtResource("7_7iny7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.0602, -1, 0.465519) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.0602, -1, 0.465519)
[node name="house_modular_01" parent="Castle" instance=ExtResource("8_cxs0p")] [node name="Castle2" type="Node3D" parent="."]
transform = Transform3D(0.93598, 0, -0.352054, 0, 1, 0, 0.352054, 0, 0.93598, 45.6923, 94.5589, -70.1131)
[node name="house_modular_02" parent="Castle" instance=ExtResource("8_cxs0p")] [node name="wall_stone_gate_bldg_01" parent="Castle2" instance=ExtResource("5_0eo66")]
transform = Transform3D(0.611071, 0, -0.791576, 0, 1, 0, 0.791576, 0, 0.611071, 55.9864, 94.5589, -60.0366) transform = Transform3D(-0.317239, 0, -0.948346, 0, 1, 0, 0.948346, 0, -0.317239, 83.5717, 94.7236, -55.2602)
[node name="stone_wall_bldg_04" parent="Castle2/wall_stone_gate_bldg_01" instance=ExtResource("6_dn2un")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.26476, 0, -0.0166817)
[node name="stone_wall_bldg_05" parent="Castle2/wall_stone_gate_bldg_01" instance=ExtResource("6_dn2un")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10.7805, 0.0131226, -0.040226)
[node name="stone_wall_bldg_06" parent="Castle2/wall_stone_gate_bldg_01" instance=ExtResource("6_dn2un")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.8046, 0.0131226, -0.122562)
[node name="stone_wall_bldg_07" parent="Castle2/wall_stone_gate_bldg_01" instance=ExtResource("6_dn2un")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -19.7101, 0.0131226, -0.132374)
[node name="stone_wall_bldg_08" parent="Castle2/wall_stone_gate_bldg_01" instance=ExtResource("6_dn2un")]
transform = Transform3D(0.958048, 0, 0.286608, 0, 1, 0, -0.286608, 0, 0.958048, -26.8721, 0.0131226, 2.09649)
[node name="turret_square_bldg_02" parent="Castle2/wall_stone_gate_bldg_01" instance=ExtResource("7_7iny7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12.0896, -1, 0.0723419)
[node name="turret_square_bldg_03" parent="Castle2/wall_stone_gate_bldg_01" instance=ExtResource("7_7iny7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12.0602, -1, 0.465519)
[node name="Passage" parent="Castle2" instance=ExtResource("7_rr1al")]
transform = Transform3D(-0.310975, 0, -0.950418, 0, 1, 0, 0.950418, 0, -0.310975, 82.6136, 96.1102, -55.7697)
to_level = ExtResource("8_jwlmk")
[node name="Interactible" type="Node3D" parent="."] [node name="Interactible" type="Node3D" parent="."]
@ -384,7 +416,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.2971, 0, 0)
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 44.2159, -9.93174, 1.0728) transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 44.2159, -9.93174, 1.0728)
[node name="rock_cliff_env_04" parent="MapBoundary/RockWall3" instance=ExtResource("2_d2tjv")] [node name="rock_cliff_env_04" parent="MapBoundary/RockWall3" instance=ExtResource("2_d2tjv")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8124, 0, 20.4483) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 29.7927, 0, 35.8917)
[node name="rock_cliff_env_05" parent="MapBoundary/RockWall3" instance=ExtResource("2_d2tjv")] [node name="rock_cliff_env_05" parent="MapBoundary/RockWall3" instance=ExtResource("2_d2tjv")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.2971, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.2971, 0, 0)

View File

@ -0,0 +1,243 @@
[gd_scene load_steps=16 format=3 uid="uid://1tkd11xw04uy"]
[ext_resource type="Script" uid="uid://dj5vsww5nehm7" path="res://src/scripts/levels/level.gd" id="1_ffg6r"]
[ext_resource type="Script" uid="uid://bmywk4wvcp0lr" path="res://addons/sky_3d/src/Sky3D.gd" id="2_4ebiv"]
[ext_resource type="Script" uid="uid://27fj74ofndim" path="res://addons/sky_3d/src/Skydome.gd" id="3_wdmdq"]
[ext_resource type="Script" uid="uid://bm0hx4mklpml" path="res://addons/sky_3d/src/TimeOfDay.gd" id="4_8pmhh"]
[sub_resource type="Gradient" id="Gradient_555ul"]
offsets = PackedFloat32Array(0.2, 1)
colors = PackedColorArray(1, 1, 1, 1, 0, 0, 0, 1)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_ij0dh"]
noise_type = 2
frequency = 0.03
cellular_jitter = 3.0
cellular_return_type = 0
domain_warp_enabled = true
domain_warp_type = 1
domain_warp_amplitude = 50.0
domain_warp_fractal_type = 2
domain_warp_fractal_lacunarity = 1.5
domain_warp_fractal_gain = 1.0
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_kcdxh"]
seamless = true
color_ramp = SubResource("Gradient_555ul")
noise = SubResource("FastNoiseLite_ij0dh")
[sub_resource type="Terrain3DMaterial" id="Terrain3DMaterial_ffg6r"]
_shader_parameters = {
&"bias_distance": 512.0,
&"blend_sharpness": 0.87,
&"depth_blur": 0.0,
&"enable_macro_variation": true,
&"enable_projection": true,
&"height_blending": true,
&"macro_variation1": Color(1, 1, 1, 1),
&"macro_variation2": Color(1, 1, 1, 1),
&"macro_variation_slope": 0.333,
&"mipmap_bias": 1.0,
&"noise1_angle": 0.0,
&"noise1_offset": Vector2(0.5, 0.5),
&"noise1_scale": 0.04,
&"noise2_scale": 0.076,
&"noise3_scale": 0.225,
&"noise_texture": SubResource("NoiseTexture2D_kcdxh"),
&"projection_angular_division": 2.0,
&"projection_threshold": 0.8,
&"world_space_normal_blend": true
}
show_checkered = true
show_colormap = true
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_wdmdq"]
transparency = 4
cull_mode = 2
vertex_color_use_as_albedo = true
backlight_enabled = true
backlight = Color(0.5, 0.5, 0.5, 1)
distance_fade_mode = 1
distance_fade_min_distance = 128.0
distance_fade_max_distance = 96.0
[sub_resource type="Terrain3DMeshAsset" id="Terrain3DMeshAsset_8pmhh"]
generated_type = 1
height_offset = 0.5
material_override = SubResource("StandardMaterial3D_wdmdq")
last_lod = 0
last_shadow_lod = 0
lod0_range = 128.0
[sub_resource type="Terrain3DAssets" id="Terrain3DAssets_bda4h"]
mesh_list = Array[Terrain3DMeshAsset]([SubResource("Terrain3DMeshAsset_8pmhh")])
[sub_resource type="PhysicalSkyMaterial" id="PhysicalSkyMaterial_bda4h"]
energy_multiplier = 25.0
use_debanding = false
[sub_resource type="Sky" id="Sky_7iny7"]
sky_material = SubResource("PhysicalSkyMaterial_bda4h")
[sub_resource type="Environment" id="Environment_irpdk"]
background_mode = 2
sky = SubResource("Sky_7iny7")
ambient_light_source = 3
ambient_light_color = Color(1, 1, 1, 1)
reflected_light_source = 2
tonemap_mode = 3
tonemap_white = 6.0
ssr_enabled = true
ssao_enabled = true
ssil_enabled = true
sdfgi_enabled = true
[sub_resource type="CameraAttributesPractical" id="CameraAttributesPractical_78dkp"]
auto_exposure_scale = 0.2
[node name="RockyMountainsLevel" type="Node3D"]
script = ExtResource("1_ffg6r")
[node name="Terrain3D" type="Terrain3D" parent="."]
data_directory = "res://src/resources/terrain_data/rocky_mountains"
material = SubResource("Terrain3DMaterial_ffg6r")
assets = SubResource("Terrain3DAssets_bda4h")
show_checkered = true
show_colormap = true
top_level = true
metadata/_edit_lock_ = true
[node name="Sky3D" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_irpdk")
camera_attributes = SubResource("CameraAttributesPractical_78dkp")
script = ExtResource("2_4ebiv")
current_time = 12.0
reflected_energy = 25.0
metadata/_custom_type_script = "uid://bmywk4wvcp0lr"
[node name="SunLight" type="DirectionalLight3D" parent="Sky3D"]
transform = Transform3D(0, -0.999334, -0.0365005, 0.630711, -0.0283251, 0.775501, -0.776018, -0.0230213, 0.63029, -0.0365004, 0.775501, 0.63029)
shadow_enabled = true
directional_shadow_blend_splits = true
[node name="MoonLight" type="DirectionalLight3D" parent="Sky3D"]
transform = Transform3D(0, -0.568714, -0.822535, -0.578954, -0.670662, 0.463707, -0.81536, 0.47621, -0.32926, -0.822535, 0.463707, -0.32926)
light_color = Color(0.572549, 0.776471, 0.956863, 1)
light_energy = 0.0
shadow_enabled = true
[node name="Skydome" type="Node" parent="Sky3D"]
script = ExtResource("3_wdmdq")
sky_visible = true
dome_radius = 10.0
tonemap_level = 0.0
exposure = 1.3
ground_color = Color(0.3, 0.3, 0.3, 1)
sky_layers = 4
sky_render_priority = -128
horizon_level = 0.0
sun_altitude = -39.1495
sun_azimuth = -183.314
sun_disk_color = Color(0.996094, 0.541334, 0.140076, 1)
sun_disk_intensity = 2.0
sun_disk_size = 0.015
sun_light_path = NodePath("../SunLight")
sun_light_color = Color(1, 1, 1, 1)
sun_horizon_light_color = Color(0.98, 0.523, 0.294, 1)
sun_light_energy = 1.0
moon_altitude = -136.152
moon_azimuth = -346.24
moon_color = Color(1, 1, 1, 1)
moon_size = 0.07
enable_set_moon_texture = false
moon_resolution = 2
moon_light_path = NodePath("../MoonLight")
moon_light_color = Color(0.572549, 0.776471, 0.956863, 1)
moon_light_energy = 0.3
deep_space_euler = Vector3(1.29154, 3.14159, 1.36631)
background_color = Color(0.709804, 0.709804, 0.709804, 0.854902)
set_background_texture = false
stars_field_color = Color(1, 1, 1, 1)
set_stars_field_texture = false
stars_scintillation = 0.75
stars_scintillation_speed = 0.01
atm_quality = 1
atm_wavelenghts = Vector3(680, 550, 440)
atm_darkness = 0.5
atm_sun_intensity = 18.0
atm_day_tint = Color(0.807843, 0.909804, 1, 1)
atm_horizon_light_tint = Color(0.980392, 0.635294, 0.462745, 1)
atm_enable_moon_scatter_mode = false
atm_night_tint = Color(0.168627, 0.2, 0.25098, 1)
atm_level_params = Vector3(1, 0, 0)
atm_thickness = 0.7
atm_mie = 0.07
atm_turbidity = 0.001
atm_sun_mie_tint = Color(1, 1, 1, 1)
atm_sun_mie_intensity = 1.0
atm_sun_mie_anisotropy = 0.8
atm_moon_mie_tint = Color(0.137255, 0.184314, 0.292196, 1)
atm_moon_mie_intensity = 0.7
atm_moon_mie_anisotropy = 0.8
fog_visible = true
fog_atm_level_params_offset = Vector3(0, 0, -1)
fog_density = 0.00015
fog_rayleigh_depth = 0.116
fog_mie_depth = 0.0001
fog_falloff = 3.0
fog_start = 0.0
fog_end = 1000.0
fog_layers = 524288
fog_render_priority = 123
clouds_thickness = 1.7
clouds_coverage = 0.117
clouds_absorption = 2.0
clouds_sky_tint_fade = 0.5
clouds_intensity = 10.0
clouds_size = 2.0
clouds_uv = Vector2(0.16, 0.11)
clouds_direction = Vector2(0.25, 0.25)
clouds_speed = 0.07
set_clouds_texture = false
clouds_cumulus_visible = true
clouds_cumulus_day_color = Color(0.823529, 0.87451, 1, 1)
clouds_cumulus_horizon_light_color = Color(0.98, 0.43, 0.15, 1)
clouds_cumulus_night_color = Color(0.090196, 0.094118, 0.129412, 1)
clouds_cumulus_thickness = 0.0243
clouds_cumulus_coverage = 0.751
clouds_cumulus_absorption = 2.0
clouds_cumulus_noise_freq = 2.469
clouds_cumulus_intensity = 0.9997
clouds_cumulus_mie_intensity = 1.0
clouds_cumulus_mie_anisotropy = 0.182
clouds_cumulus_size = 0.5
clouds_cumulus_direction = Vector3(0.25, 0.1, 0.25)
clouds_cumulus_speed = 0.05
set_clouds_cumulus_texture = false
environment = SubResource("Environment_irpdk")
[node name="TimeOfDay" type="Node" parent="Sky3D"]
script = ExtResource("4_8pmhh")
update_in_game = false
update_in_editor = false
dome_path = NodePath("../Skydome")
system_sync = false
total_cycle_in_minutes = 15.0
total_hours = 12.0
day = 1
month = 1
year = 2025
celestials_calculations = 1
compute_moon_coords = true
compute_deep_space_coords = true
latitude = 16.0
longitude = 108.0
utc = 7.0
[node name="Players" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 35.3396, 300.676, -63.3113)
[node name="MultiplayerSpawner" type="MultiplayerSpawner" parent="."]
_spawnable_scenes = PackedStringArray("uid://nsv4lbw7j8mi")
spawn_path = NodePath("../Players")
spawn_limit = 10

View File

@ -0,0 +1,24 @@
[gd_scene load_steps=5 format=3 uid="uid://dadx4i1rio3bh"]
[ext_resource type="Script" uid="uid://byo1yv7evj2w7" path="res://src/scripts/structures/passage.gd" id="1_k27qu"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_v23ns"]
albedo_color = Color(0.0392157, 0.0392157, 0.0392157, 1)
proximity_fade_enabled = true
[sub_resource type="BoxMesh" id="BoxMesh_k27qu"]
material = SubResource("StandardMaterial3D_v23ns")
size = Vector3(5, 4, 1)
[sub_resource type="ConvexPolygonShape3D" id="ConvexPolygonShape3D_v23ns"]
points = PackedVector3Array(2.5, 2, 0.5, 2.5, 2, -0.5, -2.5, 2, 0.5, 2.5, -2, 0.5, 2.5, -2, -0.5, -2.5, 2, -0.5, -2.5, -2, 0.5, -2.5, -2, -0.5)
[node name="Passage" type="StaticBody3D"]
collision_layer = 2
script = ExtResource("1_k27qu")
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
mesh = SubResource("BoxMesh_k27qu")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("ConvexPolygonShape3D_v23ns")

View File

@ -0,0 +1,15 @@
[gd_scene load_steps=2 format=3 uid="uid://d2ingepydwimd"]
[ext_resource type="Script" uid="uid://dnhkau33lvd6r" path="res://src/scripts/ui/scene_transition.gd" id="1_w0nko"]
[node name="SceneTransition" type="CanvasLayer"]
script = ExtResource("1_w0nko")
[node name="Fader" type="ColorRect" parent="."]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
color = Color(0, 0, 0, 1)

View File

@ -0,0 +1,35 @@
extends Control
@onready var inventory_node: Control = $InventoryNode
@onready var weapon_node: Control = $WeaponNode
@onready var shield_node: Control = $ShieldNode
@onready var armor_node: Control = $ArmorNode
func cache_gear(player: Player) -> void:
for item: ItemIcon in player.ui.inventory.items_grid.get_children():
cache_item(item, inventory_node)
cache_item(player.ui.inventory.get_weapon(), weapon_node)
cache_item(player.ui.inventory.get_armor(), armor_node)
cache_item(player.ui.inventory.get_shield(), shield_node)
# cache_item(player.ui.inventory.gold)
func get_inventory() -> Array:
return inventory_node.get_children()
func get_equipped_items() -> Array:
var equipped_items: Array = []
if weapon_node.get_child_count() > 0:
equipped_items.append(weapon_node.get_child(0))
if armor_node.get_child_count() > 0:
equipped_items.append(armor_node.get_child(0))
if shield_node.get_child_count() > 0:
equipped_items.append(shield_node.get_child(0))
return equipped_items
func cache_item(item: ItemIcon, storage_node: Control) -> void:
item.get_parent().remove_child(item)
storage_node.add_child(item)

View File

@ -0,0 +1 @@
uid://bt167yngsn8dw

View File

@ -1,6 +1,7 @@
extends ShapeCast3D extends ShapeCast3D
@export var ui: Control @export var ui: Control
@export var player: Player
func check_interactions() -> void: func check_interactions() -> void:
for collision in get_collision_count(): for collision in get_collision_count():
@ -9,3 +10,8 @@ func check_interactions() -> void:
ui.update_interact_text("Open [E]") ui.update_interact_text("Open [E]")
if Input.is_action_just_pressed("interact"): if Input.is_action_just_pressed("interact"):
ui.loot_container_display.toggle_open(collider) ui.loot_container_display.toggle_open(collider)
if collider is Passage:
ui.update_interact_text("Travel [E]")
if Input.is_action_just_pressed("interact"):
SceneTransition.change_scene(collider.to_level, player)

View File

@ -41,6 +41,7 @@ func _ready() -> void:
) )
stats.update_stats.connect(ui.update_stats_display) stats.update_stats.connect(ui.update_stats_display)
ui.update_stats_display() ui.update_stats_display()
SceneTransition.fade_in()
func _physics_process(delta: float) -> void: func _physics_process(delta: float) -> void:
if not is_multiplayer_authority(): if not is_multiplayer_authority():

View File

@ -24,7 +24,7 @@ func _exit_tree() -> void:
func add_player(id: int) -> void: func add_player(id: int) -> void:
var character: Player = preload("res://src/scenes/characters/player.tscn").instantiate() var character: Player = preload("res://src/scenes/characters/player.tscn").instantiate()
character.name = str(id) character.name = "%d" % id
$Players.add_child(character, true) $Players.add_child(character, true)

View File

@ -1,5 +1,8 @@
extends Node extends Node
func _ready() -> void:
SceneTransition.fade_in()
func _on_host_pressed() -> void: func _on_host_pressed() -> void:
var peer: ENetMultiplayerPeer = ENetMultiplayerPeer.new() var peer: ENetMultiplayerPeer = ENetMultiplayerPeer.new()
var error: Error = peer.create_server(1027) var error: Error = peer.create_server(1027)

View File

@ -0,0 +1,6 @@
class_name Passage extends StaticBody3D
@export var to_level: PackedScene
func travel(_player: Player) -> void:
pass

View File

@ -0,0 +1 @@
uid://byo1yv7evj2w7

View File

@ -24,6 +24,7 @@ const MAX_ARMOR_RATING: float = 80.0
func _ready() -> void: func _ready() -> void:
update_stats() update_stats()
load_items_from_persistant_data()
func update_stats() -> void: func update_stats() -> void:
level_label.text = "Level %d" % player.stats.level level_label.text = "Level %d" % player.stats.level
@ -112,3 +113,13 @@ func get_shield() -> ShieldIcon:
if shield_slot.get_child_count() != 1: if shield_slot.get_child_count() != 1:
return null return null
return shield_slot.get_child(0) return shield_slot.get_child(0)
func load_items_from_persistant_data() -> void:
await player.ready
for item: ItemIcon in PersistentData.get_inventory():
item.get_parent().remove_child(item)
add_item(item)
for item: ItemIcon in PersistentData.get_equipped_items():
add_item(item)
equip_item(item)

View File

@ -0,0 +1,19 @@
extends CanvasLayer
@onready var fader: ColorRect = $Fader
func fade_in() -> void:
print(fader)
var tween: Tween = create_tween()
tween.tween_interval(0.1)
tween.tween_property(fader, "color:a", 0.0, 1.0).from(1.0)
func change_scene(new_scene: PackedScene, player: Player) -> void:
var tween: Tween = create_tween()
tween.tween_property(fader, "color:a", 1.0, 1.0)
tween.tween_interval(0.1)
tween.tween_callback(func() -> void:
PersistentData.cache_gear(player)
get_tree().get_root().get_node("Main").change_level(new_scene)
)

View File

@ -0,0 +1 @@
uid://dnhkau33lvd6r