75 lines
2.4 KiB
C#
75 lines
2.4 KiB
C#
using UnityEngine;
|
|
|
|
public class SkySettings : MonoBehaviour
|
|
{
|
|
public SkySettingsSlider colorRSlider;
|
|
|
|
public SkySettingsSlider colorGSlider;
|
|
|
|
public SkySettingsSlider colorBSlider;
|
|
|
|
public SkySettingsSlider altitudeSlider;
|
|
|
|
public AzureSky_Controller azureSky_Controller;
|
|
|
|
private void Awake()
|
|
{
|
|
if (azureSky_Controller == null)
|
|
{
|
|
azureSky_Controller = GetComponent<AzureSky_Controller>();
|
|
}
|
|
}
|
|
|
|
public void UpdateSky()
|
|
{
|
|
azureSky_Controller.AltitudeCurve[0] = AnimationCurve.Linear(0f, altitudeSlider.slider.value, 24f, altitudeSlider.slider.value);
|
|
azureSky_Controller.LambdaCurveR[0] = AnimationCurve.Linear(0f, colorRSlider.slider.value, 24f, colorRSlider.slider.value);
|
|
azureSky_Controller.LambdaCurveG[0] = AnimationCurve.Linear(0f, colorGSlider.slider.value, 24f, colorGSlider.slider.value);
|
|
azureSky_Controller.LambdaCurveB[0] = AnimationCurve.Linear(0f, colorBSlider.slider.value, 24f, colorBSlider.slider.value);
|
|
}
|
|
|
|
public void UpdateSkyGame(float altitude, float colorR, float colorG, float colorB)
|
|
{
|
|
azureSky_Controller.AltitudeCurve[0] = AnimationCurve.Linear(0f, altitude, 24f, altitude);
|
|
azureSky_Controller.LambdaCurveR[0] = AnimationCurve.Linear(0f, colorR, 24f, colorR);
|
|
azureSky_Controller.LambdaCurveG[0] = AnimationCurve.Linear(0f, colorG, 24f, colorG);
|
|
azureSky_Controller.LambdaCurveB[0] = AnimationCurve.Linear(0f, colorB, 24f, colorB);
|
|
}
|
|
|
|
public float GetSetting(SkySettingsSlider.SettingType settingType)
|
|
{
|
|
switch (settingType)
|
|
{
|
|
case SkySettingsSlider.SettingType.ALTITUDE:
|
|
return azureSky_Controller.AltitudeCurve[0].Evaluate(0f);
|
|
case SkySettingsSlider.SettingType.COLOR_R:
|
|
return azureSky_Controller.LambdaCurveR[0].Evaluate(0f);
|
|
case SkySettingsSlider.SettingType.COLOR_G:
|
|
return azureSky_Controller.LambdaCurveG[0].Evaluate(0f);
|
|
case SkySettingsSlider.SettingType.COLOR_B:
|
|
return azureSky_Controller.LambdaCurveB[0].Evaluate(0f);
|
|
default:
|
|
return 0f;
|
|
}
|
|
}
|
|
|
|
public void SetSetting(SkySettingsSlider.SettingType settingType, float newValue)
|
|
{
|
|
switch (settingType)
|
|
{
|
|
case SkySettingsSlider.SettingType.ALTITUDE:
|
|
altitudeSlider.slider.value = newValue;
|
|
break;
|
|
case SkySettingsSlider.SettingType.COLOR_R:
|
|
colorRSlider.slider.value = newValue;
|
|
break;
|
|
case SkySettingsSlider.SettingType.COLOR_G:
|
|
colorGSlider.slider.value = newValue;
|
|
break;
|
|
case SkySettingsSlider.SettingType.COLOR_B:
|
|
colorBSlider.slider.value = newValue;
|
|
break;
|
|
}
|
|
}
|
|
}
|