using Godot; namespace Cirno.Scripts.Components.FSM._3DPlayer; public partial class IsoInteractionController : Area3D, IModule { private bool _enabled = false; public bool Enabled { get => _enabled; set { if (_enabled == value) return; _enabled = value; if (_enabled) { EmitSignal(SignalName.InteractionStarted); } } } [Signal] public delegate void InteractionStartedEventHandler(); public IStateMachine StateMachine { get; private set; } public void EnterState(PlayerState state) { Enabled = true; } public void ExitState(PlayerState state) { Enabled = false; } public void Init(IStateMachine machine) { StateMachine = machine; } public void Process(double delta) { } public void PhysicsProcess(double delta) { } }