少年修仙传客户端代码仓库
leonard Wu
2018-08-03 c2d2d5d3a840bf50968b3f95e304929bc62a7b70
System/KnapSack/Logic/BoxInfoWin.cs
@@ -21,6 +21,11 @@
        [SerializeField]
        Text conditionText;
        [SerializeField] Text needLvText;
        [SerializeField]
        Text realmTitleText;
        [SerializeField] Image realmImg;
        [SerializeField]
        Text itemTypeText;
@@ -134,57 +139,35 @@
            ItemCellModel cellModel = new ItemCellModel(itemTipsModel.curAttrData.itemId, itemTipsModel.curAttrData.isPreview, (ulong)itemTipsModel.curAttrData.count, itemTipsModel.curAttrData.isBind,
                itemTipsModel.curAttrData.guid, itemTipsModel.curAttrData.packType, false);
            itemCell.Init(cellModel);
            conditionText.text = Language.Get("KnapS110");
            string conditionStr = StringUtility.Contact(Language.Get("KnapS110"), itemTipsModel.curAttrData.itemConfig.UseLV);
            conditionText.gameObject.SetActive(false);
            needLvText.gameObject.SetActive(false);
            if (itemTipsModel.curAttrData.itemConfig.UseLV > 1)
            {
                conditionText.text = Language.Get("KnapS110");
                needLvText.text = itemTipsModel.curAttrData.itemConfig.UseLV.ToString();
            realmTitleText.gameObject.SetActive(false);
            realmImg.gameObject.SetActive(false);
            if (chestsConfig != null && chestsConfig.OpenMoney > 0)
            {
                conditionText.gameObject.SetActive(true);
                needLvText.gameObject.SetActive(true);
                if (PlayerDatas.Instance.baseData.LV >= itemTipsModel.curAttrData.itemConfig.UseLV)
                ulong haveMoney = UIHelper.GetMoneyCnt(1);
                if (haveMoney >= (ulong)chestsConfig.OpenMoney)
                {
                    conditionText.color = conditionColor;
                    needLvText.color = conditionColor;
                    conditionText.text = Language.Get("OpenBoxCostMoney", UIHelper.GetTextColorByItemColor(TextColType.Green, chestsConfig.OpenMoney.ToString()));
                }
                else
                {
                    conditionText.color = conditionRedColor;
                    needLvText.color = conditionRedColor;
                }
            }
            if(chestsConfig != null)
            {
                if (chestsConfig.OpenMoney > 0)
                {
                    conditionText.gameObject.SetActive(true);
                    needLvText.gameObject.SetActive(false);
                    ulong haveMoney = UIHelper.GetMoneyCnt(1);
                    if(haveMoney >= (ulong)chestsConfig.OpenMoney)
                    {
                        conditionText.text = Language.Get("OpenBoxCostMoney", UIHelper.GetTextColorByItemColor(TextColType.Green, chestsConfig.OpenMoney.ToString()));
                    }
                    else
                    {
                        conditionText.text = Language.Get("OpenBoxCostMoney", UIHelper.GetTextColorByItemColor(TextColType.Red,chestsConfig.OpenMoney.ToString()));
                    }
                    conditionText.text = Language.Get("OpenBoxCostMoney", UIHelper.GetTextColorByItemColor(TextColType.Red, chestsConfig.OpenMoney.ToString()));
                }
            }
            else
            {
                DesignDebug.LogError("宝箱开启表里没有这个宝箱ID:" + itemTipsModel.curAttrData.itemId);
                CheckUselimit();
            }
            itemDesText.text = itemTipsModel.curAttrData.GetAllInfoDes();
            operateBtn.SetActive(false);
            CreateFuncBtn();
            if (itemTipsModel.curAttrData.itemConfig.ExpireTime > 0)
            {
@@ -205,6 +188,69 @@
            }
        }
        private void CheckUselimit()
        {
            int[] uselimits = itemTipsModel.curAttrData.itemConfig.UseCondiType;
            if (uselimits == null) return;
            for (int i = 0; i < uselimits.Length; i++)
            {
                switch (uselimits[i])
                {
                    case 0:
                        if (itemTipsModel.curAttrData.itemConfig.UseLV > 1)
                        {
                            conditionText.gameObject.SetActive(true);
                            needLvText.gameObject.SetActive(true);
                        }
                        conditionText.text = Language.Get("KnapS110");
                        needLvText.text = itemTipsModel.curAttrData.itemConfig.UseLV.ToString();
                        if (PlayerDatas.Instance.baseData.LV >= itemTipsModel.curAttrData.itemConfig.UseLV)
                        {
                            conditionText.color = conditionColor;
                            needLvText.color = conditionColor;
                        }
                        else
                        {
                            conditionText.color = conditionRedColor;
                            needLvText.color = conditionRedColor;
                        }
                        break;
                    case 1:
                        realmTitleText.gameObject.SetActive(true);
                        realmImg.gameObject.SetActive(true);
                        realmTitleText.text = Language.Get("RealmLimit1");
                        RealmConfig realmConfig = ConfigManager.Instance.GetTemplate<RealmConfig>(itemTipsModel.curAttrData.itemConfig.RealmLimit);
                        if (itemTipsModel.curAttrData.itemConfig.RealmLimit <= 0)
                        {
                            realmImg.SetSprite("NoRealm");
                        }
                        else
                        {
                            if (realmConfig != null)
                            {
                                realmImg.SetSprite(realmConfig.Img);
                            }
                        }
                        if (PlayerDatas.Instance.baseData.realmLevel >= itemTipsModel.curAttrData.itemConfig.RealmLimit)
                        {
                            realmTitleText.color = conditionColor;
                        }
                        else
                        {
                            realmTitleText.color = conditionRedColor;
                        }
                        break;
                    case 2:
                        break;
                }
            }
        }
        private void RefreshUseCnt(int id)
        {
            if (itemTipsModel.curAttrData == null || id != itemTipsModel.curAttrData.itemId)