Fix up Boss Type A

This commit is contained in:
2025-03-19 23:52:41 -07:00
parent 2834806351
commit 52e42ea38d
14 changed files with 100 additions and 102 deletions

View File

@@ -25,6 +25,8 @@ public partial class BossTypeA : Enemy, IHasPrimaryAttack, IHasSecondaryAttack,
[Node] public CollisionShape3D EnemyHitbox { get; set; } = default!;
[Node] private Node3D _rotation { get; set; } = default!;
private Vector3 _target;
public void OnReady()
@@ -35,21 +37,28 @@ public partial class BossTypeA : Enemy, IHasPrimaryAttack, IHasSecondaryAttack,
_attackTimer.Start();
}
public void OnPhysicsProcess(double delta)
public new void OnPhysicsProcess(double delta)
{
_enemyLogic.Input(new EnemyLogic.Input.PhysicsTick(delta));
var direction = GlobalPosition.DirectionTo(_target).Normalized();
if (_enemyLogic.Value is not EnemyLogic.State.Activated)
return;
var rotationAngle = GetRotationAngle();
if (GlobalBasis.Z.AngleTo(_player.CurrentBasis.Z) > Mathf.DegToRad(60))
{
RotateToPlayer(rotationAngle);
_enemyModelView.PlayIdleAnimation();
return;
}
if (_enemyLogic.Value is EnemyLogic.State.FollowPlayer && GlobalPosition.DistanceTo(_player.CurrentPosition) < 5f)
_enemyLogic.Input(new EnemyLogic.Input.StartAttacking());
if (_enemyLogic.Value is EnemyLogic.State.Attacking && GlobalPosition.DistanceTo(_player.CurrentPosition) > 5f)
_enemyLogic.Input(new EnemyLogic.Input.Alerted());
var direction = (_target - GlobalPosition).Normalized();
LookAt(direction);
if (_enemyLogic.Value is EnemyLogic.State.FollowPlayer)
{
Velocity = direction * _movementSpeed;
@@ -87,7 +96,8 @@ public partial class BossTypeA : Enemy, IHasPrimaryAttack, IHasSecondaryAttack,
public override void StopAttackTimer()
{
_attackTimer.Timeout -= OnAttackTimeout;
if (_attackTimer.TimeLeft > 0)
_attackTimer.Timeout -= OnAttackTimeout;
}
public override void SetTarget(Vector3 target) => _target = target;
@@ -125,10 +135,26 @@ public partial class BossTypeA : Enemy, IHasPrimaryAttack, IHasSecondaryAttack,
_attackTimer.Start();
}
public void RotateToPlayer(float rotationAngle)
{
var tweener = GetTree().CreateTween();
tweener.TweenMethod(Callable.From((float x) => RotateTowardsPlayer(x)), Rotation.Y, rotationAngle, 0.5f);
}
private float GetRotationAngle()
{
var target = new Vector3(_player.CurrentPosition.X, Position.Y, _player.CurrentPosition.Z);
_rotation.LookAt(target, Vector3.Up, true);
_rotation.RotateY(Rotation.Y);
return _rotation.Rotation.Y;
}
private void RotateTowardsPlayer(float angle) => Rotation = new Vector3(Rotation.X, angle, Rotation.Z);
public override void _ExitTree()
{
CurrentHP.OnCompleted();
StopAttackTimer();
_enemyModelView.Hitbox.AreaEntered -= Hitbox_AreaEntered;
}
}

View File

@@ -0,0 +1,16 @@
shader_type spatial;
uniform vec4 color : source_color;
void vertex() {
COLOR = color;
}
void fragment() {
// Called for every pixel the material is visible on.
}
//void light() {
// // Called for every pixel for every light affecting the material.
// // Uncomment to replace the default light processing function with this one.
//}

View File

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

View File

@@ -83,7 +83,7 @@ public partial class Enemy : CharacterBody3D, IEnemy, IProvide<IEnemyLogic>
_lineOfSight.BodyEntered += LineOfSight_BodyEntered;
}
public override void _PhysicsProcess(double delta)
public void OnPhysicsProcess(double delta)
{
if (CurrentHP.Value <= 0)
return;

View File

@@ -79,7 +79,7 @@ public partial class EnemyModelView3D : Node3D, IEnemyModelView
{
AlbedoColor = Color.FromHsv(0, 1, 1, 1)
};
MeshInstance.MaterialOverride = material;
MeshInstance.MaterialOverride = (Material)material.Duplicate();
}
private void LoadShader(string shaderPath)
@@ -91,10 +91,16 @@ public partial class EnemyModelView3D : Node3D, IEnemyModelView
private void ClearDamageEffect()
{
MeshInstance.MaterialOverride = null;
MeshInstance.Transparency = 0;
}
private void SetTransparency(float transparencyAmount)
{
MeshInstance.Transparency = transparencyAmount;
}
public override void _ExitTree()
{
AnimationTree.Get(PARAMETERS_PLAYBACK).As<AnimationNodeStateMachinePlayback>().Stop();
}
}

View File

@@ -3,7 +3,7 @@
[ext_resource type="Texture2D" uid="uid://cvst7yhbw0sxt" path="res://src/enemy/enemy_types/10. Eden Pillar/model/PILLAR EXPORT 1_ENEMY_PILLAR_TEXTURE2.jpg" id="1_1kpl1"]
[ext_resource type="Script" uid="uid://ckv5dmrw6pvn6" path="res://src/enemy/EnemyModelView3D.cs" id="1_11eq8"]
[ext_resource type="Texture2D" uid="uid://bnbveonobhyhc" path="res://src/enemy/enemy_types/10. Eden Pillar/model/PILLAR EXPORT 1_cannon_edge.png" id="2_11eq8"]
[ext_resource type="Material" uid="uid://brwu51ylevbmg" path="res://src/enemy/enemy_types/14. horse_head/animation/BossHit.tres" id="2_xf2ga"]
[ext_resource type="Material" uid="uid://brwu51ylevbmg" path="res://src/enemy/BossHit.tres" id="2_xf2ga"]
[ext_resource type="Texture2D" uid="uid://by7k6crx6fmpv" path="res://src/enemy/enemy_types/10. Eden Pillar/model/PILLAR EXPORT 1_floral_single_tile.jpg" id="3_oxjs8"]
[ext_resource type="Texture2D" uid="uid://cc1tenm6p3pca" path="res://src/enemy/enemy_types/10. Eden Pillar/model/PILLAR EXPORT 1_ENEMY_PILLAR_TEXTURE.jpg" id="4_xf2ga"]
[ext_resource type="Texture2D" uid="uid://bydfevqfagpq8" path="res://src/enemy/enemy_types/10. Eden Pillar/model/PILLAR EXPORT 1_concrete_0025_height_1k.png" id="5_qhmtu"]

View File

@@ -23,7 +23,7 @@ DropsSoulGemChance = 0.75
metadata/_custom_type_script = "uid://dnkmr0eq1sij0"
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_c0n4w"]
radius = 10.0
radius = 10.3283
height = 50.0
[sub_resource type="SphereShape3D" id="SphereShape3D_x21p4"]
@@ -70,3 +70,6 @@ collision_mask = 0
unique_name_in_owner = true
shape = SubResource("SphereShape3D_jl3qa")
disabled = true
[node name="Rotation" type="Node3D" parent="."]
unique_name_in_owner = true

View File

@@ -161,30 +161,6 @@ size = Vector3(5, 20.856, 5.50244)
[sub_resource type="Animation" id="Animation_i2g67"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Armature/Skeleton3D/MeshInstance:material_override")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [null]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Armature/Skeleton3D/MeshInstance:transparency")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
[sub_resource type="Animation" id="Animation_bsekl"]
resource_name = "idle"
@@ -974,7 +950,7 @@ bones/0/name = "spine1"
bones/0/parent = -1
bones/0/rest = Transform3D(1.49012e-06, 0.00846654, -0.999964, 2.93367e-08, 0.999964, 0.00846654, 1, -4.23752e-08, 1.49012e-06, 0.000155807, -0.00105953, -2.01735)
bones/0/enabled = true
bones/0/position = Vector3(0.0996386, -0.42125, -1.53144)
bones/0/position = Vector3(0.0996386, -0.283223, -1.53144)
bones/0/rotation = Quaternion(0.0256267, -0.805691, 0.0118477, 0.591662)
bones/0/scale = Vector3(1, 1, 1)
bones/1/name = "spine0"
@@ -1003,7 +979,7 @@ bones/4/parent = 3
bones/4/rest = Transform3D(0.901905, -0.410135, 0.135488, 0.412416, 0.910915, 0.0120912, -0.128377, 0.0449723, 0.990705, 2.5332e-07, 0.990515, -7.07805e-08)
bones/4/enabled = true
bones/4/position = Vector3(2.5332e-07, 0.990515, -7.07805e-08)
bones/4/rotation = Quaternion(-0.00514174, 0.0597764, 0.185619, 0.980788)
bones/4/rotation = Quaternion(0.00753206, 0.0671297, 0.209216, 0.975534)
bones/4/scale = Vector3(1, 1, 1)
bones/5/name = "neck4"
bones/5/parent = 4
@@ -1017,7 +993,7 @@ bones/6/parent = 5
bones/6/rest = Transform3D(0.0598389, 0.98531, 0.15995, -0.975271, 0.0235553, 0.219755, 0.212759, -0.169144, 0.962353, 3.65078e-07, 1.40318, 0)
bones/6/enabled = true
bones/6/position = Vector3(3.65078e-07, 1.40318, 0)
bones/6/rotation = Quaternion(-0.328564, 0.0507293, -0.45401, 0.826648)
bones/6/rotation = Quaternion(-0.342657, 0.0520706, -0.493702, 0.79758)
bones/6/scale = Vector3(1, 1, 1)
bones/7/name = "Bone.007"
bones/7/parent = 6
@@ -1052,7 +1028,7 @@ bones/11/parent = 1
bones/11/rest = Transform3D(0.981457, 0.0769315, -0.175568, 0.18837, -0.217537, 0.957703, 0.035485, -0.973015, -0.227995, -1.09896e-07, 3.84743, -2.10479e-07)
bones/11/enabled = true
bones/11/position = Vector3(-1.09896e-07, 3.84743, -2.10479e-07)
bones/11/rotation = Quaternion(-0.81374, -0.0940717, -0.0238191, 0.573071)
bones/11/rotation = Quaternion(-0.806279, -0.0801045, -0.0234975, 0.585615)
bones/11/scale = Vector3(1, 1, 1)
bones/12/name = "arm2_L"
bones/12/parent = 11
@@ -1079,7 +1055,7 @@ bones/15/name = "arm1_R"
bones/15/parent = 1
bones/15/rest = Transform3D(-0.98213, 0.0512573, -0.181089, -0.187541, -0.185921, 0.964501, 0.0157694, 0.981227, 0.192212, 0.00107862, 3.8461, -0.0821097)
bones/15/enabled = true
bones/15/position = Vector3(-0.171618, 3.41266, 0.120561)
bones/15/position = Vector3(-0.2018, 3.64477, 0.0766737)
bones/15/rotation = Quaternion(-0.502686, 0.531044, 0.680821, -0.0422068)
bones/15/scale = Vector3(1, 1, 1)
bones/16/name = "arm2_R"
@@ -1094,7 +1070,7 @@ bones/17/parent = 16
bones/17/rest = Transform3D(0.998789, 0.0488077, -0.00615137, -0.0491113, 0.996528, -0.0672226, 0.00284903, 0.0674433, 0.997719, -5.21541e-08, 3.04263, -1.31503e-06)
bones/17/enabled = true
bones/17/position = Vector3(-5.21541e-08, 3.04263, -1.31503e-06)
bones/17/rotation = Quaternion(-0.0110724, 0.0961496, 0.277039, 0.955972)
bones/17/rotation = Quaternion(-0.0450407, 0.0973271, 0.265229, 0.958203)
bones/17/scale = Vector3(1, 1, 1)
bones/18/name = "hand_R"
bones/18/parent = 17
@@ -1107,7 +1083,7 @@ bones/19/name = "hip_L"
bones/19/parent = -1
bones/19/rest = Transform3D(0.138486, 0.897208, 0.419333, -0.129033, -0.403458, 0.905854, 0.981923, -0.179556, 0.059896, 0.000155807, -0.00105953, -2.01735)
bones/19/enabled = true
bones/19/position = Vector3(0.147751, -0.364284, -1.49267)
bones/19/position = Vector3(0.147751, -0.284407, -1.49267)
bones/19/rotation = Quaternion(0.427793, 0.34021, 0.687061, -0.478745)
bones/19/scale = Vector3(1, 1, 1)
bones/20/name = "leg1_L"
@@ -1115,14 +1091,14 @@ bones/20/parent = 19
bones/20/rest = Transform3D(0.945603, 0.113405, 0.304916, -0.324072, 0.410457, 0.852351, -0.0284943, -0.9048, 0.424881, 2.08616e-07, 2.00996, -7.1153e-07)
bones/20/enabled = true
bones/20/position = Vector3(2.08616e-07, 2.00996, -7.1153e-07)
bones/20/rotation = Quaternion(-0.433692, -0.330357, -0.375638, 0.749447)
bones/20/rotation = Quaternion(-0.437674, -0.325425, -0.369556, 0.752309)
bones/20/scale = Vector3(1, 1, 1)
bones/21/name = "leg2_L"
bones/21/parent = 20
bones/21/rest = Transform3D(0.990336, -0.138679, 0.00180777, 0.138628, 0.990193, 0.0173138, -0.00419111, -0.0168959, 0.999848, 5.96046e-08, 5.85994, -5.23403e-07)
bones/21/enabled = true
bones/21/position = Vector3(5.96046e-08, 5.85994, -5.23403e-07)
bones/21/rotation = Quaternion(-0.0493245, 0.00187731, 0.39455, 0.917548)
bones/21/rotation = Quaternion(-0.0475515, 0.00188972, 0.380368, 0.92361)
bones/21/scale = Vector3(1, 1, 1)
bones/22/name = "foot1_L"
bones/22/parent = 21
@@ -1156,7 +1132,7 @@ bones/26/name = "hip_R"
bones/26/parent = -1
bones/26/rest = Transform3D(0.138486, -0.897208, -0.419333, 0.129033, -0.403458, 0.905854, -0.981923, -0.179556, 0.059896, -0.000155807, -0.00105953, -2.01735)
bones/26/enabled = true
bones/26/position = Vector3(0.0289172, -0.352813, -1.59603)
bones/26/position = Vector3(0.0289172, -0.299562, -1.59603)
bones/26/rotation = Quaternion(0.695067, -0.09936, -0.377924, -0.603475)
bones/26/scale = Vector3(1, 1, 1)
bones/27/name = "leg1_R"
@@ -1164,14 +1140,14 @@ bones/27/parent = 26
bones/27/rest = Transform3D(0.945603, -0.113405, -0.304916, 0.324072, 0.410457, 0.852351, 0.0284943, -0.9048, 0.424881, -9.54606e-09, 2.00996, -3.52971e-07)
bones/27/enabled = true
bones/27/position = Vector3(-9.54606e-09, 2.00996, -3.52971e-07)
bones/27/rotation = Quaternion(-0.311405, 0.17846, 0.184318, 0.914989)
bones/27/rotation = Quaternion(-0.317513, 0.174091, 0.183894, 0.913816)
bones/27/scale = Vector3(1, 1, 1)
bones/28/name = "leg2_R"
bones/28/parent = 27
bones/28/rest = Transform3D(0.990336, 0.138679, -0.00180777, -0.138628, 0.990193, 0.0173138, 0.00419111, -0.0168959, 0.999848, 4.51691e-08, 5.85994, -3.72529e-09)
bones/28/enabled = true
bones/28/position = Vector3(4.51691e-08, 5.85994, -3.72529e-09)
bones/28/rotation = Quaternion(-0.277833, 0.0201363, -0.181282, 0.943154)
bones/28/rotation = Quaternion(-0.268209, 0.0202209, -0.175002, 0.947116)
bones/28/scale = Vector3(1, 1, 1)
bones/29/name = "foot1_R"
bones/29/parent = 28
@@ -1208,7 +1184,7 @@ mesh = SubResource("ArrayMesh_6e63x")
skin = SubResource("Skin_yvw71")
[node name="BoneAttachment3D" type="BoneAttachment3D" parent="Armature/Skeleton3D"]
transform = Transform3D(-0.370164, -0.13327, -0.919357, -0.300272, -0.919366, 0.254171, -0.879099, 0.370142, 0.300299, -2.00357, 8.72605, 6.31619)
transform = Transform3D(-0.370165, -0.13327, -0.919357, -0.259654, -0.935368, 0.240137, -0.89194, 0.327605, 0.311637, -2.00356, 8.78341, 6.14536)
bone_name = "TOP OF SKULL"
bone_idx = 8

View File

@@ -1,6 +1,4 @@
[gd_resource type="AnimationLibrary" load_steps=7 format=3 uid="uid://dn4501qsypsu"]
[ext_resource type="Shader" uid="uid://86pfv5qnd36q" path="res://src/enemy/EnemyDie.gdshader" id="1_il05d"]
[gd_resource type="AnimationLibrary" load_steps=6 format=3 uid="uid://dn4501qsypsu"]
[sub_resource type="Animation" id="Animation_ttkyx"]
length = 0.001
@@ -28,42 +26,6 @@ tracks/1/keys = {
"update": 0,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Armature/Skeleton3D/MeshInstance:material_override")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [null]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Armature/Skeleton3D/MeshInstance:material_override:shader")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [ExtResource("1_il05d")]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Armature/Skeleton3D/MeshInstance:transparency")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
[sub_resource type="Animation" id="Animation_sfyuh"]
resource_name = "idle"

View File

@@ -23,7 +23,7 @@ DropsSoulGemChance = 0.75
metadata/_custom_type_script = "uid://dnkmr0eq1sij0"
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_7uhtm"]
radius = 12.0
radius = 12.4931
height = 50.0
[sub_resource type="SphereShape3D" id="SphereShape3D_v6b2s"]
@@ -43,7 +43,11 @@ _enemyStatResource = SubResource("Resource_j7u30")
[node name="CollisionShape" type="CollisionShape3D" parent="."]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2.84733)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.3517, 0, 1.32912)
shape = SubResource("CapsuleShape3D_7uhtm")
[node name="CollisionShape2" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.3517, 0, 1.32912)
shape = SubResource("CapsuleShape3D_7uhtm")
[node name="EnemyModelView" parent="." instance=ExtResource("2_v6b2s")]
@@ -70,3 +74,6 @@ collision_mask = 0
unique_name_in_owner = true
shape = SubResource("SphereShape3D_j7u30")
disabled = true
[node name="Rotation" type="Node3D" parent="."]
unique_name_in_owner = true

View File

@@ -200,7 +200,7 @@ bones/0/name = "spine1"
bones/0/parent = -1
bones/0/rest = Transform3D(1.49012e-06, 0.00846654, -0.999964, 2.93367e-08, 0.999964, 0.00846654, 1, -4.23752e-08, 1.49012e-06, 0.000155807, -0.00105953, -2.01735)
bones/0/enabled = true
bones/0/position = Vector3(-0.259475, -0.962423, -1.97386)
bones/0/position = Vector3(-0.260278, -1.0541, -1.96767)
bones/0/rotation = Quaternion(0.0915277, -0.692111, -0.0341586, 0.715149)
bones/0/scale = Vector3(1, 1, 1)
bones/1/name = "spine0"
@@ -243,7 +243,7 @@ bones/6/parent = 5
bones/6/rest = Transform3D(0.0598389, 0.98531, 0.15995, -0.975271, 0.0235553, 0.219755, 0.212759, -0.169144, 0.962353, 3.65078e-07, 1.40318, 0)
bones/6/enabled = true
bones/6/position = Vector3(3.65078e-07, 1.40318, 0)
bones/6/rotation = Quaternion(-0.070258, -0.302522, -0.74472, 0.590708)
bones/6/rotation = Quaternion(-0.0474983, -0.294201, -0.744151, 0.597854)
bones/6/scale = Vector3(1, 1, 1)
bones/7/name = "Bone.007"
bones/7/parent = 6
@@ -278,7 +278,7 @@ bones/11/parent = 1
bones/11/rest = Transform3D(0.981457, 0.0769315, -0.175568, 0.18837, -0.217537, 0.957703, 0.035485, -0.973015, -0.227995, -1.09896e-07, 3.84743, -2.10479e-07)
bones/11/enabled = true
bones/11/position = Vector3(-1.09896e-07, 3.84743, -2.10479e-07)
bones/11/rotation = Quaternion(-0.784811, -0.0617262, 0.0716596, 0.612476)
bones/11/rotation = Quaternion(-0.779754, -0.0572995, 0.0817541, 0.618075)
bones/11/scale = Vector3(1, 0.999999, 1)
bones/12/name = "arm2_L"
bones/12/parent = 11
@@ -306,7 +306,7 @@ bones/15/parent = 1
bones/15/rest = Transform3D(-0.98213, 0.0512573, -0.181089, -0.187541, -0.185921, 0.964501, 0.0157694, 0.981227, 0.192212, 0.00107862, 3.8461, -0.0821097)
bones/15/enabled = true
bones/15/position = Vector3(0.00107886, 3.8461, -0.0821095)
bones/15/rotation = Quaternion(-0.210594, 0.737756, 0.621763, -0.157408)
bones/15/rotation = Quaternion(-0.215469, 0.745349, 0.613517, -0.147056)
bones/15/scale = Vector3(1, 1, 1)
bones/16/name = "arm2_R"
bones/16/parent = 15
@@ -333,22 +333,22 @@ bones/19/name = "hip_L"
bones/19/parent = -1
bones/19/rest = Transform3D(0.138486, 0.897208, 0.419333, -0.129033, -0.403458, 0.905854, 0.981923, -0.179556, 0.059896, 0.000155807, -0.00105953, -2.01735)
bones/19/enabled = true
bones/19/position = Vector3(-0.3079, -1.13073, -1.95891)
bones/19/rotation = Quaternion(0.612519, 0.311134, 0.569701, -0.451062)
bones/19/position = Vector3(-0.381736, -1.20058, -1.71562)
bones/19/rotation = Quaternion(0.627802, 0.292645, 0.544916, -0.472536)
bones/19/scale = Vector3(1, 1, 1)
bones/20/name = "leg1_L"
bones/20/parent = 19
bones/20/rest = Transform3D(0.945603, 0.113405, 0.304916, -0.324072, 0.410457, 0.852351, -0.0284943, -0.9048, 0.424881, 2.08616e-07, 2.00996, -7.1153e-07)
bones/20/enabled = true
bones/20/position = Vector3(2.08616e-07, 2.00996, -7.1153e-07)
bones/20/rotation = Quaternion(-0.311987, -0.440304, -0.274463, 0.795906)
bones/20/rotation = Quaternion(-0.327961, -0.422555, -0.300918, 0.789517)
bones/20/scale = Vector3(1, 0.999999, 1)
bones/21/name = "leg2_L"
bones/21/parent = 20
bones/21/rest = Transform3D(0.990336, -0.138679, 0.00180777, 0.138628, 0.990193, 0.0173138, -0.00419111, -0.0168959, 0.999848, 5.96046e-08, 5.85994, -5.23403e-07)
bones/21/enabled = true
bones/21/position = Vector3(5.96046e-08, 5.85994, -5.23403e-07)
bones/21/rotation = Quaternion(-0.0601665, 0.00130063, 0.48705, 0.871298)
bones/21/rotation = Quaternion(-0.0604978, 0.00129835, 0.489732, 0.869771)
bones/21/scale = Vector3(1, 1, 1)
bones/22/name = "foot1_L"
bones/22/parent = 21
@@ -382,7 +382,7 @@ bones/26/name = "hip_R"
bones/26/parent = -1
bones/26/rest = Transform3D(0.138486, -0.897208, -0.419333, 0.129033, -0.403458, 0.905854, -0.981923, -0.179556, 0.059896, -0.000155807, -0.00105953, -2.01735)
bones/26/enabled = true
bones/26/position = Vector3(-0.238342, -1.11395, -2.01771)
bones/26/position = Vector3(-0.0213137, -1.11395, -2.01918)
bones/26/rotation = Quaternion(0.608697, -0.3155, -0.575514, -0.445793)
bones/26/scale = Vector3(1, 1, 1)
bones/27/name = "leg1_R"
@@ -390,14 +390,14 @@ bones/27/parent = 26
bones/27/rest = Transform3D(0.945603, -0.113405, -0.304916, 0.324072, 0.410457, 0.852351, 0.0284943, -0.9048, 0.424881, -9.54606e-09, 2.00996, -3.52971e-07)
bones/27/enabled = true
bones/27/position = Vector3(-9.54606e-09, 2.00996, -3.52971e-07)
bones/27/rotation = Quaternion(-0.207804, 0.421596, 0.141956, 0.871162)
bones/27/rotation = Quaternion(-0.202201, 0.424694, 0.137914, 0.871625)
bones/27/scale = Vector3(1, 0.999999, 1)
bones/28/name = "leg2_R"
bones/28/parent = 27
bones/28/rest = Transform3D(0.990336, 0.138679, -0.00180777, -0.138628, 0.990193, 0.0173138, 0.00419111, -0.0168959, 0.999848, 4.51691e-08, 5.85994, -3.72529e-09)
bones/28/enabled = true
bones/28/position = Vector3(4.51691e-08, 5.85994, -3.72529e-09)
bones/28/rotation = Quaternion(-0.0640625, -0.00115623, -0.51147, 0.856909)
bones/28/rotation = Quaternion(-0.0627787, -0.00116448, -0.501219, 0.863039)
bones/28/scale = Vector3(1, 1, 1)
bones/29/name = "foot1_R"
bones/29/parent = 28
@@ -429,7 +429,7 @@ bones/32/rotation = Quaternion(0.456756, 0.539878, -0.539587, -0.456893)
bones/32/scale = Vector3(1, 1, 1)
[node name="BoneAttachment3D" type="BoneAttachment3D" parent="Armature/Skeleton3D"]
transform = Transform3D(-0.292354, -0.0767198, -0.953228, -0.329701, -0.927578, 0.175774, -0.897678, 0.365669, 0.245886, -1.666, 8.30186, 4.94831)
transform = Transform3D(-0.266252, -0.0359368, -0.963233, -0.333724, -0.934064, 0.127095, -0.904288, 0.355294, 0.236703, -1.68949, 8.19963, 4.95696)
bone_name = "TOP OF SKULL"
bone_idx = 8

Binary file not shown.

View File

@@ -33,7 +33,8 @@ MaxDefense = 1
Luck = 0.05
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_dw45s"]
radius = 1.0
radius = 1.02589
height = 2.83556
[sub_resource type="Animation" id="Animation_hcjph"]
length = 0.001
@@ -489,7 +490,7 @@ _defaultWeapon = ExtResource("3_es4xk")
_defaultArmor = ExtResource("4_bj1ma")
[node name="PlayerGeometryCollision" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.06447, 0.536376)
transform = Transform3D(-0.0242402, 0, 0.999706, 0, 1, 0, -0.999706, 0, -0.0242402, 0, 1.06447, 0.367568)
shape = SubResource("CapsuleShape3D_dw45s")
[node name="HealthTimer" type="Timer" parent="."]