// Update is called once per frame void FixedUpdate() { los.SightTest(); switch (currentState) { case State.Patrol: HandlePatrol(); break; case State.Alert: HandleAlert(); break; case State.Chasing: HandleChasing(); break; case State.Return: HandleReturn(); break; } if (los.playerInLos) { if (!alertSoundPlayed) { alert.Play(); } alertSoundPlayed = true; nextPos = GameObject.Find("Hero").transform.position; currentState = State.Chasing; path = null; } lastPos = transform.position; }
// Update is called once per frame void Update() { switch (currentState) { case State.Normal: HandleNormal(); break; case State.Alert: HandleAlert(); break; case State.Disabled: HandleDisabled(); break; } los.SightTest(); }