public IEnumerator State_Patrol() { currentState = AI_ENEMY_STATE.PATROL; anim.SetInteger("State", 1); _audio.Stop(); while (currentState == AI_ENEMY_STATE.PATROL) { Y = 0.0f; rayDistance = 0.5f; if (hit.collider) { Flip(); } else { Move(); } if (CanSeePlayer) { StartCoroutine(State_Attack()); yield break; } yield return(null); } }
public IEnumerator State_Death() { dead = true; currentState = AI_ENEMY_STATE.DEATH; gameObject.layer = 10; anim.SetInteger("State", 5); _audio.Stop(); yield return(null); }
public IEnumerator State_Attack() { currentState = AI_ENEMY_STATE.ATTACK; anim.SetInteger("State", 2); while (currentState == AI_ENEMY_STATE.ATTACK) { if (!CanSeePlayer) { StartCoroutine(State_Patrol()); yield break; } yield return(null); } }
//-------------------------------------------------- #region States //-------------------------------------------------- public IEnumerator State_Idle() { currentState = AI_ENEMY_STATE.IDLE; anim.SetInteger("State", 0); _audio.Stop(); while (currentState == AI_ENEMY_STATE.IDLE) { if (active) { StartCoroutine(State_Patrol()); yield break; } yield return(null); } }