public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { _brain = animator.GetComponent <EnemyBrainController>(); _motor = animator.GetComponent <EnemyMotorController>(); _motor.StartRotate(); }
private void Awake() { _stats = GetComponent <EnemyStatsController>(); _brain = GetComponent <EnemyBrainController>(); _anim = GetComponentInChildren <Animator>(); _agent = GetComponent <NavMeshAgent>(); }
protected override void Awake() { base.Awake(); Brain = GetComponent <EnemyBrainController>(); Agent = GetComponent <NavMeshAgent>(); _collider = gameObject.GetComponent <Collider>(); }
public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { _brain = animator.GetComponent <EnemyBrainController>(); _combat = animator.GetComponent <EnemyCombatController>(); _motor = animator.GetComponent <EnemyMotorController>(); _agent = animator.GetComponent <NavMeshAgent>(); _motor.StartFollow(); }
private void Awake() { _stats = GetComponent <EnemyStatsController>(); _brain = GetComponent <EnemyBrainController>(); _agent = GetComponent <NavMeshAgent>(); // Set avoidance priority to random number (0-99) to prevent enemy clustering if (_agent) { _agent.avoidancePriority = Random.Range(0, 100); } }
public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { _combat = animator.GetComponent <RhakCombatController>(); _brain = animator.GetComponent <EnemyBrainController>(); // Decide the number of charges to perform _totalCharges = Random.Range(1, _combat.maxConsecutiveCharges + 1); _numCharges = 0; // Start the charge attack Transform target = _brain.GetRandomTarget(); _combat.StartCharge(target.position); }
public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { _brain = animator.GetComponent <EnemyBrainController>(); _combat = animator.GetComponent <SerpentBossCombatController>(); _motor = animator.GetComponent <EnemyMotorController>(); _agent = animator.GetComponent <NavMeshAgent>(); _originalSpeed = _agent.speed; _originalStoppingDistance = _agent.stoppingDistance; _agent.speed = _combat.chargeSpeed; _agent.stoppingDistance = _combat.chargedAttackTriggerDistance; // Select a random target to charge _target = _brain.GetRandomTarget(); _motor.StartFollow(_target); }
protected override void Awake() { base.Awake(); Brain = GetComponent <EnemyBrainController>(); }
public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { _brain = animator.GetComponent <EnemyBrainController>(); _combat = animator.GetComponent <SerpentBossCombatController>(); _agent = animator.GetComponent <NavMeshAgent>(); }