//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Saturday, November 25, 2017 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; //关于任务的提升面板 namespace vnxbqy.UI { public class HoistingWin : Window { [SerializeField] ScrollRect m_Scroller; [SerializeField] Button FairyLandButton;//仙界秘境; [SerializeField] Button WorldBossButton;//世界Boss按钮 [SerializeField] Button PrayerButton;//祈愿 [SerializeField] Button m_DailyQuest; [SerializeField] Button HangUpButton;//挂机 [SerializeField] Button FairyTaskButton;//仙盟任务 [SerializeField] Vector2 m_Size; private int number = 0; DungeonModel m_DungeonModel; DungeonModel dungeonModel { get { return m_DungeonModel ?? (m_DungeonModel = ModelCenter.Instance.GetModel()); } } TreasureModel m_Model; TreasureModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel()); } } TaskModel m_TaskModel; TaskModel taskmodel { get { return m_TaskModel ?? (m_TaskModel = ModelCenter.Instance.GetModel()); } } WorldBossModel Worldmodel { get { return ModelCenter.Instance.GetModel(); } } DailyQuestModel dailyquestmodel { get { return ModelCenter.Instance.GetModel(); } } #region Built-in protected override void BindController() { } protected override void AddListeners() { FairyLandButton.AddListener(() => { Close(); dailyquestmodel.wannaLookDailyQuest = (int)DailyQuestType.FairyLand; WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.DailyQuestFunc1); }); PrayerButton.AddListener(() => { Close(); WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.WelfareFunc2); }); HangUpButton.AddListener(() => { Close(); var mapModel = ModelCenter.Instance.GetModel(); var point = mapModel.GetRecommendHangPoint(); var config = MapEventPointConfig.Get(point); MapTransferUtility.Instance.MoveToNPC(config.NPCID); }); WorldBossButton.AddListener(() => { Close(); WindowCenter.Instance.Open(false, 1); }); FairyTaskButton.AddListener(()=> { Close(); WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.UnionTask); }); m_DailyQuest.AddListener(() => { Close(); WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.DailyQuestFunc1); }); } protected override void OnPreOpen() { number = 0; DungeonRecord dungeonRecord; dungeonModel.TryGetRecord(31080, out dungeonRecord); var times = dungeonRecord == null ? 0 : dungeonRecord.enterTimes; //if (FuncOpen.Instance.IsFuncOpen(86) && dungeonModel.GetTotalTimes(31080) > times)//仙界秘境 //{ // number++; // FairyLandButton.SetActive(true); //} //else //{ // FairyLandButton.SetActive(false); //} //if (FuncOpen.Instance.IsFuncOpen(21) && GeneralDefine.bossWearyValues[0] + Worldmodel.extraBossWearyValue > Worldmodel.wearyValue) //{ // number++; // WorldBossButton.SetActive(true); //} //else //{ // WorldBossButton.SetActive(false); //} if (FuncOpen.Instance.IsFuncOpen(60) && ModelCenter.Instance.GetModel().expPrayerCnt < ModelCenter.Instance.GetModel().GetAllExpPrayCnt())//祈愿 { number++; PrayerButton.SetActive(true); } else { PrayerButton.SetActive(false); } if (FuncOpen.Instance.IsFuncOpen(78)) { number++; m_DailyQuest.SetActive(true); } else { m_DailyQuest.SetActive(false); } if (FuncOpen.Instance.IsFuncOpen(40))//挂机 { number++; HangUpButton.SetActive(true); } else { HangUpButton.SetActive(false); } //if (FuncOpen.Instance.IsFuncOpen(16) && TaskAllocation.Instance.FairyAuAllNumber() < taskmodel.FairyAuTaskCount_Day)//仙盟任务 //{ // number++; // FairyTaskButton.SetActive(true); //} //else //{ // FairyTaskButton.SetActive(false); //} WorldBossButton.SetActive(false); FairyTaskButton.SetActive(false); FairyLandButton.SetActive(false); m_Scroller.verticalNormalizedPosition = 1f; var size = number * 64f + Mathf.Max(number - 1, 0) * 6; size = Mathf.Clamp(size, m_Size.x, m_Size.y); var rect = m_Scroller.transform as RectTransform; rect.sizeDelta = rect.sizeDelta.SetY(size); m_Scroller.enabled = number > 4; } protected override void OnAfterOpen() { if (number <= 0) { Close(); } } protected override void OnPreClose() { } protected override void OnAfterClose() { } #endregion } }