bug in enemy movement solved

pull/27/head
Sascha 2025-07-02 16:46:18 +07:00
parent b8eea35730
commit 3cb55a5c27
6 changed files with 169 additions and 166 deletions

@ -1,5 +1,5 @@
{
"godotTools.editorPath.godot4": "c:\\Program Files\\Godot\\Godot_v4.5-dev5_win64.exe",
"godotTools.editorPath.godot4": "/home/sascha/Godot/Godot_v4.5-beta1_linux.x86_64",
"git.alwaysShowStagedChangesResourceGroup": false,
"git.enableCommitSigning": true
}

@ -31705,6 +31705,7 @@ graph_offset = Vector2(-318, -48.186)
transform = Transform3D(0.8, 0, 0, 0, 0.8, 0, 0, 0, 0.8, 0, 0, 0)
collision_layer = 4
script = ExtResource("2_51yjr")
jump_speed = 16.0
model = NodePath("Rig")
unit_name = "Player"
@ -31727,43 +31728,43 @@ bones/0/name = "root"
bones/0/parent = -1
bones/0/rest = Transform3D(1, 0, 2.38419e-07, 0, 1, 0, -2.38419e-07, 0, 1, 0, 0, 0)
bones/0/enabled = true
bones/0/position = Vector3(0, 0.00040183633, 0)
bones/0/position = Vector3(0, 0.0005594847, 0)
bones/0/rotation = Quaternion(-2.1973744e-11, -0.000638415, -3.8059562e-11, 0.9999998)
bones/0/scale = Vector3(1, 1, 1)
bones/1/name = "hips"
bones/1/parent = 0
bones/1/rest = Transform3D(1, 0, -2.38419e-07, 0, 1, 0, 2.38419e-07, 0, 1, 0, 0.405663, 0)
bones/1/enabled = true
bones/1/position = Vector3(9.918064e-19, 0.38871956, -9.918064e-19)
bones/1/rotation = Quaternion(0.0022207487, 0.04222425, -8.894023e-06, 0.99910575)
bones/1/position = Vector3(9.1606177e-26, 0.3872167, -3.8422527e-19)
bones/1/rotation = Quaternion(0.0021961494, 0.042224165, -7.848524e-06, 0.99910575)
bones/1/scale = Vector3(1, 1, 1)
bones/2/name = "spine"
bones/2/parent = 1
bones/2/rest = Transform3D(1, 0, 1.42109e-14, 0, 1, 0, -1.42109e-14, 0, 1, 0, 0.191978, 0)
bones/2/enabled = true
bones/2/position = Vector3(0, 0.191978, 0)
bones/2/rotation = Quaternion(0.0024966595, 0.0016805134, -0.00018478409, 0.9999955)
bones/2/rotation = Quaternion(0.002493966, 0.0019975326, -0.00020952924, 0.9999949)
bones/2/scale = Vector3(1, 1, 1)
bones/3/name = "chest"
bones/3/parent = 2
bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.374988, 0)
bones/3/enabled = true
bones/3/position = Vector3(0, 0.374988, 0)
bones/3/rotation = Quaternion(0.00093984784, 0.00021318761, 3.1108997e-05, 0.9999995)
bones/3/rotation = Quaternion(0.0009380326, 0.00021817116, 5.675063e-05, 0.9999996)
bones/3/scale = Vector3(1, 1, 1)
bones/4/name = "upperarm.l"
bones/4/parent = 3
bones/4/rest = Transform3D(0.0572842, 0.998357, -3.57628e-07, -3.57628e-07, 4.76837e-07, 1, 0.998357, -0.0572841, 4.76837e-07, 0.212007, 0.134132, 8.40246e-08)
bones/4/enabled = true
bones/4/position = Vector3(0.21187462, 0.13385738, -0.0010360042)
bones/4/rotation = Quaternion(-0.5644904, -0.06334803, -0.6389355, 0.5187477)
bones/4/position = Vector3(0.21190533, 0.13387275, -0.0010442956)
bones/4/rotation = Quaternion(-0.5638528, -0.06292867, -0.63832474, 0.5202419)
bones/4/scale = Vector3(0.999999, 0.999999, 1)
bones/5/name = "lowerarm.l"
bones/5/parent = 4
bones/5/rest = Transform3D(0.993887, 0.110402, -1.19007e-07, -0.110402, 0.993887, 3.28831e-09, 1.18643e-07, 9.87045e-09, 1, -3.21966e-09, 0.241897, -1.19406e-07)
bones/5/enabled = true
bones/5/position = Vector3(-3.21966e-09, 0.241897, -1.19406e-07)
bones/5/rotation = Quaternion(3.095372e-08, -5.572603e-08, -0.50042135, 0.865782)
bones/5/rotation = Quaternion(1.5955319e-08, -5.0626948e-08, -0.50278187, 0.86441344)
bones/5/scale = Vector3(1, 1, 1)
bones/6/name = "wrist.l"
bones/6/parent = 5
@ -31777,14 +31778,14 @@ bones/7/parent = 6
bones/7/rest = Transform3D(1, 1.09104e-05, 2.66204e-07, -1.09104e-05, 1, -2.40181e-09, -2.66204e-07, 2.39891e-09, 1, 9.08162e-13, 0.0738258, 2.22045e-16)
bones/7/enabled = true
bones/7/position = Vector3(9.08162e-13, 0.0738258, 2.22045e-16)
bones/7/rotation = Quaternion(-0.31410387, -0.33045247, 0.1401385, 0.87892044)
bones/7/rotation = Quaternion(-0.31447908, -0.33115312, 0.14102875, 0.87838006)
bones/7/scale = Vector3(1, 1, 1)
bones/8/name = "handslot.l"
bones/8/parent = 7
bones/8/rest = Transform3D(-1.19209e-07, 1, -2.22045e-16, -1, -1.19209e-07, -4.55307e-09, -4.55307e-09, -2.22045e-16, 1, 8.34815e-10, 0.0961251, -0.0575001)
bones/8/enabled = true
bones/8/position = Vector3(-1.695765e-09, 0.0961252, -0.0575)
bones/8/rotation = Quaternion(-0.0010936128, 0.0012028513, -0.7029459, 0.7112415)
bones/8/rotation = Quaternion(-0.0010632676, 0.001237244, -0.7028234, 0.71136254)
bones/8/scale = Vector3(1, 1, 1)
bones/9/name = "1H_Sword_Offhand"
bones/9/parent = 8
@ -31825,15 +31826,15 @@ bones/14/name = "upperarm.r"
bones/14/parent = 3
bones/14/rest = Transform3D(0.0572841, -0.998357, 4.47035e-07, 5.06639e-07, 4.17232e-07, 1, -0.998357, -0.0572842, 4.76837e-07, -0.212007, 0.134132, 8.40246e-08)
bones/14/enabled = true
bones/14/position = Vector3(-0.21157968, 0.13370973, -0.00095633074)
bones/14/rotation = Quaternion(-0.6220512, 0.08101336, 0.6112128, 0.48260567)
bones/14/position = Vector3(-0.211549, 0.13369434, -0.00094803993)
bones/14/rotation = Quaternion(-0.6216117, 0.08032656, 0.6101924, 0.48457372)
bones/14/scale = Vector3(0.999999, 0.999999, 1)
bones/15/name = "lowerarm.r"
bones/15/parent = 14
bones/15/rest = Transform3D(0.993887, -0.110402, 1.19007e-07, 0.110402, 0.993887, 3.28831e-09, -1.18643e-07, 9.87045e-09, 1, -7.12186e-11, 0.241897, -1.19406e-07)
bones/15/enabled = true
bones/15/position = Vector3(-7.12186e-11, 0.241897, -1.19406e-07)
bones/15/rotation = Quaternion(2.3551108e-08, 4.9723518e-08, 0.52264106, 0.85255283)
bones/15/rotation = Quaternion(2.8837805e-08, 5.4907176e-08, 0.5246866, 0.85129553)
bones/15/scale = Vector3(1, 1, 1)
bones/16/name = "wrist.r"
bones/16/parent = 15
@ -31847,14 +31848,14 @@ bones/17/parent = 16
bones/17/rest = Transform3D(1, -1.09104e-05, -1.78637e-07, 1.09104e-05, 1, -2.40084e-09, 1.78637e-07, 2.39889e-09, 1, 1.33227e-15, 0.0738258, 2.22045e-16)
bones/17/enabled = true
bones/17/position = Vector3(1.33227e-15, 0.0738258, 2.22045e-16)
bones/17/rotation = Quaternion(-0.31253678, 0.3076222, -0.21926919, 0.8715563)
bones/17/rotation = Quaternion(-0.3130986, 0.30865583, -0.21982822, 0.8708481)
bones/17/scale = Vector3(1, 1, 1)
bones/18/name = "handslot.r"
bones/18/parent = 17
bones/18/rest = Transform3D(-1.19209e-07, -1, 2.22045e-16, 1, -1.19209e-07, -4.55301e-09, 4.55301e-09, -2.22045e-16, 1, -8.34815e-10, 0.0961251, -0.0575001)
bones/18/enabled = true
bones/18/position = Vector3(-1.4181621e-08, 0.0961251, -0.0575)
bones/18/rotation = Quaternion(-0.00069719134, -0.0006227261, 0.7032163, 0.7109754)
bones/18/rotation = Quaternion(-0.0005824245, -0.0004828556, 0.70309657, 0.711094)
bones/18/scale = Vector3(1, 1, 1)
bones/19/name = "1H_Sword"
bones/19/parent = 18
@ -31875,7 +31876,7 @@ bones/21/parent = 3
bones/21/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.268797, 0)
bones/21/enabled = true
bones/21/position = Vector3(0, 0.268797, 0)
bones/21/rotation = Quaternion(-0.002857107, -0.03250704, -5.586077e-05, 0.9994675)
bones/21/rotation = Quaternion(-0.002857002, -0.032715198, -4.3160384e-05, 0.99946064)
bones/21/scale = Vector3(1, 1, 1)
bones/22/name = "Knight_Helmet"
bones/22/parent = 21
@ -31895,71 +31896,71 @@ bones/24/name = "upperleg.l"
bones/24/parent = 1
bones/24/rest = Transform3D(1, -1.42215e-07, -2.65602e-08, -1.43052e-07, -0.999396, -0.0347412, -2.16035e-08, 0.0347411, -0.999398, 0.170945, 0.113587, 1.39233e-08)
bones/24/enabled = true
bones/24/position = Vector3(0.170945, 0.113587, 0.0020333922)
bones/24/rotation = Quaternion(0.99301195, 0.08042358, 0.07437139, 0.043912955)
bones/24/position = Vector3(0.170945, 0.113587, 0.0020790335)
bones/24/rotation = Quaternion(0.99270546, 0.080342144, 0.07479069, 0.049873125)
bones/24/scale = Vector3(1, 1, 1)
bones/25/name = "lowerleg.l"
bones/25/parent = 24
bones/25/rest = Transform3D(1, 1.6129e-07, 1.20856e-07, -1.3212e-07, 0.977433, -0.211248, -1.52201e-07, 0.211248, 0.977433, 3.57982e-09, 0.227077, -6.13986e-09)
bones/25/enabled = true
bones/25/position = Vector3(3.57982e-09, 0.227077, -6.13986e-09)
bones/25/rotation = Quaternion(0.25488424, 6.380232e-08, -1.7808895e-07, 0.9669716)
bones/25/rotation = Quaternion(0.26999196, 6.476052e-08, -1.8829702e-07, 0.9628627)
bones/25/scale = Vector3(1, 1, 1)
bones/26/name = "foot.l"
bones/26/parent = 25
bones/26/rest = Transform3D(1, 4.64335e-08, 6.01239e-08, -7.59277e-08, 0.585515, 0.810661, 2.4383e-09, -0.810662, 0.585514, 1.83222e-10, 0.149437, 9.66537e-10)
bones/26/enabled = true
bones/26/position = Vector3(1.83222e-10, 0.149437, 9.66537e-10)
bones/26/rotation = Quaternion(-0.54578155, -0.20358205, 0.04984539, 0.8112905)
bones/26/rotation = Quaternion(-0.55488884, -0.20308821, 0.05209637, 0.8050712)
bones/26/scale = Vector3(1, 1, 0.999999)
bones/27/name = "toes.l"
bones/27/parent = 26
bones/27/rest = Transform3D(-1, -1.75424e-09, 1.51741e-07, -1.10452e-07, 0.694106, -0.719873, -1.04062e-07, -0.719873, -0.694106, -2.1306e-10, 0.16565, 5.17174e-09)
bones/27/enabled = true
bones/27/position = Vector3(-2.1306e-10, 0.16565, 5.17174e-09)
bones/27/rotation = Quaternion(-1.0200191e-08, 0.9203551, -0.39108407, 7.8109345e-08)
bones/27/rotation = Quaternion(-1.0200541e-08, 0.9203551, -0.39108407, 7.810814e-08)
bones/27/scale = Vector3(1, 1, 1)
bones/28/name = "upperleg.r"
bones/28/parent = 1
bones/28/rest = Transform3D(1, 1.49611e-07, -6.08626e-08, 1.47406e-07, -0.999396, -0.0347412, -6.60234e-08, 0.0347411, -0.999398, -0.170945, 0.113587, 1.39233e-08)
bones/28/enabled = true
bones/28/position = Vector3(-0.170945, 0.113587, -0.0020333591)
bones/28/rotation = Quaternion(0.9963032, -0.02971043, 0.03041421, 0.07464874)
bones/28/position = Vector3(-0.170945, 0.113587, -0.0020790012)
bones/28/rotation = Quaternion(0.9959733, -0.02996953, 0.030307135, 0.078870215)
bones/28/scale = Vector3(1, 1, 1)
bones/29/name = "lowerleg.r"
bones/29/parent = 28
bones/29/rest = Transform3D(1, -1.6129e-07, -1.20856e-07, 1.3212e-07, 0.977433, -0.211248, 1.52201e-07, 0.211248, 0.977433, -3.57982e-09, 0.227077, -6.13986e-09)
bones/29/enabled = true
bones/29/position = Vector3(-3.57982e-09, 0.227077, -6.13986e-09)
bones/29/rotation = Quaternion(0.3230715, -6.33237e-08, 2.2465625e-07, 0.94637454)
bones/29/rotation = Quaternion(0.33462492, -6.2467464e-08, 2.3268484e-07, 0.94235146)
bones/29/scale = Vector3(1, 1, 1)
bones/30/name = "foot.r"
bones/30/parent = 29
bones/30/rest = Transform3D(1, -1.55132e-07, 2.93521e-07, -1.47115e-07, 0.585515, 0.810661, -2.97621e-07, -0.810662, 0.585514, -1.83221e-10, 0.149437, 9.66542e-10)
bones/30/enabled = true
bones/30/position = Vector3(-1.83221e-10, 0.149437, 9.66542e-10)
bones/30/rotation = Quaternion(-0.5745527, 0.11176443, -0.012050711, 0.8107113)
bones/30/rotation = Quaternion(-0.58000803, 0.11162563, -0.013299727, 0.806817)
bones/30/scale = Vector3(1, 1, 0.999999)
bones/31/name = "toes.r"
bones/31/parent = 30
bones/31/rest = Transform3D(-1, 1.75425e-09, -1.51741e-07, 1.10452e-07, 0.694106, -0.719873, 1.04062e-07, -0.719873, -0.694106, 2.13058e-10, 0.16565, 5.17174e-09)
bones/31/enabled = true
bones/31/position = Vector3(2.13058e-10, 0.16565, 5.17174e-09)
bones/31/rotation = Quaternion(2.8993462e-08, 0.91903013, -0.3941874, -6.932726e-08)
bones/31/rotation = Quaternion(2.9053094e-08, 0.9193642, -0.39340776, -6.929857e-08)
bones/31/scale = Vector3(1, 1, 1)
bones/32/name = "kneeIK.l"
bones/32/parent = 0
bones/32/rest = Transform3D(1, -2.59151e-07, -3.89414e-07, -3.89414e-07, 0, -1, 2.59151e-07, 1, 0, 0.170945, 0.29231, 0.575812)
bones/32/enabled = true
bones/32/position = Vector3(0.170945, 0.2936124, 0.57711434)
bones/32/position = Vector3(0.170945, 0.2932796, 0.5767816)
bones/32/rotation = Quaternion(0.7071068, -2.2930195e-07, -4.605519e-08, 0.7071068)
bones/32/scale = Vector3(1, 1, 1)
bones/33/name = "control-toe-roll.l"
bones/33/parent = 0
bones/33/rest = Transform3D(1, 1.99485e-07, -3.55271e-14, 3.55271e-14, 0, 1, 1.99485e-07, -1, 0, 0.170945, 0.0259903, 0.245789)
bones/33/enabled = true
bones/33/position = Vector3(0.20149983, 0.03093037, 0.21333832)
bones/33/rotation = Quaternion(-0.7099034, -7.0064424e-08, -7.093244e-08, 0.7042991)
bones/33/position = Vector3(0.20149983, 0.031926177, 0.2135407)
bones/33/rotation = Quaternion(-0.71111876, -6.9945365e-08, -7.1048305e-08, 0.703072)
bones/33/scale = Vector3(1, 1, 1)
bones/34/name = "control-heel-roll.l"
bones/34/parent = 33
@ -32000,15 +32001,15 @@ bones/39/name = "kneeIK.r"
bones/39/parent = 0
bones/39/rest = Transform3D(1, -2.59151e-07, 1.50996e-07, 1.50996e-07, 0, -1, 2.59151e-07, 1, 0, -0.170945, 0.29231, 0.575812)
bones/39/enabled = true
bones/39/position = Vector3(-0.170945, 0.2936124, 0.57711434)
bones/39/position = Vector3(-0.170945, 0.2932796, 0.5767816)
bones/39/rotation = Quaternion(0.7071068, -3.823849e-08, 1.4500897e-07, 0.7071068)
bones/39/scale = Vector3(1, 1, 1)
bones/40/name = "control-toe-roll.r"
bones/40/parent = 0
bones/40/rest = Transform3D(1, 1.99485e-07, 0, 0, 0, 1, 1.99485e-07, -1, 0, -0.170945, 0.0259903, 0.245789)
bones/40/enabled = true
bones/40/position = Vector3(-0.170945, 0.027720142, 0.23198222)
bones/40/rotation = Quaternion(-0.6934508, -7.194179e-08, -6.909922e-08, 0.720504)
bones/40/position = Vector3(-0.170945, 0.028055687, 0.23108037)
bones/40/rotation = Quaternion(-0.69258714, -7.2019105e-08, -6.901817e-08, 0.7213343)
bones/40/scale = Vector3(1, 1, 1)
bones/41/name = "control-heel-roll.r"
bones/41/parent = 40
@ -32056,8 +32057,8 @@ bones/47/name = "handIK.l"
bones/47/parent = 0
bones/47/rest = Transform3D(-2.38419e-07, 1, 0, 0, 0, 1, 1, 2.38419e-07, 0, 0.713181, 1.10676, 2.54914e-07)
bones/47/enabled = true
bones/47/position = Vector3(0.52067727, 0.7865753, -0.053276174)
bones/47/rotation = Quaternion(0.7995263, 0.0108261295, 0.6005314, 0.0016807595)
bones/47/position = Vector3(0.52067727, 0.7860634, -0.053453404)
bones/47/rotation = Quaternion(0.7993775, 0.010638336, 0.6007328, 0.0016267226)
bones/47/scale = Vector3(1, 1, 1)
bones/48/name = "elbowIK.r"
bones/48/parent = 0
@ -32070,12 +32071,12 @@ bones/49/name = "handIK.r"
bones/49/parent = 0
bones/49/rest = Transform3D(1.19209e-07, -1, -1.19209e-07, 0, -1.19209e-07, 1, -1, -1.19209e-07, 0, -0.713182, 1.10676, -8.51573e-08)
bones/49/enabled = true
bones/49/position = Vector3(-0.5107404, 0.7865753, 0.062218484)
bones/49/rotation = Quaternion(0.7639927, -0.010196804, -0.64514095, 0.002062005)
bones/49/position = Vector3(-0.5107404, 0.7860634, 0.062041294)
bones/49/rotation = Quaternion(0.7638328, -0.010012071, -0.64533347, 0.001997666)
bones/49/scale = Vector3(1, 1, 1)
[node name="1H_Sword_Offhand" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(-0.013813024, 0.26693127, 0.963616, 0.9998691, 0.011735006, 0.01108293, -0.008349343, 0.9636434, -0.26705799, 0.5151154, 0.63638216, 0.0037034322)
transform = Transform3D(-0.013022208, 0.2665021, 0.96374583, 0.99988633, 0.010735237, 0.010543105, -0.0075358315, 0.9637738, -0.26661122, 0.5148675, 0.6359404, 0.0036146343)
visible = false
bone_name = "1H_Sword_Offhand"
bone_idx = 9
@ -32085,7 +32086,7 @@ mesh = SubResource("ArrayMesh_rvosg")
skeleton = NodePath("")
[node name="Badge_Shield" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(-0.013812991, 0.2669311, 0.9636161, 0.99986917, 0.011732469, 0.011083599, -0.0083467215, 0.96364343, -0.26705778, 0.6653286, 0.6381099, -0.037926897)
transform = Transform3D(-0.013022176, 0.26650193, 0.9637459, 0.9998864, 0.0107327, 0.010543775, -0.0075332103, 0.96377385, -0.266611, 0.66510105, 0.6375839, -0.037946053)
visible = false
bone_name = "Badge_Shield"
bone_idx = 10
@ -32095,7 +32096,7 @@ mesh = SubResource("ArrayMesh_0xags")
skeleton = NodePath("")
[node name="Rectangle_Shield" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(-0.013812991, 0.2669311, 0.9636161, 0.99986917, 0.011732469, 0.011083599, -0.0083467215, 0.96364343, -0.26705778, 0.6653286, 0.6381099, -0.037926897)
transform = Transform3D(-0.013022176, 0.26650193, 0.9637459, 0.9998864, 0.0107327, 0.010543775, -0.0075332103, 0.96377385, -0.266611, 0.66510105, 0.6375839, -0.037946053)
visible = false
bone_name = "Rectangle_Shield"
bone_idx = 11
@ -32105,7 +32106,7 @@ mesh = SubResource("ArrayMesh_qr44s")
skeleton = NodePath("")
[node name="Round_Shield" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(-0.013812991, 0.2669311, 0.9636161, 0.99986917, 0.011732469, 0.011083599, -0.0083467215, 0.96364343, -0.26705778, 0.6653286, 0.6381099, -0.037926897)
transform = Transform3D(-0.013022176, 0.26650193, 0.9637459, 0.9998864, 0.0107327, 0.010543775, -0.0075332103, 0.96377385, -0.266611, 0.66510105, 0.6375839, -0.037946053)
bone_name = "Round_Shield"
bone_idx = 12
@ -32114,7 +32115,7 @@ mesh = SubResource("ArrayMesh_bb24p")
skeleton = NodePath("")
[node name="Spike_Shield" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(-0.013812991, 0.2669311, 0.9636161, 0.99986917, 0.011732469, 0.011083599, -0.0083467215, 0.96364343, -0.26705778, 0.6653286, 0.6381099, -0.037926897)
transform = Transform3D(-0.013022176, 0.26650193, 0.9637459, 0.9998864, 0.0107327, 0.010543775, -0.0075332103, 0.96377385, -0.266611, 0.66510105, 0.6375839, -0.037946053)
bone_name = "Spike_Shield"
bone_idx = 13
@ -32123,7 +32124,7 @@ mesh = SubResource("ArrayMesh_jnwr3")
skeleton = NodePath("")
[node name="1H_Sword" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(0.015621854, -0.16187112, 0.9866878, 0.999836, 0.011524438, -0.013940318, -0.009114035, 0.98674375, 0.16202432, -0.5004664, 0.641405, 0.1423082)
transform = Transform3D(0.015382327, -0.16224404, 0.9866302, 0.999849, 0.010418801, -0.013875936, -0.008027822, 0.9866949, 0.16237952, -0.50059044, 0.641114, 0.14210492)
bone_name = "1H_Sword"
bone_idx = 19
@ -32142,7 +32143,7 @@ shape = SubResource("CapsuleShape3D_nge0l")
disabled = true
[node name="2H_Sword" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(0.015621838, -0.16187112, 0.9866878, 0.999836, 0.011524423, -0.013940304, -0.009114022, 0.98674375, 0.16202432, -0.5004664, 0.641405, 0.1423082)
transform = Transform3D(0.015382311, -0.16224404, 0.9866302, 0.999849, 0.010418786, -0.013875923, -0.008027809, 0.9866949, 0.16237952, -0.50059044, 0.641114, 0.14210492)
bone_name = "2H_Sword"
bone_idx = 20
@ -32151,7 +32152,7 @@ mesh = SubResource("ArrayMesh_ys2n7")
skeleton = NodePath("")
[node name="Knight_Helmet" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(0.9997584, 0.0008925565, 0.021957189, -0.00077052636, 0.9999842, -0.0055654864, -0.021961778, 0.0055472213, 0.9997434, 0.00068124675, 1.1993147, 0.007254126)
transform = Transform3D(0.9997535, 0.0008608283, 0.022184163, -0.00073879445, 0.99998456, -0.0055085546, -0.022188589, 0.0054908064, 0.99973863, 0.0006975907, 1.1979699, 0.007208441)
bone_name = "Knight_Helmet"
bone_idx = 22
@ -32170,7 +32171,7 @@ transform = Transform3D(-0.999711, 2.27778e-05, 0.024046, 5.34939e-07, 1, -0.000
shape = SubResource("CapsuleShape3D_i3cyd")
[node name="Knight_Cape" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(0.99621904, 0.001092095, 0.086869396, -0.00010984797, 0.99993604, -0.01131115, -0.08687617, 0.01125884, 0.9961555, 0.0006756643, 1.1993153, 0.007108255)
transform = Transform3D(0.99616295, 0.0010882048, 0.08751063, -0.00010377708, 0.99993664, -0.011252997, -0.08751735, 0.011200736, 0.99609995, 0.0006912974, 1.1979704, 0.007062612)
visible = false
bone_name = "Knight_Cape"
bone_idx = 23
@ -32209,6 +32210,9 @@ libraries = {
}
[node name="AnimationTree" type="AnimationTree" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_85ysr")
}
tree_root = SubResource("AnimationNodeStateMachine_vnar2")
anim_player = NodePath("../AnimationPlayer")
parameters/conditions/blocking = false

@ -567,106 +567,106 @@ bones/0/name = "root"
bones/0/parent = -1
bones/0/rest = Transform3D(1, 2.0611e-15, 2.40863e-07, -6.18329e-15, 1, 1.71143e-08, -2.40863e-07, -1.71143e-08, 1, 0, 0, 0)
bones/0/enabled = true
bones/0/position = Vector3(-2.3778597e-25, 0.001114621, -3.8151773e-11)
bones/0/rotation = Quaternion(-8.560085e-09, -0.0005982796, -2.7392871e-11, 0.9999998)
bones/0/position = Vector3(0, 1.6827233e-05, -5.7597064e-13)
bones/0/rotation = Quaternion(-8.561838e-09, 0.00095386495, 9.846086e-11, 0.99999964)
bones/0/scale = Vector3(1, 1, 1)
bones/1/name = "hips"
bones/1/parent = 0
bones/1/rest = Transform3D(1, -1.92983e-22, -2.06635e-07, 9.18536e-22, 1, 3.51128e-15, 2.06635e-07, -3.51128e-15, 1, -2.1013e-22, 0.405663, 8.88178e-16)
bones/1/enabled = true
bones/1/position = Vector3(1.3016696e-18, 0.37066194, 1.6717681e-15)
bones/1/rotation = Quaternion(0.002822056, 0.041924547, -3.877896e-05, 0.99911684)
bones/1/position = Vector3(4.0856924e-18, 0.38151184, 1.3174955e-15)
bones/1/rotation = Quaternion(0.00073510455, 0.042828005, -0.00015836423, 0.99908227)
bones/1/scale = Vector3(1, 1, 1)
bones/2/name = "spine"
bones/2/parent = 1
bones/2/rest = Transform3D(1, 8.67181e-22, 3.55271e-15, -8.67181e-22, 1, 3.52176e-23, -3.55271e-15, -3.52176e-23, 1, -4.36903e-23, 0.191978, -8.88178e-16)
bones/2/enabled = true
bones/2/position = Vector3(1.3038567e-11, 0.19197796, -6.120775e-12)
bones/2/rotation = Quaternion(0.0032712999, -0.0031695243, 0.00020154331, 0.9999896)
bones/2/position = Vector3(-3.0535532e-11, 0.191978, 1.6963566e-11)
bones/2/rotation = Quaternion(0.0008768739, -0.0002198312, 9.172071e-05, 0.99999964)
bones/2/scale = Vector3(1, 1, 1)
bones/3/name = "chest"
bones/3/parent = 2
bones/3/rest = Transform3D(1, -2.05374e-22, -1.77636e-14, 2.05374e-22, 1, -1.11653e-14, 1.77636e-14, 1.11653e-14, 1, -9.6328e-23, 0.374988, 1.77636e-15)
bones/3/enabled = true
bones/3/position = Vector3(-1.9523272e-11, 0.374988, 5.5286625e-10)
bones/3/rotation = Quaternion(0.00122792, 0.00012129889, -0.0003745585, 0.9999992)
bones/3/position = Vector3(1.6852008e-11, 0.374988, 1.6398385e-10)
bones/3/rotation = Quaternion(0.0003544942, -0.00028127388, 0.00014427128, 0.9999999)
bones/3/scale = Vector3(1, 1, 1)
bones/4/name = "upperarm.l"
bones/4/parent = 3
bones/4/rest = Transform3D(0.0572952, 0.998357, 5.96046e-08, -2.98023e-07, -1.19209e-07, 1, 0.998357, -0.0572953, 2.38419e-07, 0.212007, 0.134132, 8.92131e-08)
bones/4/enabled = true
bones/4/position = Vector3(0.21131144, 0.1335093, -0.0012239526)
bones/4/rotation = Quaternion(-0.559902, -0.059130058, -0.63246393, 0.53198004)
bones/4/position = Vector3(0.21192212, 0.13401942, -0.0003375471)
bones/4/rotation = Quaternion(-0.5550779, -0.0641875, -0.65567225, 0.5078016)
bones/4/scale = Vector3(0.999999, 0.999999, 1)
bones/5/name = "lowerarm.l"
bones/5/parent = 4
bones/5/rest = Transform3D(0.993885, 0.110424, -1.77241e-07, -0.110424, 0.993885, -4.82524e-07, 1.22875e-07, 4.99145e-07, 1, -3.31295e-09, 0.241897, 4.4799e-09)
bones/5/enabled = true
bones/5/position = Vector3(4.4364626e-08, 0.241897, -1.6717202e-07)
bones/5/rotation = Quaternion(2.5160497e-07, 5.4571103e-08, -0.5082276, 0.86122286)
bones/5/position = Vector3(4.3339096e-08, 0.241897, -1.7245897e-07)
bones/5/rotation = Quaternion(1.9899824e-07, 5.317052e-10, -0.47475442, 0.88011837)
bones/5/scale = Vector3(1, 1, 1)
bones/6/name = "wrist.l"
bones/6/parent = 5
bones/6/rest = Transform3D(0.998579, -0.0532972, -3.33198e-09, 0.0532972, 0.998579, 4.71248e-07, -2.1789e-08, -4.70756e-07, 1, 6.74525e-09, 0.260044, -2.16525e-07)
bones/6/enabled = true
bones/6/position = Vector3(1.45291965e-08, 0.260044, -2.5488319e-08)
bones/6/rotation = Quaternion(-2.2943568e-07, 3.8257216e-08, 0.026658092, 0.9996447)
bones/6/position = Vector3(1.462279e-08, 0.260044, -2.3267171e-08)
bones/6/rotation = Quaternion(-2.2913098e-07, 3.9024997e-08, 0.026658092, 0.9996447)
bones/6/scale = Vector3(1, 1, 1)
bones/7/name = "hand.l"
bones/7/parent = 6
bones/7/rest = Transform3D(1, 8.33334e-14, -2.83571e-14, -8.33334e-14, 1, -2.54025e-13, 2.83571e-14, 2.54025e-13, 1, -2.04281e-14, 0.0738259, -1.19209e-07)
bones/7/enabled = true
bones/7/position = Vector3(-6.9097834e-09, 0.0738259, -1.06491544e-08)
bones/7/rotation = Quaternion(-0.31273842, -0.3422267, 0.13472204, 0.87574285)
bones/7/position = Vector3(-7.3983597e-09, 0.0738259, -1.104577e-08)
bones/7/rotation = Quaternion(-0.31447563, -0.32894948, 0.13197398, 0.8806135)
bones/7/scale = Vector3(1, 1, 1)
bones/8/name = "handslot.l"
bones/8/parent = 7
bones/8/rest = Transform3D(0, 1, -2.32809e-07, -1, 0, -6.82762e-08, -6.82761e-08, 2.32809e-07, 1, 8.34841e-10, 0.0961251, -0.0575)
bones/8/enabled = true
bones/8/position = Vector3(-1.6242997e-09, 0.0961252, -0.057499997)
bones/8/rotation = Quaternion(-0.00039799922, 0.0026563527, -0.69791, 0.71618044)
bones/8/position = Vector3(2.3117917e-10, 0.0961252, -0.0575)
bones/8/rotation = Quaternion(0.0012226284, 0.002043455, -0.69996357, 0.7141746)
bones/8/scale = Vector3(1, 1, 1)
bones/9/name = "upperarm.r"
bones/9/parent = 3
bones/9/rest = Transform3D(0.0572954, -0.998357, -1.49012e-07, 2.38419e-07, -1.19209e-07, 1, -0.998357, -0.0572954, 2.38419e-07, -0.212007, 0.134132, 7.46997e-08)
bones/9/enabled = true
bones/9/position = Vector3(-0.21196528, 0.13383664, -0.0014005791)
bones/9/rotation = Quaternion(-0.6149239, 0.08178685, 0.6140226, 0.488012)
bones/9/position = Vector3(-0.21190359, 0.13401014, -0.0003325557)
bones/9/rotation = Quaternion(-0.61394495, 0.08441039, 0.6288794, 0.46952885)
bones/9/scale = Vector3(0.999999, 0.999999, 1)
bones/10/name = "lowerarm.r"
bones/10/parent = 9
bones/10/rest = Transform3D(0.993885, -0.110424, 1.06327e-07, 0.110424, 0.993885, -4.82539e-07, -5.23934e-08, 4.91329e-07, 1, 4.03071e-09, 0.241897, 3.62012e-09)
bones/10/enabled = true
bones/10/position = Vector3(-3.8546226e-08, 0.241897, -4.936136e-08)
bones/10/rotation = Quaternion(2.3388114e-07, -8.904597e-08, 0.5327737, 0.84625775)
bones/10/position = Vector3(-4.0220876e-08, 0.241897, -5.4639806e-08)
bones/10/rotation = Quaternion(2.1935246e-07, -5.695963e-08, 0.49795386, 0.8672036)
bones/10/scale = Vector3(1, 1, 1)
bones/11/name = "wrist.r"
bones/11/parent = 10
bones/11/rest = Transform3D(0.998579, 0.0532972, 3.34959e-09, -0.0532972, 0.998579, 4.71254e-07, 2.17717e-08, -4.70763e-07, 1, -6.74523e-09, 0.260044, -2.1653e-07)
bones/11/enabled = true
bones/11/position = Vector3(-3.8025597e-08, 0.260044, 1.7142359e-08)
bones/11/rotation = Quaternion(-2.1736308e-07, -1.2207626e-08, -0.026658092, 0.9996447)
bones/11/position = Vector3(-3.8920778e-08, 0.260044, 1.765536e-08)
bones/11/rotation = Quaternion(-2.172179e-07, -1.24451685e-08, -0.026658092, 0.9996447)
bones/11/scale = Vector3(1, 1, 1)
bones/12/name = "hand.r"
bones/12/parent = 11
bones/12/rest = Transform3D(1, -8.32931e-14, 2.83546e-14, 8.32931e-14, 1, -6.34575e-14, -2.83546e-14, 6.34575e-14, 1, 2.04281e-14, 0.0738259, -1.19209e-07)
bones/12/enabled = true
bones/12/position = Vector3(-1.4361012e-08, 0.0738259, -6.226096e-08)
bones/12/rotation = Quaternion(-0.30990624, 0.31672114, -0.21900782, 0.86929935)
bones/12/position = Vector3(-1.4852477e-08, 0.0738259, -6.429319e-08)
bones/12/rotation = Quaternion(-0.31288758, 0.3033899, -0.2124876, 0.87458843)
bones/12/scale = Vector3(1, 1, 1)
bones/13/name = "handslot.r"
bones/13/parent = 12
bones/13/rest = Transform3D(0, -1, 2.32809e-07, 1, 0, -6.86063e-08, 6.86063e-08, 2.32809e-07, 1, -8.34841e-10, 0.0961251, -0.0575)
bones/13/enabled = true
bones/13/position = Vector3(-2.3072376e-08, 0.0961251, -0.057499997)
bones/13/rotation = Quaternion(0.0022514018, 0.0029924125, 0.6986452, 0.7154585)
bones/13/position = Vector3(-2.1093065e-08, 0.0961251, -0.0575)
bones/13/rotation = Quaternion(0.0036811335, 0.004765432, 0.7013244, 0.7128169)
bones/13/scale = Vector3(1, 1, 1)
bones/14/name = "head"
bones/14/parent = 3
bones/14/rest = Transform3D(1, 8.09955e-22, 1.77636e-14, -8.09955e-22, 1, 1.49605e-14, -1.77636e-14, -1.49605e-14, 1, 4.67612e-25, 0.268797, 0)
bones/14/enabled = true
bones/14/position = Vector3(-1.6324285e-10, 0.268797, 7.7182055e-10)
bones/14/rotation = Quaternion(-0.0037470802, -0.027061554, -0.00039658003, 0.99962676)
bones/14/position = Vector3(-2.7592258e-11, 0.268797, 7.293915e-11)
bones/14/rotation = Quaternion(-0.0009639087, -0.030920882, 7.931643e-05, 0.9995214)
bones/14/scale = Vector3(1, 1, 1)
bones/15/name = "Skeleton_Warrior_Helmet"
bones/15/parent = 14
@ -679,187 +679,187 @@ bones/16/name = "upperleg.l"
bones/16/parent = 1
bones/16/rest = Transform3D(1, -1.31243e-07, -1.34242e-07, -1.35828e-07, -0.999396, -0.0347426, -1.29601e-07, 0.0347426, -0.999397, 0.170945, 0.113587, 1.70271e-08)
bones/16/enabled = true
bones/16/position = Vector3(0.170945, 0.113587, -0.0026007548)
bones/16/rotation = Quaternion(0.9898942, 0.08128805, 0.076649055, 0.087331176)
bones/16/position = Vector3(0.170945, 0.113587, -0.00040069554)
bones/16/rotation = Quaternion(0.9922765, 0.082517944, 0.07594899, 0.05300893)
bones/16/scale = Vector3(1, 1, 1)
bones/17/name = "lowerleg.l"
bones/17/parent = 16
bones/17/rest = Transform3D(1, 1.62704e-07, 1.37175e-07, -1.30054e-07, 0.977432, -0.211252, -1.68451e-07, 0.211252, 0.977432, -1.1194e-08, 0.227077, -2.32076e-08)
bones/17/enabled = true
bones/17/position = Vector3(3.711441e-08, 0.227078, 1.8264419e-09)
bones/17/rotation = Quaternion(0.40605325, 6.60375e-08, -2.6881904e-07, 0.9138494)
bones/17/position = Vector3(3.8862208e-08, 0.227078, 5.712004e-10)
bones/17/rotation = Quaternion(0.30584377, 7.4932785e-08, -2.1020301e-07, 0.95208174)
bones/17/scale = Vector3(1, 1, 1)
bones/18/name = "foot.l"
bones/18/parent = 17
bones/18/rest = Transform3D(1, -6.39488e-14, 1.68587e-07, -1.36667e-07, 0.585513, 0.810663, -9.87102e-08, -0.810663, 0.585513, -1.49012e-08, 0.149437, 3.72566e-09)
bones/18/enabled = true
bones/18/position = Vector3(4.3055053e-08, 0.149437, -7.684156e-09)
bones/18/rotation = Quaternion(-0.61338633, -0.19437061, 0.07693588, 0.7616155)
bones/18/position = Vector3(4.4135756e-08, 0.149437, -7.63505e-09)
bones/18/rotation = Quaternion(-0.5745418, -0.20430788, 0.05999639, 0.7902914)
bones/18/scale = Vector3(1, 1, 0.999999)
bones/19/name = "toes.l"
bones/19/parent = 18
bones/19/rest = Transform3D(-1, 1.21361e-07, 3.37844e-07, -1.58967e-07, 0.694106, -0.719873, -3.21865e-07, -0.719873, -0.694106, -1.6149e-10, 0.16565, 8.79764e-10)
bones/19/enabled = true
bones/19/position = Vector3(-6.7059007e-09, 0.16565, 2.7906918e-08)
bones/19/rotation = Quaternion(-2.113981e-06, 0.92016053, -0.39154157, 7.214058e-07)
bones/19/scale = Vector3(1, 0.9999979, 1)
bones/19/position = Vector3(-6.9984254e-09, 0.16565, 2.6967339e-08)
bones/19/rotation = Quaternion(3.1650987e-05, 0.9201823, -0.39149028, -6.9873167e-06)
bones/19/scale = Vector3(1, 0.999998, 1)
bones/20/name = "upperleg.r"
bones/20/parent = 1
bones/20/rest = Transform3D(1, 1.31243e-07, 2.02657e-07, 1.38205e-07, -0.999396, -0.0347426, 1.97975e-07, 0.0347426, -0.999397, -0.170945, 0.113587, 5.32468e-09)
bones/20/enabled = true
bones/20/position = Vector3(-0.170945, 0.113587, 0.0026007835)
bones/20/rotation = Quaternion(0.98980457, -0.03296901, 0.028445886, 0.13561313)
bones/20/position = Vector3(-0.170945, 0.113587, 0.0004007242)
bones/20/rotation = Quaternion(0.9944952, -0.031155962, 0.030352848, 0.095327474)
bones/20/scale = Vector3(1, 1, 1)
bones/21/name = "lowerleg.r"
bones/21/parent = 20
bones/21/rest = Transform3D(1, -1.65029e-07, -1.36672e-07, 1.32432e-07, 0.977432, -0.211252, 1.6845e-07, 0.211252, 0.977432, 1.18882e-08, 0.227077, -2.32075e-08)
bones/21/enabled = true
bones/21/position = Vector3(-9.046456e-09, 0.22707704, -1.35500775e-08)
bones/21/rotation = Quaternion(0.44002464, -6.607576e-08, 3.065296e-07, 0.8979857)
bones/21/scale = Vector3(1, 0.99999994, 1)
bones/21/position = Vector3(-9.410638e-09, 0.227077, -1.4126008e-08)
bones/21/rotation = Quaternion(0.36468244, -6.820827e-08, 2.5586127e-07, 0.93113196)
bones/21/scale = Vector3(1, 1, 1)
bones/22/name = "foot.r"
bones/22/parent = 21
bones/22/rest = Transform3D(1, 5.68434e-14, 1.68587e-07, -1.36668e-07, 0.585513, 0.810663, -9.87101e-08, -0.810663, 0.585513, 1.49012e-08, 0.149437, 3.72559e-09)
bones/22/enabled = true
bones/22/position = Vector3(1.5324318e-08, 0.149437, 5.977173e-09)
bones/22/rotation = Quaternion(-0.64815867, 0.109393306, -0.022521771, 0.75327045)
bones/22/position = Vector3(1.6167903e-08, 0.149437, 6.877464e-09)
bones/22/rotation = Quaternion(-0.604827, 0.11290066, -0.015726088, 0.7881565)
bones/22/scale = Vector3(1, 1, 0.999999)
bones/23/name = "toes.r"
bones/23/parent = 22
bones/23/rest = Transform3D(-1, 1.21361e-07, 3.58529e-08, 5.84281e-08, 0.694106, -0.719873, -1.12251e-07, -0.719873, -0.694106, -1.61491e-10, 0.16565, 2.84604e-09)
bones/23/enabled = true
bones/23/position = Vector3(8.46274e-09, 0.16565, 2.4479876e-08)
bones/23/rotation = Quaternion(-8.6833454e-05, 0.9202052, -0.39143625, 1.985089e-05)
bones/23/position = Vector3(7.489696e-09, 0.16565, 2.473087e-08)
bones/23/rotation = Quaternion(-8.852187e-05, 0.9202207, -0.39140004, 2.0232043e-05)
bones/23/scale = Vector3(1, 0.999998, 1)
bones/24/name = "kneeIK.l"
bones/24/parent = 0
bones/24/rest = Transform3D(1, -2.47926e-07, -3.89414e-07, -3.89414e-07, 3.57628e-07, -1, 2.47926e-07, 1, 3.57628e-07, 0.170945, 0.29231, 0.575812)
bones/24/enabled = true
bones/24/position = Vector3(0.170945, 0.2928606, 0.5763626)
bones/24/rotation = Quaternion(0.7071068, -2.2533395e-07, -5.0023697e-08, 0.7071068)
bones/24/position = Vector3(0.170945, 0.29298368, 0.5764857)
bones/24/rotation = Quaternion(0.7071068, -2.2534354e-07, -5.00141e-08, 0.7071068)
bones/24/scale = Vector3(1, 1, 1)
bones/25/name = "control-toe-roll.l"
bones/25/parent = 0
bones/25/rest = Transform3D(1, 2.05345e-07, -6.39488e-14, -7.10543e-15, 3.57628e-07, 1, 2.05345e-07, -1, 3.57628e-07, 0.170945, 0.0259902, 0.245789)
bones/25/enabled = true
bones/25/position = Vector3(0.2012834, 0.029308936, 0.18712804)
bones/25/rotation = Quaternion(-0.68809396, -7.43848e-08, -7.074649e-08, 0.72562164)
bones/25/position = Vector3(0.20195252, 0.025649335, 0.20391157)
bones/25/rotation = Quaternion(-0.70593864, -7.27075e-08, -7.248253e-08, 0.708273)
bones/25/scale = Vector3(1, 1, 1)
bones/26/name = "control-heel-roll.l"
bones/26/parent = 25
bones/26/rest = Transform3D(-1, 1.33759e-14, -1.65812e-07, -1.33759e-14, -1, -4.16075e-15, -1.65812e-07, -4.16075e-15, 1, 1.90583e-08, 0.362833, -9.01383e-10)
bones/26/enabled = true
bones/26/position = Vector3(-8.121347e-10, 0.362833, -9.1456925e-10)
bones/26/rotation = Quaternion(-7.460713e-08, 1.3971166e-08, 0.98652714, -0.16359802)
bones/26/position = Vector3(-7.945598e-10, 0.362833, -6.898194e-10)
bones/26/rotation = Quaternion(-7.4396674e-08, 1.39580845e-08, 0.98592776, -0.1671726)
bones/26/scale = Vector3(1, 1, 1)
bones/27/name = "control-foot-roll.l"
bones/27/parent = 26
bones/27/rest = Transform3D(-1, -1.44017e-07, -2.51498e-07, -8.10837e-08, -0.694106, 0.719873, -2.7824e-07, 0.719873, 0.694106, -8.85797e-10, 0.213436, -8.66923e-10)
bones/27/enabled = true
bones/27/position = Vector3(-4.1979845e-08, 0.213436, -1.198788e-08)
bones/27/rotation = Quaternion(-1.3368853e-07, 0.39108407, 0.9203551, 2.1124297e-08)
bones/27/position = Vector3(-4.3310738e-08, 0.213436, -1.2377033e-08)
bones/27/rotation = Quaternion(-1.3347665e-07, 0.39108405, 0.9203551, 2.1273452e-08)
bones/27/scale = Vector3(1, 1, 1)
bones/28/name = "heelIK.l"
bones/28/parent = 27
bones/28/rest = Transform3D(1, 1.16602e-07, -2.30213e-08, -6.43617e-08, 0.694106, 0.719873, 9.99178e-08, -0.719873, 0.694106, 7.39534e-10, 0.16565, -5.83864e-09)
bones/28/enabled = true
bones/28/position = Vector3(2.4700546e-08, 0.16565, 4.972237e-10)
bones/28/rotation = Quaternion(-0.39108407, -1.9649402e-08, -4.7146706e-08, 0.9203551)
bones/28/position = Vector3(2.5346695e-08, 0.16565, 4.800297e-10)
bones/28/rotation = Quaternion(-0.39108405, -1.9354188e-08, -4.712671e-08, 0.9203551)
bones/28/scale = Vector3(1, 1, 1)
bones/29/name = "IK-foot.l"
bones/29/parent = 27
bones/29/rest = Transform3D(1, 3.25834e-14, 3.89414e-07, -6.02602e-14, -1, 2.38419e-07, 3.89414e-07, -2.38419e-07, -1, 1.56407e-08, 0.16565, -1.42205e-08)
bones/29/enabled = true
bones/29/position = Vector3(4.3800544e-08, 0.16565, -9.899249e-09)
bones/29/rotation = Quaternion(1, -1.412756e-08, 1.9864041e-07, -1.0382977e-07)
bones/29/position = Vector3(4.440005e-08, 0.16565, -1.0327044e-08)
bones/29/rotation = Quaternion(1, -1.448714e-08, 1.987273e-07, -1.0349585e-07)
bones/29/scale = Vector3(1, 1, 1)
bones/30/name = "IK-toe.l"
bones/30/parent = 26
bones/30/rest = Transform3D(1, 3.55183e-08, -6.34202e-15, -3.55183e-08, 1, -8.06019e-08, 3.47919e-15, 8.06019e-08, 1, -8.46667e-09, 1.56659e-08, -1.80702e-08)
bones/30/enabled = true
bones/30/position = Vector3(-1.0272754e-08, 1.328919e-08, -1.8720131e-08)
bones/30/rotation = Quaternion(4.0935383e-08, -1.4706215e-11, -1.775972e-08, 1)
bones/30/position = Vector3(-1.0196973e-08, 1.39725795e-08, -1.9009635e-08)
bones/30/rotation = Quaternion(4.0400643e-08, -2.388668e-12, -1.7773369e-08, 1)
bones/30/scale = Vector3(1, 1, 1)
bones/31/name = "kneeIK.r"
bones/31/parent = 0
bones/31/rest = Transform3D(1, -2.47926e-07, 1.50996e-07, 1.50996e-07, 3.57628e-07, -1, 2.47926e-07, 1, 3.57628e-07, -0.170945, 0.29231, 0.575812)
bones/31/enabled = true
bones/31/position = Vector3(-0.170945, 0.2928606, 0.5763626)
bones/31/rotation = Quaternion(0.7071068, -3.4269988e-08, 1.4103998e-07, 0.7071068)
bones/31/position = Vector3(-0.170945, 0.29298368, 0.5764857)
bones/31/rotation = Quaternion(0.7071068, -3.4279587e-08, 1.4104954e-07, 0.7071068)
bones/31/scale = Vector3(1, 1, 1)
bones/32/name = "control-toe-roll.r"
bones/32/parent = 0
bones/32/rest = Transform3D(1, 2.05345e-07, -5.68434e-14, -1.42109e-14, 3.57628e-07, 1, 2.05345e-07, -1, 3.57628e-07, -0.170945, 0.0259902, 0.245789)
bones/32/enabled = true
bones/32/position = Vector3(-0.170945, 0.034729116, 0.25468138)
bones/32/rotation = Quaternion(-0.7137611, -7.2126696e-08, -7.314929e-08, 0.70038927)
bones/32/position = Vector3(-0.170945, 0.026111847, 0.2454219)
bones/32/rotation = Quaternion(-0.7049795, -7.286703e-08, -7.232839e-08, 0.7092277)
bones/32/scale = Vector3(1, 1, 1)
bones/33/name = "control-heel-roll.r"
bones/33/parent = 32
bones/33/rest = Transform3D(-1, -6.00194e-17, -1.65812e-07, 6.00201e-17, -1, -4.16075e-15, -1.65812e-07, -4.16075e-15, 1, 1.90583e-08, 0.362833, -6.00926e-10)
bones/33/enabled = true
bones/33/position = Vector3(1.2485181e-08, 0.36283296, 1.5573274e-09)
bones/33/rotation = Quaternion(-9.334771e-08, -8.180124e-09, 0.9951036, 0.09883852)
bones/33/position = Vector3(1.2595818e-08, 0.362833, -2.5443997e-10)
bones/33/rotation = Quaternion(-9.358436e-08, -8.394054e-09, 0.9948853, 0.10101106)
bones/33/scale = Vector3(1, 1, 1)
bones/34/name = "control-foot-roll.r"
bones/34/parent = 33
bones/34/rest = Transform3D(-1, -1.44017e-07, -2.51498e-07, -8.10837e-08, -0.694106, 0.719873, -2.7824e-07, 0.719873, 0.694106, 1.40154e-08, 0.213436, -5.23748e-10)
bones/34/enabled = true
bones/34/position = Vector3(-2.8788447e-09, 0.213436, -1.5750539e-08)
bones/34/rotation = Quaternion(-1.4690313e-07, 0.39108407, 0.9203551, 2.3901416e-08)
bones/34/position = Vector3(-3.352621e-09, 0.213436, -1.6076394e-08)
bones/34/rotation = Quaternion(-1.4698664e-07, 0.39108405, 0.9203551, 2.4107711e-08)
bones/34/scale = Vector3(1, 1, 1)
bones/35/name = "heelIK.r"
bones/35/parent = 34
bones/35/rest = Transform3D(1, 1.16602e-07, -2.30213e-08, -6.43617e-08, 0.694106, 0.719873, 9.99178e-08, -0.719873, 0.694106, 7.3953e-10, 0.16565, 1.51519e-08)
bones/35/enabled = true
bones/35/position = Vector3(-8.611565e-09, 0.16565, 1.7774493e-08)
bones/35/rotation = Quaternion(-0.39108407, -3.119247e-08, -5.7946576e-08, 0.9203551)
bones/35/position = Vector3(-8.951989e-09, 0.16565, 1.7080179e-08)
bones/35/rotation = Quaternion(-0.39108405, -3.1128508e-08, -5.8152438e-08, 0.9203551)
bones/35/scale = Vector3(1, 1, 1)
bones/36/name = "IK-foot.r"
bones/36/parent = 34
bones/36/rest = Transform3D(1, 3.98363e-14, 3.89414e-07, -1.8191e-14, -1, 1.49012e-07, 3.89414e-07, -1.49012e-07, -1, 7.39527e-10, 0.16565, 3.75036e-08)
bones/36/enabled = true
bones/36/position = Vector3(6.2433436e-09, 0.16565, 1.1628558e-08)
bones/36/rotation = Quaternion(1, -1.4135588e-09, 1.9334136e-07, -8.717561e-08)
bones/36/position = Vector3(5.9689547e-09, 0.16565, 1.15026095e-08)
bones/36/rotation = Quaternion(1, -1.4551181e-09, 1.9329791e-07, -8.745869e-08)
bones/36/scale = Vector3(1, 1, 1)
bones/37/name = "IK-toe.r"
bones/37/parent = 33
bones/37/rest = Transform3D(1, 3.55183e-08, 1.56374e-15, -3.55183e-08, 1, 1.53609e-09, -1.50918e-15, -1.53609e-09, 1, -8.46667e-09, 1.40714e-08, -1.95874e-10)
bones/37/enabled = true
bones/37/position = Vector3(4.2355413e-09, -3.810406e-09, -4.932606e-09)
bones/37/rotation = Quaternion(-7.7016993e-10, 1.8049963e-11, -1.7748713e-08, 1)
bones/37/position = Vector3(4.0314787e-09, -4.081482e-09, -5.538621e-09)
bones/37/rotation = Quaternion(-7.7482676e-10, -2.2068238e-11, -1.7779918e-08, 1)
bones/37/scale = Vector3(1, 1, 1)
bones/38/name = "elbowIK.l"
bones/38/parent = 0
bones/38/rest = Transform3D(1, 1.98341e-07, 0, 0, 0, 1, 1.98341e-07, -1, 0, 0.453507, 1.10676, -0.588859)
bones/38/enabled = true
bones/38/position = Vector3(0.4532266, 1.1010066, -0.59185445)
bones/38/rotation = Quaternion(-0.7071068, 0.0001409744, 0.0001409744, 0.7071068)
bones/38/position = Vector3(0.45466262, 1.1049265, -0.5882783)
bones/38/rotation = Quaternion(-0.70710677, -0.00022487012, -0.00022487012, 0.70710677)
bones/38/scale = Vector3(1, 1, 1)
bones/39/name = "handIK.l"
bones/39/parent = 0
bones/39/rest = Transform3D(-1.19209e-07, 1, 0, -1.19209e-07, 0, 1, 1, 1.19209e-07, 1.19209e-07, 0.713181, 1.10676, 2.99767e-07)
bones/39/enabled = true
bones/39/position = Vector3(0.520624, 0.7724112, -0.052451506)
bones/39/rotation = Quaternion(0.80046123, 0.013657781, 0.59922504, 0.002138299)
bones/39/position = Vector3(0.5205538, 0.76961976, -0.05531651)
bones/39/rotation = Quaternion(0.7961784, 0.003877571, 0.6050487, 0.0010110047)
bones/39/scale = Vector3(1, 1, 1)
bones/40/name = "elbowIK.r"
bones/40/parent = 0
bones/40/rest = Transform3D(1, 1.98341e-07, 0, 0, 0, 1, 1.98341e-07, -1, 0, -0.453507, 1.10676, -0.58886)
bones/40/enabled = true
bones/40/position = Vector3(-0.45423207, 1.100778, -0.5909114)
bones/40/rotation = Quaternion(-0.7071068, 0.0001409744, 0.0001409744, 0.7071068)
bones/40/position = Vector3(-0.45306003, 1.1052908, -0.5897837)
bones/40/rotation = Quaternion(-0.70710677, -0.00022487012, -0.00022487012, 0.70710677)
bones/40/scale = Vector3(1, 1, 1)
bones/41/name = "handIK.r"
bones/41/parent = 0
bones/41/rest = Transform3D(0, -1, -5.96046e-08, 1.78814e-07, -1.19209e-07, 1, -1, -5.96046e-08, 1.19209e-07, -0.713182, 1.10676, -6.1348e-08)
bones/41/enabled = true
bones/41/position = Vector3(-0.5107663, 0.7724112, 0.062186863)
bones/41/rotation = Quaternion(-0.7652229, 0.012779577, 0.643634, -0.002427085)
bones/41/position = Vector3(-0.51086646, 0.76961976, 0.06017417)
bones/41/rotation = Quaternion(-0.7604072, 0.0033355826, 0.6494379, -0.0002957032)
bones/41/scale = Vector3(1, 1, 1)
[node name="Skeleton_Warrior_Helmet" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(0.9997463, 0.00178095, 0.022455357, -0.001621984, 0.9999736, -0.0070954254, -0.022467397, 0.007057204, 0.99972266, 0.0005384193, 1.1819277, 0.009391994)
transform = Transform3D(0.999694, -0.00013911581, 0.024732463, 0.00018934977, 0.999998, -0.0020287607, -0.024732132, 0.0020328236, 0.999692, 0.00024310115, 1.1917348, 0.0024951843)
bone_name = "Skeleton_Warrior_Helmet"
bone_idx = 15
@ -914,7 +914,7 @@ transform = Transform3D(1, 6.366463e-12, 9.313226e-10, -2.0982043e-09, 1, -2.433
shape = SubResource("CapsuleShape3D_c30pj")
[node name="lowerarm_r" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(-0.5914285, -0.47062007, -0.65477324, -0.23252611, -0.6779804, 0.6973327, -0.7721021, 0.56467444, 0.29154614, -0.38927025, 0.95098674, -0.086938955)
transform = Transform3D(-0.57176584, -0.47320765, -0.670192, -0.22191735, -0.69723356, 0.6816284, -0.7898321, 0.53845894, 0.29364184, -0.38806784, 0.9510771, -0.07934166)
bone_name = "lowerarm.r"
bone_idx = 10
@ -928,7 +928,7 @@ shape = SubResource("CapsuleShape3D_wwi0t")
disabled = true
[node name="lowerarm_l" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(-0.48860347, 0.5560741, 0.6723446, 0.068497784, -0.743764, 0.6649226, 0.8698119, 0.37093762, 0.3253165, 0.37948722, 0.97069645, -0.15059996)
transform = Transform3D(-0.46919155, 0.54763883, 0.6927842, 0.06780705, -0.7598368, 0.6465673, 0.8804882, 0.3503395, 0.31937575, 0.37892365, 0.9679034, -0.1480934)
bone_name = "lowerarm.l"
bone_idx = 5
@ -942,7 +942,7 @@ shape = SubResource("CapsuleShape3D_ba1wv")
disabled = true
[node name="lowerleg_r" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(0.998176, -0.05677355, 0.020529633, -0.057759788, -0.7991478, 0.59835327, -0.017564422, -0.59844756, -0.8009694, -0.18169501, 0.266748, 0.07781544)
transform = Transform3D(0.99817616, -0.059210412, 0.011763422, -0.05653321, -0.8485135, 0.52614504, -0.021171855, -0.52585053, -0.8503133, -0.18189427, 0.27259016, 0.059002742)
bone_name = "lowerleg.r"
bone_idx = 21
@ -956,7 +956,7 @@ shape = SubResource("CapsuleShape3D_r0iiv")
disabled = true
[node name="lowerleg_l" type="BoneAttachment3D" parent="Rig/Skeleton3D"]
transform = Transform3D(0.9831166, 0.17167935, -0.06330851, 0.1736976, -0.7668057, 0.6179304, 0.057540566, -0.6184942, -0.7836798, 0.20697929, 0.26456165, 0.021867342)
transform = Transform3D(0.9835932, 0.17658761, -0.03689269, 0.17135578, -0.8505935, 0.49711916, 0.056404434, -0.49528494, -0.86689746, 0.20777424, 0.27231508, 0.008027213)
bone_name = "lowerleg.l"
bone_idx = 17
@ -977,9 +977,13 @@ libraries = {
}
[node name="AnimationTree" type="AnimationTree" parent="."]
libraries = {
&"": SubResource("AnimationLibrary_1dodv"),
&"Skeleton": ExtResource("4_fc2wc")
}
tree_root = SubResource("AnimationNodeStateMachine_7v7qh")
anim_player = NodePath("../AnimationPlayer")
parameters/IWR/blend_position = Vector2(0.0011428595, 0.027624369)
parameters/IWR/blend_position = Vector2(-0.001821518, 0.0055248737)
[node name="sprite_enemy_overlay" type="Sprite3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0)

@ -113,7 +113,6 @@ interact={
[physics]
3d/run_on_separate_thread=true
3d/physics_engine="Jolt Physics"
[rendering]

@ -111,6 +111,7 @@ maximum_health = 25
maximum_stamina = 100
stamina_regeneration_rate = 3
speed = 6.0
jump_speed = 8.0
jump_cost = 10
attack_cost = 15
damage = 2

@ -13,7 +13,8 @@ func _ready() -> void:
state_changed.connect(_on_state_changed)
func _physics_process(_delta: float) -> void:
if state == States.dead or player == null: return
if state == States.dead or player == null:
return
if player.state == States.dead:
state = States.idle
return
@ -26,30 +27,37 @@ func _physics_process(_delta: float) -> void:
elif distance <= attack_range:
state = States.attacking
nav_agent.set_target_position(player.position)
if nav_agent.is_navigation_finished() or nav_agent.is_target_reached():
return
move_and_slide()
func _on_state_changed(_old_state: States, new_state: States) -> void:
if new_state == _old_state:
return
name_changed.emit(unit_name, States.keys()[new_state])
print("Enemy changed state from " + str(_old_state) + " to " + str(new_state))
match new_state:
States.idle:
#States.idle:
# TODO: Random movement
_on_velocity_computed(Vector3.ZERO)
#_on_velocity_computed(Vector3.ZERO)
States.chasing:
nav_agent.set_target_position(player.position)
if nav_agent.is_navigation_finished() or nav_agent.is_target_reached():
return
print("Player position: ", player.position)
var next_path_position: Vector3 = nav_agent.get_next_path_position()
if next_path_position != null:
if global_position != next_path_position:
model.look_at(next_path_position)
print("Global position:", global_position, "Next path position:", next_path_position)
var new_velocity: Vector3 = global_position.direction_to(next_path_position) * speed
_on_velocity_computed(new_velocity)
print("Next path position: ", next_path_position)
print("Global position: ", global_position)
model.look_at(next_path_position)
var direction = global_position.direction_to(next_path_position)
velocity = Vector3(direction.x, 0, direction.z).normalized() * speed
var vy: float = direction.y
velocity.y = 0
var vl: Vector3 = velocity * model.transform.basis
var iwr := Vector2(vl.x, -vl.z) / speed
anim_tree.set("parameters/IWR/blend_position", iwr)
velocity.y = vy
print("velocity = ", velocity)
States.attacking:
if enough_stamina_available(attack_cost):
@ -58,17 +66,4 @@ func _on_state_changed(_old_state: States, new_state: States) -> void:
anim_state.travel(attacks.pick_random())
States.dead:
player.gold += 1
func _on_velocity_computed(safe_velocity: Vector3) -> void:
print("Called by:", get_stack())
velocity = safe_velocity
var vy: float = velocity.y
velocity.y = 0
var vl: Vector3 = velocity * model.transform.basis
var iwr := Vector2(vl.x, -vl.z) / speed
print("iwr = (%s, %s)" % [iwr.x, iwr.y])
anim_tree.set("parameters/IWR/blend_position", iwr)
velocity.y = vy
print("Velocity after computation: ", velocity)
move_and_slide()
player.gold += 100