Пример #1
0
        public void CloseComponent(MainComponents.MainComponent component)
        {
            if (!ActiveComponents.Contains(component))
            {
                Debug.LogError("Already inactive");
                return;
            }
            ActiveComponents.Remove(component);
            component.Close();
            component.gameObject.SetActive(false);

            if (ActiveComponents.Count > 0)
            {
                ActiveComponents[ActiveComponents.Count - 1].Show();
            }
        }
Пример #2
0
        void OpenComponent(MainComponents.MainComponent component)
        {
            if (ActiveComponents.Contains(component))
            {
                Debug.LogError("Already active");
                return;
            }

            var index = ActiveComponents.Count;

            ActiveComponents.Add(component);
            if (ActiveComponents.Count > 1)
            {
                ActiveComponents[ActiveComponents.Count - 2].Hide();
            }

            component.gameObject.SetActive(true);
            component.Open(index);
            component.Show();
        }