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

65 lines
1.3 KiB
C#

using UnityEngine;
using UnityEngine.UI;
public class VRMenuSizeSlider : MonoBehaviour
{
public Text text;
private Slider slider;
public bool hudSize;
private void Start()
{
}
private void OnEnable()
{
Refresh();
}
public void Refresh()
{
if ((bool)VRManager.Instance)
{
slider = GetComponent<Slider>();
if (hudSize)
{
slider.minValue = VRManager.Instance.hudSizeMinMax.x;
slider.maxValue = VRManager.Instance.hudSizeMinMax.y;
slider.value = VRManager.Instance.hudSize;
}
else
{
slider.minValue = VRManager.Instance.menuSizeMinMax.x;
slider.maxValue = VRManager.Instance.menuSizeMinMax.y;
slider.value = VRManager.Instance.menuSize;
}
LanguageChanged();
}
}
public void UpdateValue()
{
if (hudSize)
{
VRManager.Instance.SetHUDSize(slider.value);
}
else
{
VRManager.Instance.SetMenuSize(slider.value);
}
LanguageChanged();
text.color = new Color(text.color.r, text.color.g, text.color.b, (!slider.interactable) ? slider.colors.disabledColor.a : 1f);
}
public void LanguageChanged()
{
string key = ((!hudSize) ? "VR_OPTIONS/MENU_SIZE" : "VR_OPTIONS/HUD_SIZE");
float num = Mathf.InverseLerp(slider.minValue, slider.maxValue, slider.value);
num += 0.5f;
num = Mathf.RoundToInt(num * 100f);
text.text = Utilities.GetTranslation(key) + ": " + num + " %";
}
}