Files
Ultimate-Fishing-Simulator-…/Assets/Scripts/Assembly-CSharp/GameSettingsEventsHandlers.cs
2026-03-04 09:37:33 +08:00

54 lines
1.0 KiB
C#

using DG.Tweening;
using Obvious.Soap;
using UnityEngine;
using UnityEngine.Audio;
public class GameSettingsEventsHandlers : MonoBehaviour
{
[SerializeField]
private AudioMixer audioMixer;
[SerializeField]
private BoolVariable pleaseWait_IsOpen;
private Tween setQualityLevelTween;
public void ChangeSettingLevel(int level)
{
if (setQualityLevelTween != null && setQualityLevelTween.IsActive())
{
setQualityLevelTween.Kill();
}
pleaseWait_IsOpen.Value = true;
setQualityLevelTween = DOVirtual.DelayedCall(1f, delegate
{
QualitySettings.SetQualityLevel(level, applyExpensiveChanges: true);
pleaseWait_IsOpen.Value = false;
});
}
public void ChangeAudioUnderwater(float volume)
{
audioMixer?.SetFloat("Underwater", Mathf.Log10(volume) * 20f);
}
public void ChangeLODBias(int level)
{
switch (level)
{
case 0:
QualitySettings.lodBias = 0.4f;
break;
case 1:
QualitySettings.lodBias = 0.6f;
break;
case 2:
QualitySettings.lodBias = 0.8f;
break;
case 3:
QualitySettings.lodBias = 1f;
break;
}
}
}