// Update is called once per frame void Update() { if (m_AI == null) { m_AI = Target.GetComponent <AITaskManager>(); m_Task = Target.GetComponent <AITaskManager>(); } string disp = ""; if (m_AI.m_currentGoal == null || m_Task.m_currentTask == null) { return; } disp += "G: " + m_AI.m_currentGoal.name + " \nE: " + m_Task.debugLastEvent + "\n"; disp += "TR: " + m_Task.debugLastTransition + " \ntsk: " + m_Task.m_currentTask.name + "\n"; disp += m_Task.m_currentTask.debugExtraInfo(); //disp += "EX: " + m_AI.m_currentGoal.outputDebugString(); if (m_lastDisplayedString != disp) { DispText.text = disp; m_lastDisplayedString = disp; } }
public void OnRemoveChar(AITaskManager aic) { if (OverlapCharacters.Contains(aic)) { aic.OnExitZone(this); OverlapCharacters.Remove(aic); } }
public void OnAddChar(AITaskManager aic) { if (!OverlapCharacters.Contains(aic)) { aic.OnEnterZone(this); OverlapCharacters.Add(aic); } }
public static bool IsHaveObject(AITaskManager aic, string zone) { if (m_instance.m_registeredZones.ContainsKey(zone)) { return(m_instance.m_registeredZones[zone].IsHaveObject(aic)); } return(false); }
void Awake() { m_taskManager = GetComponent <AITaskManager>(); ReloadGoals(); if (GetComponent <PersistentItem>() != null) { GetComponent <PersistentItem>().InitializeSaveLoadFuncs(storeData, loadData); } }
public void Update() { if (_pause || _gameover) { return; } if (_pendingStart) { TechList.Clear(); GeneralList.Clear(); ListeningDevList.Clear(); TechList.AddRange(GameObject.FindGameObjectsWithTag("Player")); GeneralList.AddRange(GameObject.FindGameObjectsWithTag("General")); ListeningDevList.AddRange(GameObject.FindGameObjectsWithTag("ListeningDevice")); CurrentObjective = GameObject.FindObjectOfType <Objective>(); ActiveTech = TechList[0]; SoundManager.Instance().Camera = GameObject.FindGameObjectWithTag("MainCamera").GetComponent <Camera>(); SoundManager.Instance().MusicSource = SoundManager.Instance().Camera.gameObject.AddComponent <AudioSource>(); _fundingText = GameObject.FindGameObjectsWithTag("FundingText")[0].GetComponent <Text>(); AITaskManager.GeneralsAwaitingConversation.Clear(); _pendingStart = false; } if (ActiveTech == null && TechList.Count > 0) { ActiveTech = TechList[0]; } InputManager.Instance().Update(); AITaskManager.Instance().Update(GeneralList); CurrentObjective.pevent = Objective.Event; CurrentObjective.pplace = Objective.Place; CurrentObjective.ptime = Objective.Time; if (_dailyManager.TransitioningDay == false && Timer.Instance().GetRemainingTime() <= 0) { _dailyManager.EndDay(); //CallGameover(); displayGameover(); } if (Input.GetKeyUp(KeyCode.Tab) && _usingDesk == false) { CycleTech(); } if (FundingAmount < 0) { FundingAmount = 0; } }
private void SatisfyRest(NeedStatus need) { // Chance to sleep increases as rest gets low float chanceToSleep = (float)_randomGenerator.NextDouble(); if (chanceToSleep > need.Status) { AITaskManager.GoToBed(this.gameObject, need); need.SetPendingRelief(); } else { AITaskManager.SitDown(this.gameObject, need); need.SetPendingRelief(); } }
private void SatisfyEntertainment(NeedStatus need) { AITaskManager.LookAtArt(this.gameObject, need); need.SetPendingRelief(); }
private void SatisfySocial(NeedStatus need) { AITaskManager.LookForConversation(this.gameObject, need); need.SetPendingRelief(); }
private void SatisfyBladder(NeedStatus need) { AITaskManager.GoToToilet(this.gameObject, need); need.SetPendingRelief(); }
public bool IsHaveObject(AITaskManager aic) { return(OverlapCharacters.Contains(aic)); }
private void AwakeSingletonManagers() { SoundManager.Instance(); InputManager.Instance(); AITaskManager.Instance(); }
public void SetMasterAI(AITaskManager master) { m_masterAI = master; }