diff --git a/assets/models/bipedal_mech/mech.tscn b/assets/models/bipedal_mech/mech.tscn index 6858ae8..208e17b 100644 --- a/assets/models/bipedal_mech/mech.tscn +++ b/assets/models/bipedal_mech/mech.tscn @@ -975,43 +975,43 @@ parameters/walk_scale/scale = 1.0 parameters/walk_space/blend_position = Vector2(0, 0) [node name="Skeleton3D" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5" index="0"] -bones/1/position = Vector3(0, 0, 6.46882) +bones/1/position = Vector3(0, 0, 6.3505) bones/1/rotation = Quaternion(0.707107, 0, 0, 0.707107) bones/2/rotation = Quaternion(1.54543e-08, 1.54543e-08, -0.707107, 0.707107) -bones/3/rotation = Quaternion(0.655729, 0.675076, 0.235671, 0.242387) +bones/3/rotation = Quaternion(0.653234, 0.6728, 0.24209, 0.249032) bones/3/scale = Vector3(1, 1, 1) -bones/4/rotation = Quaternion(0.697585, 0.0564126, 0.0720838, 0.710631) +bones/4/rotation = Quaternion(0.717599, 0.0548994, 0.0741531, 0.690318) bones/4/scale = Vector3(1, 1, 1) -bones/5/rotation = Quaternion(-0.619312, -0.00144402, -0.101042, 0.778615) +bones/5/rotation = Quaternion(-0.636323, -0.00120656, -0.103529, 0.764443) bones/5/scale = Vector3(1, 1, 1) -bones/6/rotation = Quaternion(-0.435973, 0.0113355, -0.0629185, 0.897686) -bones/7/rotation = Quaternion(-0.839632, 0.0367227, -0.173596, 0.513355) +bones/6/rotation = Quaternion(-0.432702, 0.0116438, -0.0626661, 0.899281) +bones/7/rotation = Quaternion(-0.846134, 0.0356642, -0.175309, 0.502048) bones/7/scale = Vector3(1, 1, 1) bones/9/rotation = Quaternion(-0.577893, -0.0977404, -0.0868737, 0.805568) -bones/11/rotation = Quaternion(-0.836018, 0.0433803, -0.169027, 0.520214) +bones/11/rotation = Quaternion(-0.842661, 0.0422332, -0.170831, 0.508877) bones/11/scale = Vector3(1, 1, 1) bones/13/rotation = Quaternion(-0.583833, -0.0928994, -0.0936977, 0.80108) bones/13/scale = Vector3(1, 1, 1) bones/15/rotation = Quaternion(0.993231, -0.0067672, 0.0811647, 0.0828119) bones/15/scale = Vector3(1, 1, 1) -bones/17/rotation = Quaternion(0.751789, 0.00930738, 0.659258, 0.0102818) +bones/17/rotation = Quaternion(0.751522, 0.0173474, 0.659155, 0.0206794) bones/17/scale = Vector3(1, 1, 1) bones/19/rotation = Quaternion(-0.399104, -0.525183, -0.304683, 0.687072) bones/19/scale = Vector3(0.999999, 1, 1) bones/21/rotation = Quaternion(0.855906, -0.0322478, 0.0593455, 0.512701) -bones/23/rotation = Quaternion(0.902169, 0.00360287, 0.148865, 0.404868) +bones/23/rotation = Quaternion(0.88776, 0.00355301, 0.146484, 0.436361) bones/23/scale = Vector3(1, 1, 1) bones/25/rotation = Quaternion(-0.715396, -0.0713077, -0.0634678, 0.692168) bones/25/scale = Vector3(1, 1, 1) -bones/27/rotation = Quaternion(-0.550493, -0.0058084, -0.1025, 0.828503) +bones/27/rotation = Quaternion(-0.575247, -0.00541159, -0.106013, 0.811063) bones/29/rotation = Quaternion(0.808854, -0.0303334, 0.0651724, 0.583599) bones/31/rotation = Quaternion(0.808854, -0.0303334, 0.0651724, 0.583599) -bones/33/rotation = Quaternion(-0.542604, -0.00995481, -0.10756, 0.833014) -bones/35/rotation = Quaternion(-0.629778, 0.00359263, -0.102415, 0.769986) +bones/33/rotation = Quaternion(-0.5676, -0.00950492, -0.111034, 0.815727) +bones/35/rotation = Quaternion(-0.654737, 0.0039013, -0.106226, 0.748345) bones/35/scale = Vector3(1, 1, 1) bones/37/scale = Vector3(1, 1, 1) bones/39/scale = Vector3(1, 1, 1) -bones/41/rotation = Quaternion(-0.0147606, 0.935612, 0.352515, 0.0120527) +bones/41/rotation = Quaternion(-0.0149263, 0.938125, 0.345765, 0.0120656) bones/41/scale = Vector3(1, 1, 1) bones/43/rotation = Quaternion(-0.015884, 0.718179, -0.69565, -0.00621676) bones/43/scale = Vector3(1, 1, 1) @@ -1034,37 +1034,37 @@ bones/66/rotation = Quaternion(-0.000385918, -2.26638e-14, 0.000401128, 1) bones/68/rotation = Quaternion(-0.706834, 0.000283644, -0.000283644, 0.70738) bones/70/rotation = Quaternion(-0.707107, 4.67924e-24, 4.67924e-24, 0.707107) bones/73/rotation = Quaternion(1.54543e-08, -1.54543e-08, 0.707107, 0.707107) -bones/74/rotation = Quaternion(-0.655729, 0.675076, 0.235671, -0.242387) +bones/74/rotation = Quaternion(-0.653235, 0.6728, 0.24209, -0.249031) bones/74/scale = Vector3(1, 1, 1) -bones/75/rotation = Quaternion(0.697585, -0.0564126, -0.0720838, 0.710631) +bones/75/rotation = Quaternion(0.717599, -0.0548994, -0.0741531, 0.690318) bones/75/scale = Vector3(1, 1, 1) -bones/76/rotation = Quaternion(-0.619312, 0.00144403, 0.101042, 0.778615) +bones/76/rotation = Quaternion(-0.636323, 0.00120657, 0.103529, 0.764443) bones/76/scale = Vector3(1, 1, 1) -bones/77/rotation = Quaternion(-0.435973, -0.0113355, 0.0629185, 0.897686) +bones/77/rotation = Quaternion(-0.432702, -0.0116439, 0.062666, 0.899281) bones/77/scale = Vector3(1, 1, 1) -bones/78/rotation = Quaternion(-0.839632, -0.0367227, 0.173596, 0.513355) +bones/78/rotation = Quaternion(-0.846134, -0.0356643, 0.175309, 0.502048) bones/78/scale = Vector3(1, 1, 1) -bones/82/rotation = Quaternion(-0.836018, -0.0433804, 0.169027, 0.520214) +bones/82/rotation = Quaternion(-0.842661, -0.0422342, 0.17083, 0.508877) bones/82/scale = Vector3(1, 1, 1) bones/84/rotation = Quaternion(-0.583833, 0.0928994, 0.0936978, 0.80108) bones/86/rotation = Quaternion(0.993231, 0.0067672, -0.0811647, 0.0828119) bones/86/scale = Vector3(1, 1, 1) -bones/88/rotation = Quaternion(0.751789, -0.0093066, -0.659258, 0.0102825) +bones/88/rotation = Quaternion(0.751522, -0.0173474, -0.659155, 0.0206794) bones/92/rotation = Quaternion(0.855906, 0.0322478, -0.0593455, 0.512701) bones/92/scale = Vector3(1, 1, 1) -bones/94/rotation = Quaternion(0.902169, -0.00360286, -0.148865, 0.404868) +bones/94/rotation = Quaternion(0.88776, -0.003553, -0.146484, 0.436361) bones/94/scale = Vector3(1, 1, 1) bones/96/rotation = Quaternion(-0.715396, 0.0713076, 0.0634679, 0.692168) -bones/98/rotation = Quaternion(-0.550494, 0.0058326, 0.102515, 0.8285) +bones/98/rotation = Quaternion(-0.575257, 0.00541204, 0.106013, 0.811056) bones/100/rotation = Quaternion(0.808854, 0.0303333, -0.0651724, 0.583599) -bones/102/rotation = Quaternion(-0.542605, 0.00997915, 0.107576, 0.833011) +bones/102/rotation = Quaternion(-0.56759, 0.00950459, 0.111033, 0.815735) bones/102/scale = Vector3(1, 1, 1) bones/104/rotation = Quaternion(0.803479, 0.0249214, -0.0691385, 0.590779) -bones/106/rotation = Quaternion(-0.629778, -0.00356615, 0.102436, 0.769983) +bones/106/rotation = Quaternion(-0.654738, -0.00390121, 0.106226, 0.748344) bones/106/scale = Vector3(1, 1, 1) bones/108/scale = Vector3(1, 1, 1) bones/110/rotation = Quaternion(0.346017, 0.0755612, -0.0156624, 0.935049) -bones/112/rotation = Quaternion(0.0147606, 0.935612, 0.352515, -0.0120527) +bones/112/rotation = Quaternion(0.0149264, 0.938121, 0.345777, -0.0120654) bones/112/scale = Vector3(1, 1, 1) bones/114/rotation = Quaternion(0.015884, 0.718179, -0.69565, 0.00621692) bones/114/scale = Vector3(1, 1, 1) @@ -1080,106 +1080,106 @@ bones/126/rotation = Quaternion(0.993232, 0.00676712, -0.0811637, -0.0828125) bones/126/scale = Vector3(1, 1, 0.999988) [node name="Plane_009_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="0"] -transform = Transform3D(1, 0.000120014, -5.74365e-05, -0.000120074, 1, 0.00102448, 5.73322e-05, -0.00102454, 0.999999, 0.000109196, -0.00335413, 0.000185311) +transform = Transform3D(0.999999, 0.000309303, 0.00151041, -0.000350118, 0.999633, 0.0271091, -0.00150134, -0.0271097, 0.999631, -0.0065949, -0.0211282, 0.0324031) [node name="Plane_012_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="1"] -transform = Transform3D(1, 0.000142753, -5.26458e-05, -0.000142828, 0.999999, 0.00102714, 5.25713e-05, -0.00102714, 0.999999, 8.34465e-05, -0.00330764, 0.000212848) +transform = Transform3D(0.999998, 0.000561386, 0.00166436, -0.000606671, 0.999626, 0.0273294, -0.00164828, -0.0273305, 0.999625, -0.00697446, -0.0210885, 0.0323763) [node name="Cube_016_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="2"] -transform = Transform3D(1, 9.66992e-05, -4.04119e-05, -9.67868e-05, 1, 0.00031139, 4.0248e-05, -0.000311464, 1, 0.00011754, -0.00283626, -0.000468701) +transform = Transform3D(1, -0.000392126, 0.000522822, 0.000392105, 1, 3.28571e-05, -0.000522777, -3.27229e-05, 1, -0.00506735, -0.00135396, 0.0015873) [node name="Plane_004_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="3"] -transform = Transform3D(0.999997, -0.000630945, -0.00191337, 0.000632972, 0.999999, 0.0011677, 0.0019125, -0.00116904, 0.999998, 0.00285554, -0.00593925, -0.00632298) +transform = Transform3D(0.999998, -0.000271916, 0.00111739, 0.000233382, 0.999408, 0.0343903, -0.00112604, -0.0343901, 0.999408, -0.00514221, -0.0395212, 0.00960565) [node name="Cube_013_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="4"] -transform = Transform3D(1, 9.72822e-05, -1.71512e-05, -9.73493e-05, 1, 0.000677139, 1.70469e-05, -0.000677228, 1, 0.000109673, -0.00297624, -0.000470877) +transform = Transform3D(0.999999, -0.00033021, 0.00127363, 0.000320412, 0.999971, 0.0076836, -0.00127605, -0.00768319, 0.99997, -0.00534105, -0.00408101, 0.00241446) [node name="Plane_011_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="5"] -transform = Transform3D(1, 6.06328e-05, -6.94608e-05, -6.06179e-05, 0.999999, 0.0014398, 6.94012e-05, -0.00143975, 0.999999, 0.000426769, -0.00841975, -0.000729084) +transform = Transform3D(0.999999, -0.00101063, -0.000246848, 0.00101827, 0.999445, 0.0332819, 0.000213156, -0.0332821, 0.999446, 0.00278139, -0.207953, -0.0105019) [node name="Plane_002_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="6"] -transform = Transform3D(1, 0.000160843, 2.36109e-05, -0.000160992, 1, 0.00105056, -2.35438e-05, -0.00105062, 0.999999, -8.79765e-05, -0.00300407, 0.000616074) +transform = Transform3D(0.999999, 0.000514343, 0.00142886, -0.000549123, 0.999701, 0.0244612, -0.00141573, -0.0244621, 0.9997, -0.00710011, -0.0119259, 0.0470173) [node name="Plane_013_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="7"] -transform = Transform3D(1, 0.000160843, 2.36109e-05, -0.000160992, 1, 0.00105056, -2.35438e-05, -0.00105062, 0.999999, -8.79765e-05, -0.00300407, 0.000616074) +transform = Transform3D(0.999999, 0.000514343, 0.00142886, -0.000549123, 0.999701, 0.0244612, -0.00141573, -0.0244621, 0.9997, -0.00710011, -0.0119259, 0.0470173) [node name="Cube_007_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="8"] -transform = Transform3D(1, 0.000143744, 2.71872e-05, -0.000143833, 0.999999, 0.00115356, -2.71499e-05, -0.00115362, 0.999999, -2.81334e-05, -0.0034619, -0.000215292) +transform = Transform3D(0.999999, -0.000399135, 0.00105692, 0.000367075, 0.999547, 0.0301058, -0.00106835, -0.0301054, 0.999546, -0.00503182, -0.0339418, 0.00859594) [node name="Plane_015_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="9"] -transform = Transform3D(1, 7.58991e-05, 1.09971e-05, -7.5981e-05, 1, -0.000312865, -1.1161e-05, 0.000312746, 1, 5.65052e-05, -0.000468671, -0.00135279) +transform = Transform3D(0.999998, -0.0002921, 0.00177104, 0.000358932, 0.999283, -0.0378582, -0.00175861, 0.0378586, 0.999282, -0.00667095, 0.114933, -0.0390043) [node name="Cube_010_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="10"] -transform = Transform3D(1, 1.0306e-05, -1.54547e-05, -1.03526e-05, 0.999999, 0.0014272, 1.53172e-05, -0.00142728, 0.999999, 9.34601e-05, -0.00872892, -0.00240564) +transform = Transform3D(1, -1.45528e-05, -0.000417826, 2.93888e-05, 0.99937, 0.035498, 0.000417118, -0.0354979, 0.99937, 0.00273418, -0.215154, -0.0951581) [node name="Cube_012_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="11"] -transform = Transform3D(1, 3.34374e-06, -1.65103e-05, -3.4065e-06, 1, 0.000935405, 1.63613e-05, -0.000935405, 1, 0.000104189, -0.00602359, -0.00264359) +transform = Transform3D(1, -0.000177036, -0.000382876, 0.000184901, 0.999788, 0.0206038, 0.000379227, -0.0206039, 0.999788, 0.00261664, -0.133238, -0.104295) [node name="Cylinder_002_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="12"] -transform = Transform3D(1, -1.77636e-15, 0, -1.77636e-15, 1, -4.37113e-08, 0, 4.37113e-08, 1, 0, 0, -0.00337505) +transform = Transform3D(1, -1.77636e-15, 0, -1.77636e-15, 1, -4.37113e-08, 0, 4.37113e-08, 1, 0, 0, -0.121696) [node name="Cube_006_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="13"] -transform = Transform3D(1, 7.18899e-10, -2.01781e-08, -7.60139e-10, 1, -1.49128e-07, 2.01603e-08, 1.78756e-07, 1, -1.19209e-07, -1.43051e-06, -0.00337505) +transform = Transform3D(1, 7.18899e-10, -2.01781e-08, -7.60139e-10, 1, -1.49128e-07, 2.01603e-08, 1.78756e-07, 1, -1.19209e-07, -1.43051e-06, -0.121696) [node name="Cube_017_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="14"] -transform = Transform3D(1, 3.15225e-10, 2.16325e-08, -3.11474e-10, 1, -1.19326e-07, -2.16737e-08, 1.78814e-07, 1, 1.19209e-07, -1.90735e-06, -0.00337696) +transform = Transform3D(1, 3.15225e-10, 2.16325e-08, -3.11474e-10, 1, -1.19326e-07, -2.16737e-08, 1.78814e-07, 1, 1.19209e-07, -1.90735e-06, -0.121697) [node name="Cube_005_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="15"] -transform = Transform3D(1, -1.7053e-13, -3.41061e-13, 2.84217e-13, 1, -9.23872e-07, 3.41061e-13, 9.23872e-07, 1, -9.09153e-13, 4.52995e-06, -0.00337696) +transform = Transform3D(1, -1.7053e-13, -3.41061e-13, 2.84217e-13, 1, -9.23872e-07, 3.41061e-13, 9.23872e-07, 1, -9.09153e-13, 4.52995e-06, -0.121697) [node name="Cube_005_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D/Cube_005_Material_0" index="0"] surface_material_override/0 = ExtResource("8_dt6e4") [node name="Cube_005_Inside_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="16"] -transform = Transform3D(1, -1.7053e-13, -3.41061e-13, 2.84217e-13, 1, -9.23872e-07, 3.41061e-13, 9.23872e-07, 1, -9.09153e-13, 4.52995e-06, -0.00337696) +transform = Transform3D(1, -1.7053e-13, -3.41061e-13, 2.84217e-13, 1, -9.23872e-07, 3.41061e-13, 9.23872e-07, 1, -9.09153e-13, 4.52995e-06, -0.121697) [node name="Plane_003_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="17"] -transform = Transform3D(1, 1.08827e-10, -1.00637e-08, -1.10077e-10, 1, -2.82656e-07, 1.00761e-08, 2.82598e-07, 1, -2.38419e-07, 0, -0.00337505) +transform = Transform3D(1, 1.08827e-10, -1.00637e-08, -1.10077e-10, 1, -2.82656e-07, 1.00761e-08, 2.82598e-07, 1, -2.38419e-07, 0, -0.121696) [node name="Plane_016_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="18"] -transform = Transform3D(1, -1.08827e-10, 1.00637e-08, 1.10077e-10, 1, -2.82656e-07, -1.00761e-08, 2.82598e-07, 1, 2.38419e-07, 0, -0.00337505) +transform = Transform3D(1, -1.08827e-10, 1.00637e-08, 1.10077e-10, 1, -2.82656e-07, -1.00761e-08, 2.82598e-07, 1, 2.38419e-07, 0, -0.121696) [node name="Cube_008_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="19"] -transform = Transform3D(1, -2.64698e-23, 9.95068e-31, 2.64698e-23, 1, 0, -9.95068e-31, 0, 1, -1.90621e-29, 0, -0.00337505) +transform = Transform3D(1, -2.64698e-23, 9.95068e-31, 2.64698e-23, 1, 0, -9.95068e-31, 0, 1, -1.90621e-29, 0, -0.121696) [node name="Cube_008_Inside_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="20"] -transform = Transform3D(1, -2.64698e-23, 9.95068e-31, 2.64698e-23, 1, 0, -9.95068e-31, 0, 1, -1.90621e-29, 0, -0.00337505) +transform = Transform3D(1, -2.64698e-23, 9.95068e-31, 2.64698e-23, 1, 0, -9.95068e-31, 0, 1, -1.90621e-29, 0, -0.121696) [node name="Plane_006_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="21"] -transform = Transform3D(1, -0.000120178, 5.74663e-05, 0.000120193, 1, 0.00102565, -5.74663e-05, -0.00102565, 1, -0.000108242, -0.00335425, 0.000184953) +transform = Transform3D(0.999999, -0.000310585, -0.001511, 0.000351369, 0.999634, 0.0271096, 0.00150186, -0.02711, 0.999632, 0.00660038, -0.0211201, 0.032405) [node name="Plane_008_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="22"] -transform = Transform3D(1, -0.000142857, 5.26607e-05, 0.000142872, 1, 0.00102732, -5.26607e-05, -0.00102726, 1, -8.24928e-05, -0.00330824, 0.000211775) +transform = Transform3D(0.999999, -0.00056164, -0.00166333, 0.00060682, 0.999627, 0.0273286, 0.00164726, -0.0273295, 0.999626, 0.0069778, -0.0210832, 0.0323728) [node name="Cube_004_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="23"] -transform = Transform3D(1, -9.67197e-05, 4.04567e-05, 9.67793e-05, 1, 0.000311539, -4.03523e-05, -0.000311524, 1, -0.000118017, -0.00283679, -0.000469536) +transform = Transform3D(1, 0.000390919, -0.000523522, -0.000390949, 1, 3.20077e-05, 0.000523448, -3.17842e-05, 1, 0.00507212, -0.00134566, 0.00158891) [node name="Plane_005_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="24"] -transform = Transform3D(0.999998, 0.000631392, 0.00191589, -0.000633031, 0.999999, 0.00116782, -0.00191537, -0.00116934, 0.999997, -0.00285411, -0.00594121, -0.00632942) +transform = Transform3D(1, 0.000270873, -0.00111771, -0.000231683, 0.999409, 0.0343892, 0.00112586, -0.0343893, 0.999408, 0.00515199, -0.0395121, 0.00960732) [node name="Cube_003_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="25"] -transform = Transform3D(1, -9.72897e-05, 1.7181e-05, 9.73418e-05, 1, 0.000677258, -1.71587e-05, -0.000677288, 1, -0.000110149, -0.00297648, -0.000471592) +transform = Transform3D(0.999999, 0.000329241, -0.00127429, -0.000319503, 0.99997, 0.00768274, 0.00127668, -0.00768235, 0.99997, 0.00534582, -0.00407326, 0.0024159) [node name="Plane_007_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="26"] -transform = Transform3D(1, -6.06626e-05, 6.92336e-05, 6.0603e-05, 0.999999, 0.00143982, -6.92336e-05, -0.00143979, 0.999999, -0.000424385, -0.00842005, -0.00072813) +transform = Transform3D(1, 0.00101055, 0.000246343, -0.00101821, 0.999446, 0.0332808, -0.000212714, -0.033281, 0.999446, -0.00277615, -0.207947, -0.0105014) [node name="Plane_014_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="27"] -transform = Transform3D(1, -0.000122696, 1.90996e-05, 0.000122741, 0.999999, 0.00105825, -1.91629e-05, -0.00105819, 0.999999, -5.38826e-05, -0.00315309, 0.000478745) +transform = Transform3D(0.999999, -0.000514194, -0.0014305, 0.000549018, 0.9997, 0.0244852, 0.00141737, -0.0244861, 0.999699, 0.00710559, -0.0119727, 0.0470593) [node name="Plane_010_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="28"] -transform = Transform3D(1, -0.000130728, 1.65142e-05, 0.000130758, 1, 0.00106245, -1.65552e-05, -0.00106248, 1, -3.83854e-05, -0.00317693, 0.000482082) +transform = Transform3D(0.999999, -0.00101024, -0.00148606, 0.00104652, 0.999696, 0.0246433, 0.00146062, -0.0246449, 0.999695, 0.00789118, -0.0117781, 0.0462751) [node name="Cube_014_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="29"] -transform = Transform3D(1, -9.88543e-05, 2.31415e-05, 9.88841e-05, 0.999999, 0.00116265, -2.31788e-05, -0.00116268, 0.999999, -0.000115156, -0.00362355, -0.00036788) +transform = Transform3D(0.999999, 0.000398196, -0.00105779, -0.000366203, 0.999547, 0.0301054, 0.0010692, -0.0301051, 0.999546, 0.00503707, -0.0339348, 0.0085988) [node name="Plane_001_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="30"] -transform = Transform3D(1, -7.59512e-05, -1.08108e-05, 7.59885e-05, 1, -0.000312924, 1.093e-05, 0.000312895, 1, -5.6982e-05, -0.000468791, -0.00135374) +transform = Transform3D(0.999999, 0.000291079, -0.0017715, -0.000357985, 0.999283, -0.0378592, 0.00175911, 0.0378597, 0.999281, 0.00667548, 0.114941, -0.0390024) [node name="Cube_015_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="31"] -transform = Transform3D(1, -1.05817e-05, 1.52249e-05, 1.05891e-05, 0.999999, 0.0014272, -1.51751e-05, -0.00142728, 0.999999, -9.17912e-05, -0.00872827, -0.00240564) +transform = Transform3D(1, 1.30795e-05, 0.000416281, -2.79043e-05, 0.999371, 0.0354724, -0.000415664, -0.0354723, 0.999371, -0.00272393, -0.215007, -0.0951724) [node name="Cube_001_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="32"] -transform = Transform3D(1, -3.39907e-06, 1.65668e-05, 3.41529e-06, 1, 0.000935405, -1.64998e-05, -0.000935376, 1, -0.000104904, -0.00602287, -0.00264454) +transform = Transform3D(1, 0.000176055, 0.00038223, -0.000183957, 0.999788, 0.020603, -0.000378635, -0.0206031, 0.999788, -0.00261211, -0.13323, -0.104295) [node name="Cylinder_001_Material_0" parent="Sketchfab_model/bed584e06fe94e71a7ac484cee9f0a16_fbx/Object_2/RootNode/Armature/Object_5/Skeleton3D" index="33"] -transform = Transform3D(1, 1.77636e-15, 0, 1.77636e-15, 1, -4.37113e-08, 0, 4.37113e-08, 1, 0, 0, -0.00337505) +transform = Transform3D(1, 1.77636e-15, 0, 1.77636e-15, 1, -4.37113e-08, 0, 4.37113e-08, 1, 0, 0, -0.121696) diff --git a/project.godot b/project.godot index 28d4e11..6ee8a4c 100644 --- a/project.godot +++ b/project.godot @@ -15,6 +15,10 @@ run/main_scene="res://src/main.tscn" config/features=PackedStringArray("4.2", "Forward Plus") run/max_fps=60 +[autoload] + +GameState="*res://src/game_state.tscn" + [debug] settings/stdout/print_fps=true @@ -84,3 +88,8 @@ boost={ , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":2,"pressure":0.0,"pressed":true,"script":null) ] } + +[layer_names] + +3d_physics/layer_1="Geometry" +3d_physics/layer_2="Shadow" diff --git a/src/game_state.gd b/src/game_state.gd new file mode 100644 index 0000000..a6e34ee --- /dev/null +++ b/src/game_state.gd @@ -0,0 +1,14 @@ +class_name GameStateType +extends Node + +const TARGET_FPS: float = 60.0 + +const FRICTION: float = 0.3 +const AIR_DRAG: float = 0.03 + +# heat accrued each frame from sun exposure +# 100 heat / (5 minutes * 60 frames/second) = about 0.005556 heat/frame +const SOLAR_HEAT_RATE: float = 0.005556 + +# Get the gravity from the project settings to be synced with RigidBody nodes. +var gravity: float = ProjectSettings.get_setting("physics/3d/default_gravity") diff --git a/src/game_state.tscn b/src/game_state.tscn new file mode 100644 index 0000000..ca7cfeb --- /dev/null +++ b/src/game_state.tscn @@ -0,0 +1,6 @@ +[gd_scene load_steps=2 format=3 uid="uid://22efq6t8pwm4"] + +[ext_resource type="Script" path="res://src/game_state.gd" id="1_mps05"] + +[node name="GameState" type="Node"] +script = ExtResource("1_mps05") diff --git a/src/maps/arena_map/arena_map.tscn b/src/maps/arena_map/arena_map.tscn index a5a22a7..487382c 100644 --- a/src/maps/arena_map/arena_map.tscn +++ b/src/maps/arena_map/arena_map.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=19 format=3 uid="uid://drbiyuustse8b"] +[gd_scene load_steps=22 format=3 uid="uid://drbiyuustse8b"] [ext_resource type="PackedScene" uid="uid://bqp5mwyat3asv" path="res://src/player/player.tscn" id="1_tgee4"] [ext_resource type="Material" uid="uid://7a1uvst7oef2" path="res://assets/textures/metal_plate_1k/metal_plate.tres" id="2_ewgwm"] +[ext_resource type="PackedScene" uid="uid://2vetjvn3w0si" path="res://src/npc/dummy/dummy.tscn" id="2_stkni"] [ext_resource type="Shader" path="res://src/shaders/sunny_sky.gdshader" id="2_x74tl"] [ext_resource type="Material" uid="uid://dsc0g1qafw80e" path="res://src/maps/arena_map/metal_09.tres" id="3_jqqt6"] @@ -37,8 +38,12 @@ material = ExtResource("3_jqqt6") top_radius = 50.0 bottom_radius = 50.0 -[sub_resource type="ConvexPolygonShape3D" id="ConvexPolygonShape3D_pxre0"] -points = PackedVector3Array(0, -1, -50, -4.90407, -1, -49.7651, 0, 1, -50, 4.89428, -1, -49.7651, -4.90407, 1, -49.7651, -9.7592, -1, -49.0407, 4.89428, 1, -49.7651, 9.74941, -1, -49.0407, -9.7592, 1, -49.0407, -14.5164, -1, -47.8563, 9.74941, 1, -49.0407, 14.5067, -1, -47.8563, -14.5164, 1, -47.8563, -19.1366, -1, -46.202, 14.5067, 1, -47.8563, 19.1269, -1, -46.202, -19.1366, 1, -46.202, -23.5709, -1, -44.0975, 19.1269, 1, -46.202, 23.5611, -1, -44.0975, -23.5709, 1, -44.0975, -27.78, -1, -41.5818, 23.5611, 1, -44.0975, 27.7702, -1, -41.5818, -27.78, 1, -41.5818, -31.7247, -1, -38.6551, 27.7702, 1, -41.5818, 31.715, -1, -38.6551, -31.7247, 1, -38.6551, -35.3563, -1, -35.3563, 31.715, 1, -38.6551, 35.3465, -1, -35.3563, -35.3563, 1, -35.3563, -38.6551, -1, -31.7247, 35.3465, 1, -35.3563, 38.6453, -1, -31.7247, -38.6551, 1, -31.7247, -41.5818, -1, -27.78, 38.6453, 1, -31.7247, 41.572, -1, -27.78, -41.5818, 1, -27.78, -44.0975, -1, -23.5709, 41.572, 1, -27.78, 44.0877, -1, -23.5709, -44.0975, 1, -23.5709, -46.202, -1, -19.1366, 44.0877, 1, -23.5709, 46.1923, -1, -19.1366, -46.202, 1, -19.1366, -47.8563, -1, -14.5164, 46.1923, 1, -19.1366, 47.8465, -1, -14.5164, -47.8563, 1, -14.5164, -49.0407, -1, -9.7592, 47.8465, 1, -14.5164, 49.0309, -1, -9.7592, -49.0407, 1, -9.7592, -49.7651, -1, -4.90407, 49.0309, 1, -9.7592, 49.7553, -1, -4.90407, -49.7651, 1, -4.90407, -50, -1, 0, 49.7553, 1, -4.90407, 50, -1, 0, -50, 1, 0, -49.7651, -1, 4.89428, 50, 1, 0, 49.7553, -1, 4.89428, -49.7651, 1, 4.89428, -49.0407, -1, 9.74941, 49.7553, 1, 4.89428, 49.0309, -1, 9.74941, -49.0407, 1, 9.74941, -47.8563, -1, 14.5067, 49.0309, 1, 9.74941, 47.8465, -1, 14.5067, -47.8563, 1, 14.5067, -46.202, -1, 19.1269, 47.8465, 1, 14.5067, 46.1923, -1, 19.1269, -46.202, 1, 19.1269, -44.0975, -1, 23.5611, 46.1923, 1, 19.1269, 44.0877, -1, 23.5611, -44.0975, 1, 23.5611, -41.5818, -1, 27.7702, 44.0877, 1, 23.5611, 41.572, -1, 27.7702, -41.5818, 1, 27.7702, -38.6551, -1, 31.715, 41.572, 1, 27.7702, 38.6453, -1, 31.715, -38.6551, 1, 31.715, -35.3563, -1, 35.3465, 38.6453, 1, 31.715, 35.3465, -1, 35.3465, -35.3563, 1, 35.3465, -31.7247, -1, 38.6453, 35.3465, 1, 35.3465, 31.715, -1, 38.6453, -31.7247, 1, 38.6453, -27.78, -1, 41.572, 31.715, 1, 38.6453, 27.7702, -1, 41.572, -27.78, 1, 41.572, -23.5709, -1, 44.0877, 27.7702, 1, 41.572, 23.5611, -1, 44.0877, -23.5709, 1, 44.0877, -19.1366, -1, 46.1923, 23.5611, 1, 44.0877, 19.1269, -1, 46.1923, -19.1366, 1, 46.1923, -14.5164, -1, 47.8465, 19.1269, 1, 46.1923, 14.5067, -1, 47.8465, -14.5164, 1, 47.8465, -9.7592, -1, 49.0309, 14.5067, 1, 47.8465, 9.74941, -1, 49.0309, -9.7592, 1, 49.0309, -4.90407, -1, 49.7553, 9.74941, 1, 49.0309, 4.89428, -1, 49.7553, -4.90407, 1, 49.7553, 0, -1, 50, 4.89428, 1, 49.7553, 0, 1, 50) +[sub_resource type="CylinderShape3D" id="CylinderShape3D_imuqt"] +radius = 50.0 + +[sub_resource type="CylinderShape3D" id="CylinderShape3D_61wmo"] +height = 100.0 +radius = 50.0 [sub_resource type="CylinderMesh" id="CylinderMesh_jjkoa"] material = ExtResource("3_jqqt6") @@ -48,6 +53,10 @@ bottom_radius = 70.0 [sub_resource type="CylinderShape3D" id="CylinderShape3D_moqbh"] radius = 70.0 +[sub_resource type="CylinderShape3D" id="CylinderShape3D_11kxj"] +height = 100.0 +radius = 70.0 + [sub_resource type="CylinderMesh" id="CylinderMesh_pfp3p"] lightmap_size_hint = Vector2i(17, 19) material = ExtResource("2_ewgwm") @@ -99,6 +108,9 @@ _data = { [node name="Player" parent="." instance=ExtResource("1_tgee4")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0) +[node name="Dummy" parent="." instance=ExtResource("2_stkni")] +transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 10) + [node name="Environment" type="Node3D" parent="."] [node name="WorldEnvironment" type="WorldEnvironment" parent="Environment"] @@ -127,11 +139,17 @@ mesh = SubResource("CylinderMesh_uarav") skeleton = NodePath("StaticBody3D") [node name="StaticBody3D" type="StaticBody3D" parent="WorldGeometry/Floor"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) [node name="CollisionShape3D" type="CollisionShape3D" parent="WorldGeometry/Floor/StaticBody3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0) -shape = SubResource("ConvexPolygonShape3D_pxre0") +shape = SubResource("CylinderShape3D_imuqt") + +[node name="Shadow" type="StaticBody3D" parent="WorldGeometry/Floor"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -51, 0) +collision_layer = 2 +collision_mask = 2 + +[node name="CollisionShape3D" type="CollisionShape3D" parent="WorldGeometry/Floor/Shadow"] +shape = SubResource("CylinderShape3D_61wmo") [node name="FloorLower" type="MeshInstance3D" parent="WorldGeometry"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -6, 0) @@ -145,6 +163,14 @@ 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("CylinderShape3D_moqbh") +[node name="Shadow" type="StaticBody3D" parent="WorldGeometry/FloorLower"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -51, 0) +collision_layer = 2 +collision_mask = 2 + +[node name="CollisionShape3D" type="CollisionShape3D" parent="WorldGeometry/FloorLower/Shadow"] +shape = SubResource("CylinderShape3D_11kxj") + [node name="Pillar1" type="MeshInstance3D" parent="WorldGeometry"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 1, 10) mesh = SubResource("CylinderMesh_pfp3p") diff --git a/src/player/player.gd b/src/player/player.gd index 781b68a..c5d1bcd 100644 --- a/src/player/player.gd +++ b/src/player/player.gd @@ -1,21 +1,16 @@ extends CharacterBody3D -const TARGET_FPS: float = 60.0 const BASE_SPEED: float = 5.0 const BOOST_FORCE: float = 20.0 const JUMP_FORCE: float = 8.0 -const FRICTION: float = 0.3 -const AIR_DRAG: float = 0.03 const INPUT_SENSITIVITY: float = 0.7 const TURN_SENSITIVITY: float = 0.04 -# Get the gravity from the project settings to be synced with RigidBody nodes. -var gravity: float = ProjectSettings.get_setting("physics/3d/default_gravity") - @onready var camera_root: ThirdPersonCamera = $CameraRoot @onready var mesh: Node3D = $Mesh @onready var animation_tree: AnimationTree = $Mesh/Mech/AnimationTree @onready var animation_player: AnimationPlayer = $AnimationPlayer +@onready var shadow_listener: ShadowListener = $ShadowListener @onready var _crosshair: Crosshair = get_tree().get_first_node_in_group("CrosshairGroup") @onready var _overlay: OverlayEffects = get_tree().get_first_node_in_group("OverlayEffectsGroup") @@ -24,31 +19,57 @@ var gravity: float = ProjectSettings.get_setting("physics/3d/default_gravity") @onready var _structure_meter: StructureMeter = get_tree().get_first_node_in_group("StructureMeterGroup") +# gdlint: disable=class-definitions-order +var _heat: float = 0.0 +var heat: float: + set(value): + _heat = clamp(value, 0.0, 100.0) + _heat_meter.value = _heat + get: + return _heat + +var _damage: float = 0.0 +var damage: float: + set(value): + _damage = clamp(value, 0.0, 100.0) + _damage_meter.value = _damage + get: + return _damage + +var structure: int: + set(value): + _structure_meter.structure_count = clamp( + value, StructureMeter.MIN_STRUCTURE, StructureMeter.MAX_STRUCTURE + ) + get: + return _structure_meter.structure_count +# gdlint: enable=class-definitions-order + func is_boosting() -> bool: return animation_tree["parameters/boost/active"] func _physics_process(delta: float) -> void: - var delta_factor: float = delta * TARGET_FPS + var delta_factor: float = delta * GameState.TARGET_FPS # DEBUG BLOCK {{{ if Input.is_action_just_pressed("ui_left"): - _structure_meter.structure_count -= 1 + structure -= 1 if Input.is_action_just_pressed("ui_right"): - _structure_meter.structure_count += 1 + structure += 1 if Input.is_action_just_pressed("ui_up"): - _heat_meter.value += 1 - _damage_meter.value -= 1 + heat += 1 + damage -= 1 if Input.is_action_just_pressed("ui_down"): - _heat_meter.value -= 1 - _damage_meter.value += 1 + heat -= 1 + damage += 1 # DEBUG BLOCK }}} - var effective_gravity: float = gravity + var effective_gravity: float = GameState.gravity if is_boosting(): _crosshair.jostle(Vector2(randf_range(-3, 3), randf_range(-3, 3))) @@ -112,10 +133,16 @@ func _physics_process(delta: float) -> void: delta_factor * TURN_SENSITIVITY ) - var drag: float = FRICTION if (is_on_floor() and not is_boosting()) else AIR_DRAG + var drag: float = ( + GameState.FRICTION if (is_on_floor() and not is_boosting()) else GameState.AIR_DRAG + ) velocity.x = lerpf(velocity.x, 0.0, delta_factor * drag) velocity.z = lerpf(velocity.z, 0.0, delta_factor * drag) + # Take heat if exposed to the sun: + if not shadow_listener.in_shadow(): + heat += GameState.SOLAR_HEAT_RATE + move_and_slide() diff --git a/src/player/player.tscn b/src/player/player.tscn index 28ab820..9cbea81 100644 --- a/src/player/player.tscn +++ b/src/player/player.tscn @@ -1,8 +1,9 @@ -[gd_scene load_steps=8 format=3 uid="uid://bqp5mwyat3asv"] +[gd_scene load_steps=9 format=3 uid="uid://bqp5mwyat3asv"] [ext_resource type="Script" path="res://src/player/player.gd" id="1_h16ke"] [ext_resource type="Script" path="res://src/player/third_person_camera.gd" id="3_gichr"] [ext_resource type="PackedScene" uid="uid://dd7ebaau8a70n" path="res://assets/models/bipedal_mech/mech.tscn" id="4_s7336"] +[ext_resource type="PackedScene" uid="uid://bg450j3javgoj" path="res://src/util/shadow_listener.tscn" id="4_vf568"] [sub_resource type="CapsuleShape3D" id="CapsuleShape3D_otw5j"] radius = 0.7 @@ -67,6 +68,8 @@ spring_length = -1.5 transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, -1.5) current = true +[node name="ShadowListener" parent="." instance=ExtResource("4_vf568")] + [node name="AnimationPlayer" type="AnimationPlayer" parent="."] libraries = { "": SubResource("AnimationLibrary_pg8yw") diff --git a/src/ui/structure_meter.gd b/src/ui/structure_meter.gd index 5dbdd88..b60c4a5 100644 --- a/src/ui/structure_meter.gd +++ b/src/ui/structure_meter.gd @@ -1,6 +1,9 @@ class_name StructureMeter extends VBoxContainer +const MIN_STRUCTURE: int = 0 +const MAX_STRUCTURE: int = 5 + var structure_count: int: set = _set_structure_count, get = _get_structure_count diff --git a/src/util/shadow_listener.gd b/src/util/shadow_listener.gd new file mode 100644 index 0000000..0302a52 --- /dev/null +++ b/src/util/shadow_listener.gd @@ -0,0 +1,20 @@ +class_name ShadowListener +extends Area3D + +var _colliders: Dictionary = {} + + +func in_shadow() -> bool: + return len(_colliders) > 0 + + +func _on_body_shape_entered( + body_rid: RID, _body: Node3D, _body_shape_index: int, _local_shape_index: int +) -> void: + _colliders[body_rid] = true + + +func _on_body_shape_exited( + body_rid: RID, _body: Node3D, _body_shape_index: int, _local_shape_index: int +) -> void: + _colliders.erase(body_rid) diff --git a/src/util/shadow_listener.tscn b/src/util/shadow_listener.tscn new file mode 100644 index 0000000..3e75991 --- /dev/null +++ b/src/util/shadow_listener.tscn @@ -0,0 +1,17 @@ +[gd_scene load_steps=3 format=3 uid="uid://bg450j3javgoj"] + +[ext_resource type="Script" path="res://src/util/shadow_listener.gd" id="1_qtob8"] + +[sub_resource type="BoxShape3D" id="BoxShape3D_ib4dh"] +size = Vector3(0.01, 0.01, 0.01) + +[node name="ShadowListener" type="Area3D"] +collision_layer = 0 +collision_mask = 2 +script = ExtResource("1_qtob8") + +[node name="CollisionShape3D" type="CollisionShape3D" parent="."] +shape = SubResource("BoxShape3D_ib4dh") + +[connection signal="body_shape_entered" from="." to="." method="_on_body_shape_entered"] +[connection signal="body_shape_exited" from="." to="." method="_on_body_shape_exited"]