少年修仙传客户端代码仓库
client_linchunjie
2018-10-19 f7765ac81cb33282f4d14c5d5edf4dc85d5f631e
2183 【主干】【1.1.0】集市已上架相同id物品数量过多,上架该物品界面报错
1个文件已修改
2个文件已添加
162 ■■■■■ 已修改文件
System/Market/PutawayItem.cs 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Market/PutawayItem.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Market/PutawayWin.cs 74 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Market/PutawayItem.cs
New file
@@ -0,0 +1,76 @@
using System;
using System.Collections;
using System.Collections.Generic;
using TableConfig;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI
{
    public class PutawayItem : MonoBehaviour
    {
        [SerializeField] Button m_Buy;
        [SerializeField] Text m_Price;
        [SerializeField] Image m_ItemBG;
        [SerializeField] Image m_ItemIcon;
        [SerializeField] Text m_ItemName;
        [SerializeField] Text m_ItemCount;
        [SerializeField] Transform[] m_Stars;
        public void Init(MarketItemData data, Action<MarketItemData> callback)
        {
            ItemConfig config = Config.Instance.Get<ItemConfig>((int)data.ItemTypeID);
            int uintprice = (int)data.PriceCount / data.Count;
            if (uintprice < 1)
            {
                m_Price.text = "<1";
            }
            else
            {
                m_Price.text = data.PriceCount.ToString();
            }
            m_Buy.onClick.RemoveAllListeners();
            m_Buy.onClick.AddListener(() =>
            {
                if (callback != null)
                {
                    callback(data);
                }
            });
            if (config != null)
            {
                m_ItemName.text = config.ItemName;
                var itemColor = config.ItemColor;
                if (config.Type == 111)//翅膀
                {
                    itemColor = UIHelper.GetItemColor(config.ID, ConfigParse.Analysis(data.UserData));
                }
                m_ItemBG.SetItemBackGround(itemColor);
                bool _bright = (m_ItemName is RichText) ? (m_ItemName as RichText).colorType == RichText.ColorType.Bright : true;
                m_ItemName.color = UIHelper.GetUIColor(itemColor, _bright);
                m_ItemIcon.SetSprite(config.IconKey);
                for (int i = 0; i < m_Stars.Length; i++)
                {
                    if (i < config.StarLevel)
                    {
                        m_Stars[i].gameObject.SetActive(true);
                    }
                    else
                    {
                        m_Stars[i].gameObject.SetActive(false);
                    }
                }
            }
            if (data.Count == 1)
            {
                m_ItemCount.gameObject.SetActive(false);
            }
            else
            {
                m_ItemCount.gameObject.SetActive(true);
                m_ItemCount.text = data.Count.ToString();
            }
        }
    }
}
System/Market/PutawayItem.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 3e90d375cb6ec624ca467c0301e4cc56
timeCreated: 1539935463
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/Market/PutawayWin.cs
@@ -39,7 +39,7 @@
        [SerializeField] Button reduceBtn;
        [SerializeField] Text itemNum;
        [SerializeField] Transform queryItemTf;
        [SerializeField] PutawayItem[] queryItems;
        [SerializeField] GameObject noOtherTip;
        [SerializeField] Text putawayBtnText;
@@ -186,72 +186,25 @@
            model.queryMarketItemList.TryGetValue(0, out list);
            if (list != null)
            {
                int _Cnt = 0;
                var index = 0;
                for (int i = 0; i < list.Count; i++)
                {
                    MarketItemData data = list[i];
                    if (data.PlayerID != PlayerDatas.Instance.baseData.PlayerID)
                    {
                        Transform child = queryItemTf.GetChild(_Cnt);
                        _Cnt++;
                        child.gameObject.SetActive(true);
                        ItemConfig cfg = Config.Instance.Get<ItemConfig>((int)data.ItemTypeID);
                        Text text = child.Find("PriceCnt").GetComponent<Text>();
                        int uintprice = (int)data.PriceCount / data.Count;
                        if (uintprice < 1) text.text = "<1";
                        else text.text = data.PriceCount.ToString();
                        Button btn = child.GetComponent<Button>();
                        btn.onClick.RemoveAllListeners();
                        btn.onClick.AddListener(() =>
                        {
                            OnQueryItemClick(data);
                        });
                        if (cfg != null)
                        {
                            text = child.Find("ItemName").GetComponent<Text>();
                            text.text = cfg.ItemName;
                            Image img = child.Find("Item/EquipBG").GetComponent<Image>();
                            var _itemColor = cfg.ItemColor;
                            if (cfg.Type == 111)//翅膀
                            {
                                _itemColor = UIHelper.GetItemColor(cfg.ID, ConfigParse.Analysis(data.UserData));
                            }
                            img.SetItemBackGround(_itemColor);
                            bool _bright = (text is RichText) ? (text as RichText).colorType == RichText.ColorType.Bright : true;
                            text.color = UIHelper.GetUIColor(_itemColor, _bright);
                            img = child.Find("Item/ItemIcon").GetComponent<Image>();
                            img.SetSprite(cfg.IconKey);
                            for (int j = 0; j < 3; j++)
                            {
                                GameObject obj = child.transform.Find(string.Format("Item/StarList/{0}", j)).gameObject;
                                if (j < cfg.StarLevel)
                                {
                                    obj.SetActive(true);
                                }
                                else
                                {
                                    obj.SetActive(false);
                                }
                            }
                        if (index < queryItems.Length)
                        {
                            queryItems[index].gameObject.SetActive(true);
                            queryItems[index].Init(data, OnQueryItemClick);
                        }
                        text = child.Find("Item/CountText").GetComponent<Text>();
                        if (data.Count == 1) text.gameObject.SetActive(false);
                        else
                        {
                            text.gameObject.SetActive(true);
                            text.text = data.Count.ToString();
                        }
                        index++;
                    }
                }
                for (int i = _Cnt; i < 3; i++)
                for (int i = index; i < 3; i++)
                {
                    queryItemTf.GetChild(i).gameObject.SetActive(false);
                }
                if (_Cnt > 0)
                {
                    queryItemTf.gameObject.SetActive(true);
                    noOtherTip.SetActive(false);
                }
                    queryItems[i].gameObject.SetActive(false);
                }
                noOtherTip.SetActive(index == 0);
            }
        }
        #region 购买物品
@@ -343,7 +296,10 @@
        private void InitData()
        {
            queryItemTf.gameObject.SetActive(false);
            for (int i = 0; i < queryItems.Length; i++)
            {
                queryItems[i].gameObject.SetActive(false);
            }
            noOtherTip.SetActive(true);
            if (PutawayData.Instance.itemModel == null)
            {