• Implementation of an Abstract Finite State Machine with ScriptableObjects
  • Identify Critical Monobehaviours
  • Create Wrappers for the custom implementation of the abstract generics.
  • Action:
  • Decision:
  • State:
  • Transition:
  • StatController:
  • Notice in State, Transition, and StateController we use the newly implemented wrappers for the fields instead of the genericized State<EnemyStateData>, etc.:
  • Creating an Attacking State
  • ScanForTarget Decision
  • EnemyChase Action
  • Configuration
  • Future customization