public void CreateColumns(GameObject go)
        {
            if (spectrogramColumns == null)
            {
                spectrogramColumns = new List <SpectrogramColumns>();
            }
            if (columnDescriptors == null)
            {
                columnDescriptors = new List <Spectrogram>();
            }

            Spectrogram[] localDescriptors = go.GetComponentsInChildren <Spectrogram>(true);

            foreach (Spectrogram spec in localDescriptors)
            {
                SpectrogramColumns specCol = spec.gameObject.AddComponent <SpectrogramColumns>();
                ReflectionUtil.SetPrivateField(specCol, "_columnPrefab", spec.columnPrefab);
                ReflectionUtil.SetPrivateField(specCol, "_separator", spec.separator);
                ReflectionUtil.SetPrivateField(specCol, "_minHeight", spec.minHeight);
                ReflectionUtil.SetPrivateField(specCol, "_maxHeight", spec.maxHeight);
                ReflectionUtil.SetPrivateField(specCol, "_columnWidth", spec.columnWidth);
                ReflectionUtil.SetPrivateField(specCol, "_columnDepth", spec.columnDepth);

                spectrogramColumns.Add(specCol);
                columnDescriptors.Add(spec);
            }
        }
        /// <summary>
        /// Creates <see cref="SpectrogramColumns"/> for each <see cref="Spectrogram"/> on the given <paramref name="gameObject"/>
        /// </summary>
        /// <param name="gameObject">What <see cref="GameObject"/> to create <see cref="SpectrogramColumns"/> for</param>
        internal void CreateColumns(GameObject gameObject)
        {
            spectrogramColumns = new List <SpectrogramColumns>();
            columnDescriptors  = new List <Spectrogram>();

            Spectrogram[] localDescriptors = gameObject.GetComponentsInChildren <Spectrogram>(true);
            foreach (Spectrogram spec in localDescriptors)
            {
                SpectrogramColumns specCol = spec.gameObject.AddComponent <SpectrogramColumns>();
                PlatformManager.SpawnedComponents.Add(specCol);

                ReflectionUtil.SetPrivateField(specCol, "_columnPrefab", spec.columnPrefab);
                ReflectionUtil.SetPrivateField(specCol, "_separator", spec.separator);
                ReflectionUtil.SetPrivateField(specCol, "_minHeight", spec.minHeight);
                ReflectionUtil.SetPrivateField(specCol, "_maxHeight", spec.maxHeight);
                ReflectionUtil.SetPrivateField(specCol, "_columnWidth", spec.columnWidth);
                ReflectionUtil.SetPrivateField(specCol, "_columnDepth", spec.columnDepth);

                spectrogramColumns.Add(specCol);
                columnDescriptors.Add(spec);
            }
        }
Example #3
0
        /// <summary>
        /// Creates <see cref="SpectrogramColumns"/> for each <see cref="Spectrogram"/> on the given <paramref name="gameObject"/>
        /// </summary>
        /// <param name="gameObject">What <see cref="GameObject"/> to create <see cref="SpectrogramColumns"/> for</param>
        internal void CreateColumns(GameObject gameObject)
        {
            spectrogramColumns = new List <SpectrogramColumns>();
            columnDescriptors  = new List <Spectrogram>();

            Spectrogram[] localDescriptors = gameObject.GetComponentsInChildren <Spectrogram>(true);
            foreach (Spectrogram spec in localDescriptors)
            {
                SpectrogramColumns specCol = spec.gameObject.AddComponent <SpectrogramColumns>();
                PlatformManager.SpawnedComponents.Add(specCol);

                MaterialSwapper.ReplaceMaterials(spec.columnPrefab);

                specCol._columnPrefab = spec.columnPrefab;
                specCol._separator    = spec.separator;
                specCol._minHeight    = spec.minHeight;
                specCol._maxHeight    = spec.maxHeight;
                specCol._columnWidth  = spec.columnWidth;
                specCol._columnDepth  = spec.columnDepth;

                spectrogramColumns.Add(specCol);
                columnDescriptors.Add(spec);
            }
        }