using Godot; namespace SupaLidlGame.State.Weapon; public abstract partial class WeaponState : Node, IState { public virtual WeaponState Use() => null; public virtual WeaponState Deuse() => null; public virtual WeaponState UseAlt() => null; public virtual WeaponState DeuseAlt() => null; public abstract IState Enter(IState previousState); public virtual void Exit(IState nextState) { } public virtual IState Process(double delta) => null; }