//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Wednesday, September 06, 2017 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { public class MapFrameWin : Window { [SerializeField] Button m_CloseButton; [SerializeField] FunctionButtonGroup m_FunctionGroup; [SerializeField] FunctionButton m_LocalMap; [SerializeField] FunctionButton m_WorldMap; [SerializeField] Button m_LeftBtn; [SerializeField] Button m_RightBtn; MapModel m_Model; MapModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel()); } } #region Built-in protected override void BindController() { m_CloseButton.AddListener(CloseClick); m_LocalMap.AddListener(SelectLocalMap); m_WorldMap.AddListener(SelectWorldMap); m_LeftBtn.AddListener(LeftBtnEvent); m_RightBtn.AddListener(RightBtnEvent); } protected override void AddListeners() { } protected override void OnPreOpen() { } protected override void OnAfterOpen() { } protected override void OnPreClose() { WindowCenter.Instance.Close(); WindowCenter.Instance.Close(); model.wannaLookLocalMap = 0; } protected override void OnAfterClose() { if (!WindowJumpMgr.Instance.IsJumpState) { WindowCenter.Instance.Open(); } } protected override void OnActived() { base.OnActived(); var dataMapId = MapUtility.GetDataMapId(); var lineId = MapUtility.GetLineId(); var mapResConfig = MapResourcesConfig.GetConfig(dataMapId, lineId); if (string.IsNullOrEmpty(mapResConfig.BigMap)) { SelectWorldMap(); } else { m_FunctionGroup.TriggerByOrder(functionOrder); } } #endregion private void SelectLocalMap() { var dataMapId = MapUtility.GetDataMapId(); var lineId = MapUtility.GetLineId(); var mapResConfig = MapResourcesConfig.GetConfig(dataMapId, lineId); if (mapResConfig == null || string.IsNullOrEmpty(mapResConfig.BigMap)) { SysNotifyMgr.Instance.ShowTip("MapInfo1"); } else { WindowCenter.Instance.Close(); WindowCenter.Instance.Open(); functionOrder = m_LocalMap.order; } } private void SelectWorldMap() { WindowCenter.Instance.Close(); WindowCenter.Instance.Open(); functionOrder = m_WorldMap.order; } private void LeftBtnEvent() { m_FunctionGroup.TriggerLast(); } private void RightBtnEvent() { m_FunctionGroup.TriggerNext(); } public override void CloseClick() { base.CloseClick(); WorldMapSkip.Instance.StopCMD(); } } }