少年修仙传客户端代码仓库
client_Wu Xijin
2019-03-16 c55aae571592b66c4f8159feaa56bbe8f57f7857
3335 整理代码
2个文件已删除
35个文件已修改
8个文件已添加
3233 ■■■■■ 已修改文件
Core/GameEngine/Model/TelPartialConfig/PlayerPropertyConfig.cs 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HAD_SaleActivity.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HAE_Truck.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HAF_Merge.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HB0_Event.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HAD_SaleActivity.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HAE_Truck.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HAF_Merge.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HB0_Event.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Lua/Gen/PlayerPropertyConfigWrap.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Lua/Gen/SnxxzUIItemTipsModelWrap.cs 2249 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Lua/Gen/SnxxzUIItemTipsModelWrap.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Lua/Gen/XLuaGenAutoRegister.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BlastFurnace/GetEquipPathTips.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BlastFurnace/GetEquipPathWin.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Equip/EquipSuitPropertyBar.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Equip/EquipSuitPropertyWidget.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/EquipStar/EquipStarWin.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FashionDress/FashionAttrBeh.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FashionDress/FashionSumAttrWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/TipBasePropertyWidget.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/TipGemInfoWidget.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/TipLegendPropertyWidget.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/TipStarPropertyWidget.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/TipStrengthenPropertyWidget.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/TipSuitPropertyWidget.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/TipTrainPropertyWidget.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyKnapSack/JadeDynastyEquipBeh.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyKnapSack/JadeDynastyItemBeh.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyKnapSack/JadeDynastyStoneSuitAttrBeh.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyKnapSack/JadeDynastySuitAttrBeh.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/EquipTip.cs 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/ItemLogicUtility.cs 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/ItemTipsModel.cs 593 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/MakeDrugCell.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/PlayerStarNumWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/PlayerStrengtheningLVWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/TreasureEffectModel.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/New/KingTreasureShowModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/New/RoleEquipStarTips.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/New/RoleEquipStrengthTips.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/PropertyBehaviour.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Store/Logic/BuyEquipTip.cs 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/ActiveAttrCell.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI/Common/UI3DModelExhibition.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/TelPartialConfig/PlayerPropertyConfig.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
public partial class PlayerPropertyConfig : IConfigPostProcess
{
@@ -28,42 +29,70 @@
        return list;
    }
    public static string GetPropertyDescription(int propertyId, int value)
    public static string GetFullDescription(Int2 property)
    {
        return GetPropertyDescription(propertyId, value, 1, false);
        return GetFullDescription(property.x, property.y);
    }
    public static string GetPropertyDescription(int propertyId, int value, int decimalCount, bool largeValue)
    public static string GetFullDescription(int id, int value)
    {
        var config = Get(propertyId);
        var config = Get(id);
        if (config == null)
        {
            return string.Empty;
        }
        float _result = 0f;
        if (config.Name.Contains("%s"))
        {
            return Regex.Replace(config.Name, "%s", value.ToString());
        }
        else
        {
            return string.Format("{0} +{1}", config.Name, GetValueDescription(id, value));
        }
    }
    public static string GetValueDescription(Int2 property)
    {
        return GetValueDescription(property.x, property.y);
    }
    public static string GetValueDescription(int id, int value)
    {
        return GetValueDescription(id, value, 1, false);
    }
    public static string GetValueDescription(int id, int value, int decimalCount, bool largeValue)
    {
        var config = Get(id);
        if (config == null)
        {
            return string.Empty;
        }
        var result = 0f;
        if (config.ISPercentage == 0)
        {
            _result = value;
            result = value;
        }
        else if (config.ISPercentage == 1)
        {
            _result = (float)Math.Round(value / 100f, decimalCount);
            result = (float)Math.Round(value / 100f, decimalCount);
        }
        else if (config.ISPercentage == 2)
        {
            _result = (float)Math.Round(value / 100f, decimalCount);
            result = (float)Math.Round(value / 100f, decimalCount);
        }
        var label = string.Empty;
        if (largeValue)
        {
            label = UIHelper.ReplaceLargeNum(_result);
            label = UIHelper.ReplaceLargeNum(result);
        }
        else
        {
            label = _result.ToString();
            label = result.ToString();
        }
        return config.ISPercentage == 1 ? (label + "%") : label;
Core/NetworkPackage/DTCFile/ServerPack/HAD_SaleActivity.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 3e05761d690b75440a6be79207d0fb01
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/DTCFile/ServerPack/HAE_Truck.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 1d70ccd06161e0443b7a802ad94292f8
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/DTCFile/ServerPack/HAF_Merge.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 71e878ac60c49ad4f964dd2dbc725739
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/DTCFile/ServerPack/HB0_Event.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: eed34091b0568664b9fb42f0634496c1
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/ServerPack/HAD_SaleActivity.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 32ceb8b7faf99f84a8b73ce53c5e3e4d
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/ServerPack/HAE_Truck.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 77f69c2b862d1704299a32d0d8eeb71e
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/ServerPack/HAF_Merge.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: fa14960fa44b0d1439bab471a764e34f
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/ServerPack/HB0_Event.meta
New file
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: d914565b65f8e8145988734c4d915834
folderAsset: yes
timeCreated: 1547643019
licenseType: Pro
DefaultImporter:
  userData:
  assetBundleName:
  assetBundleVariant:
Lua/Gen/PlayerPropertyConfigWrap.cs
@@ -334,7 +334,7 @@
                    int _propertyId = LuaAPI.xlua_tointeger(L, 1);
                    int _value = LuaAPI.xlua_tointeger(L, 2);
                    
                        string gen_ret = PlayerPropertyConfig.GetPropertyDescription( _propertyId, _value );
                        string gen_ret = PlayerPropertyConfig.GetValueDescription( _propertyId, _value );
                        LuaAPI.lua_pushstring(L, gen_ret);
                    
                    
@@ -348,7 +348,7 @@
                    int _decimalCount = LuaAPI.xlua_tointeger(L, 3);
                    bool _largeValue = LuaAPI.lua_toboolean(L, 4);
                    
                        string gen_ret = PlayerPropertyConfig.GetPropertyDescription( _propertyId, _value, _decimalCount, _largeValue );
                        string gen_ret = PlayerPropertyConfig.GetValueDescription( _propertyId, _value, _decimalCount, _largeValue );
                        LuaAPI.lua_pushstring(L, gen_ret);
                    
                    
Lua/Gen/SnxxzUIItemTipsModelWrap.cs
File was deleted
Lua/Gen/SnxxzUIItemTipsModelWrap.cs.meta
File was deleted
Lua/Gen/XLuaGenAutoRegister.cs
@@ -1148,9 +1148,6 @@
            translator.DelayWrapLoader(typeof(Snxxz.UI.ItemOverdueModel), SnxxzUIItemOverdueModelWrap.__Register);
        
        
            translator.DelayWrapLoader(typeof(Snxxz.UI.ItemTipsModel), SnxxzUIItemTipsModelWrap.__Register);
            translator.DelayWrapLoader(typeof(Snxxz.UI.PackModel), SnxxzUIPackModelWrap.__Register);
        
        
System/BlastFurnace/GetEquipPathTips.cs
@@ -450,19 +450,6 @@
                legendCntPreview.gameObject.SetActive(true);
                switch (itemAttrData.itemConfig.EquipPlace)
                {
                    case 1:
                    case 2:
                    case 3:
                    case 4:
                    case 5:
                    case 6:
                    case 7:
                    case 8:
                    case 9:
                    case 10:
                    case 12:
                        legendCntPreview.text = itemTipsModel.GetEquipLegendAttrCntPreview(itemAttrData);
                        break;
                    case 101:
                    case 102:
                    case 103:
System/BlastFurnace/GetEquipPathWin.cs
@@ -435,19 +435,6 @@
                legendCntPreview.gameObject.SetActive(true);
                switch (itemAttrData.itemConfig.EquipPlace)
                {
                    case 1:
                    case 2:
                    case 3:
                    case 4:
                    case 5:
                    case 6:
                    case 7:
                    case 8:
                    case 9:
                    case 10:
                    case 12:
                        legendCntPreview.text = itemTipsModel.GetEquipLegendAttrCntPreview(itemAttrData);
                        break;
                    case 11:
                        legendCntPreview.text = itemTipsModel.GetWingsLegendAttrCntPreview(itemAttrData);
                        break;
System/Equip/EquipSuitPropertyBar.cs
@@ -26,8 +26,7 @@
                {
                    var property = entry.properties[i];
                    behaviour.gameObject.SetActive(true);
                    var config = PlayerPropertyConfig.Get(property.x);
                    behaviour.text = string.Format("{0} +{1}", config.Name, PlayerPropertyConfig.GetPropertyDescription(property.x, property.y));
                    behaviour.text = PlayerPropertyConfig.GetFullDescription(property);
                }
                else
                {
System/Equip/EquipSuitPropertyWidget.cs
@@ -75,7 +75,7 @@
                    else
                    {
                        var propertyConfig = PlayerPropertyConfig.Get(config.attr[0].x);
                        var propertyDescription = PlayerPropertyConfig.GetPropertyDescription(config.attr[0].x, config.attr[0].y);
                        var propertyDescription = PlayerPropertyConfig.GetValueDescription(config.attr[0].x, config.attr[0].y);
                        description = StringUtility.Contact(propertyConfig.Name, " +", propertyDescription);
                    }
System/EquipStar/EquipStarWin.cs
@@ -277,9 +277,8 @@
                {
                    var star = keys[i];
                    var property = levelUpProperties[star];
                    var config = PlayerPropertyConfig.Get(property.x);
                    behaviour.gameObject.SetActive(true);
                    behaviour.text = string.Format("【{0}星】{1}+ {2}", star, config.Name, PlayerPropertyConfig.GetPropertyDescription(property.x, property.y));
                    behaviour.text = string.Format("【{0}星】{1}", star, PlayerPropertyConfig.GetFullDescription(property));
                    behaviour.color = UIHelper.GetUIColor(nextStar >= star ? TextColType.Green : TextColType.Gray);
                }
                else
@@ -439,12 +438,12 @@
                var config = PlayerPropertyConfig.Get(propertyId);
                if (config != null)
                {
                    this.current.text = StringUtility.Contact(config.Name, ":", PlayerPropertyConfig.GetPropertyDescription(propertyId, currentValue));
                    this.current.text = StringUtility.Contact(config.Name, ":", PlayerPropertyConfig.GetValueDescription(propertyId, currentValue));
                    if (currentValue != nextValue)
                    {
                        this.arrow.gameObject.SetActive(true);
                        this.next.gameObject.SetActive(true);
                        this.next.text = PlayerPropertyConfig.GetPropertyDescription(propertyId, nextValue);
                        this.next.text = PlayerPropertyConfig.GetValueDescription(propertyId, nextValue);
                    }
                    else
                    {
System/FashionDress/FashionAttrBeh.cs
@@ -61,17 +61,7 @@
                        attrText.gameObject.SetActive(true);
                        int attrId = attrIds[i];
                        int attrValue = attrDict[attrId];
                        var attrConfig = PlayerPropertyConfig.Get(attrId);
                        string attrSB = string.Empty;
                        if (attrConfig.Name.Contains("%s"))
                        {
                            attrSB = attrConfig.Name.Replace("%s", PlayerPropertyConfig.GetPropertyDescription(attrId, attrValue));
                        }
                        else
                        {
                            attrSB = StringUtility.Contact(attrConfig.Name, "+", PlayerPropertyConfig.GetPropertyDescription(attrId, attrValue));
                        }
                        attrText.text = attrSB;
                        attrText.text = PlayerPropertyConfig.GetFullDescription(attrId,attrValue);
                    }
                    else
                    {
System/FashionDress/FashionSumAttrWin.cs
@@ -98,7 +98,7 @@
                        int attrValue = attrDict[attrId];
                        var attrConfig = PlayerPropertyConfig.Get(attrId);
                        string attrSB = string.Empty;
                        string attrValueSB = UIHelper.AppendColor(TextColType.Green, PlayerPropertyConfig.GetPropertyDescription(attrId, attrValue));
                        string attrValueSB = UIHelper.AppendColor(TextColType.Green, PlayerPropertyConfig.GetValueDescription(attrId, attrValue));
                        if (attrConfig.Name.Contains("%s"))
                        {
                            attrSB = attrConfig.Name.Replace("%s", attrValueSB);
@@ -184,7 +184,7 @@
                        int attrValue = attrDict[attrId];
                        var attrConfig = PlayerPropertyConfig.Get(attrId);
                        string attrSB = string.Empty;
                        string attrValueSB = UIHelper.AppendColor(TextColType.Green, PlayerPropertyConfig.GetPropertyDescription(attrId, attrValue));
                        string attrValueSB = UIHelper.AppendColor(TextColType.Green, PlayerPropertyConfig.GetValueDescription(attrId, attrValue));
                        if (attrConfig.Name.Contains("%s"))
                        {
                            attrSB = attrConfig.Name.Replace("%s", attrValueSB);
System/ItemTip/TipBasePropertyWidget.cs
@@ -64,34 +64,29 @@
            {
                var config = PlayerPropertyConfig.Get((int)AttrEnum.ATK);
                var name = config.Name;
                if (attack.z > 0)
                {
                    var starValue = PlayerPropertyConfig.GetPropertyDescription((int)AttrEnum.ATK, attack.z);
                    var starDescription = UIHelper.AppendColor(TextColType.Green, string.Format("({0}星+{1})", data.star, starValue));
                    lines[lineIndex++] = string.Format("{0}:{1}-{2}  {3}", name, attack.x, attack.y, starDescription);
                    var starValue = PlayerPropertyConfig.GetValueDescription((int)AttrEnum.ATK, attack.z);
                    var starDescription = UIHelper.AppendColor(TextColType.Green, string.Format(" ({0}星+{1})", data.star, starValue));
                    lines[lineIndex++] = string.Format("{0} +{1}-{2}{3}", name, attack.x, attack.y, starDescription);
                }
                else
                {
                    lines[lineIndex++] = string.Format("{0}:{1}-{2}", name, attack.x, attack.y);
                    lines[lineIndex++] = string.Format("{0} +{1}-{2}", name, attack.x, attack.y);
                }
            }
            foreach (var property in normalProperties)
            {
                var config = PlayerPropertyConfig.Get(property.x);
                var name = config.Name;
                var baseValue = PlayerPropertyConfig.GetPropertyDescription(property.x, property.y);
                if (property.z > 0)
                {
                    var starValue = PlayerPropertyConfig.GetPropertyDescription(property.x, property.z);
                    var starDescription = UIHelper.AppendColor(TextColType.Green, string.Format("({0}星+{1})", data.star, starValue));
                    lines[lineIndex++] = string.Format("{0}:{1}  {2}", name, baseValue, starDescription);
                    var starValue = PlayerPropertyConfig.GetValueDescription(property.x, property.z);
                    var starDescription = UIHelper.AppendColor(TextColType.Green, string.Format(" ({0}星+{1})", data.star, starValue));
                    lines[lineIndex++] = string.Format("{0}{1}", PlayerPropertyConfig.GetFullDescription(property.x, property.y), starDescription);
                }
                else
                {
                    lines[lineIndex++] = string.Format("{0}:{1} ", name, baseValue);
                    lines[lineIndex++] = PlayerPropertyConfig.GetFullDescription(property.x,property.y);
                }
            }
System/ItemTip/TipGemInfoWidget.cs
@@ -75,7 +75,7 @@
                        for (int i = 0; i < properties.Count; i++)
                        {
                            var property = properties[i];
                            lines[i] = string.Format("{0}+{1}", property.x, PlayerPropertyConfig.GetPropertyDescription(property.x, property.y));
                            lines[i] = string.Format("{0}+{1}", property.x, PlayerPropertyConfig.GetValueDescription(property.x, property.y));
                        }
                        propertyBehaviour.text = string.Join("\r\n", lines);
System/ItemTip/TipLegendPropertyWidget.cs
@@ -22,7 +22,7 @@
            {
                var property = data.properties[i];
                var config = PlayerPropertyConfig.Get(property.x);
                var value = PlayerPropertyConfig.GetPropertyDescription(property.x, property.y);
                var value = PlayerPropertyConfig.GetValueDescription(property.x, property.y);
                var quality = LegendPropertyConfig.Get(property.x).quality;
                if (data.isPreview)
                {
System/ItemTip/TipStarPropertyWidget.cs
@@ -51,7 +51,7 @@
                    foreach (var property in config.StarAttrInfo)
                    {
                        var propertyConfig = PlayerPropertyConfig.Get(property.x);
                        var description = string.Format("{0} +{1}", propertyConfig.Name, PlayerPropertyConfig.GetPropertyDescription(property.x, property.y));
                        var description = string.Format("{0} +{1}", propertyConfig.Name, PlayerPropertyConfig.GetValueDescription(property.x, property.y));
                        lines.Add(UIHelper.AppendColor(TextColType.Green, description));
                    }
                }
@@ -60,7 +60,7 @@
                    foreach (var property in config.StarAttrInfo)
                    {
                        var propertyConfig = PlayerPropertyConfig.Get(property.x);
                        var description = string.Format("{0} +{1} ({2}星激活)", propertyConfig.Name, PlayerPropertyConfig.GetPropertyDescription(property.x, property.y), config.Star);
                        var description = string.Format("{0} +{1} ({2}星激活)", propertyConfig.Name, PlayerPropertyConfig.GetValueDescription(property.x, property.y), config.Star);
                        lines.Add(UIHelper.AppendColor(TextColType.Gray, description));
                    }
                }
System/ItemTip/TipStrengthenPropertyWidget.cs
@@ -23,7 +23,7 @@
                var config = PlayerPropertyConfig.Get(property.x);
                var name = config.Name;
                var value = PlayerPropertyConfig.GetPropertyDescription(property.x, property.y);
                var value = PlayerPropertyConfig.GetValueDescription(property.x, property.y);
                lines[i] = string.Format("{0}:{1}", name, value);
            }
            m_PropertyBehaviour.text = string.Join("\r\n", lines);
System/ItemTip/TipSuitPropertyWidget.cs
@@ -81,7 +81,7 @@
                    else
                    {
                        var propertyConfig = PlayerPropertyConfig.Get(config.attr[0].x);
                        var propertyDescription = PlayerPropertyConfig.GetPropertyDescription(config.attr[0].x, config.attr[0].y);
                        var propertyDescription = PlayerPropertyConfig.GetValueDescription(config.attr[0].x, config.attr[0].y);
                        description = StringUtility.Contact(propertyConfig.Name, " +", propertyDescription);
                    }
System/ItemTip/TipTrainPropertyWidget.cs
@@ -21,7 +21,7 @@
            {
                var property = data.properties[i];
                var config = PlayerPropertyConfig.Get(property.x);
                var value = PlayerPropertyConfig.GetPropertyDescription(property.x, property.y);
                var value = PlayerPropertyConfig.GetValueDescription(property.x, property.y);
                lines[i] = config.Name + UIHelper.AppendColor(TextColType.Green, StringUtility.Contact(" +", value));
            }
System/JadeDynastyKnapSack/JadeDynastyEquipBeh.cs
@@ -132,7 +132,6 @@
            if (item == null) return;
            tipsModel.SetItemTipsModel(item.packType,item.guid,false);
            tipsModel.SetJadeDynastyPutOnTipsBtn(tipsModel.curAttrData);
            tipsModel.ShowUICtrl();
        }
    }
System/JadeDynastyKnapSack/JadeDynastyItemBeh.cs
@@ -41,7 +41,6 @@
                {
                    equipModel.ClearLookItemModel();
                    tipsModel.SetItemTipsModel(itemModel.packType,itemModel.guid,false,true);
                    tipsModel.SetJadeDynastyItemTipsBtn(tipsModel.curAttrData);
                    tipsModel.ShowUICtrl();
                });
                UpdatePlayerEffect(itemModel.guid);
System/JadeDynastyKnapSack/JadeDynastyStoneSuitAttrBeh.cs
@@ -161,7 +161,7 @@
                        var attrText = attrTextlist[i];
                        var attrConfig = PlayerPropertyConfig.Get(attrId);
                        string attrSB = string.Empty;
                        string attrValueSB = PlayerPropertyConfig.GetPropertyDescription(attrId, attrValue);
                        string attrValueSB = PlayerPropertyConfig.GetValueDescription(attrId, attrValue);
                        if (attrConfig.Name.Contains("%s"))
                        {
                            attrSB = attrConfig.Name.Replace("%s", attrValueSB);
System/JadeDynastyKnapSack/JadeDynastySuitAttrBeh.cs
@@ -219,7 +219,7 @@
                        var attrText = attrTextlist[i];
                        var attrConfig = PlayerPropertyConfig.Get(attrId);
                        string attrSB = string.Empty;
                        string attrValueSB = PlayerPropertyConfig.GetPropertyDescription(attrId, attrValue); ;
                        string attrValueSB = PlayerPropertyConfig.GetValueDescription(attrId, attrValue); ;
                        if (attrConfig.Name.Contains("%s"))
                        {
                            attrSB = attrConfig.Name.Replace("%s", attrValueSB);
System/KnapSack/Logic/EquipTip.cs
@@ -231,7 +231,6 @@
            SetBasicAttrUI();
            SetExhaustedAttrUI();
            SetLegendAttrUI();
            SetWashAttrUI();
            SetGemAttrUI();
            for (int i = 0; i < attrCutLinelist.Count; i++)
            {
@@ -526,19 +525,6 @@
               
                switch (itemAttrData.itemConfig.EquipPlace)
                {
                    case 1:
                    case 2:
                    case 3:
                    case 4:
                    case 5:
                    case 6:
                    case 7:
                    case 8:
                    case 9:
                    case 10:
                    case 12:
                        legendCntPreview.text = itemTipsModel.GetEquipLegendAttrCntPreview(itemAttrData);
                        break;
                    case 101:
                    case 102:
                    case 103:
@@ -547,44 +533,11 @@
                        legendCntPreview.text = itemTipsModel.GetDogzLegendAttrCntPreview(itemAttrData);
                        break;
                }
                var packType = GeneralDefine.GetPackTypeByItemType(itemAttrData.itemConfig.Type);
                switch(packType)
                {
                    case PackType.JadeDynastyItem:
                        legendCntPreview.text = itemTipsModel.GetJadeDynastyAttrCntPreview(itemAttrData);
                        break;
                }
            }
            else
            {
                legendCntPreview.gameObject.SetActive(false);
            }
        }
        private void SetWashAttrUI()
        {
            if(itemAttrData.washDataDict == null)
            {
                washAttr.SetActive(false);
                return;
            }
            switch (itemAttrData.itemConfig.EquipPlace)
            {
                case 101:
                case 102:
                case 103:
                case 104:
                case 105:
                    washAttr.SetActive(false);
                    return;
            }
            curAttrTypeNum = 4;
            washAttr.SetActive(true);
            washTitleText.text = Language.Get("EquipWin_WashPropObj_Text_1");
            washAttrDes.text = itemTipsModel.GetWashAttr(itemAttrData);
        }
        private void SetGemAttrUI()
@@ -703,17 +656,6 @@
            switch (itemAttrData.itemConfig.EquipPlace)
            {
                case 1:
                case 2:
                case 3:
                case 4:
                case 5:
                case 6:
                case 7:
                case 8:
                case 9:
                case 10:
                case 12:
                case 121:
                case 122:
                case 123:
@@ -771,19 +713,6 @@
            int equipPlace = itemAttrData.itemConfig.EquipPlace;
            switch(equipPlace)
            {
                case 1:
                case 2:
                case 3:
                case 4:
                case 5:
                case 6:
                case 7:
                case 8:
                case 9:
                case 10:
                case 12:
                    source.partText.text = StringUtility.Contact(FuncConfigConfig.GetEquipTipsAreaName(itemAttrData.itemConfig.EquipPlace), itemAttrData.itemConfig.LV, Language.Get("L1047"));
                    break;
                case 121:
                case 122:
                case 123:
System/KnapSack/Logic/ItemLogicUtility.cs
@@ -223,14 +223,6 @@
                        break;
                }
                var packType = GeneralDefine.GetPackTypeByItemType(config.Type);
                switch (packType)
                {
                    case PackType.JadeDynastyItem:
                        properties.AddRange(CalculateJadeDynastyLegendAttr(itemId));
                        break;
                }
                return CalculateEquipScore(type, itemId, properties);
            }
@@ -282,13 +274,6 @@
            }
            return properties;
        }
        private Dictionary<int, int> CalculateJadeDynastyLegendAttr(int itemId)
        {
            Dictionary<int, int> attrDict = null;
            itemTipsModel.TryGetJadeDynastyLegendAttr(itemId, out attrDict);
            return attrDict;
        }
        bool IsCustomItem(int itemId)
@@ -1450,5 +1435,11 @@
            return config != null && (config.JobLimit == 0 || config.JobLimit / 100 == PlayerDatas.Instance.baseData.Job);
        }
        public bool IsEquip(int itemId)
        {
            var config = ItemConfig.Get(itemId);
            return (config.Type >= 101 && config.Type <= 112) || (config.Type >= 128 && config.Type <= 137);
        }
    }
}
System/KnapSack/Logic/ItemTipsModel.cs
@@ -188,7 +188,6 @@
            }
            ParseFuncConfig();
            ParseJadeDynastyEquipLegendAttr();
        }
        public void OnBeforePlayerDataInitialize()
@@ -242,208 +241,6 @@
            return false;
        }
        #region 解析诛仙装备传奇属性
        public Dictionary<string, List<int>> jadeDynastyLegendCountDict { get; private set; } //key 阶数 +星级  随机条数
        public Dictionary<int, List<int>> jadeDynastyLegendGroupDict { get; private set; } //key 物品类型 群组列表
        public Dictionary<int, List<int>> jadeDynastyLegendIdDict { get; private set; } //key 群组id 属性Id列表
        public Dictionary<int, Dictionary<int, int>> jadeDynastyLegendColorDict { get; private set; } //key s属性id 属性value范围 颜色值
        public Dictionary<int, string> jadeDynastyColorDict { get; private set; } //key 色值类型
        public Dictionary<int, int> jadeDynastyLegendValueDict { get; private set; } //key 属性id 最大属性value
        private void ParseJadeDynastyEquipLegendAttr()
        {
            jadeDynastyColorDict = new Dictionary<int, string>();
            jadeDynastyLegendCountDict = new Dictionary<string, List<int>>();
            jadeDynastyLegendGroupDict = new Dictionary<int, List<int>>();
            jadeDynastyLegendColorDict = new Dictionary<int, Dictionary<int, int>>();
            jadeDynastyLegendIdDict = new Dictionary<int, List<int>>();
            jadeDynastyLegendValueDict = new Dictionary<int, int>();
            var legendAttrColor = FuncConfigConfig.Get("LegendAttrColor");
            JsonData colorData = JsonMapper.ToObject(legendAttrColor.Numerical4);
            foreach (var key in colorData.Keys)
            {
                int colorType = int.Parse(key);
                string color = colorData[key].ToString();
                jadeDynastyColorDict.Add(colorType, color);
            }
            JsonData legendColorData = JsonMapper.ToObject(legendAttrColor.Numerical3);
            foreach (var key in legendColorData.Keys)
            {
                int attrId = int.Parse(key);
                var colorDict = new Dictionary<int, int>();
                jadeDynastyLegendColorDict.Add(attrId, colorDict);
                var attrValueData = legendColorData[key];
                foreach (var value in attrValueData.Keys)
                {
                    int attrValue = int.Parse(value);
                    int colorType = int.Parse(attrValueData[value].ToString());
                    colorDict.Add(attrValue, colorType);
                }
            }
            var legendAttrRandRule = FuncConfigConfig.Get("LegendAttrRandRule");
            JsonData legendCountData = JsonMapper.ToObject(legendAttrRandRule.Numerical3);
            foreach (var key in legendCountData.Keys)
            {
                var rangeData = legendCountData[key];
                int equipLv = int.Parse(key);
                foreach (var star in rangeData.Keys)
                {
                    var countData = rangeData[star];
                    int equipStar = int.Parse(star);
                    string guid = StringUtility.Contact(equipLv, equipStar);
                    List<int> list = new List<int>();
                    jadeDynastyLegendCountDict.Add(guid, list);
                    if (countData.IsArray)
                    {
                        for (int i = 0; i < countData.Count; i++)
                        {
                            int count = int.Parse(countData[i].ToString());
                            list.Add(count);
                        }
                    }
                }
            }
            JsonData legendGroupData = JsonMapper.ToObject(legendAttrRandRule.Numerical2);
            foreach (var type in legendGroupData.Keys)
            {
                var groupData = legendGroupData[type];
                int itemType = int.Parse(type);
                List<int> list = new List<int>();
                jadeDynastyLegendGroupDict.Add(itemType, list);
                if (groupData.IsArray)
                {
                    for (int i = 0; i < groupData.Count; i++)
                    {
                        int groupType = int.Parse(groupData[i].ToString());
                        list.Add(groupType);
                    }
                }
            }
            JsonData legendIdData = JsonMapper.ToObject(legendAttrRandRule.Numerical1);
            foreach (var key in legendIdData.Keys)
            {
                var attrIdData = legendIdData[key];
                int groupId = int.Parse(key);
                List<int> list = new List<int>();
                jadeDynastyLegendIdDict.Add(groupId, list);
                if (attrIdData.IsArray)
                {
                    for (int i = 0; i < attrIdData.Count; i++)
                    {
                        int attrId = int.Parse(attrIdData[i].ToString());
                        list.Add(attrId);
                    }
                }
            }
            JsonData legendValueData = JsonMapper.ToObject(legendAttrRandRule.Numerical4);
            foreach (var key in legendValueData.Keys)
            {
                int attrId = int.Parse(key);
                var valueData = legendValueData[key];
                if (valueData.IsArray && valueData.Count > 0)
                {
                    int attrValue = int.Parse(valueData[0].ToString());
                    jadeDynastyLegendValueDict.Add(attrId, attrValue);
                }
            }
        }
        public bool TryGetJadeDynastyLegendCount(int itemId, out int minCount, out int maxCount)
        {
            minCount = 0;
            maxCount = 0;
            var config = ItemConfig.Get(itemId);
            if (config == null) return false;
            int equipLv = config.LV;
            int equipStar = config.StarLevel;
            string guid = StringUtility.Contact(equipLv, equipStar);
            if (jadeDynastyLegendCountDict.ContainsKey(guid))
            {
                var list = jadeDynastyLegendCountDict[guid];
                if (list.Count > 1)
                {
                    minCount = list[0];
                    maxCount = list[1];
                    return true;
                }
                else if (list.Count > 0)
                {
                    maxCount = list[0];
                    return true;
                }
            }
            return false;
        }
        public bool TryGetJadeDynastyLegendAttr(int itemId, out Dictionary<int, int> attrDict)
        {
            attrDict = new Dictionary<int, int>();
            var config = ItemConfig.Get(itemId);
            if (config == null) return false;
            if (jadeDynastyLegendGroupDict.ContainsKey(config.Type))
            {
                var grouplist = jadeDynastyLegendGroupDict[config.Type];
                foreach (var groupId in grouplist)
                {
                    if (jadeDynastyLegendIdDict.ContainsKey(groupId))
                    {
                        var attrIds = jadeDynastyLegendIdDict[groupId];
                        foreach (var attrId in attrIds)
                        {
                            int attrValue = 0;
                            if (jadeDynastyLegendValueDict.ContainsKey(attrId))
                            {
                                attrValue = jadeDynastyLegendValueDict[attrId];
                            }
                            attrDict.Add(attrId, attrValue);
                        }
                        return true;
                    }
                }
            }
            return false;
        }
        public bool TryGetJadeDyanastyLegendColorType(int attrId, int attrValue, out int colorType)
        {
            colorType = 0;
            if (jadeDynastyLegendColorDict.ContainsKey(attrId))
            {
                var colorRanges = jadeDynastyLegendColorDict[attrId];
                foreach (var key in colorRanges.Keys)
                {
                    if (attrValue <= key)
                    {
                        colorType = colorRanges[key];
                        return true;
                    }
                }
            }
            return false;
        }
        public bool TryGetJadeDyanastyLegendColor(int colorType, out string color)
        {
            color = string.Empty;
            return jadeDynastyColorDict.TryGetValue(colorType, out color);
        }
        public int GetJadeDynastyLegendValue(int attrId)
        {
            int attrValue = 0;
            jadeDynastyLegendValueDict.TryGetValue(attrId, out attrValue);
            return attrValue;
        }
        #endregion
        #endregion
        /// <summary>
@@ -483,9 +280,6 @@
                        case PackType.DogzItem:
                            SetCompareAttrData(PackType.DogzEquip, itemModel.config.EquipPlace);
                            break;
                        case PackType.JadeDynastyItem:
                            SetCompareAttrData(PackType.JadeDynastyEquip, itemModel.config.EquipPlace);
                            break;
                        default:
                            SetCompareAttrData(PackType.Equip, itemModel.config.EquipPlace);
                            break;
@@ -517,9 +311,6 @@
                {
                    case PackType.DogzItem:
                        SetCompareAttrData(PackType.DogzEquip, itemAttrData.itemConfig.EquipPlace);
                        break;
                    case PackType.JadeDynastyItem:
                        SetCompareAttrData(PackType.JadeDynastyEquip, itemAttrData.itemConfig.EquipPlace);
                        break;
                    default:
                        SetCompareAttrData(PackType.Equip, itemAttrData.itemConfig.EquipPlace);
@@ -574,11 +365,6 @@
        {
            if (curAttrData == null) return;
#if UNITY_EDITOR
            string itemInfo = StringUtility.Contact("物品ID:", curAttrData.itemId, "物品名称:", curAttrData.itemConfig.ItemName);
            DebugEx.Log(itemInfo);
#endif
            switch (curAttrData.winType)
            {
                case ItemWinType.itemWin:
@@ -588,13 +374,20 @@
                    WindowCenter.Instance.Open<BoxInfoWin>();
                    break;
                case ItemWinType.equipWin:
                    if (curAttrData.isPreview)
                    if (ItemLogicUtility.Instance.IsEquip(curAttrData.itemId))
                    {
                        EquipTipUtility.Show(TipType.Normal, curAttrData.itemId);
                        if (curAttrData.isPreview)
                        {
                            EquipTipUtility.Show(TipType.Normal, curAttrData.itemId);
                        }
                        else
                        {
                            EquipTipUtility.Show(curAttrData.guid);
                        }
                    }
                    else
                    {
                        EquipTipUtility.Show(curAttrData.guid);
                        WindowCenter.Instance.Open<EquipWin>();
                    }
                    break;
                case ItemWinType.wingsWin:
@@ -637,19 +430,6 @@
        {
            string equipName = "";
            if (attrData == null) return equipName;
            List<int> useDatalist = attrData.GetUseDataModel(30);
            if (useDatalist != null)
            {
                if (useDatalist[0] == 1)
                {
                    equipName = Language.Get("EquipSuit109");
                }
                else if (useDatalist[0] == 2)
                {
                    equipName = Language.Get("EquipSuit110");
                }
            }
            if (attrData.StrengthLV > 0)
            {
@@ -701,7 +481,6 @@
                {
                    jobName = UIHelper.AppendColor(TextColType.Red, jobNameConfig.name);
                }
            }
            else
            {
@@ -970,62 +749,6 @@
            }
        }
        public void SetJadeDynastyItemTipsBtn(ItemAttrData attrData)
        {
            if (attrData == null) return;
            bool isOverdue = ItemLogicUtility.Instance.IsOverdue(attrData.guid, attrData.itemId, attrData.useDataDict);
            if (attrData.itemConfig.CanSell == 1)
            {
                attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.SellItem(attrData); });
            }
            if (!isOverdue)
            {
                if (attrData.itemConfig.JumpComposeCondi != null && attrData.itemConfig.JumpComposeCondi.Length > 0)
                {
                    attrData.SetTipsFuncBtn(ItemOperateType.compose, (ItemWinBtnType, ItemAttrData) =>
                    {
                        int jumpId = 0;
                        bool isUnlock = ModelCenter.Instance.GetModel<ComposeWinModel>().CheckComposeItemById(attrData.itemId, out jumpId);
                        if (isUnlock)
                        {
                            ItemOperateUtility.Instance.GotoComposeItem(jumpId);
                        }
                    });
                }
                if (attrData.itemConfig.Effect1 == 225)
                {
                    attrData.SetTipsFuncBtn(ItemOperateType.inlay, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.GotoInlayItem(attrData.guid); });
                }
                if (!isOverdue)
                {
                    switch (attrData.winType)
                    {
                        case ItemWinType.equipWin:
                            attrData.SetTipsFuncBtn(ItemOperateType.putOn, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.PutOnItem(attrData.guid); });
                            break;
                    }
                }
            }
        }
        public void SetJadeDynastyPutOnTipsBtn(ItemAttrData attrData)
        {
            if (attrData == null)
            {
                return;
            }
            var equipType = (RoleEquipType)attrData.itemConfig.EquipPlace;
            attrData.SetTipsFuncBtn(ItemOperateType.putOff, (ItemWinBtnType, ItemAttrData) =>
            {
                ItemOperateUtility.Instance.PutOffEquip(attrData.guid);
            });
        }
        #endregion
        #region 设置获取途径列表
@@ -1065,79 +788,8 @@
                case RoleEquipType.Guard1:
                    return SetGuardBasicAttr(attrData);
                default:
                    return SetEquipBasicAttr(attrData);
                    return string.Empty;
            }
        }
        private string SetEquipBasicAttr(ItemAttrData attrData)
        {
            if (attrData == null)
                return "";
            Dictionary<int, int> itemEffectDict = GetItemEffectDict(attrData.itemConfig);
            attrSB.Length = 0;
            string atkStr = "";
            string otherStr = "";
            foreach (var key in itemEffectDict.Keys)
            {
                PlayerPropertyConfig playerProModel = PlayerPropertyConfig.Get(key);
                if (playerProModel != null)
                {
                    if (key == (int)AttrEnum.MinAtk)
                    {
                        playerProModel = PlayerPropertyConfig.Get((int)AttrEnum.ATK);
                        atkStr = StringUtility.Contact(playerProModel.Name, ":", PlayerPropertyConfig.GetPropertyDescription(key, itemEffectDict[key]));
                    }
                    else if (key == (int)AttrEnum.MaxAtk)
                    {
                        playerProModel = PlayerPropertyConfig.Get((int)AttrEnum.ATK);
                        atkStr = StringUtility.Contact(atkStr, "-", PlayerPropertyConfig.GetPropertyDescription(key, itemEffectDict[key]));
                        if (attrData.strengthDataDict != null)
                        {
                            if (attrData.strengthDataDict.ContainsKey((int)AttrEnum.ATK))
                            {
                                atkStr = StringUtility.Contact(atkStr, Language.Get("KnapS116", PlayerPropertyConfig.GetPropertyDescription(key, attrData.strengthDataDict[(int)AttrEnum.ATK])));
                            }
                        }
                        if (attrSB.Length <= 0)
                        {
                            attrSB.Append(atkStr);
                        }
                        else
                        {
                            attrSB.Append("\n" + atkStr);
                        }
                    }
                    else
                    {
                        otherStr = StringUtility.Contact(playerProModel.Name, ":", PlayerPropertyConfig.GetPropertyDescription(key, itemEffectDict[key]));
                        if (attrData.strengthDataDict != null)
                        {
                            if (attrData.strengthDataDict.ContainsKey(key))
                            {
                                otherStr = StringUtility.Contact(otherStr, Language.Get("KnapS116", PlayerPropertyConfig.GetPropertyDescription(key, attrData.strengthDataDict[key])));
                            }
                        }
                        if (key == (int)AttrEnum.ATKSPEED)
                        {
                            int attrValue = GetProValueType(playerProModel.ISPercentage, itemEffectDict[key]);
                            otherStr = SetAttrColor(otherStr, attrValue, attrData.itemConfig.EquipPlace);
                        }
                        if (attrSB.Length <= 0)
                        {
                            attrSB.Append(otherStr);
                        }
                        else
                        {
                            attrSB.Append("\n" + otherStr);
                        }
                    }
                }
            }
            return attrSB.ToString();
        }
        private string SetWingsBasicAttr(ItemAttrData attrData)
@@ -1164,7 +816,7 @@
                string rangeStr = "";
                if (key == 23)
                {
                    rangeStr = playerProModel.Name + "+" + PlayerPropertyConfig.GetPropertyDescription(key, itemEffectDict[key]);
                    rangeStr = playerProModel.Name + "+" + PlayerPropertyConfig.GetValueDescription(key, itemEffectDict[key]);
                }
                else if (key == 6)
                {
@@ -1183,9 +835,9 @@
                    }
                    rangeStr = playerProModel.Name + "+"
                        + PlayerPropertyConfig.GetPropertyDescription(key, curHp) + "["
                        + PlayerPropertyConfig.GetPropertyDescription(key, itemEffectDict[key]) + "-"
                        + PlayerPropertyConfig.GetPropertyDescription(key, maxHp) + "]";
                        + PlayerPropertyConfig.GetValueDescription(key, curHp) + "["
                        + PlayerPropertyConfig.GetValueDescription(key, itemEffectDict[key]) + "-"
                        + PlayerPropertyConfig.GetValueDescription(key, maxHp) + "]";
                }
                else if (key == 19)
                {
@@ -1203,9 +855,9 @@
                        curHurt = itemEffectDict[key];
                    }
                    rangeStr = playerProModel.Name + "+"
                        + PlayerPropertyConfig.GetPropertyDescription(key, curHurt) + "["
                        + PlayerPropertyConfig.GetPropertyDescription(key, itemEffectDict[key]) + "-"
                        + PlayerPropertyConfig.GetPropertyDescription(key, maxHurt) + "]";
                        + PlayerPropertyConfig.GetValueDescription(key, curHurt) + "["
                        + PlayerPropertyConfig.GetValueDescription(key, itemEffectDict[key]) + "-"
                        + PlayerPropertyConfig.GetValueDescription(key, maxHurt) + "]";
                }
                if (rangeStr != "")
@@ -1228,25 +880,11 @@
        private string SetGuardBasicAttr(ItemAttrData attrData)
        {
            string s = "";
            if (guardAutoDrops.Contains(attrData.itemId))
            {
                s = StringUtility.Contact(SetEquipBasicAttr(attrData), "\n", Language.Get("GuardTips101"));
            }
            else
            {
                s = SetEquipBasicAttr(attrData);
            }
            return s;
        }
        private string SetAttrColor(string attrStr, int atkSpeed, int equipPlace)
        {
            if ((RoleEquipType)equipPlace != RoleEquipType.FairyCan1
                && (RoleEquipType)equipPlace != RoleEquipType.FairyCan2)
            {
                return attrStr;
            }
            string color = string.Empty;
            bool isColor = TryGetAtkSpeedColor(atkSpeed, out color);
            if (isColor)
@@ -1283,32 +921,6 @@
                return SetLegendAttr(attrData.legendDataDict.Keys.ToList(), attrData.legendDataDict.Values.ToList(),
                    attrData.itemConfig, true, attrData.isCustom);
            }
        }
        public string GetEquipLegendAttrCntPreview(ItemAttrData attrData)
        {
            string s = "";
            if (attrData.isCustom)
            {
                s = Language.Get("LegendAttPreview_MustTitle", attrData.legendDataDict.Count);
            }
            else
            {
                var count = LegendPropertyUtility.GetEquipPropertyCount(attrData.itemId);
                s = Language.Get("LegendAttPreview_MightTitle", count);
            }
            return s;
        }
        public string GetJadeDynastyAttrCntPreview(ItemAttrData attrData)
        {
            int minCount = 0;
            int maxCount = 0;
            TryGetJadeDynastyLegendCount(attrData.itemId, out minCount, out maxCount);
            string countSB = StringUtility.Contact(minCount, "-", maxCount);
            string s = Language.Get("LegendAttPreview_MightTitle", countSB);
            return s;
        }
        public string GetDogzLegendAttrCntPreview(ItemAttrData attrData)
@@ -1382,34 +994,6 @@
            switch (itemConfig.EquipPlace)
            {
                case 11:
                    break;
                case 1:
                case 2:
                case 3:
                case 4:
                case 5:
                case 6:
                case 7:
                case 8:
                case 9:
                case 10:
                case 12:
                    break;
                case 121:
                case 122:
                case 123:
                case 124:
                case 125:
                case 126:
                case 127:
                case 128:
                case 129:
                case 130:
                case 131:
                case 132:
                    idlist.Sort(CompareJadeDynastyLegendColorType);
                    break;
                case 101:
                case 102:
                case 103:
@@ -1419,63 +1003,7 @@
                    break;
            }
            for (i = 0; i < idlist.Count; i++)
            {
                var attrId = idlist[i];
                var packType = GeneralDefine.GetPackTypeByItemType(itemConfig.Type);
                switch (packType)
                {
                    case PackType.JadeDynastyItem:
                        SetJadeDynastyLengend(itemConfig, attrId);
                        break;
                    default:
                        break;
                }
            }
            return attrSB.ToString();
        }
        private void SetJadeDynastyLengend(ItemConfig itemConfig, int attrId)
        {
            playerProModel = PlayerPropertyConfig.Get(attrId);
            if (playerProModel != null)
            {
                string s = "";
                if (playerProModel.Name.Contains("%s"))
                {
                    s = playerProModel.Name.Replace("%s", PlayerPropertyConfig.GetPropertyDescription(attrId, attrDict[attrId]));
                }
                else
                {
                    s = playerProModel.Name + "+" + PlayerPropertyConfig.GetPropertyDescription(attrId, attrDict[attrId]);
                }
                int colorType = 0;
                TryGetJadeDyanastyLegendColorType(attrId, attrDict[attrId], out colorType);
                s = GetTextColorByColorType(colorType, s);
                if (attrSB.Length <= 0)
                {
                    attrSB.Append(s);
                }
                else
                {
                    attrSB.Append("\n" + s);
                }
            }
        }
        private int CompareJadeDynastyLegendColorType(int start, int end)
        {
            int value1 = attrDict[start];
            int value2 = attrDict[end];
            int colorType1 = 0;
            int colorType2 = 0;
            TryGetJadeDyanastyLegendColorType(start, value1, out colorType1);
            TryGetJadeDyanastyLegendColorType(end, value2, out colorType2);
            if (colorType1.CompareTo(colorType2) != 0) return -colorType1.CompareTo(colorType2);
            return 0;
        }
        private int CompareDogzLegendAttrType(int start, int end)
@@ -1490,29 +1018,6 @@
        private int GetDogzLegendType(int id)
        {
            return (int)LegendPropertyUtility.GetDogzPropertyType(id);
        }
        private string GetTextColorByLegendType(int type, string msg)
        {
            switch (type)
            {
                case 1:
                    return string.Format("<color=#fedd00>{0}</color>", msg);
                case 2:
                    return string.Format("<color=#ec4bf6>{0}</color>", msg);
                case 3:
                    return string.Format("<color=#31cefb>{0}</color>", msg);
            }
            return msg;
        }
        private string GetTextColorByColorType(int colorType, string msg)
        {
            string colorSB = string.Empty;
            TryGetJadeDyanastyLegendColor(colorType, out colorSB);
            string s = StringUtility.Contact("<color=#", colorSB, ">", msg, "</color>");
            return s;
        }
        #endregion
@@ -1536,46 +1041,6 @@
                    {
                        attrSB.Append("\n" + des);
                    }
                }
            }
            return attrSB.ToString();
        }
        #endregion
        #region 设置洗练属性
        public string GetWashAttr(ItemAttrData attrData)
        {
            if (attrData == null) return "";
            attrSB.Length = 0;
            if (attrData.washDataDict != null)
            {
                foreach (var attr in attrData.washDataDict.Keys)
                {
                    playerProModel = PlayerPropertyConfig.Get(attr);
                    if (playerProModel != null)
                    {
                        string s = "";
                        if (playerProModel.Name.Contains("%s"))
                        {
                            s = playerProModel.Name.Replace("%s", PlayerPropertyConfig.GetPropertyDescription(attr, attrData.washDataDict[attr]));
                        }
                        else
                        {
                            s = StringUtility.Contact(playerProModel.Name, "+", PlayerPropertyConfig.GetPropertyDescription(attr, attrData.washDataDict[attr]));
                        }
                        if (attrSB.Length <= 0)
                        {
                            attrSB.Append(s);
                        }
                        else
                        {
                            attrSB.Append("\n" + s);
                        }
                    }
                }
            }
            return attrSB.ToString();
@@ -1824,11 +1289,11 @@
                attrName = playerProModel.Name;
                if (contanctStr == "")
                {
                    attrValueStr = PlayerPropertyConfig.GetPropertyDescription(attrId, attrValue);
                    attrValueStr = PlayerPropertyConfig.GetValueDescription(attrId, attrValue);
                }
                else
                {
                    attrValueStr = StringUtility.Contact(contanctStr, "-", PlayerPropertyConfig.GetPropertyDescription(attrId, attrValue));
                    attrValueStr = StringUtility.Contact(contanctStr, "-", PlayerPropertyConfig.GetValueDescription(attrId, attrValue));
                }
            }
        }
@@ -2226,19 +1691,6 @@
            return false;
        }
        public bool TryGetMagicFightPower(ItemConfig itemConfig, out int fightPower)
        {
            fightPower = 0;
            var model = ModelCenter.Instance.GetModel<MagicianModel>();
            int magicType = 0;
            bool isMagic = model.TryGetMagicType(itemConfig.ID, out magicType);
            if (!isMagic)
            {
                return false;
            }
            return false;
        }
        private void GetItemEffectDict(int itemId, out Dictionary<int, List<int>> dict)
        {
            var config = ItemConfig.Get(itemId);
@@ -2345,7 +1797,7 @@
            isHavePutLimit = true;
            this.level = 1;
            this.equipHole = -1;
            this.isCustom = CheckIsCustomItem();
            this.isCustom = IsCustomItem();
            if (isCustom)
            {
                AppointItemConfig appointItemConfig = AppointItemConfig.Get(itemId);
@@ -2622,7 +2074,6 @@
            this.stones = stones;
        }
        //设置其他玩家的套装数据
        public bool TryGetItemRemainTime(out double remainTime)
        {
            ItemCDCool cool = KnapsackTimeCDMgr.Instance.GetItemCoolById(guid);
@@ -2657,7 +2108,7 @@
        }
        #region 预览定制属性逻辑处理
        public bool CheckIsCustomItem()
        public bool IsCustomItem()
        {
            if (itemConfig == null) return false;
System/KnapSack/Logic/MakeDrugCell.cs
@@ -115,7 +115,7 @@
                if (attrConfig != null)
                {
                    int value = attrDict[id] * useNum;
                    string valueStr = StringUtility.Contact("+", UIHelper.AppendColor(TextColType.Green, PlayerPropertyConfig.GetPropertyDescription(id, value), true));
                    string valueStr = StringUtility.Contact("+", UIHelper.AppendColor(TextColType.Green, PlayerPropertyConfig.GetValueDescription(id, value), true));
                    string attrStr = StringUtility.Contact(attrConfig.Name, valueStr);
                    if (attrSB.Length != 0)
                    {
System/KnapSack/Logic/PlayerStarNumWin.cs
@@ -256,7 +256,7 @@
        string GetValueDescription(PlayerPropertyConfig _playerProModel, int proValue)
        {
            string strPro = "";
            var valueDescription = PlayerPropertyConfig.GetPropertyDescription(_playerProModel.ID, proValue);
            var valueDescription = PlayerPropertyConfig.GetValueDescription(_playerProModel.ID, proValue);
            if (!_playerProModel.Name.Contains("%s"))
            {
                strPro = _playerProModel.Name + "<color=#109D06FF>" + " +" + valueDescription + "</color>";
System/KnapSack/Logic/PlayerStrengtheningLVWin.cs
@@ -240,7 +240,7 @@
                return "";
            }
            var valueDescription = PlayerPropertyConfig.GetPropertyDescription(_playerProModel.ID, proValue);
            var valueDescription = PlayerPropertyConfig.GetValueDescription(_playerProModel.ID, proValue);
            if (!_playerProModel.Name.Contains("%s"))
            {
                strPro = _playerProModel.Name + "<color=#109D06FF>" + "    +" + valueDescription + "</color>";
System/KnapSack/Logic/TreasureEffectModel.cs
@@ -133,7 +133,7 @@
                foreach (var id in attrDict.Keys)
                {
                    PlayerPropertyConfig propertyConfig = PlayerPropertyConfig.Get(id);
                    string des = string.Format(treasureConfig.Verse[0], PlayerPropertyConfig.GetPropertyDescription(id, attrDict[id]), propertyConfig.Name);
                    string des = string.Format(treasureConfig.Verse[0], PlayerPropertyConfig.GetValueDescription(id, attrDict[id]), propertyConfig.Name);
                    effectDesSB.Append(des);
                    if (signInModel.totalSignInCount > 0)
                    {
@@ -142,11 +142,11 @@
                        int addAtk = signInModel.totalSignInCount * attrDict[id];
                        if (isHaveTreasure)
                        {
                            des = string.Format(treasureConfig.Verse[2], Language.Get("TreasureEffect105", PlayerPropertyConfig.GetPropertyDescription(id, addAtk)));
                            des = string.Format(treasureConfig.Verse[2], Language.Get("TreasureEffect105", PlayerPropertyConfig.GetValueDescription(id, addAtk)));
                        }
                        else
                        {
                            des = string.Format(treasureConfig.Verse[2], Language.Get("TreasureEffect104", PlayerPropertyConfig.GetPropertyDescription(id, addAtk)));
                            des = string.Format(treasureConfig.Verse[2], Language.Get("TreasureEffect104", PlayerPropertyConfig.GetValueDescription(id, addAtk)));
                        }
                        effectDesSB.Append(StringUtility.Contact("\n", des));
                    }
System/KnapSack/New/KingTreasureShowModel.cs
@@ -63,7 +63,7 @@
                var propertyConfig = PlayerPropertyConfig.Get(key);
                if (propertyConfig != null)
                {
                    string attrDes = StringUtility.Contact(propertyConfig.Name, "+",  PlayerPropertyConfig.GetPropertyDescription(key, attrValue));
                    string attrDes = StringUtility.Contact(propertyConfig.Name, "+",  PlayerPropertyConfig.GetValueDescription(key, attrValue));
                    switch(propertyConfig.type)
                    {
                        case 2:
System/KnapSack/New/RoleEquipStarTips.cs
@@ -230,7 +230,7 @@
    string GetValueDescription(PlayerPropertyConfig _playerProModel, int proValue)
    {
        string description = "";
        var valueDescription = PlayerPropertyConfig.GetPropertyDescription(_playerProModel.ID, proValue);
        var valueDescription = PlayerPropertyConfig.GetValueDescription(_playerProModel.ID, proValue);
        if (!_playerProModel.Name.Contains("%s"))
        {
            description = _playerProModel.Name + "<color=#109D06FF>" + " +" + valueDescription + "</color>";
System/KnapSack/New/RoleEquipStrengthTips.cs
@@ -133,7 +133,7 @@
            return "";
        }
        var valueDescription = PlayerPropertyConfig.GetPropertyDescription(_playerProModel.ID, proValue);
        var valueDescription = PlayerPropertyConfig.GetValueDescription(_playerProModel.ID, proValue);
        if (!_playerProModel.Name.Contains("%s"))
        {
            strPro = _playerProModel.Name + "<color=#109D06FF>" + "    +" + valueDescription + "</color>";
System/Role/PropertyBehaviour.cs
@@ -50,7 +50,7 @@
        {
            m_PropertyName.text = GetPropertyName(_property);
            m_PropertyValue.text = StringUtility.Contact("+",
                PlayerPropertyConfig.GetPropertyDescription(_property, _value, 2, false));
                PlayerPropertyConfig.GetValueDescription(_property, _value, 2, false));
        }
        string GetPropertyName(int property)
@@ -83,7 +83,7 @@
        string GetValueLabel(int _property, int _value)
        {
            var decimalCount = UIHelper.GetPropertyDecimalCount(_property);
            return PlayerPropertyConfig.GetPropertyDescription(_property, _value, decimalCount, true);
            return PlayerPropertyConfig.GetValueDescription(_property, _value, decimalCount, true);
        }
        public void SetColor(TextColType colorType, bool bright)
System/Store/Logic/BuyEquipTip.cs
@@ -236,7 +236,6 @@
            SetBasicAttrUI();
            SetExhaustedAttrUI();
            SetLegendAttrUI();
            SetWashAttrUI();
            SetGemAttrUI();
            for (int i = 0; i < attrCutLinelist.Count; i++)
            {
@@ -504,19 +503,6 @@
                legendCntPreview.gameObject.SetActive(true);
                switch (itemAttrData.itemConfig.EquipPlace)
                {
                    case 1:
                    case 2:
                    case 3:
                    case 4:
                    case 5:
                    case 6:
                    case 7:
                    case 8:
                    case 9:
                    case 10:
                    case 12:
                        legendCntPreview.text = itemTipsModel.GetEquipLegendAttrCntPreview(itemAttrData);
                        break;
                    case 101:
                    case 102:
                    case 103:
@@ -530,29 +516,6 @@
            {
                legendCntPreview.gameObject.SetActive(false);
            }
        }
        private void SetWashAttrUI()
        {
            if(itemAttrData.washDataDict == null)
            {
                washAttr.SetActive(false);
                return;
            }
            switch (itemAttrData.itemConfig.EquipPlace)
            {
                case 101:
                case 102:
                case 103:
                case 104:
                case 105:
                    washAttr.SetActive(false);
                    return;
            }
            curAttrTypeNum = 4;
            washAttr.SetActive(true);
            washTitleText.text = Language.Get("EquipWin_WashPropObj_Text_1");
            washAttrDes.text = itemTipsModel.GetWashAttr(itemAttrData);
        }
        private void SetGemAttrUI()
@@ -737,7 +700,6 @@
            KnapSackEventMgr.Instance.SetEquipWinTempObj(go);
            return btn;
        }
        private void SetBottomText(EquipSource source)
        {
System/Strengthening/ActiveAttrCell.cs
@@ -24,7 +24,7 @@
        {
            var propertyConfig = PlayerPropertyConfig.Get(attrId);
            nameText.text = StringUtility.Contact(propertyConfig.Name, ":");
            valueText.text = StringUtility.Contact("+", PlayerPropertyConfig.GetPropertyDescription(attrId, attrValue));
            valueText.text = StringUtility.Contact("+", PlayerPropertyConfig.GetValueDescription(attrId, attrValue));
        }
        private void SetEndMovePos(float posY)
UI/Common/UI3DModelExhibition.cs
@@ -56,8 +56,6 @@
        bool isShowingNPC = false;
        bool isShowinEquipment = false;
        Vector2 prePosition = Vector2.zero;
        EquipModel equipModel { get { return ModelCenter.Instance.GetModel<EquipModel>(); } }
        public static UI3DModelExhibition Instance { get; private set; }