BoxScreenDistance.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5. public class BoxScreenDistance : MonoBehaviour
  6. {
  7. [SerializeField] Slider slider;
  8. [SerializeField] Text screenSizeText;
  9. [SerializeField] Text distanceText;
  10. const float ScreenSizeMax = 128;
  11. void Start()
  12. {
  13. slider.maxValue = ScreenSizeMax;
  14. RefreshScreenSizeSlider();
  15. slider.onValueChanged.AddListener(v => {
  16. UserSettings.ins.bowRotateConvert.screenSize = v;
  17. UserSettings.ins.Save();
  18. RefreshScreenSizeSlider();
  19. });
  20. }
  21. void RefreshScreenSizeSlider()
  22. {
  23. slider.SetValueWithoutNotify(UserSettings.ins.bowRotateConvert.screenSize);
  24. SetScreenSize(UserSettings.ins.bowRotateConvert.screenSize);
  25. SetScreenDistance(UserSettings.ins.bowRotateConvert.GetAdviseScreenDistance());
  26. }
  27. void SetScreenSize(float v)
  28. {
  29. string vStr = v.ToString("#0");
  30. screenSizeText.text = vStr + "Inch";
  31. }
  32. void SetScreenDistance(float v)
  33. {
  34. string vStr = v.ToString("#0.00");
  35. distanceText.text = vStr + "M";
  36. }
  37. }