/// <summary> /// Creates the individual readout modules for the situation panel. /// </summary> /// <param name="modules">The list of available readout modules</param> private void CreateSituationPanel(List <IInfoModule> modules) { if (modules == null) { return; } if (infoWindowInterface == null) { return; } if (m_ModulePrefab == null || m_ModuleTransform == null) { return; } for (int i = modules.Count - 1; i >= 0; i--) { IInfoModule module = modules[i]; if (module == null) { continue; } CreateModule(module); } }
/// <summary> /// This method is used to initialize the readout module; sets the readout title field /// </summary> /// <param name="module">The readout module interface</param> public void SetModule(IInfoModule module) { if (module == null || m_title == null || m_field == null) { return; } moduleInterface = module; //m_title.text = module.ModuleTitle + ":"; m_title.OnTextUpdate.Invoke(module.ModuleTitle + ":"); }
/// <summary> /// Creates the individual readout module using the Situation Module prefab. /// </summary> /// <param name="module">The readout module interface</param> private void CreateModule(IInfoModule module) { GameObject mod = Instantiate(m_ModulePrefab); if (mod == null) { return; } mod.transform.SetParent(m_ModuleTransform, false); InfoModule bMod = mod.GetComponent <InfoModule>(); if (bMod == null) { return; } bMod.SetModule(module); bMod.gameObject.SetActive(module.IsVisible); Modules.Add(bMod); }