using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using System; using Snxxz.UI; using TableConfig; namespace EnhancedUI.EnhancedScroller { public class MarketPutedItem : MonoBehaviour { [SerializeField] Button m_ItemBtn; [SerializeField] Text m_ItemName; [SerializeField] Image m_ItemBG; [SerializeField] Image m_ItemIcon; [SerializeField] List m_Stars; [SerializeField] Text m_ItemCount; [SerializeField] Text m_ItemCost; private string m_UseData = string.Empty; private int index = 0; PlayerPackModel m_PackModel; PlayerPackModel PackModel { get { return m_PackModel ?? (m_PackModel = ModelCenter.Instance.GetModel()); } } ItemTipsModel _itemTipsModel; ItemTipsModel itemTipsModel { get { return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel()); } } private void Awake() { m_ItemBtn.onClick.AddListener(OnItemClick); } private void OnItemClick() { var _data = PlayerDatas.Instance.market.putawayList[index]; var _cfg = Config.Instance.Get((int)_data.ItemTypeID); ItemAttrData attrData = new ItemAttrData((int)_data.ItemTypeID, false, _data.Count, -1, 0, false, PackType.rptDeleted, "", ConfigParse.Analysis(_data.UserData)); attrData.SetTipsFuncBtn(ItemWinBtnType.putItemout, OnPutawayClick); itemTipsModel.SetItemTipsModel(attrData); } private void OnPutawayClick(ItemWinBtnType _type, string arg2) { KnapSackEventMgr.Instance.HideItemPopWin(); switch (_type) { case ItemWinBtnType.putItemout: { var _data = PlayerDatas.Instance.market.putawayList[index]; int gridCnt = PackModel.GetReaminGridCount(PackType.rptItem); if (gridCnt < 1) { MessageWin.Inst.ShowFixedTip(Language.Get("KnapS130")); return; } C1B03_tagCMPlayerRecaptureBourseItem putoutpack = new C1B03_tagCMPlayerRecaptureBourseItem(); putoutpack.ItemGUID = _data.ItemGUID; GameNetSystem.Instance.SendInfo(putoutpack); } break; } } public void Display(int _index) { index = _index; List list = PlayerDatas.Instance.market.putawayList; if (_index >= list.Count) { return; } var _data = list[_index]; var _cfg = Config.Instance.Get((int)_data.ItemTypeID); var _itemColor = _cfg.ItemColor; if (_cfg.Type == 111) { _itemColor = UIHelper.GetItemColor(_cfg.ID, ConfigParse.Analysis(_data.UserData)); } bool _bright = (m_ItemName is RichText) ? (m_ItemName as RichText).colorType == RichText.ColorType.Bright : true; m_ItemName.text = _cfg.ItemName; m_ItemName.color = UIHelper.GetUIColor(_itemColor, _bright); m_ItemBG.SetItemBackGround(_itemColor); m_ItemIcon.SetSprite(_cfg.IconKey); m_ItemCost.text = _data.PriceCount.ToString(); m_ItemCount.gameObject.SetActive(_data.Count > 1); m_ItemCount.text = _data.Count.ToString(); for (int i = 0; i < m_Stars.Count; i++) { m_Stars[i].SetActive(i < _cfg.StarLevel); } } } }