cirnogodot/Scripts/Components/FSM/Enemy/3D/Init.cs
2025-07-01 13:40:13 +02:00

32 lines
No EOL
1 KiB
C#

using Cirno.Scripts.Components.Actors;
using Cirno.Scripts.Enums;
using Godot;
namespace Cirno.Scripts.Components.FSM.Enemy._3D;
public partial class Init : EnemyStateBase3D
{
public override EnemyState StateId => EnemyState.Init;
[Export] public EnemyStorage3D Storage {get; private set;}
[Export] public PlayerDetection3D DetectionProvider { get; private set; }
[Export] public ActorResourceProvider HealthProvider { get; private set; }
public override void EnterState()
{
//DamageReceiver.HealthProvider.MaxResource = StorageModule.Root.EnemyResource.MaxHealth;
DetectionProvider.Initialize(MainObject);
Storage.AiState = Storage.Root.StartingAiState;
Storage.HomePosition = MainObject.GlobalPosition;
// TODO: Hide wings
// TODO: Hide aiming reticule
HealthProvider.MaxResource = Storage.Root.EnemyResource.MaxHealth;
HealthProvider.FillResource();
StateMachine.SetState(EnemyState.Idle);
}
}