public void CheckStatus() { Vector3 playerPosition = _player.transform.position; Vector3 enemyPosition = _owner.transform.position; if (Vector3.Distance(playerPosition, enemyPosition) < _seekDistance) { _thinker.ChangeState(new ChaseState()); EventManager.Instance.TriggerEvent(new Events.EnemyChaseEvent(_owner.EnemyID)); } }
public void CheckStatus() { Vector3 playerPosition = _player.transform.position; Vector3 enemyPosition = _owner.transform.position; //Distance between Player is too far change to idle state if (Vector3.Distance(playerPosition, enemyPosition) > _seekDistance) { _thinker.ChangeState(new IdleState(), true); EventManager.Instance.TriggerEvent(new Events.EnemyFleeEvent(_owner.EnemyID)); } }