Exemple #1
0
    void Start()
    {
        m_perception = GetComponent <PerceptionSphere>();

        if (!m_target)
        {
            GameObject.FindGameObjectWithTag("Player");
        }

        m_stateMachine.AddState("Alert", new AlertState <AI>(this));
        m_stateMachine.AddState("Wander", new WanderState <AI>(this));
        m_stateMachine.PushState("Wander");

        m_chaseSpeed = m_speed * 1.8f;

        agent = gameObject.GetComponent <NavMeshAgent>();
    }
Exemple #2
0
    void Start()
    {
        m_healthBar    = GetComponentInChildren <HealthBar>();
        m_animator     = GetComponent <Animator>();
        m_perception   = GetComponentInChildren <PerceptionSphere>();
        m_stateMachine = new StackStateMachine <AI>();
        m_rigidbody2D  = GetComponent <Rigidbody2D>();
        m_weapon       = GetComponentInChildren <Weapon>();
        m_renderer     = GetComponent <SpriteRenderer>();

        m_weapon.maxDamage   = 25;
        m_weapon.minDamage   = 10;
        m_weapon.m_targetTag = "Player";

        m_stateMachine.AddState("ALERT", new AlertState <AI>(this));
        m_stateMachine.AddState("ATTACK", new SwooshyState <AI>(this));

        m_stateMachine.AddState("PATROL", new WanderState <AI>(this));
        m_stateMachine.PushState("PATROL");
    }