using System.Collections; using UnityEngine; using UnityEngine.UI; public class DemoUI : MonoBehaviour { public Slider sliderTime; public Slider sliderQuality; public Text timeText; public Text weatherText; public Dropdown weatherDropdown; private bool seasonmode = true; private bool fastdays; private void Start() { StartCoroutine(setupDrodown()); } private IEnumerator setupDrodown() { yield return new WaitForSeconds(0.1f); for (int i = 0; i < EnviroSky.instance.Weather.WeatherTemplates.Count; i++) { Dropdown.OptionData optionData = new Dropdown.OptionData(); optionData.text = EnviroSky.instance.Weather.WeatherTemplates[i].Name; weatherDropdown.options.Add(optionData); } weatherDropdown.value = 0; } public void ChangeTimeSlider() { if (sliderTime.value < 0.01f) { sliderTime.value = 0.01f; } EnviroSky.instance.GameTime.Hours = sliderTime.value * 24f; } public void ChangeQualitySlider() { EnviroSky.instance.Quality.GlobalParticleEmissionRates = sliderQuality.value; } public void SetWeatherID(int id) { EnviroSky.instance.SetWeatherOverwrite(id); } public void OverwriteSeason() { if (!seasonmode) { seasonmode = true; EnviroSky.instance.Seasons.calcSeasons = true; } else { seasonmode = false; EnviroSky.instance.Seasons.calcSeasons = false; } } public void FastDays() { if (!fastdays) { fastdays = true; EnviroSky.instance.GameTime.DayLengthInMinutes = 0.2f; } else { fastdays = false; EnviroSky.instance.GameTime.DayLengthInMinutes = 5f; } } public void SetSeasonSpring() { EnviroSky.instance.ChangeSeason(SeasonVariables.Seasons.Spring); } public void SetSeasonSummer() { EnviroSky.instance.ChangeSeason(SeasonVariables.Seasons.Summer); } public void SetSeasonAutumn() { EnviroSky.instance.ChangeSeason(SeasonVariables.Seasons.Autumn); } public void SetSeasonWinter() { EnviroSky.instance.ChangeSeason(SeasonVariables.Seasons.Winter); } public void ToggleShadows(bool i) { EnviroSky.instance.Quality.CloudsShadowCast = i; } public void SetFog(bool i) { EnviroSky.instance.Fog.AdvancedFog = i; } public void SetClouds(int i) { if (i == 0) { EnviroSky.instance.Quality.CloudsQuality = EnviroQualitySettings.CloudQuality.None; } if (i == 1) { EnviroSky.instance.Quality.CloudsQuality = EnviroQualitySettings.CloudQuality.OneLayer; } if (i == 2) { EnviroSky.instance.Quality.CloudsQuality = EnviroQualitySettings.CloudQuality.TwoLayer; } } private void Update() { if (EnviroSky.instance.started) { int num = (int)EnviroSky.instance.GameTime.Hours; timeText.text = num + ":00"; if (EnviroSky.instance.Weather.currentActiveWeatherID != null) { weatherText.text = EnviroSky.instance.Weather.currentActiveWeatherID.Name; } ChangeQualitySlider(); } } private void LateUpdate() { sliderTime.value = EnviroSky.instance.GameTime.Hours / 24f; } }