Developing the Chase state
The Chase state occurs when the NPC is following and moving towards the player. In Dead Keys, this happens whenever the scene camera moves into a trigger volume or area where zombies are waiting:
Chase state
The following is the Chase
coroutine (for the Chase state). It contains some interesting features, considered further in the comments section:
//------------------------------------ public IEnumerator StateChase() { //Run chase animation ThisAnimator.SetInteger("AnimState", (int) ActiveState); //Set destination ThisAgent.SetDestination (PlayerTransform.position); //Wait until path is calculated while (!ThisAgent.hasPath) yield return null; //While in chase state while(ActiveState == AISTATE.CHASE) { if (ThisAgent.remainingDistance <...