65 lines
1.3 KiB
C#
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 + " %";
|
|
}
|
|
}
|