using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; //灵兽系统主面板 namespace Snxxz.UI { public class PetWin : Window { [SerializeField] FunctionButton PetPanelBtn;//灵宠面板按钮 [SerializeField] FunctionButton EvolveTrainWinBtn;//灵宠培养面板按钮 [SerializeField] FunctionButtonGroup FuncBtnGroup; [SerializeField] Button _CloseBtn; [SerializeField] Button _LeftBtn; [SerializeField] Button _RightBtn; PlayerPetDatas m_petModel; PlayerPetDatas petmodel { get { return m_petModel ?? (m_petModel = ModelCenter.Instance.GetModel()); } } PlayerMountDatas m_MountModel; PlayerMountDatas mountModel { get { return m_MountModel ?? (m_MountModel = ModelCenter.Instance.GetModel()); } } void CloseBtn() { CloseChild(); WindowCenter.Instance.CloseImmediately(); WindowCenter.Instance.Open(); } protected override void BindController() { } protected override void OnPreOpen() { // functionOrder = 0; } protected override void OnAfterOpen() { } protected override void OnPreClose() { CloseChild(); } protected override void OnAfterClose() { } protected override void OnActived() { base.OnActived(); if (!WindowJumpMgr.Instance.IsJumpState)//是否进行跳转 { if (mountModel.IsHorsePanelState() > petmodel.IsPetPanelRedPointState()) { functionOrder = 1; } } FuncBtnGroup.TriggerByOrder(functionOrder); } protected override void AddListeners() { _CloseBtn.onClick.AddListener(CloseBtn); PetPanelBtn.AddListener(OnClickPetPanel); EvolveTrainWinBtn.AddListener(OnClickEvolveTrainWin); _LeftBtn.AddListener(OnClickLeftBtn); _RightBtn.AddListener(OnClickRightBtn); } private void OnClickRightBtn() { FuncBtnGroup.TriggerNext(); } private void OnClickLeftBtn() { FuncBtnGroup.TriggerLast(); } private void OnClickPetPanel() { CloseChild(); if (windowState == WindowState.Opened) { WindowCenter.Instance.OpenWithoutAnimation(); } else { WindowCenter.Instance.Open(true); } functionOrder = 1; } private void OnClickEvolveTrainWin() { CloseChild(); if (windowState == WindowState.Opened) { WindowCenter.Instance.OpenWithoutAnimation(); } else { WindowCenter.Instance.Open(true); } functionOrder = 0; } void CloseChild() { if (WindowCenter.Instance.CheckOpen()) { WindowCenter.Instance.CloseImmediately(); } if (WindowCenter.Instance.CheckOpen()) { WindowCenter.Instance.CloseImmediately(); } } } }