using Snxxz.UI; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace EnhancedUI.EnhancedScroller { public class RuneBothAttrCell : ScrollerUI { [SerializeField] Text m_RuneNameTxt; [SerializeField] Text m_RuneTowerTxt; [SerializeField] Image m_LockImg; [SerializeField] Image m_BottomImg; [SerializeField] RedpointBehaviour m_Redpoint; RuneComposeModel m_Model; RuneComposeModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel()); } } RuneModel runeModel { get { return ModelCenter.Instance.GetModel(); } } public override void Refresh(CellView cell) { if (!model.runeComposeDict.ContainsKey(model.presentSelectRuneQuality)) { return; } List _list = model.runeComposeDict[model.presentSelectRuneQuality]; if (cell.index >= _list.Count) { return; } ItemConfig _itemCfg = ItemConfig.Get(_list[cell.index].TagItemID); m_RuneNameTxt.text = _itemCfg.ItemName; RuneConfig _runeCfg = RuneConfig.Get(_itemCfg.ID); bool _unlockTower = _runeCfg.TowerID <= runeModel.passRuneTowerFloor; m_LockImg.gameObject.SetActive(!_unlockTower); m_RuneTowerTxt.gameObject.SetActive(!_unlockTower); var _redpointTypeKey = 10803 * 100 + model.presentSelectRuneQuality; m_Redpoint.redpointId = _redpointTypeKey * 100 + cell.index; if (!_unlockTower) { RuneTowerFloorConfig _runeTowerCfg = RuneTowerFloorConfig.Get(_runeCfg.TowerID); RuneTowerConfig _towerCfg = RuneTowerConfig.Get(_runeTowerCfg.TowerId); m_RuneTowerTxt.text = StringUtility.Contact(_towerCfg.TowerName, _runeTowerCfg.FloorName, Language.Get("MountPanel_UnlockBtn_1")); } m_RuneNameTxt.alignment = _unlockTower ? TextAnchor.MiddleCenter : TextAnchor.UpperCenter; if (cell.index == model.presentSelectComposeRune) { m_BottomImg.SetSprite("ChildListBtn_Select"); } else { m_BottomImg.SetSprite("ChildListBtn_UnSelect"); } } } }