| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Saturday, November 24, 2018 |
| | | //-------------------------------------------------------- |
| | | |
| | | using System; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | | |
| | | namespace Snxxz.UI |
| | | { |
| | | |
| | | public class WelcomeWin : Window |
| | | { |
| | | |
| | | [SerializeField] UIAlphaTween m_AlphaTween; |
| | | [SerializeField] Button m_Close; |
| | | [SerializeField] float m_ForbidTime = 5f; |
| | | [SerializeField] float m_OutTime = 10f; |
| | | |
| | | float superOutTime = 15f; |
| | | float timer = 0f; |
| | | bool ensured = false; |
| | | |
| | | #region Built-in |
| | | protected override void BindController() |
| | | { |
| | | } |
| | | |
| | | protected override void AddListeners() |
| | | { |
| | | m_Close.AddListener(Ensure); |
| | | } |
| | | |
| | | protected override void OnPreOpen() |
| | | { |
| | | ensured = false; |
| | | m_AlphaTween.SetStartState(); |
| | | } |
| | | |
| | | protected override void OnAfterOpen() |
| | | { |
| | | } |
| | | |
| | | protected override void OnPreClose() |
| | | { |
| | | } |
| | | |
| | | protected override void OnAfterClose() |
| | | { |
| | | } |
| | | |
| | | protected override void LateUpdate() |
| | | { |
| | | base.LateUpdate(); |
| | | |
| | | timer += Time.deltaTime; |
| | | if (timer > m_OutTime) |
| | | { |
| | | if (!ensured) |
| | | { |
| | | ensured = true; |
| | | FadeOut(); |
| | | } |
| | | } |
| | | |
| | | if (timer > superOutTime) |
| | | { |
| | | OnFadeOutComplete(); |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | private void Ensure() |
| | | { |
| | | if (timer < m_ForbidTime) |
| | | { |
| | | return; |
| | | } |
| | | |
| | | if (!ensured) |
| | | { |
| | | ensured = true; |
| | | FadeOut(); |
| | | } |
| | | } |
| | | |
| | | private void FadeOut() |
| | | { |
| | | m_AlphaTween.Play(OnFadeOutComplete); |
| | | } |
| | | |
| | | private void OnFadeOutComplete() |
| | | { |
| | | CloseClick(); |
| | | WindowCenter.Instance.Open<MainInterfaceWin>(); |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |