protected void DrawAdd() { GUILayout.BeginHorizontal(); GUILayout.Label("Modifier name"); newModifierName = GUILayout.TextArea(newModifierName); GUILayout.EndHorizontal(); GUILayout.Label("Modifier type"); int modiferFlagChanged = GUILayout.SelectionGrid(modifierFlag, modifierTypes, Mathf.Min(modifierTypes.Length, 4), GUIResources.GetStyle("radio_text_button")); if (modiferFlagChanged != modifierFlag) { modifierFlag = modiferFlagChanged; if (modifierTypes[modifierFlag].Contains("Material")) { List <Renderer> xFormOptions = effect.GetModelTransforms()[0].GetComponentsInChildren <Renderer>().ToList(); transformOptions = new string[xFormOptions.Count]; for (int i = 0; i < xFormOptions.Count; i++) { transformOptions[i] = xFormOptions[i].gameObject.name; } } else if (modifierTypes[modifierFlag].Contains("Light")) { List <Light> xFormOptions = effect.GetModelTransforms()[0].GetComponentsInChildren <Light>().ToList(); transformOptions = new string[xFormOptions.Count]; for (int i = 0; i < xFormOptions.Count; i++) { transformOptions[i] = xFormOptions[i].gameObject.name; } } else { List <Transform> xFormOptions = effect.GetModelTransforms()[0].GetComponentsInChildren <Transform>().ToList(); transformOptions = new string[xFormOptions.Count]; for (int i = 0; i < xFormOptions.Count; i++) { transformOptions[i] = xFormOptions[i].name; } } transformFlag = 0; } GUILayout.Label("Target transform name"); transformFlag = GUILayout.SelectionGrid(transformFlag, transformOptions, Mathf.Min(transformOptions.Length, 3), GUIResources.GetStyle("radio_text_button")); GUILayout.BeginHorizontal(); GUILayout.Label("Controller name"); controllerFlag = GUILayout.SelectionGrid(controllerFlag, controllerTypes, Mathf.Min(controllerTypes.Length, 4), GUIResources.GetStyle("radio_text_button")); GUILayout.EndHorizontal(); if (GUILayout.Button("Add")) { effect.AddModifier(CreateNewModifier()); showWindow = false; } if (GUILayout.Button("Cancel")) { showWindow = false; } }
public void SetAddMode(WaterfallEffect fx) { showWindow = true; effect = fx; windowMode = ModifierPopupMode.Add; controllerTypes = fx.parentModule.GetControllerNames().ToArray(); List <Transform> xFormOptions = fx.GetModelTransforms()[0].GetComponentsInChildren <Transform>().ToList(); transformOptions = new string[xFormOptions.Count]; for (int i = 0; i < xFormOptions.Count; i++) { transformOptions[i] = xFormOptions[i].name; } WindowPosition = new Rect(Screen.width / 2, Screen.height / 2f, 750, 400); }
public void SetAddMode(WaterfallEffect fx) { showWindow = true; effect = fx; windowMode = ModifierPopupMode.Add; controllerTypes = fx.parentModule.GetControllerNames().ToArray(); var xFormOptions = fx.GetModelTransforms()[0].GetComponentsInChildren <Transform>().ToList(); modifierFlag = 0; transformOptions = new string[xFormOptions.Count]; for (int i = 0; i < xFormOptions.Count; i++) { transformOptions[i] = xFormOptions[i].name; } GUI.BringWindowToFront(windowID); }