diff --git a/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/animation/BossHit.tres b/Zennysoft.Game.Ma/src/enemy/BossHit.tres similarity index 100% rename from Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/animation/BossHit.tres rename to Zennysoft.Game.Ma/src/enemy/BossHit.tres diff --git a/Zennysoft.Game.Ma/src/enemy/BossTypeA.cs b/Zennysoft.Game.Ma/src/enemy/BossTypeA.cs index fe2ddaf9..588c6f91 100644 --- a/Zennysoft.Game.Ma/src/enemy/BossTypeA.cs +++ b/Zennysoft.Game.Ma/src/enemy/BossTypeA.cs @@ -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; } } diff --git a/Zennysoft.Game.Ma/src/enemy/BossTypeAHit.gdshader b/Zennysoft.Game.Ma/src/enemy/BossTypeAHit.gdshader new file mode 100644 index 00000000..42999fd9 --- /dev/null +++ b/Zennysoft.Game.Ma/src/enemy/BossTypeAHit.gdshader @@ -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. +//} diff --git a/Zennysoft.Game.Ma/src/enemy/BossTypeAHit.gdshader.uid b/Zennysoft.Game.Ma/src/enemy/BossTypeAHit.gdshader.uid new file mode 100644 index 00000000..4218bfe7 --- /dev/null +++ b/Zennysoft.Game.Ma/src/enemy/BossTypeAHit.gdshader.uid @@ -0,0 +1 @@ +uid://b4g6p6a7j5xk8 diff --git a/Zennysoft.Game.Ma/src/enemy/Enemy.cs b/Zennysoft.Game.Ma/src/enemy/Enemy.cs index 2c3a327e..2692f0d2 100644 --- a/Zennysoft.Game.Ma/src/enemy/Enemy.cs +++ b/Zennysoft.Game.Ma/src/enemy/Enemy.cs @@ -83,7 +83,7 @@ public partial class Enemy : CharacterBody3D, IEnemy, IProvide _lineOfSight.BodyEntered += LineOfSight_BodyEntered; } - public override void _PhysicsProcess(double delta) + public void OnPhysicsProcess(double delta) { if (CurrentHP.Value <= 0) return; diff --git a/Zennysoft.Game.Ma/src/enemy/EnemyModelView3D.cs b/Zennysoft.Game.Ma/src/enemy/EnemyModelView3D.cs index 8bab46d5..f569fe44 100644 --- a/Zennysoft.Game.Ma/src/enemy/EnemyModelView3D.cs +++ b/Zennysoft.Game.Ma/src/enemy/EnemyModelView3D.cs @@ -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().Stop(); + } } diff --git a/Zennysoft.Game.Ma/src/enemy/enemy_types/10. Eden Pillar/EdenPillarModelView.tscn b/Zennysoft.Game.Ma/src/enemy/enemy_types/10. Eden Pillar/EdenPillarModelView.tscn index a9744029..e76e9816 100644 --- a/Zennysoft.Game.Ma/src/enemy/enemy_types/10. Eden Pillar/EdenPillarModelView.tscn +++ b/Zennysoft.Game.Ma/src/enemy/enemy_types/10. Eden Pillar/EdenPillarModelView.tscn @@ -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"] diff --git a/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/HorseFace.tscn b/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/HorseFace.tscn index dc879424..51205c7b 100644 --- a/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/HorseFace.tscn +++ b/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/HorseFace.tscn @@ -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 diff --git a/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/HorseFaceModelView.tscn b/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/HorseFaceModelView.tscn index db93aa3c..607feb78 100644 --- a/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/HorseFaceModelView.tscn +++ b/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/HorseFaceModelView.tscn @@ -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 diff --git a/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/animation/OxFaceAnimations.tres b/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/animation/OxFaceAnimations.tres index ae05c6c7..08b6cf5f 100644 --- a/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/animation/OxFaceAnimations.tres +++ b/Zennysoft.Game.Ma/src/enemy/enemy_types/14. horse_head/animation/OxFaceAnimations.tres @@ -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" diff --git a/Zennysoft.Game.Ma/src/enemy/enemy_types/15. ox_face/OxFace.tscn b/Zennysoft.Game.Ma/src/enemy/enemy_types/15. ox_face/OxFace.tscn index b2440e55..9c434df7 100644 --- a/Zennysoft.Game.Ma/src/enemy/enemy_types/15. ox_face/OxFace.tscn +++ b/Zennysoft.Game.Ma/src/enemy/enemy_types/15. ox_face/OxFace.tscn @@ -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 diff --git a/Zennysoft.Game.Ma/src/enemy/enemy_types/15. ox_face/OxFaceModelView.tscn b/Zennysoft.Game.Ma/src/enemy/enemy_types/15. ox_face/OxFaceModelView.tscn index b9839d43..7da6e401 100644 --- a/Zennysoft.Game.Ma/src/enemy/enemy_types/15. ox_face/OxFaceModelView.tscn +++ b/Zennysoft.Game.Ma/src/enemy/enemy_types/15. ox_face/OxFaceModelView.tscn @@ -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 diff --git a/Zennysoft.Game.Ma/src/enemy/take_damage.res.depren b/Zennysoft.Game.Ma/src/enemy/take_damage.res.depren new file mode 100644 index 00000000..7388ea8e Binary files /dev/null and b/Zennysoft.Game.Ma/src/enemy/take_damage.res.depren differ diff --git a/Zennysoft.Game.Ma/src/player/Player.tscn b/Zennysoft.Game.Ma/src/player/Player.tscn index f79c4f32..24e6b27c 100644 --- a/Zennysoft.Game.Ma/src/player/Player.tscn +++ b/Zennysoft.Game.Ma/src/player/Player.tscn @@ -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="."]