public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
    {
        _brain = animator.GetComponent <EnemyBrainController>();
        _motor = animator.GetComponent <EnemyMotorController>();

        _motor.StartRotate();
    }
Exemplo n.º 2
0
 private void Awake()
 {
     _stats = GetComponent <EnemyStatsController>();
     _brain = GetComponent <EnemyBrainController>();
     _anim  = GetComponentInChildren <Animator>();
     _agent = GetComponent <NavMeshAgent>();
 }
Exemplo n.º 3
0
    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);
        }
    }
Exemplo n.º 6
0
    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);
    }
Exemplo n.º 8
0
    protected override void Awake()
    {
        base.Awake();

        Brain = GetComponent <EnemyBrainController>();
    }
Exemplo n.º 9
0
 public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     _brain  = animator.GetComponent <EnemyBrainController>();
     _combat = animator.GetComponent <SerpentBossCombatController>();
     _agent  = animator.GetComponent <NavMeshAgent>();
 }