using Godot; using Godot.Collections; namespace Cirno.Scripts.Components.FSM; public abstract partial class State : Node2D { // [Export] // public Array Modules { get; private set; } = new(); public virtual int StateId { get; } protected ActorStateMachine _stateMachine; public virtual void Init(ActorStateMachine stateMachine) { _stateMachine = stateMachine; // foreach (var module in Modules) // { // //module.Init() // } } public abstract void EnterState(); public abstract void ExitState(); public abstract void ProcessState(double delta); public abstract void PhysicsProcessState(double delta); }