diff --git a/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/Ballos.cs b/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/Ballos.cs index c7f00902..7b70142e 100644 --- a/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/Ballos.cs +++ b/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/Ballos.cs @@ -4,11 +4,12 @@ using Godot; using System.Collections.Generic; using System; using Zennysoft.Ma.Adapter; +using Zennysoft.Game.Abstractions; namespace Zennysoft.Game.Ma; [Meta(typeof(IAutoNode))] -public partial class Ballos : Enemy, IHasPrimaryAttack, IHasSecondaryAttack +public partial class Ballos : Enemy, IHasPrimaryAttack, IHasSecondaryAttack, ICanPatrol { public override void _Notification(int what) => this.Notify(what); @@ -21,6 +22,8 @@ public partial class Ballos : Enemy, IHasPrimaryAttack, IHasSecondaryAttack [Export] public double SecondaryAttackElementalDamageBonus { get; set; } = 1.0; + [Node] private INavigationAgentClient _navigationAgentClient { get; set; } = default!; + public void OnReady() { SetPhysicsProcess(true); @@ -37,6 +40,10 @@ public partial class Ballos : Enemy, IHasPrimaryAttack, IHasSecondaryAttack _enemyLogic.Input(new EnemyLogic.Input.LostPlayer()); if (_enemyLogic.Value is EnemyLogic.State.Attacking && GlobalPosition.DistanceTo(_player.CurrentPosition) > 2.5f) _enemyLogic.Input(new EnemyLogic.Input.Alerted()); + + _navigationAgentClient.CalculateVelocity(GlobalPosition, true); + + base._PhysicsProcess(delta); } public override void TakeAction() @@ -56,6 +63,17 @@ public partial class Ballos : Enemy, IHasPrimaryAttack, IHasSecondaryAttack _enemyModelView.PlaySecondaryAttackAnimation(); } + public override void SetTarget(Vector3 target) => _navigationAgentClient.SetTarget(target); + + public void Patrol() + { + var rng = new RandomNumberGenerator(); + rng.Randomize(); + var randomizedSpot = new Vector3(rng.RandfRange(-5.0f, 5.0f), 0, rng.RandfRange(-5.0f, 5.0f)); + _enemyLogic.Input(new EnemyLogic.Input.PatrolToRandomSpot(GlobalPosition + randomizedSpot)); + _enemyLogic.Input(new EnemyLogic.Input.StartPatrol()); + } + private void Hitbox_AreaEntered(Area3D area) { var target = area.GetOwner(); diff --git a/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/Ballos.tscn b/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/Ballos.tscn index 193d1f8e..b34b07b9 100644 --- a/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/Ballos.tscn +++ b/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/Ballos.tscn @@ -1,8 +1,9 @@ -[gd_scene load_steps=8 format=3 uid="uid://feegakykn3fv"] +[gd_scene load_steps=9 format=3 uid="uid://feegakykn3fv"] [ext_resource type="Script" uid="uid://dwfxs5yrf7i3v" path="res://src/enemy/enemy_types/05. ballos/Ballos.cs" id="1_v2urn"] [ext_resource type="Script" uid="uid://dnkmr0eq1sij0" path="res://src/enemy/EnemyStatResource.cs" id="2_iy2fp"] [ext_resource type="PackedScene" uid="uid://c5xijwxkg4pf6" path="res://src/enemy/enemy_types/05. ballos/BallosModelView.tscn" id="2_v2urn"] +[ext_resource type="PackedScene" uid="uid://pbnsngx5jvrh" path="res://src/enemy/NavigationAgentClient.tscn" id="4_ko6aj"] [sub_resource type="Resource" id="Resource_ko6aj"] script = ExtResource("2_iy2fp") @@ -40,21 +41,18 @@ collision_mask = 11 axis_lock_linear_y = true axis_lock_angular_x = true script = ExtResource("1_v2urn") +PrimaryAttackElementalType = null +PrimaryAttackElementalDamageBonus = null +SecondaryAttackElementalType = null +SecondaryAttackElementalDamageBonus = null _enemyStatResource = SubResource("Resource_ko6aj") +_movementSpeed = null [node name="CollisionShape" type="CollisionShape3D" parent="."] unique_name_in_owner = true transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0) shape = SubResource("CapsuleShape3D_cwfph") -[node name="NavAgent" type="NavigationAgent3D" parent="."] -unique_name_in_owner = true -path_max_distance = 3.01 -simplify_path = true -avoidance_enabled = true -radius = 2.0 -debug_path_custom_color = Color(1, 0, 0, 1) - [node name="LineOfSight" type="Area3D" parent="."] unique_name_in_owner = true transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0) @@ -89,3 +87,8 @@ shape = SubResource("SphereShape3D_8vcnq") [node name="EnemyModelView" parent="." instance=ExtResource("2_v2urn")] unique_name_in_owner = true + +[node name="Navigation" type="Node3D" parent="."] + +[node name="NavigationAgentClient" parent="Navigation" instance=ExtResource("4_ko6aj")] +unique_name_in_owner = true diff --git a/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/BallosModelView.tscn b/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/BallosModelView.tscn index 91b4d42b..707b02b7 100644 --- a/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/BallosModelView.tscn +++ b/Zennysoft.Game.Ma/src/enemy/enemy_types/05. ballos/BallosModelView.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=134 format=3 uid="uid://c5xijwxkg4pf6"] +[gd_scene load_steps=147 format=3 uid="uid://c5xijwxkg4pf6"] [ext_resource type="Script" uid="uid://cvr1qimxpignl" path="res://src/enemy/EnemyModelView2D.cs" id="1_ueqp5"] [ext_resource type="Texture2D" uid="uid://l5v6gh1crrko" path="res://src/enemy/enemy_types/05. ballos/WALK BACK/1.png" id="3_b3ny6"] @@ -521,7 +521,6 @@ tracks/1/keys = { [sub_resource type="Animation" id="Animation_lulp4"] resource_name = "primary_attack" -loop_mode = 1 step = 0.0833333 tracks/0/type = "value" tracks/0/imported = false @@ -635,10 +634,28 @@ animation = &"idle_left_walk" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_erbrx"] animation = &"primary_attack" -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_3xv6a"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_l4fpo"] +animation = &"secondary_attack" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2ybyh"] switch_mode = 1 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0h1op"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_kg6hd"] +switch_mode = 1 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_qq0ru"] +advance_mode = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_c54uj"] +switch_mode = 1 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2x3nl"] +switch_mode = 1 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_yjcrh"] +switch_mode = 1 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_h1yxw"] switch_mode = 1 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_361b7"] @@ -647,33 +664,16 @@ switch_mode = 1 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_wftla"] switch_mode = 1 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_gqqkl"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0jqty"] switch_mode = 1 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_5cj36"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2le5t"] switch_mode = 1 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_4t05h"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_4nmgu"] +switch_mode = 1 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_8hgxu"] -switch_mode = 2 - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_fq2yw"] -switch_mode = 2 - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_yqm0k"] -switch_mode = 2 - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_bmy1k"] -switch_mode = 2 - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_mxl7w"] -switch_mode = 2 - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_qq0ru"] -advance_mode = 2 - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_c54uj"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_jbtxi"] switch_mode = 1 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_qmo72"] @@ -684,30 +684,28 @@ switch_mode = 1 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_5un2v"] switch_mode = 1 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2x3nl"] -switch_mode = 1 - [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_6a5nw"] -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0jqty"] -switch_mode = 1 - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_yjcrh"] -switch_mode = 1 - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2ybyh"] -switch_mode = 1 - [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_n454k"] switch_mode = 1 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_vrcjv"] switch_mode = 1 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_h1yxw"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_mw5r6"] + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_mjxlk"] + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_3xv6a"] switch_mode = 1 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_kg6hd"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0h1op"] +switch_mode = 1 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_gqqkl"] +switch_mode = 1 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_5cj36"] switch_mode = 1 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_25i3y"] @@ -727,50 +725,89 @@ switch_mode = 1 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_aalmk"] switch_mode = 1 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2le5t"] -switch_mode = 1 +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_4t05h"] -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_4nmgu"] -switch_mode = 1 +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_8hgxu"] +switch_mode = 2 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_mw5r6"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_fq2yw"] +switch_mode = 2 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_jbtxi"] -switch_mode = 1 +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_yqm0k"] +switch_mode = 2 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_mjxlk"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_bmy1k"] +switch_mode = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_mxl7w"] +switch_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_al2xs"] [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_afa0q"] +switch_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_irq32"] [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2khaq"] +switch_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_k7x0x"] [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_noc6c"] +switch_mode = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_pwdwf"] + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_7d2d3"] + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_poqxf"] + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_4g2hn"] + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0kxqo"] + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_66xgg"] + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_lgtad"] +switch_mode = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_fma03"] +switch_mode = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_5sfp6"] +switch_mode = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_v8lxr"] +switch_mode = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_jwp0w"] +switch_mode = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_6sfg0"] +switch_mode = 2 [sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_d5bmw"] states/End/position = Vector2(1466, 104) states/Start/position = Vector2(92, 119) states/idle_back/node = SubResource("AnimationNodeAnimation_53wuj") -states/idle_back/position = Vector2(180.116, -34) +states/idle_back/position = Vector2(180.116, -35) states/idle_back_walk/node = SubResource("AnimationNodeAnimation_o0tmb") states/idle_back_walk/position = Vector2(676, -8.0526) states/idle_front/node = SubResource("AnimationNodeAnimation_d5bmw") -states/idle_front/position = Vector2(403.116, 43.9474) +states/idle_front/position = Vector2(404.116, 45.9474) states/idle_front_walk/node = SubResource("AnimationNodeAnimation_a6s5c") states/idle_front_walk/position = Vector2(644, -100) states/idle_left/node = SubResource("AnimationNodeAnimation_fpvxl") states/idle_left/position = Vector2(367.116, 119) states/idle_left_walk/node = SubResource("AnimationNodeAnimation_dvj10") -states/idle_left_walk/position = Vector2(438, 242.947) +states/idle_left_walk/position = Vector2(439, 242.947) states/primary_attack/node = SubResource("AnimationNodeAnimation_erbrx") -states/primary_attack/position = Vector2(1024, 92.9474) -transitions = ["idle_front_walk", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_3xv6a"), "idle_left_walk", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_0h1op"), "idle_front_walk", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_361b7"), "idle_back_walk", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_wftla"), "idle_back_walk", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_gqqkl"), "idle_left_walk", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_5cj36"), "idle_front_walk", "primary_attack", SubResource("AnimationNodeStateMachineTransition_4t05h"), "primary_attack", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_8hgxu"), "primary_attack", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_fq2yw"), "primary_attack", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_yqm0k"), "idle_back_walk", "primary_attack", SubResource("AnimationNodeStateMachineTransition_bmy1k"), "idle_left_walk", "primary_attack", SubResource("AnimationNodeStateMachineTransition_mxl7w"), "Start", "idle_front", SubResource("AnimationNodeStateMachineTransition_qq0ru"), "idle_front", "idle_back", SubResource("AnimationNodeStateMachineTransition_c54uj"), "idle_back", "idle_left", SubResource("AnimationNodeStateMachineTransition_qmo72"), "idle_left", "idle_front", SubResource("AnimationNodeStateMachineTransition_jyt1n"), "idle_left", "idle_back", SubResource("AnimationNodeStateMachineTransition_5un2v"), "idle_back", "idle_front", SubResource("AnimationNodeStateMachineTransition_2x3nl"), "idle_front", "idle_left", SubResource("AnimationNodeStateMachineTransition_6a5nw"), "idle_back", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_0jqty"), "idle_front", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_yjcrh"), "idle_back", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_2ybyh"), "idle_left", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_n454k"), "idle_back_walk", "idle_left", SubResource("AnimationNodeStateMachineTransition_vrcjv"), "idle_back_walk", "idle_front", SubResource("AnimationNodeStateMachineTransition_h1yxw"), "idle_back_walk", "idle_back", SubResource("AnimationNodeStateMachineTransition_kg6hd"), "idle_back", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_25i3y"), "idle_left", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_5g722"), "idle_front", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_a6y4x"), "idle_left_walk", "idle_front", SubResource("AnimationNodeStateMachineTransition_7y7m4"), "idle_left_walk", "idle_left", SubResource("AnimationNodeStateMachineTransition_ldcvv"), "idle_left_walk", "idle_back", SubResource("AnimationNodeStateMachineTransition_aalmk"), "idle_front_walk", "idle_back", SubResource("AnimationNodeStateMachineTransition_2le5t"), "idle_front_walk", "idle_front", SubResource("AnimationNodeStateMachineTransition_4nmgu"), "idle_front_walk", "idle_left", SubResource("AnimationNodeStateMachineTransition_mw5r6"), "idle_front", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_jbtxi"), "idle_left", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_mjxlk"), "idle_back", "primary_attack", SubResource("AnimationNodeStateMachineTransition_al2xs"), "primary_attack", "idle_back", SubResource("AnimationNodeStateMachineTransition_afa0q"), "idle_front", "primary_attack", SubResource("AnimationNodeStateMachineTransition_irq32"), "primary_attack", "idle_front", SubResource("AnimationNodeStateMachineTransition_2khaq"), "idle_left", "primary_attack", SubResource("AnimationNodeStateMachineTransition_k7x0x"), "primary_attack", "idle_left", SubResource("AnimationNodeStateMachineTransition_noc6c")] -graph_offset = Vector2(46.1163, -73.3694) +states/primary_attack/position = Vector2(1301, 134.947) +states/secondary_attack/node = SubResource("AnimationNodeAnimation_l4fpo") +states/secondary_attack/position = Vector2(1103.45, 400.831) +transitions = ["idle_back", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_2ybyh"), "idle_back_walk", "idle_back", SubResource("AnimationNodeStateMachineTransition_kg6hd"), "Start", "idle_front", SubResource("AnimationNodeStateMachineTransition_qq0ru"), "idle_front", "idle_back", SubResource("AnimationNodeStateMachineTransition_c54uj"), "idle_back", "idle_front", SubResource("AnimationNodeStateMachineTransition_2x3nl"), "idle_front", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_yjcrh"), "idle_back_walk", "idle_front", SubResource("AnimationNodeStateMachineTransition_h1yxw"), "idle_front_walk", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_361b7"), "idle_back_walk", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_wftla"), "idle_back", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_0jqty"), "idle_front_walk", "idle_back", SubResource("AnimationNodeStateMachineTransition_2le5t"), "idle_front_walk", "idle_front", SubResource("AnimationNodeStateMachineTransition_4nmgu"), "idle_front", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_jbtxi"), "idle_back", "idle_left", SubResource("AnimationNodeStateMachineTransition_qmo72"), "idle_left", "idle_front", SubResource("AnimationNodeStateMachineTransition_jyt1n"), "idle_left", "idle_back", SubResource("AnimationNodeStateMachineTransition_5un2v"), "idle_front", "idle_left", SubResource("AnimationNodeStateMachineTransition_6a5nw"), "idle_left", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_n454k"), "idle_back_walk", "idle_left", SubResource("AnimationNodeStateMachineTransition_vrcjv"), "idle_front_walk", "idle_left", SubResource("AnimationNodeStateMachineTransition_mw5r6"), "idle_left", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_mjxlk"), "idle_front_walk", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_3xv6a"), "idle_left_walk", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_0h1op"), "idle_back_walk", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_gqqkl"), "idle_left_walk", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_5cj36"), "idle_back", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_25i3y"), "idle_left", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_5g722"), "idle_front", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_a6y4x"), "idle_left_walk", "idle_front", SubResource("AnimationNodeStateMachineTransition_7y7m4"), "idle_left_walk", "idle_left", SubResource("AnimationNodeStateMachineTransition_ldcvv"), "idle_left_walk", "idle_back", SubResource("AnimationNodeStateMachineTransition_aalmk"), "idle_front_walk", "primary_attack", SubResource("AnimationNodeStateMachineTransition_4t05h"), "primary_attack", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_8hgxu"), "primary_attack", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_fq2yw"), "primary_attack", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_yqm0k"), "idle_back_walk", "primary_attack", SubResource("AnimationNodeStateMachineTransition_bmy1k"), "idle_left_walk", "primary_attack", SubResource("AnimationNodeStateMachineTransition_mxl7w"), "idle_back", "primary_attack", SubResource("AnimationNodeStateMachineTransition_al2xs"), "primary_attack", "idle_back", SubResource("AnimationNodeStateMachineTransition_afa0q"), "idle_front", "primary_attack", SubResource("AnimationNodeStateMachineTransition_irq32"), "primary_attack", "idle_front", SubResource("AnimationNodeStateMachineTransition_2khaq"), "idle_left", "primary_attack", SubResource("AnimationNodeStateMachineTransition_k7x0x"), "primary_attack", "idle_left", SubResource("AnimationNodeStateMachineTransition_noc6c"), "idle_back", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_pwdwf"), "idle_front", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_7d2d3"), "idle_left", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_poqxf"), "idle_left_walk", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_4g2hn"), "idle_front_walk", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_0kxqo"), "idle_back_walk", "secondary_attack", SubResource("AnimationNodeStateMachineTransition_66xgg"), "secondary_attack", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_lgtad"), "secondary_attack", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_fma03"), "secondary_attack", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_5sfp6"), "secondary_attack", "idle_front", SubResource("AnimationNodeStateMachineTransition_v8lxr"), "secondary_attack", "idle_left", SubResource("AnimationNodeStateMachineTransition_jwp0w"), "secondary_attack", "idle_back", SubResource("AnimationNodeStateMachineTransition_6sfg0")] +graph_offset = Vector2(-290.548, -281.487) [node name="EnemyModelView" type="Node3D"] script = ExtResource("1_ueqp5") @@ -821,4 +858,6 @@ libraries = { [node name="AnimationTree" type="AnimationTree" parent="."] unique_name_in_owner = true +root_node = NodePath("%AnimationTree/..") tree_root = SubResource("AnimationNodeStateMachine_d5bmw") +anim_player = NodePath("../AnimationPlayer")