/** * <summary>Assigns all Local Variables to preset values.</summary> * <param name = "varPreset">The VarPreset that contains the preset values</param> */ public void AssignFromPreset(VarPreset varPreset) { foreach (GVar localVar in localVars) { foreach (PresetValue presetValue in varPreset.presetValues) { if (localVar.id == presetValue.id) { localVar.val = presetValue.val; localVar.floatVal = presetValue.floatVal; localVar.textVal = presetValue.textVal; } } } }
/** * <summary>Assigns all Global Variables to preset values.</summary> * <param name = "varPreset">The VarPreset that contains the preset values</param> */ public void AssignFromPreset(VarPreset varPreset) { foreach (GVar globalVar in globalVars) { foreach (PresetValue presetValue in varPreset.presetValues) { if (globalVar.id == presetValue.id) { globalVar.val = presetValue.val; globalVar.floatVal = presetValue.floatVal; globalVar.textVal = presetValue.textVal; } } } }
/** * <summary>Assigns all Local Variables to preset values.</summary> * <param name = "varPreset">The VarPreset that contains the preset values</param> */ public void AssignFromPreset(VarPreset varPreset) { foreach (GVar localVar in localVars) { foreach (PresetValue presetValue in varPreset.presetValues) { if (localVar.id == presetValue.id) { localVar.IntegerValue = presetValue.val; localVar.FloatValue = presetValue.floatVal; localVar.TextValue = presetValue.textVal; localVar.Vector3Value = presetValue.vector3Val; } } } }
/** * <summary>Assigns all Global Variables to preset values.</summary> * <param name = "varPreset">The VarPreset that contains the preset values</param> * <param name = "ignoreOptionLinked">If True, then variables linked to Options Data will not be affected</param> */ public void AssignFromPreset(VarPreset varPreset, bool ignoreOptionLinked = false) { foreach (GVar globalVar in globalVars) { foreach (PresetValue presetValue in varPreset.presetValues) { if (globalVar.id == presetValue.id) { if (!ignoreOptionLinked || globalVar.link != VarLink.OptionsData) { globalVar.val = presetValue.val; globalVar.floatVal = presetValue.floatVal; globalVar.textVal = presetValue.textVal; } } } } }
/** * <summary>Assigns all Global Variables to preset values.</summary> * <param name = "varPreset">The VarPreset that contains the preset values</param> * <param name = "ignoreOptionLinked">If True, then variables linked to Options Data will not be affected</param> */ public void AssignFromPreset(VarPreset varPreset, bool ignoreOptionLinked = false) { foreach (GVar globalVar in globalVars) { foreach (PresetValue presetValue in varPreset.presetValues) { if (globalVar.id == presetValue.id) { if (!ignoreOptionLinked || globalVar.link != VarLink.OptionsData) { globalVar.IntegerValue = presetValue.val; globalVar.FloatValue = presetValue.floatVal; globalVar.TextValue = presetValue.textVal; globalVar.Vector3Value = presetValue.vector3Val; globalVar.Upload(VariableLocation.Global); } } } } }
/** * <summary>Assigns all Global Variables to preset values.</summary> * <param name = "varPreset">The VarPreset that contains the preset values</param> * <param name = "ignoreOptionLinked">If True, then variables linked to Options Data will not be affected</param> */ public void AssignFromPreset(VarPreset varPreset, bool ignoreOptionLinked = false) { foreach (GVar globalVar in globalVars) { foreach (PresetValue presetValue in varPreset.presetValues) { if (globalVar.id == presetValue.id) { if (!ignoreOptionLinked || globalVar.link != VarLink.OptionsData) { globalVar.val = presetValue.val; globalVar.floatVal = presetValue.floatVal; globalVar.textVal = presetValue.textVal; globalVar.vector3Val = presetValue.vector3Val; if (globalVar.link == VarLink.PlaymakerGlobalVariable || globalVar.link == VarLink.CustomScript) { globalVar.Upload(); } } } } } }
private List <VarPreset> ShowPresets(List <VarPreset> _varPresets, List <GVar> _vars, VariableLocation location) { if (_vars == null || _vars.Count == 0) { return(_varPresets); } if (!Application.isPlaying || _varPresets.Count > 0) { EditorGUILayout.BeginVertical(CustomStyles.thinBox); showPresets = CustomGUILayout.ToggleHeader(showPresets, "Preset configurations"); } if (showPresets && (!Application.isPlaying || _varPresets.Count > 0)) { List <string> labelList = new List <string>(); int i = 0; int presetNumber = -1; if (_varPresets.Count > 0) { foreach (VarPreset _varPreset in _varPresets) { if (_varPreset.label != "") { labelList.Add(i.ToString() + ": " + _varPreset.label); } else { labelList.Add(i.ToString() + ": (Untitled)"); } if (_varPreset.ID == chosenPresetID) { presetNumber = i; } i++; } if (presetNumber == -1) { chosenPresetID = 0; } else if (presetNumber >= _varPresets.Count) { presetNumber = Mathf.Max(0, _varPresets.Count - 1); } else { presetNumber = EditorGUILayout.Popup("Created presets:", presetNumber, labelList.ToArray()); chosenPresetID = _varPresets[presetNumber].ID; } } else { chosenPresetID = presetNumber = -1; } if (presetNumber >= 0) { string apiPrefix = ((location == VariableLocation.Local) ? "AC.KickStarter.localVariables.GetPreset (" + chosenPresetID + ")" : "AC.KickStarter.runtimeVariables.GetPreset (" + chosenPresetID + ")"); if (!Application.isPlaying) { _varPresets [presetNumber].label = CustomGUILayout.TextField("Preset name:", _varPresets [presetNumber].label, apiPrefix + ".label"); } EditorGUILayout.BeginHorizontal(); if (!Application.isPlaying) { GUI.enabled = false; } if (GUILayout.Button("Bulk-assign")) { if (presetNumber >= 0 && _varPresets.Count > presetNumber) { if (location == VariableLocation.Global) { if (KickStarter.runtimeVariables) { KickStarter.runtimeVariables.AssignFromPreset(_varPresets [presetNumber]); ACDebug.Log("Global variables updated to " + _varPresets [presetNumber].label); } } else if (location == VariableLocation.Local) { if (KickStarter.localVariables) { KickStarter.localVariables.AssignFromPreset(_varPresets [presetNumber]); ACDebug.Log("Local variables updated to " + _varPresets [presetNumber].label); } } } } GUI.enabled = !Application.isPlaying; if (GUILayout.Button("Delete")) { _varPresets.RemoveAt(presetNumber); presetNumber = 0; chosenPresetID = 0; } GUI.enabled = true; EditorGUILayout.EndHorizontal(); } if (!Application.isPlaying) { if (GUILayout.Button("Create new preset")) { VarPreset newVarPreset = new VarPreset(_vars, GetIDArray(_varPresets)); _varPresets.Add(newVarPreset); chosenPresetID = newVarPreset.ID; } } } if (!Application.isPlaying || _varPresets.Count > 0) { EditorGUILayout.EndVertical(); } EditorGUILayout.Space(); return(_varPresets); }
private List<VarPreset> ShowPresets(List<VarPreset> _varPresets, List<GVar> _vars, VariableLocation location) { if (_vars == null || _vars.Count == 0) { return _varPresets; } if (!Application.isPlaying || _varPresets.Count > 0) { EditorGUILayout.LabelField ("Preset configurations", EditorStyles.boldLabel); } List<string> labelList = new List<string>(); int i = 0; int presetNumber = -1; if (_varPresets.Count > 0) { foreach (VarPreset _varPreset in _varPresets) { if (_varPreset.label != "") { labelList.Add (i.ToString () + ": " + _varPreset.label); } else { labelList.Add (i.ToString () + ": (Untitled)"); } if (_varPreset.ID == chosenPresetID) { presetNumber = i; } i++; } if (presetNumber == -1) { chosenPresetID = 0; } else if (presetNumber >= _varPresets.Count) { presetNumber = Mathf.Max (0, _varPresets.Count - 1); } else { presetNumber = EditorGUILayout.Popup ("Created presets:", presetNumber, labelList.ToArray()); chosenPresetID = _varPresets[presetNumber].ID; } } else { chosenPresetID = presetNumber = -1; } if (presetNumber >= 0) { if (!Application.isPlaying) { _varPresets [presetNumber].label = EditorGUILayout.TextField ("Preset name:", _varPresets [presetNumber].label); } EditorGUILayout.BeginHorizontal (); if (!Application.isPlaying) { GUI.enabled = false; } if (GUILayout.Button ("Bulk-assign")) { if (presetNumber >= 0 && _varPresets.Count > presetNumber) { if (location == VariableLocation.Global) { if (KickStarter.runtimeVariables) { KickStarter.runtimeVariables.AssignFromPreset (_varPresets [presetNumber]); ACDebug.Log ("Global variables updated to " + _varPresets [presetNumber].label); } } else if (location == VariableLocation.Local) { if (KickStarter.localVariables) { KickStarter.localVariables.AssignFromPreset (_varPresets [presetNumber]); ACDebug.Log ("Local variables updated to " + _varPresets [presetNumber].label); } } } } GUI.enabled = !Application.isPlaying; if (GUILayout.Button ("Delete")) { _varPresets.RemoveAt (presetNumber); presetNumber = 0; chosenPresetID = 0; } GUI.enabled = true; EditorGUILayout.EndHorizontal (); } if (!Application.isPlaying) { if (GUILayout.Button ("Create new preset")) { VarPreset newVarPreset = new VarPreset (_vars, GetIDArray (_varPresets)); _varPresets.Add (newVarPreset); chosenPresetID = newVarPreset.ID; } } EditorGUILayout.Space (); return _varPresets; }