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>(); } }
// 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); }