Files
2026-02-21 16:45:37 +08:00

82 lines
2.2 KiB
C#

using System;
using System.Collections.Generic;
using UnityEngine;
[Serializable]
public class EnviroWeather
{
[Tooltip("If disabled the weather will never change.")]
[Header("Weather Setup:")]
public bool updateWeather = true;
[Tooltip("Your WindZone that reflect our weather wind settings.")]
public WindZone windZone;
[Tooltip("The Enviro Lighting Flash Component.")]
public EnviroLightning LightningGenerator;
[Tooltip("A list of all possible thunder audio effects.")]
public List<AudioClip> ThunderSFX = new List<AudioClip>();
[HideInInspector]
public List<EnviroWeatherPrefab> WeatherTemplates = new List<EnviroWeatherPrefab>();
[HideInInspector]
public List<GameObject> WeatherPrefabs = new List<GameObject>();
[Tooltip("List of additional zones. Will be updated on startup!")]
[Header("Zones:")]
public List<EnviroZone> zones = new List<EnviroZone>();
[Tooltip("Tag for zone triggers. Create and assign a tag to this gameObject")]
public bool useTag;
[Tooltip("Defines the speed of wetness will raise when it is raining.")]
[Header("Weather Settings:")]
public float wetnessAccumulationSpeed = 0.05f;
[Tooltip("Defines the speed of snow will raise when it is snowing.")]
public float snowAccumulationSpeed = 0.05f;
[Tooltip("Defines the speed of clouds and fog will change when weather conditions changed.")]
public float cloudChangeSpeed = 0.01f;
[Tooltip("Defines the speed of particle effects will change when weather conditions changed.")]
public float effectChangeSpeed = 0.01f;
[Tooltip("The current active zone.")]
[Header("Current active zone:")]
public EnviroZone currentActiveZone;
[Tooltip("The current active weather conditions.")]
[Header("Current active weather:")]
public EnviroWeatherPrefab currentActiveWeatherID;
[HideInInspector]
public EnviroWeatherPrefab lastActiveWeatherID;
[HideInInspector]
public GameObject VFXHolder;
[HideInInspector]
public float wetness;
[HideInInspector]
public float curWetness;
[HideInInspector]
public float SnowStrenght;
[HideInInspector]
public float curSnowStrenght;
[HideInInspector]
public float nextUpdate;
[HideInInspector]
public int thundersfx;
[HideInInspector]
public AudioSource currentAudioSource;
}