Exemple #1
0
    void Start()
    {
        audio_instance = this;

        Footstep_stealth.Stop();
        Footstep_Normal.Stop();
        Hiding.Stop();
        ItemGet.Stop();
        Keypad_beep.Stop();
        Unlock.Stop();
        Cloth.Stop();
        NearKeypad.Stop();
        //BGM.Stop();
        CodeFail.Stop();
        CodeCorrect.Stop();
        SafeLocked.Stop();
        Detect.Stop();

        NPC_Obj    = GameObject.FindGameObjectWithTag("NPC");
        Player_Obj = GameObject.FindGameObjectWithTag("Player");

        if (NPC_Obj != null)
        {
            AI_controller = NPC_Obj.GetComponent <Script_AIController>();
        }
    }
Exemple #2
0
    // Start is called before the first frame update
    void Start()
    {
        m_anim          = GetComponentInParent <Script_AnimationMgr>();
        instance        = this;
        invertDetection = new BT_Inverter(new BT_Detect(this, m_fov.m_visibleTargets, m_soundCheck));
        invertCatch     = new BT_Inverter(new BT_Catch(this, ARRIVAL_RANGE));
        m_targetPos     = transform.position;
        m_target        = transform;

        m_idleSequence = new BT_Sequence(new List <Script_BTNode>
        {
            new BT_Idle(this, transform),
            new BT_Wander(this, SEARCH_RANGE),
        });

        m_catchSequence = new BT_Sequence(new List <Script_BTNode>
        {
            new BT_Catch(this, CATCH_RANGE),
        });

        m_detectionSequence = new BT_Sequence(new List <Script_BTNode>
        {
            invertDetection,
            new BT_CheckArrival(this, ARRIVAL_RANGE),
            m_idleSequence
        });

        m_moveSequence = new BT_Sequence(new List <Script_BTNode>
        {
            new BT_Approach(this),
        });

        m_rootAI = new BT_Selector(new List <Script_BTNode>
        {
            m_detectionSequence,
            m_catchSequence,
            m_moveSequence,
        });

        new BT_Wander(this, SEARCH_RANGE);
    }