123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEditor;
- namespace Enviro
- {
- [CustomEditor(typeof(EnviroWeatherModule))]
- public class EnviroWeatherModuleEditor : EnviroModuleEditor
- {
- private EnviroWeatherModule myTarget;
- //Properties
- private SerializedProperty cloudsTransitionSpeed,fogTransitionSpeed,lightingTransitionSpeed,effectsTransitionSpeed,auroraTransitionSpeed,environmentTransitionSpeed,audioTransitionSpeed;
-
- //On Enable
- public override void OnEnable()
- {
- if(!target)
- return;
- myTarget = (EnviroWeatherModule)target;
- serializedObj = new SerializedObject(myTarget);
- preset = serializedObj.FindProperty("preset");
- cloudsTransitionSpeed = serializedObj.FindProperty("Settings.cloudsTransitionSpeed");
- fogTransitionSpeed = serializedObj.FindProperty("Settings.fogTransitionSpeed");
- lightingTransitionSpeed = serializedObj.FindProperty("Settings.lightingTransitionSpeed");
- effectsTransitionSpeed = serializedObj.FindProperty("Settings.effectsTransitionSpeed");
- auroraTransitionSpeed = serializedObj.FindProperty("Settings.auroraTransitionSpeed");
- audioTransitionSpeed = serializedObj.FindProperty("Settings.audioTransitionSpeed");
- environmentTransitionSpeed = serializedObj.FindProperty("Settings.environmentTransitionSpeed");
-
- //weatherTypeToAdd = serializedObj.FindProperty("weatherTypeToAdd");
- }
- public override void OnInspectorGUI()
- {
- if(!target)
- return;
- base.OnInspectorGUI();
- GUI.backgroundColor = baseModuleColor;
- GUILayout.BeginVertical("",boxStyleModified);
- GUI.backgroundColor = Color.white;
- EditorGUILayout.BeginHorizontal();
- myTarget.showModuleInspector = GUILayout.Toggle(myTarget.showModuleInspector, "Weather", headerFoldout);
-
- GUILayout.FlexibleSpace();
- if(GUILayout.Button("x", EditorStyles.miniButtonRight,GUILayout.Width(18), GUILayout.Height(18)))
- {
- EnviroManager.instance.RemoveModule(EnviroManager.ModuleType.Weather);
- DestroyImmediate(this);
- return;
- }
-
- EditorGUILayout.EndHorizontal();
-
- if(myTarget.showModuleInspector)
- {
- serializedObj.UpdateIfRequiredOrScript ();
- EditorGUI.BeginChangeCheck();
- GUI.backgroundColor = categoryModuleColor;
- GUILayout.BeginVertical("",boxStyleModified);
- GUI.backgroundColor = Color.white;
- GUILayout.Space(5);
- GUILayout.Label("Weather Presets", headerStyle);
- GUILayout.Space(5);
- Object selectedObject = null;
-
- if(GUILayout.Button("Add"))
- {
- int controlID = EditorGUIUtility.GetControlID (FocusType.Passive);
- EditorGUIUtility.ShowObjectPicker<EnviroWeatherType>(null,false,"",controlID);
- }
-
- string commandName = Event.current.commandName;
- if (commandName == "ObjectSelectorClosed")
- {
- selectedObject = EditorGUIUtility.GetObjectPickerObject ();
-
- bool add = true;
-
- for (int i = 0; i < myTarget.Settings.weatherTypes.Count; i++)
- {
- if((EnviroWeatherType)selectedObject == myTarget.Settings.weatherTypes[i])
- add = false;
- }
- if(add)
- myTarget.Settings.weatherTypes.Add((EnviroWeatherType)selectedObject);
- }
- if(GUILayout.Button("Create New"))
- {
- myTarget.CreateNewWeatherType();
- }
- GUILayout.Space(15);
- //Make sure that we remove old empty entries where user deleted the scriptable object.
- myTarget.CleanupList();
-
- for (int i = 0; i < myTarget.Settings.weatherTypes.Count; i++)
- {
- EnviroWeatherType curWT = myTarget.Settings.weatherTypes[i];
- if(curWT == myTarget.targetWeatherType)
- GUI.backgroundColor = new Color(0.0f,0.5f,0.0f,1f);
- GUILayout.BeginVertical ("", boxStyleModified);
- GUI.backgroundColor = Color.white;
- EditorGUILayout.BeginHorizontal();
- curWT.showEditor = GUILayout.Toggle(curWT.showEditor, curWT.name, headerFoldout);
- GUILayout.FlexibleSpace();
- if(curWT != myTarget.targetWeatherType)
- {
- if(GUILayout.Button("Set Active", EditorStyles.miniButtonRight,GUILayout.Width(70), GUILayout.Height(18)))
- {
- myTarget.ChangeWeather(curWT);
- EditorUtility.SetDirty(curWT);
- }
- }
- if(GUILayout.Button("x", EditorStyles.miniButtonRight,GUILayout.Width(18), GUILayout.Height(18)))
- {
- myTarget.RemoveWeatherType(curWT);
- }
-
- EditorGUILayout.EndHorizontal();
- //GUILayout.Space(15);
- if(curWT.showEditor)
- {
- curWT.name = EditorGUILayout.TextField ("Name", curWT.name);
- //Lighting
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showLightingControls = GUILayout.Toggle(curWT.showLightingControls, "Lighting", headerFoldout);
-
- if(curWT.showLightingControls)
- {
- GUILayout.Space(5);
- curWT.lightingOverride.directLightIntensityModifier = EditorGUILayout.Slider("Direct Light Intensity", curWT.lightingOverride.directLightIntensityModifier,0f,2f);
- curWT.lightingOverride.ambientIntensityModifier = EditorGUILayout.Slider("Ambient Light Intensity", curWT.lightingOverride.ambientIntensityModifier,0f,2f);
- }
- GUILayout.EndVertical();
- //Volumetric Clouds
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showCloudControls = GUILayout.Toggle(curWT.showCloudControls, "Volumetric Clouds", headerFoldout);
- if(curWT.showCloudControls)
- {
- GUILayout.Space(5);
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.cloudsOverride.showLayer1 = GUILayout.Toggle(curWT.cloudsOverride.showLayer1, "Layer 1", headerFoldout);
- if(curWT.cloudsOverride.showLayer1)
- {
- curWT.cloudsOverride.coverageLayer1 = EditorGUILayout.Slider("Coverage", curWT.cloudsOverride.coverageLayer1,-1f,1f);
- curWT.cloudsOverride.dilateCoverageLayer1 = EditorGUILayout.Slider("Dilate Coverage", curWT.cloudsOverride.dilateCoverageLayer1,0f,1f);
- curWT.cloudsOverride.dilateTypeLayer1 = EditorGUILayout.Slider("Dilate Type", curWT.cloudsOverride.dilateTypeLayer1,0f,1f);
- curWT.cloudsOverride.typeModifierLayer1 = EditorGUILayout.Slider("Type Modifier", curWT.cloudsOverride.typeModifierLayer1,0f,1f);
- curWT.cloudsOverride.anvilBiasLayer1 = EditorGUILayout.Slider("Anvil Bias", curWT.cloudsOverride.anvilBiasLayer1,0f,1f);
- GUILayout.Space(10);
- curWT.cloudsOverride.scatteringIntensityLayer1 = EditorGUILayout.Slider("Scattering Intensity", curWT.cloudsOverride.scatteringIntensityLayer1,0f,2f);
- curWT.cloudsOverride.multiScatteringALayer1 = EditorGUILayout.Slider("Multi Scattering A", curWT.cloudsOverride.multiScatteringALayer1,0f,1f);
- curWT.cloudsOverride.multiScatteringBLayer1 = EditorGUILayout.Slider("Multi Scattering B", curWT.cloudsOverride.multiScatteringBLayer1,0f,1f);
- curWT.cloudsOverride.multiScatteringCLayer1 = EditorGUILayout.Slider("Multi Scattering C", curWT.cloudsOverride.multiScatteringCLayer1,0f,1f);
- curWT.cloudsOverride.powderIntensityLayer1 = EditorGUILayout.Slider("Powder Intensity", curWT.cloudsOverride.powderIntensityLayer1,0f,1f);
- curWT.cloudsOverride.silverLiningSpreadLayer1 = EditorGUILayout.Slider("Silver Lining Spread", curWT.cloudsOverride.silverLiningSpreadLayer1,0f,1f);
- curWT.cloudsOverride.ligthAbsorbtionLayer1 = EditorGUILayout.Slider("Light Absorbtion", curWT.cloudsOverride.ligthAbsorbtionLayer1,0f,2f);
- GUILayout.Space(10);
- curWT.cloudsOverride.densityLayer1 = EditorGUILayout.Slider("Density", curWT.cloudsOverride.densityLayer1,0f,1f);
- curWT.cloudsOverride.baseErosionIntensityLayer1 = EditorGUILayout.Slider("Base Erosion Intensity", curWT.cloudsOverride.baseErosionIntensityLayer1,0f,1f);
- curWT.cloudsOverride.detailErosionIntensityLayer1 = EditorGUILayout.Slider("Detail Erosion Intensity", curWT.cloudsOverride.detailErosionIntensityLayer1,0f,1f);
- curWT.cloudsOverride.curlIntensityLayer1 = EditorGUILayout.Slider("Curl Intensity", curWT.cloudsOverride.curlIntensityLayer1,0f,1f);
- GUILayout.Space(10);
- }
- GUILayout.EndVertical();
- if(EnviroManager.instance.VolumetricClouds.settingsGlobal.dualLayer)
- {
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.cloudsOverride.showLayer2 = GUILayout.Toggle(curWT.cloudsOverride.showLayer2, "Layer 2", headerFoldout);
- if(curWT.cloudsOverride.showLayer2)
- {
- curWT.cloudsOverride.coverageLayer2 = EditorGUILayout.Slider("Coverage", curWT.cloudsOverride.coverageLayer2,-1f,1f);
- curWT.cloudsOverride.dilateCoverageLayer2 = EditorGUILayout.Slider("Dilate Coverage", curWT.cloudsOverride.dilateCoverageLayer2,0f,1f);
- curWT.cloudsOverride.dilateTypeLayer2 = EditorGUILayout.Slider("Dilate Type", curWT.cloudsOverride.dilateTypeLayer2,0f,1f);
- curWT.cloudsOverride.typeModifierLayer2 = EditorGUILayout.Slider("Type Modifier", curWT.cloudsOverride.typeModifierLayer2,0f,1f);
- curWT.cloudsOverride.anvilBiasLayer2 = EditorGUILayout.Slider("Anvil Bias", curWT.cloudsOverride.anvilBiasLayer2,0f,1f);
- GUILayout.Space(10);
- curWT.cloudsOverride.scatteringIntensityLayer2 = EditorGUILayout.Slider("Scattering Intensity", curWT.cloudsOverride.scatteringIntensityLayer2,0f,2f);
- curWT.cloudsOverride.multiScatteringALayer2 = EditorGUILayout.Slider("Multi Scattering A", curWT.cloudsOverride.multiScatteringALayer2,0f,1f);
- curWT.cloudsOverride.multiScatteringBLayer2 = EditorGUILayout.Slider("Multi Scattering B", curWT.cloudsOverride.multiScatteringBLayer2,0f,1f);
- curWT.cloudsOverride.multiScatteringCLayer2 = EditorGUILayout.Slider("Multi Scattering C", curWT.cloudsOverride.multiScatteringCLayer2,0f,1f);
- curWT.cloudsOverride.powderIntensityLayer2 = EditorGUILayout.Slider("Powder Intensity", curWT.cloudsOverride.powderIntensityLayer2,0f,1f);
- curWT.cloudsOverride.silverLiningSpreadLayer2 = EditorGUILayout.Slider("Silver Lining Spread", curWT.cloudsOverride.silverLiningSpreadLayer2,0f,1f);
- curWT.cloudsOverride.ligthAbsorbtionLayer2 = EditorGUILayout.Slider("Light Absorbtion", curWT.cloudsOverride.ligthAbsorbtionLayer2,0f,2f);
- GUILayout.Space(10);
- curWT.cloudsOverride.densityLayer2 = EditorGUILayout.Slider("Density", curWT.cloudsOverride.densityLayer2,0f,1f);
- curWT.cloudsOverride.baseErosionIntensityLayer2 = EditorGUILayout.Slider("Base Erosion Intensity", curWT.cloudsOverride.baseErosionIntensityLayer2,0f,1f);
- curWT.cloudsOverride.detailErosionIntensityLayer2 = EditorGUILayout.Slider("Detail Erosion Intensity", curWT.cloudsOverride.detailErosionIntensityLayer2,0f,1f);
- curWT.cloudsOverride.curlIntensityLayer2 = EditorGUILayout.Slider("Curl Intensity", curWT.cloudsOverride.curlIntensityLayer2,0f,1f);
- }
- GUILayout.EndVertical();
- }
- }
- GUILayout.EndVertical();
- //Flat Clouds
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showFlatCloudControls = GUILayout.Toggle(curWT.showFlatCloudControls, "Flat Clouds", headerFoldout);
-
- if(curWT.showFlatCloudControls)
- {
- GUILayout.Space(5);
- EditorGUILayout.LabelField("Cirrus Clouds", headerStyle);
- curWT.flatCloudsOverride.cirrusCloudsCoverage = EditorGUILayout.Slider("Cirrus Clouds Coverage", curWT.flatCloudsOverride.cirrusCloudsCoverage,0f,1f);
- curWT.flatCloudsOverride.cirrusCloudsAlpha = EditorGUILayout.Slider("Cirrus Clouds Alpha", curWT.flatCloudsOverride.cirrusCloudsAlpha,0f,1f);
- curWT.flatCloudsOverride.cirrusCloudsColorPower = EditorGUILayout.Slider("Cirrus Clouds Color", curWT.flatCloudsOverride.cirrusCloudsColorPower,0f,2f);
- GUILayout.Space(10);
- EditorGUILayout.LabelField("Flat Clouds", headerStyle);
- curWT.flatCloudsOverride.flatCloudsCoverage = EditorGUILayout.Slider("Flat Clouds Coverage", curWT.flatCloudsOverride.flatCloudsCoverage,0f,2f);
- curWT.flatCloudsOverride.flatCloudsLightIntensity = EditorGUILayout.Slider("Flat Clouds Light Intensity", curWT.flatCloudsOverride.flatCloudsLightIntensity,0f,2f);
- curWT.flatCloudsOverride.flatCloudsAmbientIntensity = EditorGUILayout.Slider("Flat Clouds Ambient Intensity", curWT.flatCloudsOverride.flatCloudsAmbientIntensity,0f,2f);
- curWT.flatCloudsOverride.flatCloudsAbsorbtion = EditorGUILayout.Slider("Flat Clouds Light Absorbtion", curWT.flatCloudsOverride.flatCloudsAbsorbtion,0f,2f);
- }
- GUILayout.EndVertical();
- //Fog
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showFogControls = GUILayout.Toggle(curWT.showFogControls, "Fog", headerFoldout);
-
- if(curWT.showFogControls)
- {
- GUILayout.Space(5);
- EditorGUILayout.LabelField("Layer 1", headerStyle);
- curWT.fogOverride.fogDensity = EditorGUILayout.Slider("Fog Density 1", curWT.fogOverride.fogDensity,0f,1f);
- curWT.fogOverride.fogHeightFalloff = EditorGUILayout.Slider("Fog Height Falloff 1", curWT.fogOverride.fogHeightFalloff,0f,0.05f);
- curWT.fogOverride.fogHeight = EditorGUILayout.FloatField("Fog Height 1 ", curWT.fogOverride.fogHeight);
- GUILayout.Space(10);
- EditorGUILayout.LabelField("Layer 2", headerStyle);
- curWT.fogOverride.fogDensity2 = EditorGUILayout.Slider("Fog Density 2", curWT.fogOverride.fogDensity2,0f,1f);
- curWT.fogOverride.fogHeightFalloff2 = EditorGUILayout.Slider("Fog Height Falloff 2", curWT.fogOverride.fogHeightFalloff2,0f,0.05f);
- curWT.fogOverride.fogHeight2 = EditorGUILayout.FloatField("Fog Height 2", curWT.fogOverride.fogHeight2);
- GUILayout.Space(10);
- EditorGUILayout.LabelField("Color", headerStyle);
- curWT.fogOverride.fogColorBlend = EditorGUILayout.Slider("Fog Sky-Color Blending", curWT.fogOverride.fogColorBlend,0f,1.0f);
- GUILayout.Space(10);
- #if !ENVIRO_HDRP
- EditorGUILayout.LabelField("Volumetrics", headerStyle);
- curWT.fogOverride.scattering = EditorGUILayout.Slider("Scattering Intensity", curWT.fogOverride.scattering,0f,2.0f);
- curWT.fogOverride.extinction = EditorGUILayout.Slider("Extinction Intensity", curWT.fogOverride.extinction,0f,1.0f);
- curWT.fogOverride.anistropy = EditorGUILayout.Slider("Anistropy", curWT.fogOverride.anistropy,0f,1.0f);
- #else
- EditorGUILayout.LabelField("HDRP Fog", headerStyle);
- curWT.fogOverride.fogAttenuationDistance = EditorGUILayout.Slider("Attenuation Distance", curWT.fogOverride.fogAttenuationDistance,0f,400f);
- curWT.fogOverride.baseHeight = EditorGUILayout.FloatField("Base Height", curWT.fogOverride.baseHeight);
- curWT.fogOverride.maxHeight = EditorGUILayout.FloatField("Max Height", curWT.fogOverride.maxHeight);
- GUILayout.Space(10);
- EditorGUILayout.LabelField("HDRP Volumetrics", headerStyle);
- curWT.fogOverride.ambientDimmer = EditorGUILayout.Slider("Ambient Dimmer", curWT.fogOverride.ambientDimmer,0f,1f);
- curWT.fogOverride.directLightMultiplier = EditorGUILayout.Slider("Direct Light Multiplier", curWT.fogOverride.directLightMultiplier,0f,16f);
- curWT.fogOverride.directLightShadowdimmer = EditorGUILayout.Slider("Direct Light Shadow gimmer", curWT.fogOverride.directLightShadowdimmer,0f,1f);
- #endif
- }
- GUILayout.EndVertical();
- //Effects
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showEffectControls = GUILayout.Toggle(curWT.showEffectControls, "Effects", headerFoldout);
-
- if(curWT.showEffectControls)
- {
- GUILayout.Space(5);
- curWT.effectsOverride.rain1Emission = EditorGUILayout.Slider("Rain1 Emission", curWT.effectsOverride.rain1Emission,0f,1f);
- curWT.effectsOverride.rain2Emission = EditorGUILayout.Slider("Rain2 Emission", curWT.effectsOverride.rain2Emission,0f,1f);
- GUILayout.Space(5);
- curWT.effectsOverride.snow1Emission = EditorGUILayout.Slider("Snow1 Emission", curWT.effectsOverride.snow1Emission,0f,1f);
- curWT.effectsOverride.snow2Emission = EditorGUILayout.Slider("Snow2 Emission", curWT.effectsOverride.snow2Emission,0f,1f);
- GUILayout.Space(5);
- curWT.effectsOverride.custom1Emission = EditorGUILayout.Slider("Custom1 Emission", curWT.effectsOverride.custom1Emission,0f,1f);
- curWT.effectsOverride.custom2Emission = EditorGUILayout.Slider("Custom2 Emission", curWT.effectsOverride.custom2Emission,0f,1f);
- }
- GUILayout.EndVertical();
- //Aurora
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showAuroraControls = GUILayout.Toggle(curWT.showAuroraControls, "Aurora", headerFoldout);
-
- if(curWT.showAuroraControls)
- {
- GUILayout.Space(5);
- curWT.auroraOverride.auroraIntensity = EditorGUILayout.Slider("Aurora Intensity Modifier", curWT.auroraOverride.auroraIntensity,0f,1f);
- }
- GUILayout.EndVertical();
- //Environment
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showEnvironmentControls = GUILayout.Toggle(curWT.showEnvironmentControls, "Environment", headerFoldout);
-
- if(curWT.showEnvironmentControls)
- {
- GUILayout.Space(5);
- curWT.environmentOverride.temperatureWeatherMod = EditorGUILayout.Slider("Temperature Modifier", curWT.environmentOverride.temperatureWeatherMod,-20f,20f);
- GUILayout.Space(5);
- curWT.environmentOverride.wetnessTarget = EditorGUILayout.Slider("Wetness Target", curWT.environmentOverride.wetnessTarget,0f,1f);
- curWT.environmentOverride.snowTarget = EditorGUILayout.Slider("Snow Target", curWT.environmentOverride.snowTarget,0f,1f);
- }
- GUILayout.EndVertical();
- //Lightning
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showLightningControls = GUILayout.Toggle(curWT.showLightningControls, "Lightning", headerFoldout);
-
- if(curWT.showLightningControls)
- {
- GUILayout.Space(5);
- curWT.lightningOverride.lightningStorm = EditorGUILayout.Toggle("Lightning Storm", curWT.lightningOverride.lightningStorm);
- curWT.lightningOverride.randomLightningDelay = EditorGUILayout.Slider("Lightning Delay", curWT.lightningOverride.randomLightningDelay,1f,60f);
- }
- GUILayout.EndVertical();
-
- //Audio
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showAudioControls = GUILayout.Toggle(curWT.showAudioControls, "Audio", headerFoldout);
-
- if(curWT.showAudioControls)
- {
- GUILayout.Space(5);
- //Ambient SFX
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showAmbientAudioControls = GUILayout.Toggle(curWT.showAmbientAudioControls, "Ambient", headerFoldout);
- if(curWT.showAmbientAudioControls)
- {
- GUILayout.Space(10);
- if (GUILayout.Button ("Add"))
- {
- curWT.audioOverride.ambientOverride.Add (new EnviroAudioOverrideType());
- }
-
- GUILayout.Space(10);
-
- for (int a = 0; a < curWT.audioOverride.ambientOverride.Count; a++)
- {
- GUILayout.BeginVertical ("", boxStyleModified);
- EditorGUILayout.BeginHorizontal();
- curWT.audioOverride.ambientOverride[a].showEditor = GUILayout.Toggle(curWT.audioOverride.ambientOverride[a].showEditor, curWT.audioOverride.ambientOverride[a].name, headerFoldout);
- GUILayout.FlexibleSpace();
- if(GUILayout.Button("x", EditorStyles.miniButtonRight,GUILayout.Width(18), GUILayout.Height(18)))
- {
- curWT.audioOverride.ambientOverride.Remove (curWT.audioOverride.ambientOverride[a]);
- return;
- }
- EditorGUILayout.EndHorizontal();
- if(curWT.audioOverride.ambientOverride[a].showEditor)
- {
- curWT.audioOverride.ambientOverride[a].name = EditorGUILayout.TextField ("Audio Name", curWT.audioOverride.ambientOverride[a].name);
- curWT.audioOverride.ambientOverride[a].volume = EditorGUILayout.Slider ("Volume", curWT.audioOverride.ambientOverride[a].volume,0f,1f);
- }
- GUILayout.EndVertical ();
- }
- }
- GUILayout.EndVertical ();
- //Weather SFX
- GUILayout.BeginVertical ("", boxStyleModified);
- curWT.showWeatherAudioControls = GUILayout.Toggle(curWT.showWeatherAudioControls, "Weather", headerFoldout);
- if(curWT.showWeatherAudioControls)
- {
- GUILayout.Space(10);
- if (GUILayout.Button ("Add"))
- {
- curWT.audioOverride.weatherOverride.Add (new EnviroAudioOverrideType());
- }
-
- GUILayout.Space(10);
-
- for (int a = 0; a < curWT.audioOverride.weatherOverride.Count; a++)
- {
- GUILayout.BeginVertical ("", boxStyleModified);
- EditorGUILayout.BeginHorizontal();
- curWT.audioOverride.weatherOverride[a].showEditor = GUILayout.Toggle(curWT.audioOverride.weatherOverride[a].showEditor, curWT.audioOverride.weatherOverride[a].name, headerFoldout);
- GUILayout.FlexibleSpace();
- if(GUILayout.Button("x", EditorStyles.miniButtonRight,GUILayout.Width(18), GUILayout.Height(18)))
- {
- curWT.audioOverride.weatherOverride.Remove (curWT.audioOverride.weatherOverride[a]);
- return;
- }
- EditorGUILayout.EndHorizontal();
- if(curWT.audioOverride.weatherOverride[a].showEditor)
- {
- curWT.audioOverride.weatherOverride[a].name = EditorGUILayout.TextField ("Audio Name", curWT.audioOverride.weatherOverride[a].name);
- curWT.audioOverride.weatherOverride[a].volume = EditorGUILayout.Slider ("Volume", curWT.audioOverride.weatherOverride[a].volume,0f,1f);
- }
- GUILayout.EndVertical ();
- }
- }
- GUILayout.EndVertical ();
- }
- GUILayout.EndVertical();
-
- }
- GUILayout.EndVertical ();
- GUILayout.Space(2.5f);
- }
- GUILayout.Space(10);
- GUILayout.Label("Transition", headerStyle);
- EditorGUILayout.PropertyField(cloudsTransitionSpeed);
- EditorGUILayout.PropertyField(fogTransitionSpeed);
- EditorGUILayout.PropertyField(lightingTransitionSpeed);
- EditorGUILayout.PropertyField(effectsTransitionSpeed);
- EditorGUILayout.PropertyField(auroraTransitionSpeed);
- EditorGUILayout.PropertyField(environmentTransitionSpeed);
- EditorGUILayout.PropertyField(audioTransitionSpeed);
- GUILayout.EndVertical ();
-
- /// Save Load
- GUI.backgroundColor = categoryModuleColor;
- GUILayout.BeginVertical("",boxStyleModified);
- GUI.backgroundColor = Color.white;
- myTarget.showSaveLoad = GUILayout.Toggle(myTarget.showSaveLoad, "Save/Load", headerFoldout);
-
- if(myTarget.showSaveLoad)
- {
- EditorGUILayout.PropertyField(preset);
- GUILayout.BeginHorizontal("",wrapStyle);
- if(myTarget.preset != null)
- {
- if(GUILayout.Button("Load"))
- {
- myTarget.LoadModuleValues();
- }
- if(GUILayout.Button("Save"))
- {
- myTarget.SaveModuleValues(myTarget.preset);
- }
- }
- if(GUILayout.Button("Save As New"))
- {
- myTarget.SaveModuleValues();
- }
- GUILayout.EndHorizontal();
- }
- GUILayout.EndVertical();
- /// Save Load End
- ApplyChanges ();
- }
- GUILayout.EndVertical();
- if(myTarget.showModuleInspector)
- GUILayout.Space(20);
- }
- }
- }
|