using Assets.Scripts.UI.Control; using DG.Tweening; using System; using System.Collections; using System.Collections.Generic; using System.Linq; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; public class MainNav : MonoBehaviour { private GameObject exit; private GameObject home; private GameObject back; float delayTime = 0; private void Awake() { //var material = Instantiate(Resources.Load("UI/Material/RoundedCornersTextureMaterial")); //var rect = ((RectTransform)this.transform).rect; //material.SetVector(Shader.PropertyToID("_WidthHeightRadius"), new Vector4(rect.width, rect.height, rect.height, 0)); //this.GetComponent().material = material; var device = this.transform.Find("Device"); UIManager.AddEvent(device.gameObject, EventTriggerType.PointerClick, x => { //Debug.Log("click device"); UIManager.ShowDevicePanel(); }); home = this.transform.Find("Home").gameObject; UIManager.AddEvent(home, EventTriggerType.PointerClick, x => { UIManager.ShowHomePanel(); }); exit = this.transform.Find("Exit").gameObject; exit.SetActive(false); back = transform.Find("Back").gameObject; back.SetActive(false); #if UNITY_ANDROID || UNITY_IOS UIManager.AddEvent(transform.Find("Delay").gameObject, EventTriggerType.PointerClick, b => { delayTime = 3; transform.Find("Delay/Tooltips").gameObject.SetActive(true); transform.Find("Delay/Tooltips").GetComponent().DOFade(1, 0.5f); }); #endif //transform.Find("Delay").GetComponent().showTooltip = true; UIManager.AddEvent(exit, EventTriggerType.PointerClick, (e) => { UIManager.ShowConfirm("Quit", "Do you want to quit PowerFun?", ()=> { Application.Quit(); },2); }); UIManager.AddEvent(back, EventTriggerType.PointerClick, (e) => { UIManager.ShowPrePanel(); }); UIManager.AddEvent(transform.Find("Delay").gameObject, EventTriggerType.PointerClick, x => { var tooltips = transform.Find("Delay/Tooltips").gameObject; if (tooltips.activeInHierarchy) { DOTween.CompleteAll(true); tooltips.SetActive(false); } else { DOTween.CompleteAll(true); tooltips.SetActive(true); tooltips.GetComponent().alpha = 0f; tooltips.GetComponent().DOFade(1, 0.5f); } }); UIManager.AddEvent(transform.Find("Setting").gameObject, EventTriggerType.PointerClick, x => { UIManager.ShowSettingModal(); }); UIManager.AddEvent(transform.Find("Support").gameObject, EventTriggerType.PointerClick, x => { UIManager.ShowFeedBackModal(); }); UIManager.AddEvent(transform.Find("Mail").gameObject, EventTriggerType.PointerClick, x => { UIManager.ShowMailListPanel(); }); App.HasNotReadChanged -= ShowMailDot; App.HasNotReadChanged += ShowMailDot; } private void ShowMailDot(object sender, EventArgs e) { if (transform!=null) { transform.Find("Mail/Dot").gameObject.SetActive((bool)sender); } } // Start is called before the first frame update void Start() { } // Update is called once per frame void Update() { #if UNITY_ANDROID || UNITY_IOS if (delayTime < 0) { Debug.Log("小时"); delayTime = 0; transform.Find("Delay/Tooltips").GetComponent().DOFade(0, 0.5f).onComplete = ()=> { transform.Find("Delay/Tooltips").gameObject.SetActive(false); }; } else if(delayTime > 0) { Debug.Log(delayTime); delayTime -= Time.deltaTime; } #endif } public void ShowExit() { if (exit) { exit.SetActive(true); } if (home) { home.SetActive(false); } } public void ShowBack() { if (back) { back.SetActive(true); } if (home) { home.SetActive(false); } } }