UnityEditor.SubModuleUI.ShowSubEmitter C# (CSharp) Method

ShowSubEmitter() private method

private ShowSubEmitter ( int index ) : void
index int
return void
        private void ShowSubEmitter(int index)
        {
            GUILayout.BeginHorizontal(new GUILayoutOption[0]);
            SerializedProperty arrayElementAtIndex = this.m_SubEmitters.GetArrayElementAtIndex(index);
            SerializedProperty objectProp = arrayElementAtIndex.FindPropertyRelative("emitter");
            SerializedProperty intProp = arrayElementAtIndex.FindPropertyRelative("type");
            SerializedProperty property4 = arrayElementAtIndex.FindPropertyRelative("properties");
            GUILayoutOption[] layoutOptions = new GUILayoutOption[] { GUILayout.MaxWidth(80f) };
            ModuleUI.GUIPopup(GUIContent.none, intProp, s_Texts.subEmitterTypeTexts, layoutOptions);
            GUILayoutOption[] options = new GUILayoutOption[] { GUILayout.Width(4f) };
            GUILayout.Label("", ParticleSystemStyles.Get().label, options);
            ModuleUI.GUIObject(GUIContent.none, objectProp, new GUILayoutOption[0]);
            if (objectProp.objectReferenceValue == null)
            {
                GUILayoutOption[] optionArray3 = new GUILayoutOption[] { GUILayout.Width(8f) };
                GUILayout.Label("", ParticleSystemStyles.Get().label, optionArray3);
                GUILayoutOption[] optionArray4 = new GUILayoutOption[] { GUILayout.Width(16f) };
                if (GUILayout.Button(GUIContent.none, ParticleSystemStyles.Get().plus, optionArray4))
                {
                    this.CreateSubEmitter(objectProp, index, (SubEmitterType) intProp.intValue);
                }
            }
            else
            {
                GUILayoutOption[] optionArray5 = new GUILayoutOption[] { GUILayout.Width(24f) };
                GUILayout.Label("", ParticleSystemStyles.Get().label, optionArray5);
            }
            GUILayoutOption[] optionArray6 = new GUILayoutOption[] { GUILayout.Width(100f) };
            property4.intValue = ModuleUI.GUIMask(GUIContent.none, property4.intValue, s_Texts.propertyStrings, optionArray6);
            GUILayoutOption[] optionArray7 = new GUILayoutOption[] { GUILayout.Width(8f) };
            GUILayout.Label("", ParticleSystemStyles.Get().label, optionArray7);
            if (index == 0)
            {
                GUILayoutOption[] optionArray8 = new GUILayoutOption[] { GUILayout.Width(16f) };
                if (GUILayout.Button(GUIContent.none, new GUIStyle("OL Plus"), optionArray8))
                {
                    this.m_SubEmitters.InsertArrayElementAtIndex(this.m_SubEmitters.arraySize);
                    this.m_SubEmitters.GetArrayElementAtIndex(this.m_SubEmitters.arraySize - 1).FindPropertyRelative("emitter").objectReferenceValue = null;
                }
            }
            else
            {
                GUILayoutOption[] optionArray9 = new GUILayoutOption[] { GUILayout.Width(16f) };
                if (GUILayout.Button(GUIContent.none, new GUIStyle("OL Minus"), optionArray9))
                {
                    this.m_SubEmitters.DeleteArrayElementAtIndex(index);
                }
            }
            GUILayout.EndHorizontal();
        }