예제 #1
0
        private void Spawn(bool selected)
        {
            if (!selected)
            {
                return;
            }

            for (int index = 0, numToggles = m_Toggles.Length; index < numToggles; ++index)
            {
                PrefabToggle toggle = m_Toggles[index];
                if (!toggle.gameObject.activeSelf)
                {
                    continue;
                }

                if (!toggle.Toggle.isOn)
                {
                    continue;
                }

                m_SpawnSite.Spawn(index);
            }

            Close();
        }
예제 #2
0
        private void AddProgressListener(PrefabToggleOpener spawnSite, PrefabToggle[] prefabToggles)
        {
            TimedEmitter emitter = spawnSite.FindEmitter();

            if (emitter == null)
            {
                return;
            }

            UpdateFill(emitter.Progress);

            if (m_OnProgressChanged == null)
            {
                m_OnProgressChanged = UpdateFill;
            }

            emitter.OnProgressChanged -= m_OnProgressChanged;
            emitter.OnProgressChanged += m_OnProgressChanged;

            if (m_FillRoot == null)
            {
                return;
            }

            PrefabToggle selectedToggle = prefabToggles[spawnSite.SelectedIndex];

            m_FillRoot.SetParent(selectedToggle.transform, false);
        }