//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, November 13, 2017 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.UI { public class ElderGodAreaRebornWin : Window { [SerializeField] Text m_ReBornTimer; [SerializeField] Button m_Reborn; PlayerDeadModel DeadModel { get { return ModelCenter.Instance.GetModel(); } } float rebornTime = 0f; float secondTimer = 0f; bool sendReborn = false; #region Built-in protected override void BindController() { } protected override void AddListeners() { m_Reborn.AddListener(Reborn); } protected override void OnPreOpen() { secondTimer = 0f; sendReborn = false; try { rebornTime = Time.time + GeneralDefine.dungeonRebornClientTimes[ElderGodAreaModel.ELDERGODAREA_MAPID]; if (rebornTime <= Time.time) { Reborn(); } } catch (Exception ex) { Debug.Log(ex); rebornTime = Time.time + 10f; } } protected override void OnAfterOpen() { } protected override void OnPreClose() { if (!sendReborn) { Reborn(); } } protected override void OnAfterClose() { } #endregion protected override void LateUpdate() { base.LateUpdate(); if (Time.time >= rebornTime) { if (!sendReborn) { Reborn(); } } else { secondTimer -= Time.deltaTime; if (secondTimer < 0f) { secondTimer = 1f; var surplusSecond = Mathf.RoundToInt(rebornTime - Time.time); m_ReBornTimer.text = StringUtility.Contact("(", surplusSecond, ")"); } } } private void Reborn() { sendReborn = true; DeadModel.SendRebornQuest(0); } } }