using Snxxz.UI; using System; using System.Collections; using System.Collections.Generic; using TableConfig; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { public class MountStoneTipsWin : Window { ItemTipsModel _itemTipsModel; ItemTipsModel itemTipsModel { get { return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel()); } } PlayerPackModel _playerPack; PlayerPackModel playerPack { get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel()); } } RoleParticularModel m_RoleParticularModel; RoleParticularModel roleParticularModel { get { return m_RoleParticularModel ?? (m_RoleParticularModel = ModelCenter.Instance.GetModel()); } } //坐骑魂石面板 [SerializeField] ScrollerController m_ScrollerController; [SerializeField] Button CloseBtn; [SerializeField] GameObject m_Text_Power; [SerializeField] Text m_PowerNum; private Dictionary tag_Item = new Dictionary();//坐骑魂石存 Dictionary tagCIM = new Dictionary(); private List ListID = new List(); PlayerMountDatas m_HorseModel; PlayerMountDatas horsemodel { get { return m_HorseModel ?? (m_HorseModel = ModelCenter.Instance.GetModel()); } } protected override void BindController() { tag_Item = horsemodel._DicMountItem; } protected override void AddListeners() { CloseBtn.onClick.AddListener(CloseButton); } protected override void OnPreOpen() { GetPetPower(); ListId(); ListSortId();//排序 m_ScrollerController.OnRefreshCell += OnRefreshGridCell; OnCreateGridLineCell(m_ScrollerController); m_ScrollerController.JumpIndex(JumpIndex()); } protected override void OnAfterOpen() { PlayerMountDatas.Event_MountHA339U += HA339; roleParticularModel.PowerUpdate += PowerUpdate; } protected override void OnPreClose() { horsemodel.MountStoneItemId = 0; } protected override void OnAfterClose() { m_ScrollerController.OnRefreshCell -= OnRefreshGridCell; PlayerMountDatas.Event_MountHA339U -= HA339; roleParticularModel.PowerUpdate -= PowerUpdate; } private void PowerUpdate() { GetPetPower(); } private void GetPetPower() { ulong PetPower = roleParticularModel.GetFuncFightPower((int)FuncPowerType.HorseSoul); if (PetPower > 0) { m_Text_Power.SetActive(true); m_PowerNum.gameObject.SetActive(true); m_PowerNum.text = "+" + PetPower; } else { m_Text_Power.SetActive(false); m_PowerNum.gameObject.SetActive(false); } } void OnCreateGridLineCell(ScrollerController gridCtrl)//预制体创建 { gridCtrl.Refresh(); for (int i = 0; i < ListID.Count; i++) { gridCtrl.AddCell(ScrollerDataType.Header, ListID[i]); } gridCtrl.Restart(); } void CloseButton() { Close(); } private void OnRefreshGridCell(ScrollerDataType type, CellView cell) { int _id = cell.index; MountStoneItem _MountStoneItem = cell.GetComponent(); ItemConfig _item = Config.Instance.Get(_id.ToString()); if (Config.Instance.Get(_id) == null) return; _MountStoneItem.m_BGMItem.SetItemBackGround(_item.ItemColor); _MountStoneItem.Item.SetSprite(_item.IconKey); _MountStoneItem.ItemButton.GetComponent