Refactor enemy view model for data viewer project
This commit is contained in:
10
src/data_viewer/DataViewerRepository.cs
Normal file
10
src/data_viewer/DataViewerRepository.cs
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
using Chickensoft.AutoInject;
|
||||||
|
using Chickensoft.Introspection;
|
||||||
|
using Godot;
|
||||||
|
|
||||||
|
[Meta(typeof(IAutoNode))]
|
||||||
|
public partial class DataViewerRepository : Node
|
||||||
|
{
|
||||||
|
[Export]
|
||||||
|
private Godot.Collections.Array<PackedScene> _modelsToDisplay;
|
||||||
|
}
|
||||||
9
src/data_viewer/DataViewerRepository.tscn
Normal file
9
src/data_viewer/DataViewerRepository.tscn
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
[gd_scene load_steps=4 format=3 uid="uid://c16i1gmg6yu5a"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" path="res://src/data_viewer/DataViewerRepository.cs" id="1_1cvot"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bjg8wyvp8q6oc" path="res://src/enemy/enemy_types/michael/MichaelModelView.tscn" id="2_8autu"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bli0t0d6ommvi" path="res://src/enemy/enemy_types/sproingy/SproingyModelView.tscn" id="3_0bpmu"]
|
||||||
|
|
||||||
|
[node name="DataViewerRepository" type="Node"]
|
||||||
|
script = ExtResource("1_1cvot")
|
||||||
|
_modelsToDisplay = [ExtResource("2_8autu"), ExtResource("3_0bpmu")]
|
||||||
@@ -53,21 +53,9 @@ public partial class Enemy : RigidBody3D, IEnemy, IProvide<IEnemyLogic>
|
|||||||
|
|
||||||
[Node] public Timer AttackTimer { get; set; } = default!;
|
[Node] public Timer AttackTimer { get; set; } = default!;
|
||||||
|
|
||||||
[Node] public AnimatedSprite2D AnimatedSprite { get; set; } = default!;
|
|
||||||
|
|
||||||
[Node] public RayCast3D Raycast { get; set; } = default!;
|
[Node] public RayCast3D Raycast { get; set; } = default!;
|
||||||
|
|
||||||
[Node] public AnimationPlayer AnimationPlayer { get; set; } = default!;
|
[Node] public EnemyModelView EnemyModelView { get; set; } = default!;
|
||||||
|
|
||||||
[Node] public AnimationTree AnimationTree { get; set; } = default!;
|
|
||||||
|
|
||||||
[Node] public IHitbox Hitbox { get; set; } = default!;
|
|
||||||
|
|
||||||
private const string IDLE_FORWARD = "idle_front_walk";
|
|
||||||
private const string IDLE_LEFT = "idle_left_walk";
|
|
||||||
private const string IDLE_BACK = "idle_back_walk";
|
|
||||||
|
|
||||||
private const string ATTACK_FORWARD = "attack";
|
|
||||||
|
|
||||||
private float _knockbackStrength = 0.0f;
|
private float _knockbackStrength = 0.0f;
|
||||||
private Vector3 _knockbackDirection = Vector3.Zero;
|
private Vector3 _knockbackDirection = Vector3.Zero;
|
||||||
@@ -78,20 +66,6 @@ public partial class Enemy : RigidBody3D, IEnemy, IProvide<IEnemyLogic>
|
|||||||
EnemyLogic.Set(EnemyStatResource);
|
EnemyLogic.Set(EnemyStatResource);
|
||||||
EnemyLogic.Set(this as IEnemy);
|
EnemyLogic.Set(this as IEnemy);
|
||||||
EnemyLogic.Set(GameRepo);
|
EnemyLogic.Set(GameRepo);
|
||||||
AnimationTree.AnimationFinished += AnimationTree_AnimationFinished;
|
|
||||||
AnimationTree.Get("parameters/playback").As<AnimationNodeStateMachinePlayback>().Start(IDLE_FORWARD);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void AnimationTree_AnimationFinished(StringName animName)
|
|
||||||
{
|
|
||||||
if (animName == "attack")
|
|
||||||
AnimationTree.Get("parameters/playback").As<AnimationNodeStateMachinePlayback>().Travel(IDLE_FORWARD);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void DeathAnimationPlayer_AnimationFinished(StringName animName)
|
|
||||||
{
|
|
||||||
GameEventDepot.OnEnemyDefeated(GlobalPosition, EnemyStatResource);
|
|
||||||
QueueFree();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnReady()
|
public void OnReady()
|
||||||
@@ -100,7 +74,7 @@ public partial class Enemy : RigidBody3D, IEnemy, IProvide<IEnemyLogic>
|
|||||||
CollisionDetector = CollisionDetectorScene.Instantiate<Area3D>();
|
CollisionDetector = CollisionDetectorScene.Instantiate<Area3D>();
|
||||||
CollisionDetector.AreaEntered += OnPlayerHitboxEntered;
|
CollisionDetector.AreaEntered += OnPlayerHitboxEntered;
|
||||||
AddChild(CollisionDetector);
|
AddChild(CollisionDetector);
|
||||||
Hitbox.AreaEntered += Hitbox_AreaEntered;
|
EnemyModelView.Hitbox.AreaEntered += Hitbox_AreaEntered;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Hitbox_AreaEntered(Area3D area)
|
private void Hitbox_AreaEntered(Area3D area)
|
||||||
@@ -130,15 +104,13 @@ public partial class Enemy : RigidBody3D, IEnemy, IProvide<IEnemyLogic>
|
|||||||
EnemyBinding
|
EnemyBinding
|
||||||
.Handle((in EnemyLogic.Output.MovementComputed output) =>
|
.Handle((in EnemyLogic.Output.MovementComputed output) =>
|
||||||
{
|
{
|
||||||
RotateEnemy(-GameRepo.PlayerGlobalTransform.Value.Basis.Z);
|
EnemyModelView.RotateModel(GlobalTransform.Basis, -GameRepo.PlayerGlobalTransform.Value.Basis.Z);
|
||||||
_knockbackStrength = _knockbackStrength * 0.9f;
|
_knockbackStrength = _knockbackStrength * 0.9f;
|
||||||
MoveAndCollide(output.LinearVelocity + (_knockbackDirection * _knockbackStrength));
|
MoveAndCollide(output.LinearVelocity + (_knockbackDirection * _knockbackStrength));
|
||||||
})
|
})
|
||||||
.Handle((in EnemyLogic.Output.HitByPlayer output) =>
|
.Handle((in EnemyLogic.Output.HitByPlayer output) =>
|
||||||
{
|
{
|
||||||
LoadShader("res://src/vfx/shaders/DamageHit.gdshader");
|
EnemyModelView.PlayHitAnimation();
|
||||||
var tweener = GetTree().CreateTween();
|
|
||||||
tweener.TweenMethod(Callable.From((float x) => SetShaderValue(x)), 0.0f, 1.0f, 1.0f);
|
|
||||||
// TODO: Make this an event to notify game that player hit someone
|
// TODO: Make this an event to notify game that player hit someone
|
||||||
if (GameRepo.PlayerData.Inventory.EquippedWeapon.Value.WeaponStats.WeaponTags.Contains(WeaponTag.SelfDamage))
|
if (GameRepo.PlayerData.Inventory.EquippedWeapon.Value.WeaponStats.WeaponTags.Contains(WeaponTag.SelfDamage))
|
||||||
GameRepo.PlayerData.SetCurrentHP(GameRepo.PlayerData.CurrentHP.Value - 5);
|
GameRepo.PlayerData.SetCurrentHP(GameRepo.PlayerData.CurrentHP.Value - 5);
|
||||||
@@ -150,15 +122,15 @@ public partial class Enemy : RigidBody3D, IEnemy, IProvide<IEnemyLogic>
|
|||||||
})
|
})
|
||||||
.Handle((in EnemyLogic.Output.Attack _) =>
|
.Handle((in EnemyLogic.Output.Attack _) =>
|
||||||
{
|
{
|
||||||
AnimationTree.Get("parameters/playback").As<AnimationNodeStateMachinePlayback>().Travel("attack");
|
EnemyModelView.PlayAttackAnimation();
|
||||||
})
|
})
|
||||||
.Handle((in EnemyLogic.Output.Defeated output) =>
|
.Handle((in EnemyLogic.Output.Defeated output) =>
|
||||||
{
|
{
|
||||||
LoadShader("res://src/vfx/shaders/PixelMelt.gdshader");
|
EnemyModelView.PlayDeathAnimation();
|
||||||
var tweener = GetTree().CreateTween();
|
var tweener = GetTree().CreateTween();
|
||||||
tweener.TweenMethod(Callable.From((float x) => SetShaderValue(x)), 0.0f, 1.0f, 0.8f);
|
tweener.TweenInterval(1.0f);
|
||||||
GameEventDepot.OnEnemyDefeated(GlobalPosition, EnemyStatResource);
|
|
||||||
tweener.TweenCallback(Callable.From(QueueFree));
|
tweener.TweenCallback(Callable.From(QueueFree));
|
||||||
|
GameEventDepot.OnEnemyDefeated(GlobalPosition, EnemyStatResource);
|
||||||
});
|
});
|
||||||
|
|
||||||
this.Provide();
|
this.Provide();
|
||||||
@@ -175,14 +147,6 @@ public partial class Enemy : RigidBody3D, IEnemy, IProvide<IEnemyLogic>
|
|||||||
PatrolTimer.WaitTime = rng.RandfRange(7.0f, 15.0f);
|
PatrolTimer.WaitTime = rng.RandfRange(7.0f, 15.0f);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void LoadShader(string shaderPath)
|
|
||||||
{
|
|
||||||
var shader = GD.Load<Shader>(shaderPath);
|
|
||||||
AnimatedSprite.Material = new ShaderMaterial();
|
|
||||||
var shaderMaterial = (ShaderMaterial)AnimatedSprite.Material;
|
|
||||||
shaderMaterial.Shader = shader;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void OnExitTree()
|
public void OnExitTree()
|
||||||
{
|
{
|
||||||
EnemyLogic.Stop();
|
EnemyLogic.Stop();
|
||||||
@@ -255,42 +219,14 @@ public partial class Enemy : RigidBody3D, IEnemy, IProvide<IEnemyLogic>
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void RotateEnemy(Vector3 cameraDirection)
|
|
||||||
{
|
|
||||||
var rotateUpperThreshold = 0.85f;
|
|
||||||
var rotateLowerThreshold = 0.3f;
|
|
||||||
|
|
||||||
var enemyForwardDirection = GlobalTransform.Basis.Z;
|
|
||||||
var enemyLeftDirection = GlobalTransform.Basis.X;
|
|
||||||
|
|
||||||
var leftDotProduct = enemyLeftDirection.Dot(cameraDirection);
|
|
||||||
var forwardDotProduct = enemyForwardDirection.Dot(cameraDirection);
|
|
||||||
|
|
||||||
// Check if forward facing. If the dot product is -1, the enemy is facing the camera.
|
|
||||||
if (forwardDotProduct < -rotateUpperThreshold)
|
|
||||||
AnimationTree.Get("parameters/playback").As<AnimationNodeStateMachinePlayback>().Travel("idle_front_walk");
|
|
||||||
// Check if backward facing. If the dot product is 1, the enemy is facing the same direction as the camera.
|
|
||||||
else if (forwardDotProduct > rotateUpperThreshold)
|
|
||||||
AnimationTree.Get("parameters/playback").As<AnimationNodeStateMachinePlayback>().Travel("idle_back_walk");
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// If the dot product of the perpendicular direction is positive (up to 1), the enemy is facing to the left (since it's mirrored).
|
|
||||||
AnimatedSprite.FlipH = leftDotProduct > 0;
|
|
||||||
// Check if side facing. If the dot product is close to zero in the positive or negative direction, its close to the threshold for turning.
|
|
||||||
if (Mathf.Abs(forwardDotProduct) < rotateLowerThreshold)
|
|
||||||
AnimationTree.Get("parameters/playback").As<AnimationNodeStateMachinePlayback>().Travel("idle_left_walk");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void OnHPChanged(double newHP)
|
private void OnHPChanged(double newHP)
|
||||||
{
|
{
|
||||||
if (newHP <= 0)
|
if (newHP <= 0)
|
||||||
EnemyLogic.Input(new EnemyLogic.Input.EnemyDefeated());
|
EnemyLogic.Input(new EnemyLogic.Input.EnemyDefeated());
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SetShaderValue(float shaderValue)
|
private void DoNothing()
|
||||||
{
|
{
|
||||||
var shaderMaterial = (ShaderMaterial)AnimatedSprite.Material;
|
|
||||||
shaderMaterial.SetShaderParameter("progress", shaderValue);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
108
src/enemy/EnemyModelView.cs
Normal file
108
src/enemy/EnemyModelView.cs
Normal file
@@ -0,0 +1,108 @@
|
|||||||
|
using Chickensoft.AutoInject;
|
||||||
|
using Chickensoft.GodotNodeInterfaces;
|
||||||
|
using Chickensoft.Introspection;
|
||||||
|
using GameJamDungeon;
|
||||||
|
using Godot;
|
||||||
|
|
||||||
|
public interface IEnemyModelView : INode3D
|
||||||
|
{
|
||||||
|
public void PlayAttackAnimation();
|
||||||
|
|
||||||
|
public void PlayHitAnimation();
|
||||||
|
public void PlayDeathAnimation();
|
||||||
|
|
||||||
|
public void RotateModel(Basis enemyBasis, Vector3 cameraDirection);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Meta(typeof(IAutoNode))]
|
||||||
|
public partial class EnemyModelView : Node3D, IEnemyModelView
|
||||||
|
{
|
||||||
|
private const string ATTACK = "attack";
|
||||||
|
private const string IDLE_FORWARD = "idle_front_walk";
|
||||||
|
private const string IDLE_LEFT = "idle_left_walk";
|
||||||
|
private const string IDLE_BACK = "idle_back_walk";
|
||||||
|
private const string PARAMETERS_PLAYBACK = "parameters/playback";
|
||||||
|
|
||||||
|
public override void _Notification(int what) => this.Notify(what);
|
||||||
|
|
||||||
|
[Node] public AnimatedSprite2D AnimatedSprite { get; set; } = default!;
|
||||||
|
|
||||||
|
[Node] public IHitbox Hitbox { get; set; } = default!;
|
||||||
|
|
||||||
|
[Node] public AnimationPlayer AnimationPlayer { get; set; } = default!;
|
||||||
|
|
||||||
|
[Node] public AnimationTree AnimationTree { get; set; } = default!;
|
||||||
|
|
||||||
|
public void Setup()
|
||||||
|
{
|
||||||
|
AnimationTree.AnimationFinished += AnimationTree_AnimationFinished;
|
||||||
|
AnimationTree.Get(PARAMETERS_PLAYBACK).As<AnimationNodeStateMachinePlayback>().Start(IDLE_FORWARD);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void PlayAttackAnimation()
|
||||||
|
{
|
||||||
|
AnimationTree.Get(PARAMETERS_PLAYBACK).As<AnimationNodeStateMachinePlayback>().Travel(ATTACK);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void PlayHitAnimation()
|
||||||
|
{
|
||||||
|
LoadShader("res://src/vfx/shaders/DamageHit.gdshader");
|
||||||
|
var tweener = GetTree().CreateTween();
|
||||||
|
tweener.TweenMethod(Callable.From((float x) => SetShaderValue(x)), 0.0f, 1.0f, 1.0f);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void PlayDeathAnimation()
|
||||||
|
{
|
||||||
|
LoadShader("res://src/vfx/shaders/PixelMelt.gdshader");
|
||||||
|
var tweener = GetTree().CreateTween();
|
||||||
|
tweener.TweenMethod(Callable.From((float x) => SetShaderValue(x)), 0.0f, 1.0f, 0.8f);
|
||||||
|
tweener.TweenCallback(Callable.From(QueueFree));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RotateModel(Basis enemyBasis, Vector3 cameraDirection)
|
||||||
|
{
|
||||||
|
var rotateUpperThreshold = 0.85f;
|
||||||
|
var rotateLowerThreshold = 0.3f;
|
||||||
|
|
||||||
|
var enemyForwardDirection = enemyBasis.Z;
|
||||||
|
var enemyLeftDirection = enemyBasis.X;
|
||||||
|
|
||||||
|
var leftDotProduct = enemyLeftDirection.Dot(cameraDirection);
|
||||||
|
var forwardDotProduct = enemyForwardDirection.Dot(cameraDirection);
|
||||||
|
|
||||||
|
// Check if forward facing. If the dot product is -1, the enemy is facing the camera.
|
||||||
|
if (forwardDotProduct < -rotateUpperThreshold)
|
||||||
|
AnimationTree.Get(PARAMETERS_PLAYBACK).As<AnimationNodeStateMachinePlayback>().Travel(IDLE_FORWARD);
|
||||||
|
// Check if backward facing. If the dot product is 1, the enemy is facing the same direction as the camera.
|
||||||
|
else if (forwardDotProduct > rotateUpperThreshold)
|
||||||
|
AnimationTree.Get(PARAMETERS_PLAYBACK).As<AnimationNodeStateMachinePlayback>().Travel(IDLE_BACK);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// If the dot product of the perpendicular direction is positive (up to 1), the enemy is facing to the left (since it's mirrored).
|
||||||
|
AnimatedSprite.FlipH = leftDotProduct > 0;
|
||||||
|
// Check if side facing. If the dot product is close to zero in the positive or negative direction, its close to the threshold for turning.
|
||||||
|
if (Mathf.Abs(forwardDotProduct) < rotateLowerThreshold)
|
||||||
|
AnimationTree.Get(PARAMETERS_PLAYBACK).As<AnimationNodeStateMachinePlayback>().Travel(IDLE_LEFT);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LoadShader(string shaderPath)
|
||||||
|
{
|
||||||
|
var shader = GD.Load<Shader>(shaderPath);
|
||||||
|
AnimatedSprite.Material = new ShaderMaterial();
|
||||||
|
var shaderMaterial = (ShaderMaterial)AnimatedSprite.Material;
|
||||||
|
shaderMaterial.Shader = shader;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AnimationTree_AnimationFinished(StringName animName)
|
||||||
|
{
|
||||||
|
if (animName == "attack")
|
||||||
|
AnimationTree.Get("parameters/playback").As<AnimationNodeStateMachinePlayback>().Travel(IDLE_FORWARD);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetShaderValue(float shaderValue)
|
||||||
|
{
|
||||||
|
var shaderMaterial = (ShaderMaterial)AnimatedSprite.Material;
|
||||||
|
shaderMaterial.SetShaderParameter("progress", shaderValue);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,77 +1,8 @@
|
|||||||
[gd_scene load_steps=104 format=3 uid="uid://b0gwivt7cw7nd"]
|
[gd_scene load_steps=7 format=3 uid="uid://b0gwivt7cw7nd"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://src/enemy/Enemy.cs" id="1_a6wro"]
|
[ext_resource type="Script" path="res://src/enemy/Enemy.cs" id="1_a6wro"]
|
||||||
[ext_resource type="Script" path="res://src/enemy/EnemyStatResource.cs" id="2_x4pjh"]
|
[ext_resource type="Script" path="res://src/enemy/EnemyStatResource.cs" id="2_x4pjh"]
|
||||||
[ext_resource type="Script" path="res://src/hitbox/Hitbox.cs" id="3_aiftp"]
|
[ext_resource type="PackedScene" uid="uid://bjg8wyvp8q6oc" path="res://src/enemy/enemy_types/michael/MichaelModelView.tscn" id="3_wrps7"]
|
||||||
[ext_resource type="Texture2D" uid="uid://clpqh2pyqljkn" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (1).png" id="4_7kurm"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b0dec8ak2bo5t" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (2).png" id="5_1a1hr"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://tnmyksd68vmv" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (3).png" id="6_p47tl"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://duwipvc2kl6xa" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (4).png" id="7_efmib"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dcd4v7jjxr8x2" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (5).png" id="8_ujyav"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bxq0f45xooiqr" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (6).png" id="9_hft6g"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bw8vkfmtcu5g0" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (7).png" id="10_idqta"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://gbit1q52jmqj" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (8).png" id="11_q3ktd"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://c41kok75k64ej" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (9).png" id="12_uvwho"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dhiv7v5yhswom" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (10).png" id="13_jtb3t"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dex3f0i2ubpj" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (11).png" id="14_v7ka5"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://d0hdrusbvmkec" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (12).png" id="15_hayam"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://ocftoaoswly6" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (13).png" id="16_lbciq"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bkf1xqquqgjjq" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (14).png" id="17_veqcb"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dtpxfmxxov8q5" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (15).png" id="18_h8egq"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dv7ol6gqs1ijb" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (16).png" id="19_a4qa5"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cydgp2acfm14k" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (17).png" id="20_oorfu"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://e2hjjnjqpmp7" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (18).png" id="21_n7px3"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dpptqse5mh1ko" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (19).png" id="22_n70k4"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b8g604p1a2ljl" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (20).png" id="23_qcoa4"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://ddfq7tecw83fx" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (21).png" id="24_f7cjx"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://btrf3scsac37s" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (22).png" id="25_qpubw"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dmypmwghesupr" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (23).png" id="26_n0ais"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bvu44f4fitum4" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (1).png" id="27_uib7b"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://blf4gmnjt20y3" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (2).png" id="28_jg00w"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cul5jw68t1b3y" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (3).png" id="29_mqu6a"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bwklw2qs8ufon" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (4).png" id="30_ry5jb"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dhh2rs4s844nk" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (5).png" id="31_2g8kb"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dxjc5xyh51tnn" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (6).png" id="32_m1dac"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://8oafxlrdhplr" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (7).png" id="33_kfyq1"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://civrqoexjyvm7" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (8).png" id="34_h6mq5"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://diadkmfrm56h0" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (9).png" id="35_mlsep"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dhljaesglhg2y" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (10).png" id="36_54yk5"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://7k0l056mju3w" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (11).png" id="37_5aaoh"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cfmq8b3kw5wh3" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (12).png" id="38_oyy4x"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dus64avhcu6d7" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (13).png" id="39_25inv"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://4gx00xgaupf5" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (14).png" id="40_nuosk"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://27cawg74fw6" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (15).png" id="41_bc0t3"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://wwqv33fco246" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (16).png" id="42_ornx6"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dnub88o6vcla" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (17).png" id="43_l4fbt"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://2qe16sypi6hn" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (18).png" id="44_1nh2b"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://c3qeyxovf28nj" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (19).png" id="45_oda4m"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cqhy68310vab8" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (20).png" id="46_od0c8"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://c8733bu8i3eaf" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (21).png" id="47_ce5i7"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://hpsbpgrphbii" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (22).png" id="48_f62td"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bcynrwxieuq0" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (23).png" id="49_5vb8v"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://y4tp8m3dcfw7" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (1).png" id="50_doj3b"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://c7cvmoa8lhrvi" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (2).png" id="51_3v356"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b4nyonn3b4xof" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (3).png" id="52_xb1vo"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://ce7pw41xbkcvc" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (4).png" id="53_icnc1"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://nt64es5vcys0" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (5).png" id="54_5isob"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b4bljbfm1ka7b" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (6).png" id="55_vjhm7"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://c8y604q1oewjf" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (7).png" id="56_hkxac"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dx8105gg3sg2j" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (8).png" id="57_a587j"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://d0xsacm4b3iu7" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (9).png" id="58_w3j1s"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://juj86cge7rwy" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (10).png" id="59_uxmwh"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b3h4s6223r2vq" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (11).png" id="60_b1x6b"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dqleuddk7hacs" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (12).png" id="61_6jdsb"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dj1gi4clmp25d" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (13).png" id="62_g67yy"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cjkeeqx8hgars" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (14).png" id="63_nwvwy"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cr0anqdsluigu" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (15).png" id="64_j2a2k"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bp1jcbuamvnfr" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (16).png" id="65_yl8j2"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://k17pedht8d3k" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (17).png" id="66_v1ewt"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dpbcbr11h5ax6" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (18).png" id="67_imbdg"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://d32qheseggy67" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (19).png" id="68_l685l"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://byqihscem8bk3" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (20).png" id="69_05v5q"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://vxphbifafq0q" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (21).png" id="70_mo3hn"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://7r30bjydumon" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (22).png" id="71_m1srp"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://djspx2smexhme" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (23).png" id="72_6s3ro"]
|
|
||||||
|
|
||||||
[sub_resource type="Resource" id="Resource_k2g1o"]
|
[sub_resource type="Resource" id="Resource_k2g1o"]
|
||||||
script = ExtResource("2_x4pjh")
|
script = ExtResource("2_x4pjh")
|
||||||
@@ -98,484 +29,9 @@ DropsSoulGemChance = 0.75
|
|||||||
height = 5.0
|
height = 5.0
|
||||||
radius = 1.0
|
radius = 1.0
|
||||||
|
|
||||||
[sub_resource type="BoxShape3D" id="BoxShape3D_0yire"]
|
|
||||||
size = Vector3(1, 0.565, 2)
|
|
||||||
|
|
||||||
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_0h5s2"]
|
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_0h5s2"]
|
||||||
radius = 0.193181
|
radius = 0.193181
|
||||||
|
|
||||||
[sub_resource type="ViewportTexture" id="ViewportTexture_57rcc"]
|
|
||||||
viewport_path = NodePath("Sprite/SubViewport")
|
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_1fhn0"]
|
|
||||||
|
|
||||||
[sub_resource type="SpriteFrames" id="SpriteFrames_artt5"]
|
|
||||||
animations = [{
|
|
||||||
"frames": [{
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("4_7kurm")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("5_1a1hr")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("6_p47tl")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("7_efmib")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("8_ujyav")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("9_hft6g")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("10_idqta")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("11_q3ktd")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("12_uvwho")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("13_jtb3t")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("14_v7ka5")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("15_hayam")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("16_lbciq")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("17_veqcb")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("18_h8egq")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("19_a4qa5")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("20_oorfu")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("21_n7px3")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("22_n70k4")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("23_qcoa4")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("24_f7cjx")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("25_qpubw")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("26_n0ais")
|
|
||||||
}],
|
|
||||||
"loop": true,
|
|
||||||
"name": &"idle_back_walk",
|
|
||||||
"speed": 12.0
|
|
||||||
}, {
|
|
||||||
"frames": [{
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("27_uib7b")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("28_jg00w")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("29_mqu6a")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("30_ry5jb")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("31_2g8kb")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("32_m1dac")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("33_kfyq1")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("34_h6mq5")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("35_mlsep")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("36_54yk5")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("37_5aaoh")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("38_oyy4x")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("39_25inv")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("40_nuosk")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("41_bc0t3")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("42_ornx6")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("43_l4fbt")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("44_1nh2b")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("45_oda4m")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("46_od0c8")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("47_ce5i7")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("48_f62td")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("49_5vb8v")
|
|
||||||
}],
|
|
||||||
"loop": true,
|
|
||||||
"name": &"idle_front_walk",
|
|
||||||
"speed": 12.0
|
|
||||||
}, {
|
|
||||||
"frames": [{
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("50_doj3b")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("51_3v356")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("52_xb1vo")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("53_icnc1")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("54_5isob")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("55_vjhm7")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("56_hkxac")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("57_a587j")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("58_w3j1s")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("59_uxmwh")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("60_b1x6b")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("61_6jdsb")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("62_g67yy")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("63_nwvwy")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("64_j2a2k")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("65_yl8j2")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("66_v1ewt")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("67_imbdg")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("68_l685l")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("69_05v5q")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("70_mo3hn")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("71_m1srp")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("72_6s3ro")
|
|
||||||
}],
|
|
||||||
"loop": true,
|
|
||||||
"name": &"idle_left_walk",
|
|
||||||
"speed": 12.0
|
|
||||||
}]
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_41ppy"]
|
|
||||||
length = 0.001
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Sprite/SubViewport/AnimatedSprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/path = NodePath("Sprite/SubViewport/AnimatedSprite:animation")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [&"idle_back_walk"]
|
|
||||||
}
|
|
||||||
tracks/2/type = "value"
|
|
||||||
tracks/2/imported = false
|
|
||||||
tracks/2/enabled = true
|
|
||||||
tracks/2/path = NodePath("Hitbox/CollisionShape3D:disabled")
|
|
||||||
tracks/2/interp = 1
|
|
||||||
tracks/2/loop_wrap = true
|
|
||||||
tracks/2/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [true]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_0k3e8"]
|
|
||||||
resource_name = "attack"
|
|
||||||
length = 0.416668
|
|
||||||
step = 0.0166667
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Sprite/SubViewport/AnimatedSprite:animation")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [&"idle_front_walk"]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/path = NodePath("Sprite/SubViewport/AnimatedSprite:frame")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.0166667, 0.0333333, 0.05, 0.0666667, 0.0833333, 0.1, 0.116667, 0.133333, 0.15, 0.166667, 0.183333, 0.2, 0.216667, 0.233333, 0.283333, 0.3, 0.316667, 0.333333, 0.35, 0.366667, 0.383333, 0.4),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
|
|
||||||
}
|
|
||||||
tracks/2/type = "value"
|
|
||||||
tracks/2/imported = false
|
|
||||||
tracks/2/enabled = true
|
|
||||||
tracks/2/path = NodePath("Hitbox/CollisionShape3D:disabled")
|
|
||||||
tracks/2/interp = 1
|
|
||||||
tracks/2/loop_wrap = true
|
|
||||||
tracks/2/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.0333333, 0.3),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [true, false, true]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_ppbeh"]
|
|
||||||
resource_name = "idle_back_walk"
|
|
||||||
length = 1.91667
|
|
||||||
loop_mode = 1
|
|
||||||
step = 0.0833333
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Sprite/SubViewport/AnimatedSprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75, 0.833333, 0.916666, 1, 1.08333, 1.16667, 1.25, 1.33333, 1.41667, 1.5, 1.58333, 1.66667, 1.75, 1.83333),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/path = NodePath("Sprite/SubViewport/AnimatedSprite:animation")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [&"idle_back_walk"]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_3dffb"]
|
|
||||||
resource_name = "idle_front_walk"
|
|
||||||
length = 1.91667
|
|
||||||
loop_mode = 1
|
|
||||||
step = 0.0833333
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Sprite/SubViewport/AnimatedSprite:animation")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [&"idle_front_walk"]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/path = NodePath("Sprite/SubViewport/AnimatedSprite:frame")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75, 0.833333, 0.916666, 1, 1.08333, 1.16667, 1.25, 1.33333, 1.41667, 1.5, 1.58333, 1.66667, 1.75, 1.83333),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_0qxqf"]
|
|
||||||
resource_name = "idle_left_walk"
|
|
||||||
length = 1.91667
|
|
||||||
loop_mode = 1
|
|
||||||
step = 0.0833333
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Sprite/SubViewport/AnimatedSprite:animation")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [&"idle_left_walk"]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/path = NodePath("Sprite/SubViewport/AnimatedSprite:frame")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75, 0.833333, 0.916666, 1, 1.08333, 1.16667, 1.25, 1.33333, 1.41667, 1.5, 1.58333, 1.66667, 1.75, 1.83333),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_346xs"]
|
|
||||||
_data = {
|
|
||||||
&"RESET": SubResource("Animation_41ppy"),
|
|
||||||
&"attack": SubResource("Animation_0k3e8"),
|
|
||||||
&"idle_back_walk": SubResource("Animation_ppbeh"),
|
|
||||||
&"idle_front_walk": SubResource("Animation_3dffb"),
|
|
||||||
&"idle_left_walk": SubResource("Animation_0qxqf")
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_erbrx"]
|
|
||||||
animation = &"attack"
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_o0tmb"]
|
|
||||||
animation = &"idle_back_walk"
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_a6s5c"]
|
|
||||||
animation = &"idle_front_walk"
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_dvj10"]
|
|
||||||
animation = &"idle_left_walk"
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_vljb2"]
|
|
||||||
advance_mode = 2
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_3xv6a"]
|
|
||||||
switch_mode = 1
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0h1op"]
|
|
||||||
switch_mode = 1
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_361b7"]
|
|
||||||
switch_mode = 1
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_wftla"]
|
|
||||||
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_4t05h"]
|
|
||||||
|
|
||||||
[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="AnimationNodeStateMachine" id="AnimationNodeStateMachine_7gios"]
|
|
||||||
states/End/position = Vector2(1464, 100)
|
|
||||||
states/attack/node = SubResource("AnimationNodeAnimation_erbrx")
|
|
||||||
states/attack/position = Vector2(1151, 86.9474)
|
|
||||||
states/idle_back_walk/node = SubResource("AnimationNodeAnimation_o0tmb")
|
|
||||||
states/idle_back_walk/position = Vector2(490, 92.9474)
|
|
||||||
states/idle_front_walk/node = SubResource("AnimationNodeAnimation_a6s5c")
|
|
||||||
states/idle_front_walk/position = Vector2(331, -12)
|
|
||||||
states/idle_left_walk/node = SubResource("AnimationNodeAnimation_dvj10")
|
|
||||||
states/idle_left_walk/position = Vector2(331, 196.947)
|
|
||||||
transitions = ["Start", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_vljb2"), "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", "attack", SubResource("AnimationNodeStateMachineTransition_4t05h"), "attack", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_8hgxu"), "attack", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_fq2yw"), "attack", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_yqm0k"), "idle_back_walk", "attack", SubResource("AnimationNodeStateMachineTransition_bmy1k"), "idle_left_walk", "attack", SubResource("AnimationNodeStateMachineTransition_mxl7w")]
|
|
||||||
graph_offset = Vector2(-190, -62.0526)
|
|
||||||
|
|
||||||
[node name="Michael" type="RigidBody3D"]
|
[node name="Michael" type="RigidBody3D"]
|
||||||
process_mode = 1
|
process_mode = 1
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
|
||||||
@@ -606,18 +62,6 @@ unique_name_in_owner = true
|
|||||||
wait_time = 1.8
|
wait_time = 1.8
|
||||||
autostart = true
|
autostart = true
|
||||||
|
|
||||||
[node name="Hitbox" type="Area3D" parent="."]
|
|
||||||
unique_name_in_owner = true
|
|
||||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.152949, 0, 0)
|
|
||||||
collision_layer = 64
|
|
||||||
collision_mask = 64
|
|
||||||
script = ExtResource("3_aiftp")
|
|
||||||
|
|
||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Hitbox"]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.189337, 0.217529, -1.29986)
|
|
||||||
shape = SubResource("BoxShape3D_0yire")
|
|
||||||
disabled = true
|
|
||||||
|
|
||||||
[node name="Raycast" type="RayCast3D" parent="."]
|
[node name="Raycast" type="RayCast3D" parent="."]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0)
|
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0)
|
||||||
@@ -634,39 +78,5 @@ avoidance_enabled = true
|
|||||||
debug_enabled = true
|
debug_enabled = true
|
||||||
debug_path_custom_color = Color(1, 0, 0, 1)
|
debug_path_custom_color = Color(1, 0, 0, 1)
|
||||||
|
|
||||||
[node name="Sprite" type="Sprite3D" parent="."]
|
[node name="EnemyModelView" parent="." instance=ExtResource("3_wrps7")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.209741, 0)
|
|
||||||
billboard = 2
|
|
||||||
shaded = true
|
|
||||||
double_sided = false
|
|
||||||
texture_filter = 0
|
|
||||||
render_priority = 100
|
|
||||||
texture = SubResource("ViewportTexture_57rcc")
|
|
||||||
|
|
||||||
[node name="SubViewport" type="SubViewport" parent="Sprite"]
|
|
||||||
disable_3d = true
|
|
||||||
transparent_bg = true
|
|
||||||
handle_input_locally = false
|
|
||||||
size = Vector2i(200, 200)
|
|
||||||
|
|
||||||
[node name="AnimatedSprite" type="AnimatedSprite2D" parent="Sprite/SubViewport"]
|
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
texture_filter = 1
|
|
||||||
texture_repeat = 1
|
|
||||||
material = SubResource("ShaderMaterial_1fhn0")
|
|
||||||
position = Vector2(45, 45)
|
|
||||||
sprite_frames = SubResource("SpriteFrames_artt5")
|
|
||||||
animation = &"idle_back_walk"
|
|
||||||
offset = Vector2(45, 45)
|
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
|
||||||
unique_name_in_owner = true
|
|
||||||
libraries = {
|
|
||||||
&"": SubResource("AnimationLibrary_346xs")
|
|
||||||
}
|
|
||||||
|
|
||||||
[node name="AnimationTree" type="AnimationTree" parent="."]
|
|
||||||
unique_name_in_owner = true
|
|
||||||
root_node = NodePath("%AnimationTree/..")
|
|
||||||
tree_root = SubResource("AnimationNodeStateMachine_7gios")
|
|
||||||
anim_player = NodePath("../AnimationPlayer")
|
|
||||||
|
|||||||
600
src/enemy/enemy_types/michael/MichaelModelView.tscn
Normal file
600
src/enemy/enemy_types/michael/MichaelModelView.tscn
Normal file
@@ -0,0 +1,600 @@
|
|||||||
|
[gd_scene load_steps=100 format=3 uid="uid://bjg8wyvp8q6oc"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" path="res://src/enemy/EnemyModelView.cs" id="1_iajg3"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://clpqh2pyqljkn" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (1).png" id="2_3g180"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b0dec8ak2bo5t" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (2).png" id="3_fssmb"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://tnmyksd68vmv" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (3).png" id="4_oy7vk"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://duwipvc2kl6xa" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (4).png" id="5_7jsk6"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dcd4v7jjxr8x2" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (5).png" id="6_nntdb"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bxq0f45xooiqr" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (6).png" id="7_1br6i"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bw8vkfmtcu5g0" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (7).png" id="8_2m7tq"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://gbit1q52jmqj" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (8).png" id="9_d2pq5"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c41kok75k64ej" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (9).png" id="10_p18ld"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dhiv7v5yhswom" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (10).png" id="11_8kbdd"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dex3f0i2ubpj" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (11).png" id="12_nb2qv"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://d0hdrusbvmkec" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (12).png" id="13_nqbx0"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://ocftoaoswly6" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (13).png" id="14_4depw"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bkf1xqquqgjjq" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (14).png" id="15_fegyx"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dtpxfmxxov8q5" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (15).png" id="16_eh46c"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dv7ol6gqs1ijb" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (16).png" id="17_dgujy"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cydgp2acfm14k" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (17).png" id="18_6ogef"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://e2hjjnjqpmp7" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (18).png" id="19_cvhi5"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dpptqse5mh1ko" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (19).png" id="20_e3x3h"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b8g604p1a2ljl" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (20).png" id="21_mqikf"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://ddfq7tecw83fx" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (21).png" id="22_ide2k"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://btrf3scsac37s" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (22).png" id="23_114qx"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dmypmwghesupr" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/BACK/Michael_Walk_Idle_Back (23).png" id="24_smnr6"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bvu44f4fitum4" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (1).png" id="25_g6ih4"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://blf4gmnjt20y3" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (2).png" id="26_odtr7"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cul5jw68t1b3y" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (3).png" id="27_off5l"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bwklw2qs8ufon" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (4).png" id="28_4vcrr"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dhh2rs4s844nk" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (5).png" id="29_4n14r"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dxjc5xyh51tnn" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (6).png" id="30_6n05b"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://8oafxlrdhplr" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (7).png" id="31_o6i18"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://civrqoexjyvm7" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (8).png" id="32_eal36"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://diadkmfrm56h0" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (9).png" id="33_15p38"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dhljaesglhg2y" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (10).png" id="34_6qpwn"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://7k0l056mju3w" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (11).png" id="35_8p80p"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cfmq8b3kw5wh3" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (12).png" id="36_oitci"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dus64avhcu6d7" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (13).png" id="37_phxge"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://4gx00xgaupf5" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (14).png" id="38_6oh2p"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://27cawg74fw6" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (15).png" id="39_wt3ea"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://wwqv33fco246" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (16).png" id="40_ljwat"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dnub88o6vcla" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (17).png" id="41_06o5y"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://2qe16sypi6hn" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (18).png" id="42_uwgce"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c3qeyxovf28nj" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (19).png" id="43_akt6o"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cqhy68310vab8" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (20).png" id="44_t12tj"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c8733bu8i3eaf" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (21).png" id="45_4y5r2"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://hpsbpgrphbii" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (22).png" id="46_yewg2"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bcynrwxieuq0" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/FRONT/Michael_Front_ Walk_Idle (23).png" id="47_3si56"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://y4tp8m3dcfw7" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (1).png" id="48_ggkw2"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c7cvmoa8lhrvi" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (2).png" id="49_hyjj2"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b4nyonn3b4xof" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (3).png" id="50_qbeo5"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://ce7pw41xbkcvc" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (4).png" id="51_7dc4b"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://nt64es5vcys0" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (5).png" id="52_1trpe"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b4bljbfm1ka7b" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (6).png" id="53_c6kqk"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c8y604q1oewjf" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (7).png" id="54_3mcds"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dx8105gg3sg2j" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (8).png" id="55_dn7am"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://d0xsacm4b3iu7" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (9).png" id="56_lq65c"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://juj86cge7rwy" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (10).png" id="57_tcch6"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b3h4s6223r2vq" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (11).png" id="58_y7io6"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dqleuddk7hacs" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (12).png" id="59_jvp5u"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dj1gi4clmp25d" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (13).png" id="60_jt1d1"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cjkeeqx8hgars" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (14).png" id="61_o6ox2"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cr0anqdsluigu" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (15).png" id="62_vld7d"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bp1jcbuamvnfr" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (16).png" id="63_bv0fo"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://k17pedht8d3k" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (17).png" id="64_4r2e5"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dpbcbr11h5ax6" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (18).png" id="65_d3oih"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://d32qheseggy67" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (19).png" id="66_iqbfc"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://byqihscem8bk3" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (20).png" id="67_o1iel"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://vxphbifafq0q" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (21).png" id="68_msiau"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://7r30bjydumon" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (22).png" id="69_lec8c"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://djspx2smexhme" path="res://src/enemy/enemy_types/michael/animations/IDLE_WALK/LEFT SIDE/Michael_IdleWalk_Left (23).png" id="70_f0jo7"]
|
||||||
|
[ext_resource type="Script" path="res://src/hitbox/Hitbox.cs" id="71_ul4dn"]
|
||||||
|
|
||||||
|
[sub_resource type="ViewportTexture" id="ViewportTexture_v7t0v"]
|
||||||
|
viewport_path = NodePath("Sprite/SubViewport")
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_wey7h"]
|
||||||
|
|
||||||
|
[sub_resource type="SpriteFrames" id="SpriteFrames_v4v5p"]
|
||||||
|
animations = [{
|
||||||
|
"frames": [{
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("2_3g180")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("3_fssmb")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("4_oy7vk")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("5_7jsk6")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("6_nntdb")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("7_1br6i")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("8_2m7tq")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("9_d2pq5")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("10_p18ld")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("11_8kbdd")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("12_nb2qv")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("13_nqbx0")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("14_4depw")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("15_fegyx")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("16_eh46c")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("17_dgujy")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("18_6ogef")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("19_cvhi5")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("20_e3x3h")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("21_mqikf")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("22_ide2k")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("23_114qx")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("24_smnr6")
|
||||||
|
}],
|
||||||
|
"loop": true,
|
||||||
|
"name": &"idle_back_walk",
|
||||||
|
"speed": 12.0
|
||||||
|
}, {
|
||||||
|
"frames": [{
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("25_g6ih4")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("26_odtr7")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("27_off5l")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("28_4vcrr")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("29_4n14r")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("30_6n05b")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("31_o6i18")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("32_eal36")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("33_15p38")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("34_6qpwn")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("35_8p80p")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("36_oitci")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("37_phxge")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("38_6oh2p")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("39_wt3ea")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("40_ljwat")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("41_06o5y")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("42_uwgce")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("43_akt6o")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("44_t12tj")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("45_4y5r2")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("46_yewg2")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("47_3si56")
|
||||||
|
}],
|
||||||
|
"loop": true,
|
||||||
|
"name": &"idle_front_walk",
|
||||||
|
"speed": 12.0
|
||||||
|
}, {
|
||||||
|
"frames": [{
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("48_ggkw2")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("49_hyjj2")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("50_qbeo5")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("51_7dc4b")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("52_1trpe")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("53_c6kqk")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("54_3mcds")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("55_dn7am")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("56_lq65c")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("57_tcch6")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("58_y7io6")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("59_jvp5u")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("60_jt1d1")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("61_o6ox2")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("62_vld7d")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("63_bv0fo")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("64_4r2e5")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("65_d3oih")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("66_iqbfc")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("67_o1iel")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("68_msiau")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("69_lec8c")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("70_f0jo7")
|
||||||
|
}],
|
||||||
|
"loop": true,
|
||||||
|
"name": &"idle_left_walk",
|
||||||
|
"speed": 12.0
|
||||||
|
}]
|
||||||
|
|
||||||
|
[sub_resource type="BoxShape3D" id="BoxShape3D_1o50e"]
|
||||||
|
size = Vector3(1, 0.565, 2)
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_41ppy"]
|
||||||
|
length = 0.001
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Hitbox/CollisionShape3D:disabled")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [true]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("Sprite/SubViewport/AnimatedSprite:frame")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [0]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/imported = false
|
||||||
|
tracks/2/enabled = true
|
||||||
|
tracks/2/path = NodePath("Sprite/SubViewport/AnimatedSprite:animation")
|
||||||
|
tracks/2/interp = 1
|
||||||
|
tracks/2/loop_wrap = true
|
||||||
|
tracks/2/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [&"idle_front_walk"]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_0k3e8"]
|
||||||
|
resource_name = "attack"
|
||||||
|
length = 0.416668
|
||||||
|
step = 0.0166667
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Hitbox/CollisionShape3D:disabled")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.0333333, 0.3),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [true, false, true]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("Sprite/SubViewport/AnimatedSprite:animation")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [&"idle_front_walk"]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/imported = false
|
||||||
|
tracks/2/enabled = true
|
||||||
|
tracks/2/path = NodePath("Sprite/SubViewport/AnimatedSprite:frame")
|
||||||
|
tracks/2/interp = 1
|
||||||
|
tracks/2/loop_wrap = true
|
||||||
|
tracks/2/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.0166667, 0.0333334, 0.0500001, 0.0666668, 0.0833335, 0.1, 0.116667, 0.133334, 0.15, 0.166667, 0.183334, 0.2, 0.216667, 0.233334, 0.25, 0.266667, 0.283334, 0.300001, 0.316667, 0.333334, 0.350001, 0.366667),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_ppbeh"]
|
||||||
|
resource_name = "idle_back_walk"
|
||||||
|
length = 1.91667
|
||||||
|
loop_mode = 1
|
||||||
|
step = 0.0833333
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Sprite/SubViewport/AnimatedSprite:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75, 0.833333, 0.916666, 1, 1.08333, 1.16667, 1.25, 1.33333, 1.41667, 1.5, 1.58333, 1.66667, 1.75, 1.83333),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("Sprite/SubViewport/AnimatedSprite:animation")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [&"idle_back_walk"]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_3dffb"]
|
||||||
|
resource_name = "idle_front_walk"
|
||||||
|
length = 1.91667
|
||||||
|
loop_mode = 1
|
||||||
|
step = 0.0833333
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Sprite/SubViewport/AnimatedSprite:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75, 0.833333, 0.916666, 1, 1.08333, 1.16667, 1.25, 1.33333, 1.41667, 1.5, 1.58333, 1.66667, 1.75, 1.8333),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("Sprite/SubViewport/AnimatedSprite:animation")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [&"idle_front_walk"]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_0qxqf"]
|
||||||
|
resource_name = "idle_left_walk"
|
||||||
|
length = 1.91667
|
||||||
|
loop_mode = 1
|
||||||
|
step = 0.0833333
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Sprite/SubViewport/AnimatedSprite:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75, 0.833333, 0.916666, 1, 1.08333, 1.16667, 1.25, 1.33333, 1.41667, 1.5, 1.58333, 1.66667, 1.75, 1.83333),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("Sprite/SubViewport/AnimatedSprite:animation")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [&"idle_left_walk"]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_346xs"]
|
||||||
|
_data = {
|
||||||
|
&"RESET": SubResource("Animation_41ppy"),
|
||||||
|
&"attack": SubResource("Animation_0k3e8"),
|
||||||
|
&"idle_back_walk": SubResource("Animation_ppbeh"),
|
||||||
|
&"idle_front_walk": SubResource("Animation_3dffb"),
|
||||||
|
&"idle_left_walk": SubResource("Animation_0qxqf")
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_erbrx"]
|
||||||
|
animation = &"attack"
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_o0tmb"]
|
||||||
|
animation = &"idle_back_walk"
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_a6s5c"]
|
||||||
|
animation = &"idle_front_walk"
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_dvj10"]
|
||||||
|
animation = &"idle_left_walk"
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_vljb2"]
|
||||||
|
advance_mode = 2
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_3xv6a"]
|
||||||
|
switch_mode = 1
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0h1op"]
|
||||||
|
switch_mode = 1
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_361b7"]
|
||||||
|
switch_mode = 1
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_wftla"]
|
||||||
|
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_4t05h"]
|
||||||
|
|
||||||
|
[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="AnimationNodeStateMachine" id="AnimationNodeStateMachine_r23qr"]
|
||||||
|
states/End/position = Vector2(1464, 100)
|
||||||
|
states/attack/node = SubResource("AnimationNodeAnimation_erbrx")
|
||||||
|
states/attack/position = Vector2(1151, 86.9474)
|
||||||
|
states/idle_back_walk/node = SubResource("AnimationNodeAnimation_o0tmb")
|
||||||
|
states/idle_back_walk/position = Vector2(490, 92.9474)
|
||||||
|
states/idle_front_walk/node = SubResource("AnimationNodeAnimation_a6s5c")
|
||||||
|
states/idle_front_walk/position = Vector2(331, -12)
|
||||||
|
states/idle_left_walk/node = SubResource("AnimationNodeAnimation_dvj10")
|
||||||
|
states/idle_left_walk/position = Vector2(331, 196.947)
|
||||||
|
transitions = ["Start", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_vljb2"), "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", "attack", SubResource("AnimationNodeStateMachineTransition_4t05h"), "attack", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_8hgxu"), "attack", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_fq2yw"), "attack", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_yqm0k"), "idle_back_walk", "attack", SubResource("AnimationNodeStateMachineTransition_bmy1k"), "idle_left_walk", "attack", SubResource("AnimationNodeStateMachineTransition_mxl7w")]
|
||||||
|
graph_offset = Vector2(-190, -62.0526)
|
||||||
|
|
||||||
|
[node name="EnemyModelView" type="Node3D"]
|
||||||
|
script = ExtResource("1_iajg3")
|
||||||
|
|
||||||
|
[node name="Sprite" type="Sprite3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.209741, 0)
|
||||||
|
billboard = 2
|
||||||
|
shaded = true
|
||||||
|
double_sided = false
|
||||||
|
texture_filter = 0
|
||||||
|
render_priority = 100
|
||||||
|
texture = SubResource("ViewportTexture_v7t0v")
|
||||||
|
|
||||||
|
[node name="SubViewport" type="SubViewport" parent="Sprite"]
|
||||||
|
disable_3d = true
|
||||||
|
transparent_bg = true
|
||||||
|
handle_input_locally = false
|
||||||
|
size = Vector2i(200, 200)
|
||||||
|
|
||||||
|
[node name="AnimatedSprite" type="AnimatedSprite2D" parent="Sprite/SubViewport"]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
texture_filter = 1
|
||||||
|
texture_repeat = 1
|
||||||
|
material = SubResource("ShaderMaterial_wey7h")
|
||||||
|
position = Vector2(45, 45)
|
||||||
|
sprite_frames = SubResource("SpriteFrames_v4v5p")
|
||||||
|
animation = &"idle_front_walk"
|
||||||
|
offset = Vector2(45, 45)
|
||||||
|
|
||||||
|
[node name="Hitbox" type="Area3D" parent="."]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.152949, 0, 0)
|
||||||
|
collision_layer = 64
|
||||||
|
collision_mask = 64
|
||||||
|
script = ExtResource("71_ul4dn")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="Hitbox"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.189337, 0.217529, -1.29986)
|
||||||
|
shape = SubResource("BoxShape3D_1o50e")
|
||||||
|
disabled = true
|
||||||
|
|
||||||
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
libraries = {
|
||||||
|
&"": SubResource("AnimationLibrary_346xs")
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="AnimationTree" type="AnimationTree" parent="."]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
root_node = NodePath("%AnimationTree/..")
|
||||||
|
tree_root = SubResource("AnimationNodeStateMachine_r23qr")
|
||||||
|
anim_player = NodePath("../AnimationPlayer")
|
||||||
@@ -1,63 +1,8 @@
|
|||||||
[gd_scene load_steps=89 format=3 uid="uid://bksq62muhk3h5"]
|
[gd_scene load_steps=7 format=3 uid="uid://bksq62muhk3h5"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://src/enemy/Enemy.cs" id="1_7tinp"]
|
[ext_resource type="Script" path="res://src/enemy/Enemy.cs" id="1_7tinp"]
|
||||||
[ext_resource type="Script" path="res://src/enemy/EnemyStatResource.cs" id="2_j3knd"]
|
[ext_resource type="Script" path="res://src/enemy/EnemyStatResource.cs" id="2_j3knd"]
|
||||||
[ext_resource type="Script" path="res://src/hitbox/Hitbox.cs" id="3_usw2d"]
|
[ext_resource type="PackedScene" uid="uid://bli0t0d6ommvi" path="res://src/enemy/enemy_types/sproingy/SproingyModelView.tscn" id="4_o3b7p"]
|
||||||
[ext_resource type="Texture2D" uid="uid://b8ntr7hh6rr5h" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 1.png" id="14_xn75i"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://csgthlou2tnvb" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 2.png" id="15_rgyxs"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cfyxuk85350gn" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 3.png" id="16_nr3ob"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dufdb5gc0gfkr" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 4.png" id="17_mm5kb"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://buu4btd3adrr4" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 5.png" id="18_0cern"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://ddgctjau0dnmh" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 6.png" id="19_15v02"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://2jwaacvarrha" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 7.png" id="20_0hgl8"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://8837jm7f78uo" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 8.png" id="21_rvvf2"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://devt1gmwduo5h" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 9.png" id="22_xxycn"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cj3m4eyagiye6" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 10.png" id="23_qbfft"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cyigr4eip1mxt" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 11.png" id="24_vtxk7"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://kavqjxq17m0p" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 12.png" id="25_2dtvy"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bcce7b4wp6a4v" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 13.png" id="26_eqc8g"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://doiu8sug4t8ki" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 14.png" id="27_vcsgh"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dqymhvgu03xpl" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 15.png" id="28_p3lwg"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cjk1vjjk3gnjl" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 1.png" id="29_pis7y"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://1nv7dlxcqlia" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 2.png" id="30_ya2eh"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bniq2b1phbjk5" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 3.png" id="31_c7dk6"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://ba846rlx4phr2" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 4.png" id="32_x7w8s"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b76dai3g8nh2a" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 5.png" id="33_jc4ir"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://wqec5p5xahew" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 6.png" id="34_6cr7b"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://sl7fel3muw2y" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 7.png" id="35_kkljc"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cucixinggd5s2" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 8.png" id="36_ccsfk"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://ccn6vymd07kd2" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 9.png" id="37_10o16"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b7jqturu5jm2c" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 10.png" id="38_781ty"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://c1m065dts364p" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 11.png" id="39_xpomj"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://qsm43ovrbr7m" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 12.png" id="40_layho"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bslsx7k6aa4tf" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 13.png" id="41_v4th6"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cefke0gsokfi1" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 14.png" id="42_asjr7"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://blmpd2lu84ppt" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 15.png" id="43_4n0cl"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://kwaf2jj5oyu4" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 1.png" id="44_f3var"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://ul0q834bwd6" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 2.png" id="45_vqcde"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bpohl3uqutcyb" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 3.png" id="46_rs13l"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dlbt7lj5ryl0v" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 4.png" id="47_1j2ir"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bkhn4ck7bx6tt" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 5.png" id="48_864dg"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://c8uw6qdsi1720" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 6.png" id="49_2r4d5"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dd0ia6isdqg61" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 1.png" id="50_fxgra"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cnoouhy7p3gi3" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 7.png" id="50_m33xn"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b1xldymngql00" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 8.png" id="51_68cc3"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bs4ico5ouo5d3" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 2.png" id="51_ebmer"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://btuxhmmb6ikvf" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 9.png" id="52_2xmc3"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://85ki5mc4h0vs" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 3.png" id="52_y2cis"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bwt1m2frb3r0e" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 4.png" id="53_7t81a"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dlrn3cbdubg5s" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 10.png" id="53_bgv07"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://oukshrxpgscg" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 11.png" id="54_7gaxo"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://ckssl1np6vnlu" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 5.png" id="54_xg1s7"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://buk3stdgcg44w" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 12.png" id="55_6460k"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://c4sqc6i3xcfac" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 6.png" id="55_e0qrl"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b3gndmrlrvexy" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 13.png" id="56_4pv43"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cawexe4wkosc8" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 7.png" id="56_eeb3j"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://d0j1vrx7xdnxl" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 8.png" id="57_p183w"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b1cmx8l4ia3fv" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 14.png" id="57_tbahh"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://c7t4626rox02s" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 15.png" id="58_dftc5"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://d0qhndaukki7c" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 9.png" id="58_lhas6"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cnd08q34wa7ww" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 10.png" id="59_nlkte"]
|
|
||||||
|
|
||||||
[sub_resource type="Resource" id="Resource_rxw8v"]
|
[sub_resource type="Resource" id="Resource_rxw8v"]
|
||||||
script = ExtResource("2_j3knd")
|
script = ExtResource("2_j3knd")
|
||||||
@@ -88,443 +33,6 @@ height = 2.02807
|
|||||||
height = 5.0
|
height = 5.0
|
||||||
radius = 1.0
|
radius = 1.0
|
||||||
|
|
||||||
[sub_resource type="BoxShape3D" id="BoxShape3D_0yire"]
|
|
||||||
size = Vector3(1, 0.565, 2)
|
|
||||||
|
|
||||||
[sub_resource type="ViewportTexture" id="ViewportTexture_h1kaf"]
|
|
||||||
viewport_path = NodePath("Sprite3D/SubViewport")
|
|
||||||
|
|
||||||
[sub_resource type="SpriteFrames" id="SpriteFrames_6drt6"]
|
|
||||||
resource_local_to_scene = true
|
|
||||||
animations = [{
|
|
||||||
"frames": [{
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("50_fxgra")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("51_ebmer")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("52_y2cis")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("53_7t81a")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("54_xg1s7")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("55_e0qrl")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("56_eeb3j")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("57_p183w")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("58_lhas6")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("59_nlkte")
|
|
||||||
}],
|
|
||||||
"loop": false,
|
|
||||||
"name": &"attack",
|
|
||||||
"speed": 12.0
|
|
||||||
}, {
|
|
||||||
"frames": [{
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("14_xn75i")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("15_rgyxs")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("16_nr3ob")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("17_mm5kb")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("18_0cern")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("19_15v02")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("20_0hgl8")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("21_rvvf2")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("22_xxycn")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("23_qbfft")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("24_vtxk7")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("25_2dtvy")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("26_eqc8g")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("27_vcsgh")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("28_p3lwg")
|
|
||||||
}],
|
|
||||||
"loop": true,
|
|
||||||
"name": &"idle_back_walk",
|
|
||||||
"speed": 12.0
|
|
||||||
}, {
|
|
||||||
"frames": [{
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("29_pis7y")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("30_ya2eh")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("31_c7dk6")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("32_x7w8s")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("33_jc4ir")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("34_6cr7b")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("35_kkljc")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("36_ccsfk")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("37_10o16")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("38_781ty")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("39_xpomj")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("40_layho")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("41_v4th6")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("42_asjr7")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("43_4n0cl")
|
|
||||||
}],
|
|
||||||
"loop": true,
|
|
||||||
"name": &"idle_front_walk",
|
|
||||||
"speed": 12.0
|
|
||||||
}, {
|
|
||||||
"frames": [{
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("44_f3var")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("45_vqcde")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("46_rs13l")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("47_1j2ir")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("48_864dg")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("49_2r4d5")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("50_m33xn")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("51_68cc3")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("52_2xmc3")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("53_bgv07")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("54_7gaxo")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("55_6460k")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("56_4pv43")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("57_tbahh")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": ExtResource("58_dftc5")
|
|
||||||
}],
|
|
||||||
"loop": true,
|
|
||||||
"name": &"idle_left_walk",
|
|
||||||
"speed": 12.0
|
|
||||||
}]
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_ch8ic"]
|
|
||||||
length = 0.001
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:animation")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [&"idle_left_walk"]
|
|
||||||
}
|
|
||||||
tracks/2/type = "value"
|
|
||||||
tracks/2/imported = false
|
|
||||||
tracks/2/enabled = true
|
|
||||||
tracks/2/path = NodePath("Hitbox/CollisionShape3D:disabled")
|
|
||||||
tracks/2/interp = 1
|
|
||||||
tracks/2/loop_wrap = true
|
|
||||||
tracks/2/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [true]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_ruc6s"]
|
|
||||||
resource_name = "attack"
|
|
||||||
length = 0.750008
|
|
||||||
step = 0.0833333
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:animation")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [&"attack"]
|
|
||||||
}
|
|
||||||
tracks/2/type = "value"
|
|
||||||
tracks/2/imported = false
|
|
||||||
tracks/2/enabled = true
|
|
||||||
tracks/2/path = NodePath("Hitbox/CollisionShape3D:disabled")
|
|
||||||
tracks/2/interp = 1
|
|
||||||
tracks/2/loop_wrap = true
|
|
||||||
tracks/2/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.25, 0.666666),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [true, false, true]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_1tda5"]
|
|
||||||
resource_name = "idle_back_walk"
|
|
||||||
length = 1.25001
|
|
||||||
loop_mode = 1
|
|
||||||
step = 0.0833333
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75, 0.833333, 0.916666, 1, 1.08333, 1.16667),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:animation")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [&"idle_back_walk"]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_31nry"]
|
|
||||||
resource_name = "idle_front_walk"
|
|
||||||
length = 1.25001
|
|
||||||
loop_mode = 1
|
|
||||||
step = 0.0833333
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666667, 0.75, 0.833333, 0.916667, 1, 1.08333, 1.16667),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:animation")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [&"idle_front_walk"]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_1870e"]
|
|
||||||
resource_name = "idle_left_walk"
|
|
||||||
length = 1.25001
|
|
||||||
loop_mode = 1
|
|
||||||
step = 0.0833333
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:animation")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [&"idle_left_walk"]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:frame")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75, 0.833333, 0.916666, 1, 1.08333, 1.16667),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_6tj5r"]
|
|
||||||
_data = {
|
|
||||||
&"RESET": SubResource("Animation_ch8ic"),
|
|
||||||
&"attack": SubResource("Animation_ruc6s"),
|
|
||||||
&"idle_back_walk": SubResource("Animation_1tda5"),
|
|
||||||
&"idle_front_walk": SubResource("Animation_31nry"),
|
|
||||||
&"idle_left_walk": SubResource("Animation_1870e")
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_erbrx"]
|
|
||||||
animation = &"attack"
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_o0tmb"]
|
|
||||||
animation = &"idle_back_walk"
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_a6s5c"]
|
|
||||||
animation = &"idle_front_walk"
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_dvj10"]
|
|
||||||
animation = &"idle_left_walk"
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_vljb2"]
|
|
||||||
advance_mode = 2
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_3xv6a"]
|
|
||||||
switch_mode = 1
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0h1op"]
|
|
||||||
switch_mode = 1
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_361b7"]
|
|
||||||
switch_mode = 1
|
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_wftla"]
|
|
||||||
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_4t05h"]
|
|
||||||
|
|
||||||
[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="AnimationNodeStateMachine" id="AnimationNodeStateMachine_acrfn"]
|
|
||||||
states/End/position = Vector2(1464, 100)
|
|
||||||
states/attack/node = SubResource("AnimationNodeAnimation_erbrx")
|
|
||||||
states/attack/position = Vector2(1024, 92.9474)
|
|
||||||
states/idle_back_walk/node = SubResource("AnimationNodeAnimation_o0tmb")
|
|
||||||
states/idle_back_walk/position = Vector2(491, 92.9474)
|
|
||||||
states/idle_front_walk/node = SubResource("AnimationNodeAnimation_a6s5c")
|
|
||||||
states/idle_front_walk/position = Vector2(331, -12)
|
|
||||||
states/idle_left_walk/node = SubResource("AnimationNodeAnimation_dvj10")
|
|
||||||
states/idle_left_walk/position = Vector2(331, 196.947)
|
|
||||||
transitions = ["Start", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_vljb2"), "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", "attack", SubResource("AnimationNodeStateMachineTransition_4t05h"), "attack", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_8hgxu"), "attack", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_fq2yw"), "attack", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_yqm0k"), "idle_back_walk", "attack", SubResource("AnimationNodeStateMachineTransition_bmy1k"), "idle_left_walk", "attack", SubResource("AnimationNodeStateMachineTransition_mxl7w")]
|
|
||||||
graph_offset = Vector2(-190, -62.0526)
|
|
||||||
|
|
||||||
[node name="Sproingy" type="RigidBody3D"]
|
[node name="Sproingy" type="RigidBody3D"]
|
||||||
process_mode = 1
|
process_mode = 1
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
|
||||||
@@ -570,53 +78,11 @@ unique_name_in_owner = true
|
|||||||
wait_time = 0.8
|
wait_time = 0.8
|
||||||
autostart = true
|
autostart = true
|
||||||
|
|
||||||
[node name="Hitbox" type="Area3D" parent="."]
|
|
||||||
unique_name_in_owner = true
|
|
||||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.152949, 0, 0)
|
|
||||||
collision_layer = 64
|
|
||||||
collision_mask = 64
|
|
||||||
script = ExtResource("3_usw2d")
|
|
||||||
|
|
||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Hitbox"]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.189337, 0.217529, -1.45579)
|
|
||||||
shape = SubResource("BoxShape3D_0yire")
|
|
||||||
disabled = true
|
|
||||||
|
|
||||||
[node name="Raycast" type="RayCast3D" parent="."]
|
[node name="Raycast" type="RayCast3D" parent="."]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
target_position = Vector3(0, 0, -5)
|
target_position = Vector3(0, 0, -5)
|
||||||
collision_mask = 3
|
collision_mask = 3
|
||||||
|
|
||||||
[node name="Sprite3D" type="Sprite3D" parent="."]
|
[node name="EnemyModelView" parent="." instance=ExtResource("4_o3b7p")]
|
||||||
|
unique_name_in_owner = true
|
||||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 0.0862446, 0)
|
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 0.0862446, 0)
|
||||||
billboard = 2
|
|
||||||
shaded = true
|
|
||||||
texture_filter = 0
|
|
||||||
render_priority = 100
|
|
||||||
texture = SubResource("ViewportTexture_h1kaf")
|
|
||||||
|
|
||||||
[node name="SubViewport" type="SubViewport" parent="Sprite3D"]
|
|
||||||
disable_3d = true
|
|
||||||
transparent_bg = true
|
|
||||||
handle_input_locally = false
|
|
||||||
size = Vector2i(200, 200)
|
|
||||||
render_target_update_mode = 4
|
|
||||||
|
|
||||||
[node name="AnimatedSprite" type="AnimatedSprite2D" parent="Sprite3D/SubViewport"]
|
|
||||||
unique_name_in_owner = true
|
|
||||||
texture_filter = 1
|
|
||||||
position = Vector2(100, 100)
|
|
||||||
sprite_frames = SubResource("SpriteFrames_6drt6")
|
|
||||||
animation = &"idle_left_walk"
|
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
|
||||||
unique_name_in_owner = true
|
|
||||||
libraries = {
|
|
||||||
&"": SubResource("AnimationLibrary_6tj5r")
|
|
||||||
}
|
|
||||||
|
|
||||||
[node name="AnimationTree" type="AnimationTree" parent="."]
|
|
||||||
unique_name_in_owner = true
|
|
||||||
root_node = NodePath("%AnimationTree/..")
|
|
||||||
tree_root = SubResource("AnimationNodeStateMachine_acrfn")
|
|
||||||
anim_player = NodePath("../AnimationPlayer")
|
|
||||||
|
|||||||
521
src/enemy/enemy_types/sproingy/SproingyModelView.tscn
Normal file
521
src/enemy/enemy_types/sproingy/SproingyModelView.tscn
Normal file
@@ -0,0 +1,521 @@
|
|||||||
|
[gd_scene load_steps=85 format=3 uid="uid://bli0t0d6ommvi"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" path="res://src/enemy/EnemyModelView.cs" id="1_0vbio"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dd0ia6isdqg61" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 1.png" id="1_pbx41"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bs4ico5ouo5d3" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 2.png" id="2_0vbio"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://85ki5mc4h0vs" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 3.png" id="3_lae8t"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bwt1m2frb3r0e" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 4.png" id="4_53wuj"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://ckssl1np6vnlu" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 5.png" id="5_d5bmw"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c4sqc6i3xcfac" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 6.png" id="6_fpvxl"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cawexe4wkosc8" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 7.png" id="7_qq0ru"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://d0j1vrx7xdnxl" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 8.png" id="8_c54uj"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://d0qhndaukki7c" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 9.png" id="9_qmo72"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cnd08q34wa7ww" path="res://src/enemy/enemy_types/sproingy/animations/ATTACK/Layer 10.png" id="10_jyt1n"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b8ntr7hh6rr5h" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 1.png" id="11_5un2v"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://csgthlou2tnvb" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 2.png" id="12_2x3nl"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cfyxuk85350gn" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 3.png" id="13_6a5nw"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dufdb5gc0gfkr" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 4.png" id="14_0jqty"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://buu4btd3adrr4" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 5.png" id="15_yjcrh"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://ddgctjau0dnmh" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 6.png" id="16_2ybyh"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://2jwaacvarrha" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 7.png" id="17_n454k"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://8837jm7f78uo" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 8.png" id="18_vrcjv"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://devt1gmwduo5h" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 9.png" id="19_h1yxw"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cj3m4eyagiye6" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 10.png" id="20_kg6hd"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cyigr4eip1mxt" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 11.png" id="21_25i3y"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://kavqjxq17m0p" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 12.png" id="22_5g722"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bcce7b4wp6a4v" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 13.png" id="23_a6y4x"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://doiu8sug4t8ki" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 14.png" id="24_7y7m4"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dqymhvgu03xpl" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_BACK/Layer 15.png" id="25_ldcvv"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cjk1vjjk3gnjl" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 1.png" id="26_aalmk"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://1nv7dlxcqlia" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 2.png" id="27_2le5t"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bniq2b1phbjk5" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 3.png" id="28_4nmgu"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://ba846rlx4phr2" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 4.png" id="29_mw5r6"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b76dai3g8nh2a" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 5.png" id="30_jbtxi"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://wqec5p5xahew" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 6.png" id="31_mjxlk"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://sl7fel3muw2y" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 7.png" id="32_al2xs"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cucixinggd5s2" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 8.png" id="33_afa0q"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://ccn6vymd07kd2" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 9.png" id="34_irq32"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b7jqturu5jm2c" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 10.png" id="35_2khaq"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c1m065dts364p" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 11.png" id="36_k7x0x"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://qsm43ovrbr7m" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 12.png" id="37_noc6c"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bslsx7k6aa4tf" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 13.png" id="38_tfygr"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cefke0gsokfi1" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 14.png" id="39_fpoao"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://blmpd2lu84ppt" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_FRONT/Layer 15.png" id="40_s4c8e"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://kwaf2jj5oyu4" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 1.png" id="41_d3ufd"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://ul0q834bwd6" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 2.png" id="42_ap0nr"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bpohl3uqutcyb" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 3.png" id="43_snwjc"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dlbt7lj5ryl0v" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 4.png" id="44_wba7a"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bkhn4ck7bx6tt" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 5.png" id="45_v1iqd"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c8uw6qdsi1720" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 6.png" id="46_mylxl"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cnoouhy7p3gi3" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 7.png" id="47_gg0cg"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b1xldymngql00" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 8.png" id="48_33r3i"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://btuxhmmb6ikvf" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 9.png" id="49_r4mim"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dlrn3cbdubg5s" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 10.png" id="50_r2i8l"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://oukshrxpgscg" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 11.png" id="51_xbv86"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://buk3stdgcg44w" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 12.png" id="52_rtp20"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b3gndmrlrvexy" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 13.png" id="53_nr2vc"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b1cmx8l4ia3fv" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 14.png" id="54_jdvn0"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c7t4626rox02s" path="res://src/enemy/enemy_types/sproingy/animations/IDLE_WALK_SIDE/Layer 15.png" id="55_2eqor"]
|
||||||
|
[ext_resource type="Script" path="res://src/hitbox/Hitbox.cs" id="57_lae8t"]
|
||||||
|
|
||||||
|
[sub_resource type="ViewportTexture" id="ViewportTexture_h1kaf"]
|
||||||
|
viewport_path = NodePath("Sprite3D/SubViewport")
|
||||||
|
|
||||||
|
[sub_resource type="SpriteFrames" id="SpriteFrames_6drt6"]
|
||||||
|
resource_local_to_scene = true
|
||||||
|
animations = [{
|
||||||
|
"frames": [{
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("1_pbx41")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("2_0vbio")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("3_lae8t")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("4_53wuj")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("5_d5bmw")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("6_fpvxl")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("7_qq0ru")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("8_c54uj")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("9_qmo72")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("10_jyt1n")
|
||||||
|
}],
|
||||||
|
"loop": false,
|
||||||
|
"name": &"attack",
|
||||||
|
"speed": 12.0
|
||||||
|
}, {
|
||||||
|
"frames": [{
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("11_5un2v")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("12_2x3nl")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("13_6a5nw")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("14_0jqty")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("15_yjcrh")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("16_2ybyh")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("17_n454k")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("18_vrcjv")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("19_h1yxw")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("20_kg6hd")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("21_25i3y")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("22_5g722")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("23_a6y4x")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("24_7y7m4")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("25_ldcvv")
|
||||||
|
}],
|
||||||
|
"loop": true,
|
||||||
|
"name": &"idle_back_walk",
|
||||||
|
"speed": 12.0
|
||||||
|
}, {
|
||||||
|
"frames": [{
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("26_aalmk")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("27_2le5t")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("28_4nmgu")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("29_mw5r6")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("30_jbtxi")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("31_mjxlk")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("32_al2xs")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("33_afa0q")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("34_irq32")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("35_2khaq")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("36_k7x0x")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("37_noc6c")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("38_tfygr")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("39_fpoao")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("40_s4c8e")
|
||||||
|
}],
|
||||||
|
"loop": true,
|
||||||
|
"name": &"idle_front_walk",
|
||||||
|
"speed": 12.0
|
||||||
|
}, {
|
||||||
|
"frames": [{
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("41_d3ufd")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("42_ap0nr")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("43_snwjc")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("44_wba7a")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("45_v1iqd")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("46_mylxl")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("47_gg0cg")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("48_33r3i")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("49_r4mim")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("50_r2i8l")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("51_xbv86")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("52_rtp20")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("53_nr2vc")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("54_jdvn0")
|
||||||
|
}, {
|
||||||
|
"duration": 1.0,
|
||||||
|
"texture": ExtResource("55_2eqor")
|
||||||
|
}],
|
||||||
|
"loop": true,
|
||||||
|
"name": &"idle_left_walk",
|
||||||
|
"speed": 12.0
|
||||||
|
}]
|
||||||
|
|
||||||
|
[sub_resource type="BoxShape3D" id="BoxShape3D_53wuj"]
|
||||||
|
size = Vector3(1, 0.565, 2)
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_ch8ic"]
|
||||||
|
length = 0.001
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:animation")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [&"idle_left_walk"]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:frame")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [0]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_ruc6s"]
|
||||||
|
resource_name = "attack"
|
||||||
|
length = 0.750008
|
||||||
|
step = 0.0833333
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:animation")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [&"attack"]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:frame")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_1tda5"]
|
||||||
|
resource_name = "idle_back_walk"
|
||||||
|
length = 1.25001
|
||||||
|
loop_mode = 1
|
||||||
|
step = 0.0833333
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:animation")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [&"idle_back_walk"]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:frame")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75, 0.833333, 0.916666, 1, 1.08333, 1.16667),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_31nry"]
|
||||||
|
resource_name = "idle_front_walk"
|
||||||
|
length = 1.16667
|
||||||
|
loop_mode = 1
|
||||||
|
step = 0.0833333
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:animation")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [&"idle_front_walk"]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:frame")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666667, 0.75, 0.833333, 0.916667, 1, 1.08333, 1.16667),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_1870e"]
|
||||||
|
resource_name = "idle_left_walk"
|
||||||
|
length = 1.25001
|
||||||
|
loop_mode = 1
|
||||||
|
step = 0.0833333
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.0833333, 0.166667, 0.25, 0.333333, 0.416667, 0.5, 0.583333, 0.666666, 0.75, 0.833333, 0.916666, 1, 1.08333, 1.16667),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/path = NodePath("Sprite3D/SubViewport/AnimatedSprite:animation")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [&"idle_left_walk"]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_6tj5r"]
|
||||||
|
_data = {
|
||||||
|
&"RESET": SubResource("Animation_ch8ic"),
|
||||||
|
&"attack": SubResource("Animation_ruc6s"),
|
||||||
|
&"idle_back_walk": SubResource("Animation_1tda5"),
|
||||||
|
&"idle_front_walk": SubResource("Animation_31nry"),
|
||||||
|
&"idle_left_walk": SubResource("Animation_1870e")
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_erbrx"]
|
||||||
|
animation = &"attack"
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_o0tmb"]
|
||||||
|
animation = &"idle_back_walk"
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_a6s5c"]
|
||||||
|
animation = &"idle_front_walk"
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_dvj10"]
|
||||||
|
animation = &"idle_left_walk"
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_vljb2"]
|
||||||
|
advance_mode = 2
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_3xv6a"]
|
||||||
|
switch_mode = 1
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0h1op"]
|
||||||
|
switch_mode = 1
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_361b7"]
|
||||||
|
switch_mode = 1
|
||||||
|
|
||||||
|
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_wftla"]
|
||||||
|
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_4t05h"]
|
||||||
|
|
||||||
|
[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="AnimationNodeStateMachine" id="AnimationNodeStateMachine_d5bmw"]
|
||||||
|
states/End/position = Vector2(1464, 100)
|
||||||
|
states/attack/node = SubResource("AnimationNodeAnimation_erbrx")
|
||||||
|
states/attack/position = Vector2(1024, 92.9474)
|
||||||
|
states/idle_back_walk/node = SubResource("AnimationNodeAnimation_o0tmb")
|
||||||
|
states/idle_back_walk/position = Vector2(491, 92.9474)
|
||||||
|
states/idle_front_walk/node = SubResource("AnimationNodeAnimation_a6s5c")
|
||||||
|
states/idle_front_walk/position = Vector2(331, -12)
|
||||||
|
states/idle_left_walk/node = SubResource("AnimationNodeAnimation_dvj10")
|
||||||
|
states/idle_left_walk/position = Vector2(331, 196.947)
|
||||||
|
transitions = ["Start", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_vljb2"), "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", "attack", SubResource("AnimationNodeStateMachineTransition_4t05h"), "attack", "idle_front_walk", SubResource("AnimationNodeStateMachineTransition_8hgxu"), "attack", "idle_back_walk", SubResource("AnimationNodeStateMachineTransition_fq2yw"), "attack", "idle_left_walk", SubResource("AnimationNodeStateMachineTransition_yqm0k"), "idle_back_walk", "attack", SubResource("AnimationNodeStateMachineTransition_bmy1k"), "idle_left_walk", "attack", SubResource("AnimationNodeStateMachineTransition_mxl7w")]
|
||||||
|
graph_offset = Vector2(-190, -62.0526)
|
||||||
|
|
||||||
|
[node name="EnemyModelView" type="Node3D"]
|
||||||
|
script = ExtResource("1_0vbio")
|
||||||
|
|
||||||
|
[node name="Sprite3D" type="Sprite3D" parent="."]
|
||||||
|
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 0, 0)
|
||||||
|
billboard = 2
|
||||||
|
shaded = true
|
||||||
|
texture_filter = 0
|
||||||
|
render_priority = 100
|
||||||
|
texture = SubResource("ViewportTexture_h1kaf")
|
||||||
|
|
||||||
|
[node name="SubViewport" type="SubViewport" parent="Sprite3D"]
|
||||||
|
disable_3d = true
|
||||||
|
transparent_bg = true
|
||||||
|
handle_input_locally = false
|
||||||
|
size = Vector2i(200, 200)
|
||||||
|
render_target_update_mode = 4
|
||||||
|
|
||||||
|
[node name="AnimatedSprite" type="AnimatedSprite2D" parent="Sprite3D/SubViewport"]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
texture_filter = 1
|
||||||
|
position = Vector2(100, 100)
|
||||||
|
sprite_frames = SubResource("SpriteFrames_6drt6")
|
||||||
|
animation = &"idle_left_walk"
|
||||||
|
|
||||||
|
[node name="Hitbox" type="Area3D" parent="."]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -0.152949, 0, 0)
|
||||||
|
collision_layer = 64
|
||||||
|
collision_mask = 64
|
||||||
|
script = ExtResource("57_lae8t")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="Hitbox"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.189337, 0.217529, -1.45579)
|
||||||
|
shape = SubResource("BoxShape3D_53wuj")
|
||||||
|
disabled = true
|
||||||
|
|
||||||
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
libraries = {
|
||||||
|
&"": SubResource("AnimationLibrary_6tj5r")
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="AnimationTree" type="AnimationTree" parent="."]
|
||||||
|
unique_name_in_owner = true
|
||||||
|
root_node = NodePath("%AnimationTree/..")
|
||||||
|
tree_root = SubResource("AnimationNodeStateMachine_d5bmw")
|
||||||
|
anim_player = NodePath("../AnimationPlayer")
|
||||||
@@ -4,6 +4,8 @@
|
|||||||
[ext_resource type="Script" path="res://src/items/restorative/Restorative.cs" id="1_3beyl"]
|
[ext_resource type="Script" path="res://src/items/restorative/Restorative.cs" id="1_3beyl"]
|
||||||
|
|
||||||
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_o8f22"]
|
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_o8f22"]
|
||||||
|
radius = 0.13613
|
||||||
|
height = 1.09613
|
||||||
|
|
||||||
[node name="Restorative" type="Node3D"]
|
[node name="Restorative" type="Node3D"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
|
||||||
@@ -24,4 +26,5 @@ collision_layer = 4
|
|||||||
collision_mask = 4
|
collision_mask = 4
|
||||||
|
|
||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Pickup"]
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="Pickup"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.348749, 0)
|
||||||
shape = SubResource("CapsuleShape3D_o8f22")
|
shape = SubResource("CapsuleShape3D_o8f22")
|
||||||
|
|||||||
@@ -20,9 +20,9 @@ MaximumVT = 90
|
|||||||
CurrentExp = 0
|
CurrentExp = 0
|
||||||
ExpToNextLevel = 100
|
ExpToNextLevel = 100
|
||||||
CurrentLevel = 1
|
CurrentLevel = 1
|
||||||
CurrentAttack = 14
|
CurrentAttack = 50
|
||||||
CurrentDefense = 12
|
CurrentDefense = 12
|
||||||
MaxAttack = 14
|
MaxAttack = 50
|
||||||
MaxDefense = 12
|
MaxDefense = 12
|
||||||
BonusAttack = 0
|
BonusAttack = 0
|
||||||
BonusDefense = 0
|
BonusDefense = 0
|
||||||
|
|||||||
Reference in New Issue
Block a user