IState Interface

Summary

A state that can be used in a Animancer.FSM.StateMachine`1.
graph BT Type["IState"] class Type type-node Implementing0["EquipState"]-.->Type click Implementing0 "/animancer/api/Animancer.Examples.StateMachines.Weapons/EquipState" Implementing1["GameManagerFSM.IntroductionState"]-.->Type click Implementing1 "/animancer/api/Animancer.Examples.StateMachines.GameManager/IntroductionState" Implementing2["GameManagerFSM.FadeState"]-.->Type click Implementing2 "/animancer/api/Animancer.Examples.StateMachines.GameManager/FadeState" Implementing3["CreatureState"]-.->Type click Implementing3 "/animancer/api/Animancer.Examples.StateMachines.Creatures/CreatureState" Implementing4["FlinchState"]-.->Type click Implementing4 "/animancer/api/Animancer.Examples.AnimatorControllers.GameKit/FlinchState" Implementing5["LocomotionState"]-.->Type click Implementing5 "/animancer/api/Animancer.Examples.AnimatorControllers.GameKit/LocomotionState" Implementing6["LandingState"]-.->Type click Implementing6 "/animancer/api/Animancer.Examples.AnimatorControllers.GameKit/LandingState" Implementing7["IdleState"]-.->Type click Implementing7 "/animancer/api/Animancer.Examples.StateMachines.Brains/IdleState" Implementing8["State"]-.->Type click Implementing8 "/animancer/api/Animancer.FSM/State" Implementing9["DieState"]-.->Type click Implementing9 "/animancer/api/Animancer.Examples.StateMachines.Platformer/DieState" Implementing10["LocomotionState"]-.->Type click Implementing10 "/animancer/api/Animancer.Examples.StateMachines.Brains/LocomotionState" Implementing11["RespawnState"]-.->Type click Implementing11 "/animancer/api/Animancer.Examples.AnimatorControllers.GameKit/RespawnState" Implementing12["IdleState"]-.->Type click Implementing12 "/animancer/api/Animancer.Examples.AnimatorControllers.GameKit/IdleState" Implementing13["IPrioritizable"]-.->Type click Implementing13 "/animancer/api/Animancer.FSM/IPrioritizable" Implementing14["LocomotionState"]-.->Type click Implementing14 "/animancer/api/Animancer.Examples.AnimatorControllers/LocomotionState" Implementing15["AttackState"]-.->Type click Implementing15 "/animancer/api/Animancer.Examples.StateMachines.Weapons/AttackState" Implementing16["TimelineState"]-.->Type click Implementing16 "/animancer/api/Animancer.Examples.StateMachines.Platformer/TimelineState" Implementing17["IdleState"]-.->Type click Implementing17 "/animancer/api/Animancer.Examples.StateMachines.Platformer/IdleState" Implementing18["AttackState"]-.->Type click Implementing18 "/animancer/api/Animancer.Examples.AnimatorControllers.GameKit/AttackState" Implementing19["CreatureState"]-.->Type click Implementing19 "/animancer/api/Animancer.Examples.StateMachines.Brains/CreatureState" Implementing20["DieState"]-.->Type click Implementing20 "/animancer/api/Animancer.Examples.AnimatorControllers.GameKit/DieState" Implementing21["GameManagerFSM.ReadyState"]-.->Type click Implementing21 "/animancer/api/Animancer.Examples.StateMachines.GameManager/ReadyState" Implementing22["CreatureState"]-.->Type click Implementing22 "/animancer/api/Animancer.Examples.AnimatorControllers.GameKit/CreatureState" Implementing23["GameManagerFSM.State"]-.->Type click Implementing23 "/animancer/api/Animancer.Examples.StateMachines.GameManager/State" Implementing24["DelegateState"]-.->Type click Implementing24 "/animancer/api/Animancer.FSM/DelegateState" Implementing25["AirborneState"]-.->Type click Implementing25 "/animancer/api/Animancer.Examples.AnimatorControllers.GameKit/AirborneState" Implementing26["AttackState"]-.->Type click Implementing26 "/animancer/api/Animancer.Examples.StateMachines.Platformer/AttackState" Implementing27["AdvancedJumpState"]-.->Type click Implementing27 "/animancer/api/Animancer.Examples.StateMachines.Platformer/AdvancedJumpState" Implementing28["IOwnedState<TState>"]-.->Type click Implementing28 "/animancer/api/Animancer.FSM/IOwnedState_1" Implementing29["GameManagerFSM.ActionState"]-.->Type click Implementing29 "/animancer/api/Animancer.Examples.StateMachines.GameManager/ActionState" Implementing30["JumpState"]-.->Type click Implementing30 "/animancer/api/Animancer.Examples.StateMachines.Platformer/JumpState" Implementing31["CreatureState"]-.->Type click Implementing31 "/animancer/api/Animancer.Examples.StateMachines.InterruptManagement/CreatureState" Implementing32["CreatureState"]-.->Type click Implementing32 "/animancer/api/Animancer.Examples.StateMachines.Platformer/CreatureState" Implementing33["StateBehaviour"]-.->Type click Implementing33 "/animancer/api/Animancer.FSM/StateBehaviour"

Syntax

public interface IState

Remarks

The Animancer.FSM.StateExtensions class contains various extension methods for this interface.

Documentation: Finite State Machines

Properties

Name Value Summary
CanEnterState bool
Can this state be entered?
CanExitState bool
Can this state be exited?

Methods

Name Value Summary
OnEnterState() void
Called when this state is entered.
OnExitState() void
Called when this state is exited.

Extension Methods

Name Value Summary
GetNextState<IState>() TState
Returns the Animancer.FSM.StateChange`1.NextState.
GetPreviousState<IState>() TState
Returns the Animancer.FSM.StateChange`1.PreviousState.