//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Tuesday, September 12, 2017 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using TableConfig; using Snxxz.UI; namespace Snxxz.UI { public class TaiChilDungeonEntranceWin : Window { [Header("BaseInfo")] [SerializeField] Text m_DungeonTitle; [SerializeField] TaiChiBreifInfo m_BreifInfo; [Header("Button")] [SerializeField] ButtonEx m_SingleStart; [SerializeField] Button m_CloseWin; DungeonModel m_Model; DungeonModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel()); } } TaiChiModel _taiChiModel; TaiChiModel taiChiModel { get { return _taiChiModel ?? (_taiChiModel = ModelCenter.Instance.GetModel()); } } #region Built-in protected override void BindController() { } protected override void AddListeners() { m_SingleStart.AddListener(ChallengeDungeon); m_CloseWin.AddListener(CloseClick); } protected override void OnPreOpen() { DrawDungeonBaseInfo(); m_BreifInfo.SetDungeonInfo(model.currentDungeon); } protected override void OnAfterOpen() { } protected override void OnPreClose() { } protected override void OnAfterClose() { } protected override void LateUpdate() { base.LateUpdate(); } #endregion private void DrawDungeonBaseInfo() { var dailyOpenConfig = Config.Instance.Get(model.currentDungeon.mapId); m_DungeonTitle.text = dailyOpenConfig.ActionName; } private void ChallengeDungeon() { int error = 0; if(!taiChiModel.CheckEnterError(out error)) { var state = taiChiModel.dailyQuestModel.GetQuestState(taiChiModel.TaiChiDailyTaskID); if (state == DailyQuestModel.DailyQuestState.Normal) { WindowCenter.Instance.Open(); } else { MessageWin.Inst.ShowFixedTip(Language.Get("L1020")); } } else { ProcessEnterDungeonError(error); } } private void ProcessEnterDungeonError(int _error) { switch (_error) { case 1: MessageWin.Inst.ShowFixedTip(Language.Get("L1005")); break; case 2: MessageWin.Inst.ShowFixedTip(Language.Get("CopyLimit_Z")); break; } } } }