override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { if (!_delegate) { _delegate = animator.GetComponent <SArcher_Delegate>(); _agent = _delegate.NavMeshAgent; } _agent.isStopped = false; Vector3 randomDirection = Random.insideUnitSphere; float distance = Random.Range(2.5f, 10f); randomDirection.y = 0f; while (randomDirection.magnitude < 0.05f) { randomDirection.z = 1f; } Vector3 randomPosition = animator.transform.position + randomDirection.normalized * distance; NavMeshHit hit; NavMesh.SamplePosition(randomPosition, out hit, 10f, 1); _destination = hit.position; _agent.SetDestination(_destination); // set biến kiểm tra state _delegate.State = SArcherState.RunningRandom; }
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { if (!_delegate) { _delegate = animator.GetComponent <SArcher_Delegate>(); } _delegate.State = SArcherState.Appear; }
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { if (!_delegate) { _delegate = animator.GetComponent <SArcher_Delegate>(); } animator.SetBool("Idling", true); _count = Random.Range(_minTime, _maxTime); _delegate.State = SArcherState.Idle; }
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { if (!_delegate) { _delegate = animator.GetComponent <SArcher_Delegate>(); _shootTransform = _delegate.ShootTransform; _parentTransform = _delegate.ParentTransform; } _count = _timeDelay; _delegate.State = SArcherState.DrawArrow; }
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { if (!_delegate) { _delegate = animator.GetComponent <SArcher_Delegate>(); _shootTransform = _delegate.ShootTransform; _parentTransform = _delegate.ParentTransform; } _delegate.RotatingWhenShootArrow = true; // set biến kiểm tra state _delegate.State = SArcherState.DrawArrow; }
override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { if (!_delegate) { _delegate = animator.GetComponent <SArcher_Delegate>(); _collider = _delegate.Collider; _agent = _delegate.NavMeshAgent; } //_collider.gameObject.SetActive(false); _agent.isStopped = true; _delegate.State = SArcherState.Death; }