Files
UltimateFishing/Assets/Scripts/Assembly-CSharp/Climate_Zone_C.cs
2026-02-21 16:45:37 +08:00

140 lines
3.3 KiB
C#

using UnityEngine;
public class Climate_Zone_C : MonoBehaviour
{
public string ClimateName = "Enter Name in Editor";
public GameObject uniStormSystem;
public UniStormWeatherSystem_C uniStormsScript;
public int zoneWeather = 1;
public string playerTag = "Player";
public GameObject PlayerObject;
public float updateInterval = 0.1f;
public int climateHeight = 350;
private float updateIntervalTimer = 0.1f;
public int ifGreaterOrLessThan;
public int DetectionType;
public int TemperatureType;
public int minSpringTemp;
public int maxSpringTemp;
public int minSummerTemp;
public int maxSummerTemp;
public int minFallTemp;
public int maxFallTemp;
public int minWinterTemp;
public int maxWinterTemp;
public int startingSpringTemp;
public int startingSummerTemp;
public int startingFallTemp;
public int startingWinterTemp;
public int weatherChanceSpring;
public int weatherChanceSummer;
public int weatherChanceFall;
public int weatherChanceWinter;
private void Start()
{
uniStormSystem = GameObject.Find("UniStormSystemEditor");
uniStormsScript = uniStormSystem.GetComponent<UniStormWeatherSystem_C>();
}
private void Update()
{
if (DetectionType != 1)
{
return;
}
updateIntervalTimer += Time.deltaTime;
if (updateIntervalTimer >= updateInterval)
{
if (PlayerObject.transform.position.y > (float)climateHeight && ifGreaterOrLessThan == 0)
{
UpdateUniStorm();
}
if (PlayerObject.transform.position.y < (float)climateHeight && ifGreaterOrLessThan == 1)
{
UpdateUniStorm();
}
updateIntervalTimer = 0f;
}
}
private void OnTriggerEnter(Collider other)
{
if (other.tag == playerTag && DetectionType == 0)
{
UpdateUniStorm();
}
}
public void UpdateUniStorm()
{
uniStormsScript.minSpringTemp = minSpringTemp;
uniStormsScript.maxSpringTemp = maxSpringTemp;
uniStormsScript.minSummerTemp = minSummerTemp;
uniStormsScript.maxSummerTemp = maxSummerTemp;
uniStormsScript.minFallTemp = minFallTemp;
uniStormsScript.maxFallTemp = maxFallTemp;
uniStormsScript.minWinterTemp = minWinterTemp;
uniStormsScript.maxWinterTemp = maxWinterTemp;
uniStormsScript.startingSpringTemp = startingSpringTemp;
uniStormsScript.startingSummerTemp = startingSummerTemp;
uniStormsScript.startingFallTemp = startingFallTemp;
uniStormsScript.startingWinterTemp = startingWinterTemp;
uniStormsScript.weatherChanceSpring = weatherChanceSpring;
uniStormsScript.weatherChanceSummer = weatherChanceSummer;
uniStormsScript.weatherChanceFall = weatherChanceFall;
uniStormsScript.weatherChanceWinter = weatherChanceWinter;
if (uniStormsScript.windSoundComponent.volume >= 0.8f)
{
uniStormsScript.windSnowSoundComponent.volume = 0.8f;
}
if (uniStormsScript.windAudioObject.volumeItem >= 0.8f)
{
uniStormsScript.windSnowAudioObject.volumeItem = 0.8f;
}
if (uniStormsScript.windSnowSoundComponent.volume >= 0.8f)
{
uniStormsScript.windSoundComponent.volume = 0.8f;
}
if (uniStormsScript.windSnowAudioObject.volume >= 0.8f)
{
uniStormsScript.windAudioObject.volume = 0.8f;
}
if (uniStormsScript.minRainIntensity >= 500f && uniStormsScript.temperature <= 32)
{
uniStormsScript.minSnowIntensity = 1000f;
}
if (uniStormsScript.minSnowIntensity >= 500f && uniStormsScript.temperature > 32)
{
uniStormsScript.minRainIntensity = 1000f;
}
}
}