少年修仙传客户端代码仓库
client_Wu Xijin
2019-02-20 a87120c155c48fa45b20a97c1a58bdbeb77318b7
System/KnapSack/Logic/ItemTipsModel.cs
@@ -15,8 +15,8 @@
        FuncConfigConfig exhaustedFunc;
        public Dictionary<int, List<int>> equipLegendAttrTypeDict { get; private set; }
        public Dictionary<int, Dictionary<int, string>> wingsLegendAttrColorDict { get; private set; }
        Dictionary<int, List<int>> equipLegendAttrTypeDict { get; set; }
        Dictionary<int, Dictionary<int, string>> wingsLegendAttrColorDict { get; set; }
        public Dictionary<string, Dictionary<LegendAttrType, int>> legendAttrCntPreviewDict { get; private set; } // key 品质+星级  value 属性条目数
        public Dictionary<int, Dictionary<LegendAttrType, List<int>>> legendAttrIDPreviewDict { get; private set; } // key 装备位 value 属性类型,属性ID
        public Dictionary<int, Dictionary<int, int>> legendAttrColorValuePreviewDict { get; private set; } // key 属性ID value 装备品质,属性数值
@@ -25,20 +25,19 @@
        public Dictionary<int, Dictionary<int, List<int>>> wingsLegendAttrValuePreviewDict { get; private set; } //key 阶数 value 属性ID 属性数值
        public Dictionary<int, Dictionary<LegendAttrType, List<int>>> dogzLegendAttrIDPreviewDict { get; private set; } // key 装备位 value 属性类型,属性ID
        public Dictionary<int, Dictionary<int, int>> dogzLegendAttrColorValuePreviewDict { get; private set; } // key 属性ID value 装备品质,属性数值
        public Dictionary<string, Dictionary<LegendAttrType, int>> dogzLegendAttrCntPreviewDict { get; private set; } // key 品质+星级  value 属性条目数
        public Dictionary<int, List<int>> dogzLegendAttrTypeDict { get; private set; }
        Dictionary<string, Dictionary<LegendAttrType, int>> dogzLegendAttrCntPreviewDict { get; set; } // key 品质+星级  value 属性条目数
        Dictionary<int, List<int>> dogzLegendAttrTypeDict { get; set; }
        public Dictionary<int, List<string>> guardDesDict { get; private set; }
        public Dictionary<int, PetInfoConfig> unlockPetDict { get; private set; }
        public Dictionary<int, HorseConfig> unlockMountDict { get; private set; }
        private Dictionary<int, Dictionary<int, int>> petSkillDict = new Dictionary<int, Dictionary<int, int>>(); // 编号 解锁阶级 技能
        private Dictionary<int, Dictionary<int, List<int>>> mountSkillDict = new Dictionary<int, Dictionary<int, List<int>>>(); // 编号 解锁阶级 技能 
        public Dictionary<int, string> petAndMountQualityDict = new Dictionary<int, string>();
        public Dictionary<int, List<int>> itemParamsDict { get; private set; }
        public string expValueFormula = "";
        public Dictionary<int, string> exhaustedAttrFormula { get; private set; }
        public Dictionary<int, int> exhaustedMaxLvDict { get; private set; }
        public int[] guardAutoDrops;
        Dictionary<int, string> petAndMountQualityDict = new Dictionary<int, string>();
        string expValueFormula = "";
        Dictionary<int, string> exhaustedAttrFormula { get; set; }
        Dictionary<int, int> exhaustedMaxLvDict { get; set; }
        int[] guardAutoDrops;
        public int[] gemOpenLvs { get; private set; }
        public int[] jadeDynastyGemOpenLvs { get; private set; }
@@ -59,20 +58,9 @@
        public int[] randomRuneIds { get; private set; }
        public int[] PeerlessEquipIds { get; private set; } //绝世装备列表
        PlayerPackModel _playerPack;
        PlayerPackModel playerPack {
            get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PlayerPackModel>()); }
        }
        StoreModel _storeModel;
        StoreModel m_storeModel {
            get { return _storeModel ?? (_storeModel = ModelCenter.Instance.GetModel<StoreModel>()); }
        }
        PackModelInterface _modelInterface;
        PackModelInterface modelInterface {
            get { return _modelInterface ?? (_modelInterface = ModelCenter.Instance.GetModel<PackModelInterface>()); }
        }
        PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
        StoreModel m_storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } }
        PackModelInterface modelInterface { get { return ModelCenter.Instance.GetModel<PackModelInterface>(); } }
        FashionDressModel fashionDress { get { return ModelCenter.Instance.GetModel<FashionDressModel>(); } }
        DogzModel dogzModel { get { return ModelCenter.Instance.GetModel<DogzModel>(); } }
@@ -460,6 +448,7 @@
        {
        }
        #region 解析本地数据
        public Dictionary<string, List<int>> atkSpeedColorDict { get; private set; }
        private void ParseFuncConfig()
@@ -918,7 +907,7 @@
                case ItemWinType.guardWin:
                    WindowCenter.Instance.Open<GuardianWin>();
                    break;
                case ItemWinType.BuyItemWin:
                case ItemWinType.buyItemWin:
                    WindowCenter.Instance.Open<BuyItemInfoWin>();
                    break;
                case ItemWinType.buyBoxWin:
@@ -930,10 +919,10 @@
                case ItemWinType.buyPetMatWin:
                    WindowCenter.Instance.Open<BuyPetMatInfoWin>();
                    break;
                case ItemWinType.GatherSoul:
                case ItemWinType.gatherSoul:
                    WindowCenter.Instance.Open<GatherSoulTipWin>();
                    break;
                case ItemWinType.KingTreasure:
                case ItemWinType.kingTreasure:
                    var kingTreasureShow = ModelCenter.Instance.GetModel<KingTreasureShowModel>();
                    kingTreasureShow.SetInitData(curAttrData.itemId);
                    break;
@@ -1049,7 +1038,7 @@
                    {
                        if (attrData.itemConfig.CanSell == 1)
                        {
                            attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.SellItem( attrData); });
                            attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.SellItem(attrData); });
                        }
                    }
                    break;
@@ -1059,7 +1048,7 @@
                    {
                        if (attrData.itemConfig.CanSell == 1)
                        {
                            attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.SellItem(attrData); });
                            attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.SellItem(attrData); });
                        }
                    }
                    break;
@@ -1069,7 +1058,7 @@
                    {
                        if (attrData.itemConfig.CanSell == 1)
                        {
                            attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.SellItem(attrData); });
                            attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.SellItem(attrData); });
                        }
                    }
                    break;
@@ -1079,14 +1068,14 @@
                    {
                        if (attrData.itemConfig.CanSell == 1)
                        {
                            attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.SellItem(attrData); });
                            attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.SellItem(attrData); });
                        }
                    }
                    break;
                default:
                    if (attrData.itemConfig.CanSell == 1)
                    {
                        attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.SellItem(attrData); });
                        attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.SellItem(attrData); });
                    }
                    break;
            }
@@ -1094,7 +1083,7 @@
            List<int> dismantleReturnlist = attrData.GetUseDataModel((int)ItemUseDataKey.itemDecompound);
            if (dismantleReturnlist != null && dismantleReturnlist.Count > 0)
            {
                attrData.SetTipsFuncBtn(ItemOperateType.dismantle, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.DismantleItem( attrData); });
                attrData.SetTipsFuncBtn(ItemOperateType.dismantle, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.DismantleItem(attrData); });
            }
            if (!isOverdue)
@@ -1107,19 +1096,19 @@
                        bool isUnlock = ModelCenter.Instance.GetModel<ComposeWinModel>().CheckComposeItemById(attrData.itemId, out jumpId);
                        if (isUnlock)
                        {
                            ItemLogicUtility.Instance.GotoComposeItem(jumpId);
                            ItemOperateUtility.Instance.GotoComposeItem(jumpId);
                        }
                    });
                }
                if (attrData.itemConfig.Type == 25 && attrData.itemConfig.Effect1 == 225)
                {
                    attrData.SetTipsFuncBtn(ItemOperateType.inlay, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.GotoInlayItem(attrData.guid); });
                    attrData.SetTipsFuncBtn(ItemOperateType.inlay, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.GotoInlayItem(attrData.guid); });
                }
                if (attrData.itemConfig.CanTrade == 1 && attrData.isBind == 0)
                {
                    attrData.SetTipsFuncBtn(ItemOperateType.putAway, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.PutAwayItem(attrData.guid); });
                    attrData.SetTipsFuncBtn(ItemOperateType.putAway, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.PutAwayItem(attrData.guid); });
                }
                if ((ItemType)attrData.itemConfig.Type == ItemType.WingsMat)
@@ -1135,7 +1124,7 @@
            if (attrData.count > 1)
            {
                attrData.SetTipsFuncBtn(ItemOperateType.split, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.OnClickSplitBtn(attrData.guid); });
                attrData.SetTipsFuncBtn(ItemOperateType.split, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.OnClickSplitBtn(attrData.guid); });
            }
            if (!isOverdue)
@@ -1145,13 +1134,13 @@
                    case ItemWinType.equipWin:
                    case ItemWinType.wingsWin:
                    case ItemWinType.guardWin:
                        attrData.SetTipsFuncBtn(ItemOperateType.putOn, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.PutOnItem(ItemOperateType.putOn, attrData.guid); });
                        attrData.SetTipsFuncBtn(ItemOperateType.putOn, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.PutOnItem(ItemOperateType.putOn, attrData.guid); });
                        break;
                }
                if (attrData.itemConfig.UseTag == 1)
                {
                    attrData.SetTipsFuncBtn(ItemOperateType.makeUse, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.GotoUseItem(attrData.index); });
                    attrData.SetTipsFuncBtn(ItemOperateType.makeUse, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.GotoUseItem(attrData.index); });
                }
            }
@@ -1161,7 +1150,7 @@
                {
                    if (isOverdue)
                    {
                        attrData.SetTipsFuncBtn(ItemOperateType.renewal, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.RenewalItem(attrData.guid); });
                        attrData.SetTipsFuncBtn(ItemOperateType.renewal, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.RenewalItem(attrData.guid); });
                    }
                }
            }
@@ -1186,7 +1175,7 @@
        {
            if (attrData == null) return;
            attrData.SetTipsFuncBtn(ItemOperateType.putOut, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.TakeOutFromWarehouse(ItemOperateType.putOut, attrData.guid); });
            attrData.SetTipsFuncBtn(ItemOperateType.putOut, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.TakeOutFromWarehouse(ItemOperateType.putOut, attrData.guid); });
        }
@@ -1196,7 +1185,7 @@
            if (attrData.itemConfig.CanSell == 1)
            {
                attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.SellItem(attrData); });
                attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.SellItem(attrData); });
            }
            switch (attrData.winType)
@@ -1244,7 +1233,7 @@
            if (attrData == null) return;
            attrData.SetTipsFuncBtn(ItemOperateType.putIn,
                (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.PutInWareHouse(attrData.guid); }
                (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.PutInWareHouse(attrData.guid); }
                );
        }
@@ -1277,7 +1266,7 @@
            attrData.SetTipsFuncBtn(ItemOperateType.putOff, (ItemWinBtnType, ItemAttrData) =>
            {
                ItemLogicUtility.Instance.PutOffEquip(attrData.guid);
                ItemOperateUtility.Instance.PutOffEquip(attrData.guid);
            });
            for (int i = 0; i < tryPutOnEquipIds.Length; i++)
@@ -1299,7 +1288,7 @@
            bool isOverdue = modelInterface.IsOverdue(attrData.guid, attrData.itemId, attrData.useDataDict);
            if (attrData.itemConfig.CanSell == 1)
            {
                attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.SellItem(attrData); });
                attrData.SetTipsFuncBtn(ItemOperateType.sell, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.SellItem(attrData); });
            }
            if (!isOverdue)
@@ -1312,14 +1301,14 @@
                        bool isUnlock = ModelCenter.Instance.GetModel<ComposeWinModel>().CheckComposeItemById(attrData.itemId, out jumpId);
                        if (isUnlock)
                        {
                            ItemLogicUtility.Instance.GotoComposeItem(jumpId);
                            ItemOperateUtility.Instance.GotoComposeItem(jumpId);
                        }
                    });
                }
                if (attrData.itemConfig.Effect1 == 225)
                {
                    attrData.SetTipsFuncBtn(ItemOperateType.inlay, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.GotoInlayItem(attrData.guid); });
                    attrData.SetTipsFuncBtn(ItemOperateType.inlay, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.GotoInlayItem(attrData.guid); });
                }
                if (!isOverdue)
@@ -1327,7 +1316,7 @@
                    switch (attrData.winType)
                    {
                        case ItemWinType.equipWin:
                            attrData.SetTipsFuncBtn(ItemOperateType.putOn, (ItemWinBtnType, ItemAttrData) => { ItemLogicUtility.Instance.PutOnItem(ItemOperateType.putOn, attrData.guid); });
                            attrData.SetTipsFuncBtn(ItemOperateType.putOn, (ItemWinBtnType, ItemAttrData) => { ItemOperateUtility.Instance.PutOnItem(ItemOperateType.putOn, attrData.guid); });
                            break;
                    }
                }
@@ -1345,7 +1334,7 @@
            var equipType = (RoleEquipType)attrData.itemConfig.EquipPlace;
            attrData.SetTipsFuncBtn(ItemOperateType.putOff, (ItemWinBtnType, ItemAttrData) =>
            {
                ItemLogicUtility.Instance.PutOffEquip(attrData.guid);
                ItemOperateUtility.Instance.PutOffEquip(attrData.guid);
            });
        }
        #endregion
@@ -1497,7 +1486,7 @@
                    if (attrData.GetUseDataModel(42) != null)
                    {
                        curHp = itemEffectDict[key] + (int)attrData.strengthengmodel.BackpackWings(attrData.itemId, attrData.GetUseDataModel(42)[0])[1];
                        curHp = itemEffectDict[key] + (int)strengthengmodel.BackpackWings(attrData.itemId, attrData.GetUseDataModel(42)[0])[1];
                    }
                    else
                    {
@@ -1515,7 +1504,7 @@
                    if (attrData.GetUseDataModel(42) != null)
                    {
                        curHurt = itemEffectDict[key] + (int)attrData.strengthengmodel.BackpackWings(attrData.itemId, attrData.GetUseDataModel(42)[0])[0];
                        curHurt = itemEffectDict[key] + (int)strengthengmodel.BackpackWings(attrData.itemId, attrData.GetUseDataModel(42)[0])[0];
                    }
                    else
                    {
@@ -2429,11 +2418,7 @@
        #region 物品增加战斗力
        PlayerMountDatas mountDatas { get { return ModelCenter.Instance.GetModel<PlayerMountDatas>(); } }
        public PlayerStrengthengDatas strengthengmodel {
            get {
                return ModelCenter.Instance.GetModel<PlayerStrengthengDatas>();
            }
        }
        public PlayerStrengthengDatas strengthengmodel { get { return ModelCenter.Instance.GetModel<PlayerStrengthengDatas>(); } }
        public bool TryGetFightPowerByItemId(int itemId, out int fightPower)
        {
@@ -2958,37 +2943,12 @@
        public Dictionary<SuitType, int> suitTypeCntDict { get; private set; }
        public bool isHavePutLimit { get; private set; }
        PlayerStrengthengDatas m_StrengthengModel;
        public PlayerStrengthengDatas strengthengmodel {
            get {
                return m_StrengthengModel ?? (m_StrengthengModel = ModelCenter.Instance.GetModel<PlayerStrengthengDatas>());
            }
        }
        PackModelInterface _modelInterface;
        PackModelInterface modelInterface {
            get { return _modelInterface ?? (_modelInterface = ModelCenter.Instance.GetModel<PackModelInterface>()); }
        }
        EquipWashModel _washModel;
        EquipWashModel washModel {
            get {
                return _washModel ?? (_washModel = ModelCenter.Instance.GetModel<EquipWashModel>());
            }
        }
        ItemTipsModel _itemTipsModel;
        ItemTipsModel itemTipsModel {
            get {
                return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel<ItemTipsModel>());
            }
        }
        PlayerSuitModel _suitModel;
        PlayerSuitModel SuitModel {
            get { return _suitModel ?? (_suitModel = ModelCenter.Instance.GetModel<PlayerSuitModel>()); }
        }
        PlayerStrengthengDatas strengthengmodel { get { return ModelCenter.Instance.GetModel<PlayerStrengthengDatas>(); } }
        PackModelInterface modelInterface { get { return ModelCenter.Instance.GetModel<PackModelInterface>(); } }
        EquipWashModel washModel { get { return ModelCenter.Instance.GetModel<EquipWashModel>(); } }
        ItemTipsModel itemTipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } }
        PlayerSuitModel SuitModel { get { return ModelCenter.Instance.GetModel<PlayerSuitModel>(); } }
        RuneModel runeModel { get { return ModelCenter.Instance.GetModel<RuneModel>(); } }
        GodBeastModel beastModel { get { return ModelCenter.Instance.GetModel<GodBeastModel>(); } }
@@ -3667,7 +3627,7 @@
                            winType = ItemWinType.itemWin;
                            break;
                        case ItemTipChildType.Buy:
                            winType = ItemWinType.BuyItemWin;
                            winType = ItemWinType.buyItemWin;
                            break;
                    }
                    break;
@@ -3703,10 +3663,10 @@
                    winType = ItemWinType.guardWin;
                    break;
                case "GatherSoul":
                    winType = ItemWinType.GatherSoul;
                    winType = ItemWinType.gatherSoul;
                    break;
                case "KingTreasureShow":
                    winType = ItemWinType.KingTreasure;
                    winType = ItemWinType.kingTreasure;
                    break;
                default:
                    DebugEx.Log("没有此物品的弹框类型" + this.itemConfig.Template.Trim());