using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using UnityEngine.Events; public class BoxScreenDistance : MonoBehaviour { [SerializeField] Slider slider; [SerializeField] Text screenSizeText; [SerializeField] Text distanceText; const float ScreenSizeMax = 128; [SerializeField] InputField inputSize; void Start() { slider.maxValue = ScreenSizeMax; //RefreshScreenSizeSlider(); InitForRotateConvert(); //slider.onValueChanged.AddListener(v => { // UserSettings.ins.bowRotateConvert.screenSize = v; // UserSettings.ins.Save(); // RefreshScreenSizeSlider(); //}); } void RefreshScreenSizeSlider() { slider.SetValueWithoutNotify(UserSettings.ins.bowRotateConvert.screenSize); SetScreenSize(UserSettings.ins.bowRotateConvert.screenSize); SetScreenDistance(UserSettings.ins.bowRotateConvert.GetAdviseScreenDistance()); } void SetScreenSize(float v) { string vStr = v.ToString("#0"); screenSizeText.text = vStr + "Inch"; } void SetScreenDistance(float v) { string vStr = v.ToString("#0.00"); distanceText.text = vStr + "M"; } void InitForRotateConvert() { UnityAction onEndEdit_inputSize = (string str) => { inputSize.SetTextWithoutNotify(""); float v = (float)System.Math.Round(double.Parse(str), 2); if (v < 1 || v > 120) { PopupMgr.ins.ShowTip(TextAutoLanguage2.GetTextByCNKey("输入值不在常规范围内")); return; } SetScreenSize(v); //save UserSettings.ins.bowRotateConvert.screenSize = v; UserSettings.ins.Save(); SetScreenDistance(UserSettings.ins.bowRotateConvert.GetAdviseScreenDistance()); }; inputSize.onEndEdit.AddListener(onEndEdit_inputSize); SetScreenSize(UserSettings.ins.bowRotateConvert.screenSize); SetScreenDistance(UserSettings.ins.bowRotateConvert.GetAdviseScreenDistance()); //if (CommonConfig.isReleaseVersion) //{ // //inputSize.transform.parent.gameObject.SetActive(false); // //transform.Find("Items/BowCameraFixed").gameObject.SetActive(false); //} } }