Fix up animations for more enemies

This commit is contained in:
2025-04-03 00:48:28 -07:00
parent 63391ef82a
commit d5108fbc1e
8 changed files with 2251 additions and 1565 deletions

View File

@@ -51,7 +51,7 @@ public partial class DataViewer : Control
Camera3D.Position = Camera3D.Position.Clamp(new Vector3(0, 0, 1), new Vector3(0, 0, 4));
ModelPivot.Rotation = ModelPivot.Rotation.Clamp(Mathf.DegToRad(-60), Mathf.DegToRad(60));
_currentModel.SetCurrentDirection(_currentModel.GlobalBasis, CameraPivot.Basis.Z);
_currentModel.SetCurrentDirection(_currentModel.GlobalBasis, -CameraPivot.Basis.Z);
_currentModel.PlayIdleAnimation();
if (Input.IsActionJustPressed(GameInputs.Attack))
@@ -60,6 +60,8 @@ public partial class DataViewer : Control
_currentModel.PlaySecondaryAttackAnimation();
if (Input.IsActionJustPressed(GameInputs.Inventory) && _currentModel is ICanActivate canActivate)
canActivate.Activate();
if (Input.IsActionPressed(GameInputs.StrafeRight))
_currentModel.PlayWalkAnimation();
if (Input.IsActionJustPressed(GameInputs.Next))
{

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=246 format=3 uid="uid://bli0t0d6ommvi"]
[gd_scene load_steps=184 format=3 uid="uid://bli0t0d6ommvi"]
[ext_resource type="Script" uid="uid://cvr1qimxpignl" path="res://src/enemy/EnemyModelView2D.cs" id="1_oh25a"]
[ext_resource type="Texture2D" uid="uid://nps7rrvkgews" path="res://src/enemy/enemy_types/04. sara/animations/IDLE+MOVE/FRONT/0001.png" id="2_8j76g"]
@@ -162,6 +162,7 @@
[ext_resource type="Texture2D" uid="uid://bflrknmtl1ju5" path="res://src/enemy/enemy_types/04. sara/animations/ATTACK2/SIDE R/0016.png" id="159_4o5f2"]
[ext_resource type="Texture2D" uid="uid://n2c8kfwt6ve3" path="res://src/enemy/enemy_types/04. sara/animations/ATTACK2/SIDE R/0019.png" id="160_r8ggx"]
[ext_resource type="Texture2D" uid="uid://dykb4rwua8iyw" path="res://src/enemy/enemy_types/04. sara/animations/ATTACK2/SIDE R/0022.png" id="161_xafpd"]
[ext_resource type="PackedScene" uid="uid://diaxvpmwgl65u" path="res://src/enemy/TwoAttacksEnemyAnimationTree.tscn" id="163_e6etm"]
[sub_resource type="ViewportTexture" id="ViewportTexture_h1kaf"]
viewport_path = NodePath("Sprite3D/SubViewportContainer/SubViewport")
@@ -823,7 +824,7 @@ tracks/0/path = NodePath("Sprite3D/SubViewportContainer/SubViewport/AnimatedSpri
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(1),
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"idle_front"]
@@ -853,7 +854,7 @@ tracks/0/path = NodePath("Sprite3D/SubViewportContainer/SubViewport/AnimatedSpri
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(1),
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"idle_front"]
@@ -946,7 +947,7 @@ tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"idle_left"]
"values": [&"idle_right"]
}
tracks/1/type = "value"
tracks/1/imported = false
@@ -976,7 +977,7 @@ tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"idle_left"]
"values": [&"idle_right"]
}
tracks/1/type = "value"
tracks/1/imported = false
@@ -1046,7 +1047,7 @@ tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"primary_attack"]
"values": [&"primary_attack_back"]
}
tracks/1/type = "value"
tracks/1/imported = false
@@ -1087,7 +1088,7 @@ tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"primary_attack"]
"values": [&"primary_attack_left"]
}
tracks/1/type = "value"
tracks/1/imported = false
@@ -1128,7 +1129,7 @@ tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"primary_attack"]
"values": [&"primary_attack_right"]
}
tracks/1/type = "value"
tracks/1/imported = false
@@ -1210,7 +1211,7 @@ tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"secondary_attack"]
"values": [&"secondary_attack_left"]
}
tracks/1/type = "value"
tracks/1/imported = false
@@ -1251,7 +1252,7 @@ tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [&"secondary_attack"]
"values": [&"secondary_attack_right"]
}
tracks/1/type = "value"
tracks/1/imported = false
@@ -1298,178 +1299,6 @@ _data = {
&"secondary_attack_right": SubResource("Animation_k1pc0")
}
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_sobol"]
animation = &"idle_back"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_wtyys"]
animation = &"idle_back"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_pkiq5"]
animation = &"idle_front"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_ftlpx"]
animation = &"idle_front"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_pep5o"]
animation = &"idle_left"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_pfxm2"]
animation = &"idle_left"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_r14ie"]
animation = &"primary_attack"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_iw0no"]
animation = &"secondary_attack"
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_wtyys"]
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ftlpx"]
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_pfxm2"]
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0p57o"]
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_4070g"]
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_qd8rk"]
switch_mode = 1
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_wfk5u"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_v7k5y"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_tff1e"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_yaeox"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ar6u5"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_63kln"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_edyim"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_7aslh"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0xylu"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_4pr4i"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_6sacx"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_muxwo"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_q5tap"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_osqmv"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_yfx2u"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_qtw3l"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_dknic"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_cgu3i"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_u17iy"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_dqhfm"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_8yvxr"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_8wbas"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_nybjf"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_x05ki"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_7et5w"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_hmpkn"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_j77nn"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_62h8a"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_1ifgr"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_rlwyu"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_pnlhe"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_hf1ee"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_mcv7m"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_m3t2u"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_jh4gc"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2jjmk"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_cyvy2"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_jeun6"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_7ynqt"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_c3av8"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_8klos"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_bxaaw"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ybkyy"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_m041n"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_hj8eq"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_pbcgo"]
switch_mode = 2
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_tneej"]
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_6r8mp"]
[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_d5bmw"]
states/End/position = Vector2(905, 301)
states/Start/position = Vector2(29, 290)
states/idle_back/node = SubResource("AnimationNodeAnimation_sobol")
states/idle_back/position = Vector2(391.532, 251.977)
states/idle_back_walk/node = SubResource("AnimationNodeAnimation_wtyys")
states/idle_back_walk/position = Vector2(596.532, 143.977)
states/idle_front/node = SubResource("AnimationNodeAnimation_pkiq5")
states/idle_front/position = Vector2(101.532, 347)
states/idle_front_walk/node = SubResource("AnimationNodeAnimation_ftlpx")
states/idle_front_walk/position = Vector2(73.532, 176.977)
states/idle_left/node = SubResource("AnimationNodeAnimation_pep5o")
states/idle_left/position = Vector2(443.532, 809.977)
states/idle_left_walk/node = SubResource("AnimationNodeAnimation_pfxm2")
states/idle_left_walk/position = Vector2(-255.468, 571.977)
states/primary_attack/node = SubResource("AnimationNodeAnimation_r14ie")
states/primary_attack/position = Vector2(1032.53, 251.977)
states/secondary_attack/node = SubResource("AnimationNodeAnimation_iw0no")
states/secondary_attack/position = Vector2(797.532, 686.977)
transitions = ["idle_front", "idle_left", SubResource("AnimationNodeStateMachineTransition_wtyys"), "idle_left", "idle_front", SubResource("AnimationNodeStateMachineTransition_ftlpx"), "idle_front", "idle_back", SubResource("AnimationNodeStateMachineTransition_pfxm2"), "idle_back", "idle_front", SubResource("AnimationNodeStateMachineTransition_0p57o"), "idle_left", "idle_back", SubResource("AnimationNodeStateMachineTransition_4070g"), "idle_back", "idle_left", SubResource("AnimationNodeStateMachineTransition_qd8rk"), "idle_back", "primary_attack", SubResource("AnimationNodeStateMachineTransition_wfk5u"), "idle_front", "primary_attack", SubResource("AnimationNodeStateMachineTransition_v7k5y"), "idle_left", "primary_attack", SubResource("AnimationNodeStateMachineTransition_tff1e"), "primary_attack", "idle_back", SubResource("AnimationNodeStateMachineTransition_yaeox"), "primary_attack", "idle_front", SubResource("AnimationNodeStateMachineTransition_ar6u5"), "primary_attack", "idle_left", SubResource("AnimationNodeStateMachineTransition_63kln"), "idle_back", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_edyim"), "idle_front", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_7aslh"), "idle_left", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_0xylu"), "secondary_attack", "idle_back", SubResource("AnimationNodeStateMachineTransition_4pr4i"), "secondary_attack", "idle_front", SubResource("AnimationNodeStateMachineTransition_6sacx"), "secondary_attack", "idle_left", SubResource("AnimationNodeStateMachineTransition_muxwo"), "idle_front", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_q5tap"), "idle_front_walk", "idle_front", SubResource("AnimationNodeStateMachineTransition_osqmv"), "idle_front_walk", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_yfx2u"), "idle_left_walk", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_qtw3l"), "idle_front_walk", "idle_left", SubResource("AnimationNodeStateMachineTransition_dknic"), "idle_left", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_cgu3i"), "idle_front_walk", "idle_back", SubResource("AnimationNodeStateMachineTransition_u17iy"), "idle_back", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_dqhfm"), "idle_front_walk", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_8yvxr"), "idle_back_walk", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_8wbas"), "idle_front_walk", "primary_attack", SubResource("AnimationNodeStateMachineTransition_nybjf"), "idle_front_walk", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_x05ki"), "idle_left_walk", "idle_front", SubResource("AnimationNodeStateMachineTransition_7et5w"), "idle_front", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_hmpkn"), "idle_left_walk", "idle_left", SubResource("AnimationNodeStateMachineTransition_j77nn"), "idle_left", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_62h8a"), "idle_left_walk", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_1ifgr"), "idle_left_walk", "primary_attack", SubResource("AnimationNodeStateMachineTransition_rlwyu"), "idle_left_walk", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_pnlhe"), "idle_back_walk", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_hf1ee"), "idle_back", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_mcv7m"), "idle_left_walk", "idle_back", SubResource("AnimationNodeStateMachineTransition_m3t2u"), "idle_back_walk", "idle_left", SubResource("AnimationNodeStateMachineTransition_jh4gc"), "idle_left", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_2jjmk"), "idle_back_walk", "idle_back", SubResource("AnimationNodeStateMachineTransition_cyvy2"), "idle_back", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_jeun6"), "idle_back_walk", "primary_attack", SubResource("AnimationNodeStateMachineTransition_7ynqt"), "idle_back_walk", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_c3av8"), "secondary_attack", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_8klos"), "secondary_attack", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_bxaaw"), "secondary_attack", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_ybkyy"), "primary_attack", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_m041n"), "primary_attack", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_hj8eq"), "primary_attack", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_pbcgo"), "idle_front", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_tneej"), "idle_back_walk", "idle_front", SubResource("AnimationNodeStateMachineTransition_6r8mp")]
graph_offset = Vector2(-448.468, 288.816)
[node name="EnemyModelView" type="Node3D"]
script = ExtResource("1_oh25a")
@@ -1519,6 +1348,5 @@ libraries = {
&"": SubResource("AnimationLibrary_pkiq5")
}
[node name="AnimationTree" type="AnimationTree" parent="."]
[node name="AnimationTree" parent="." instance=ExtResource("163_e6etm")]
unique_name_in_owner = true
tree_root = SubResource("AnimationNodeStateMachine_d5bmw")

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long