public UISmokeEditWindow OpenSmokeEditor(ModuleWaterfallSmoke toEdit) { if (smokeEditWindow != null) { } else { smokeEditWindow = new UISmokeEditWindow(toEdit, true); } return(smokeEditWindow); }
public UISmokeEditWindow(ModuleWaterfallSmoke smoke, bool show) : base(show) { smokeModule = smoke; Utils.Log($"[UISmokeEditWindoww]: Started editing smoke on {true.ToString()}", LogType.UI); startSizeRange = smoke.startSizeRange; emissionRateRange = smoke.emissionRateRange; emissionSpeedRange = smoke.emissionSpeedRange; lifetimeRange = smoke.lifetimeRange; startSizeRangeString = new[] { startSizeRange.x.ToString(), startSizeRange.y.ToString() }; emissionRateRangeString = new[] { emissionRateRange.x.ToString(), emissionRateRange.y.ToString() }; emissionSpeedRangeString = new[] { emissionSpeedRange.x.ToString(), emissionSpeedRange.y.ToString() }; lifetimeRangeString = new[] { lifetimeRange.x.ToString(), lifetimeRange.y.ToString() }; WindowPosition = new(Screen.width / 2 - 200, Screen.height / 2f, 400, 100); }
protected void DrawControllers() { GUILayout.BeginHorizontal(); GUILayout.BeginVertical(); useControllers = GUILayout.Toggle(useControllers, "Link to Editor", GUILayout.Width(150)); GUILayout.Label("<b>CONTROLLERS</b>"); // GUILayout.BeginHorizontal(); GUILayout.Label("Throttle", GUIResources.GetStyle("data_header"), GUILayout.MaxWidth(120f)); throttleControllerValue = GUILayout.HorizontalSlider(throttleControllerValue, 0f, 1f, GUILayout.MaxWidth(100f)); GUILayout.Label(throttleControllerValue.ToString("F2"), GUIResources.GetStyle("data_field"), GUILayout.MinWidth(40f)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Atmosphere Depth", GUIResources.GetStyle("data_header"), GUILayout.MaxWidth(120f)); densityControllerValue = GUILayout.HorizontalSlider(densityControllerValue, 0f, 1f, GUILayout.MaxWidth(100f)); GUILayout.Label(densityControllerValue.ToString("F2"), GUIResources.GetStyle("data_field"), GUILayout.MinWidth(40f)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Randomness Min/Max", GUIResources.GetStyle("data_header"), GUILayout.MaxWidth(160f)); string xValue = GUILayout.TextArea(randomControllerValue.x.ToString(), GUILayout.MaxWidth(60f)); string yValue = GUILayout.TextArea(randomControllerValue.y.ToString(), GUILayout.MaxWidth(60f)); float xParsed; float yParsed; Vector2 newRand = new Vector2(randomControllerValue.x, randomControllerValue.y); if (float.TryParse(xValue, out xParsed)) { if (xParsed != randomControllerValue.x) { newRand.x = xParsed; } } if (float.TryParse(yValue, out yParsed)) { if (yParsed != randomControllerValue.y) { newRand.y = yParsed; } } if (newRand.x != randomControllerValue.x || newRand.y != randomControllerValue.y) { randomControllerValue = new Vector2(xParsed, yParsed); } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("RCS Throttle", GUIResources.GetStyle("data_header"), GUILayout.MaxWidth(120f)); rcsControllerValue = GUILayout.HorizontalSlider(rcsControllerValue, 0f, 1f, GUILayout.MaxWidth(100f)); GUILayout.Label(rcsControllerValue.ToString("F2"), GUIResources.GetStyle("data_field"), GUILayout.MinWidth(40f)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Smoke Control", GUIResources.GetStyle("data_header"), GUILayout.MaxWidth(120f)); if (GUILayout.Button("Open", GUILayout.MaxWidth(100f))) { if (selectedModule) { ModuleWaterfallSmoke smoke = selectedModule.part.GetComponent <ModuleWaterfallSmoke>(); if (smoke) { OpenSmokeEditor(smoke); } } } GUILayout.EndHorizontal(); GUILayout.EndVertical(); GUILayout.EndHorizontal(); }