From 5022f4efe76121df33dc81249befa7556e535418 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期四, 19 六月 2025 22:35:42 +0800
Subject: [PATCH] 0312 红点增加“新”标识功能,其他代码优化

---
 Main/System/KnapSack/Logic/ItemLogicUtility.cs |  405 ---------------------------------------------------------
 1 files changed, 1 insertions(+), 404 deletions(-)

diff --git a/Main/System/KnapSack/Logic/ItemLogicUtility.cs b/Main/System/KnapSack/Logic/ItemLogicUtility.cs
index 5d228e6..0513ad9 100644
--- a/Main/System/KnapSack/Logic/ItemLogicUtility.cs
+++ b/Main/System/KnapSack/Logic/ItemLogicUtility.cs
@@ -7,22 +7,10 @@
 
     public class ItemLogicUtility : Singleton<ItemLogicUtility>
     {
-        private string dogzGSFormula;
         private string normalGSFormula;
-        private Dictionary<int, string> specialSpiritPropertyFormula = new Dictionary<int, string>();
-        Dictionary<int, int> specialSpiritPropertyMaxLevels;
 
-        private int[] preciousItemTypes;
-        private int[] preciousItemIDs; // 涓嶅睍绀虹殑鐗╁搧ID
-        public int[] drugIDs;
-        private int[] onekeySellTypes;
-        private int[] pushItemIds;
-
-        private int lsItemCnt; // 鑳屽寘涓殑鐏电煶鏁伴噺
 
         private List<int> equipBaseProperties = new List<int>();
-        private Dictionary<int, int> promptUseLimitDict;
-        private Dictionary<int, List<int>> betterEquipExceptDungeonDict;
         Dictionary<int, int> equipSkillScores = new Dictionary<int, int>();
 
         PackManager packModel { get { return PackManager.Instance; } }
@@ -38,15 +26,8 @@
         public void Init()
         {
             var GSFormulaConfig = FuncConfigConfig.Get("EquipGSFormula");
-            dogzGSFormula = GSFormulaConfig.Numerical3;
             normalGSFormula = GSFormulaConfig.Numerical1;
 
-            var json = JsonMapper.ToObject(FuncConfigConfig.Get("OutOfPrintValue").Numerical2);
-            foreach (var key in json.Keys)
-            {
-                specialSpiritPropertyFormula[int.Parse(key)] = json[key].ToString();
-            }
-            specialSpiritPropertyMaxLevels = ConfigParse.GetDic<int, int>(FuncConfigConfig.Get("OutOfPrintValueDes").Numerical1);
             var equipSkillScoreJson = JsonMapper.ToObject(GSFormulaConfig.Numerical4);
             foreach (var key in equipSkillScoreJson.Keys)
             {
@@ -66,29 +47,9 @@
                     equipBaseProperties.Add(int.Parse(baseAttr[i].ToString()));
                 }
             }
-            lsItemCnt = int.Parse(FuncConfigConfig.Get("LingshiShowCount").Numerical1);
 
-            preciousItemTypes = ConfigParse.GetMultipleStr<int>(FuncConfigConfig.Get("ItemPush").Numerical1);
-            promptUseLimitDict = ConfigParse.GetDic<int, int>(FuncConfigConfig.Get("NoPromptUsetItem").Numerical1);
-            preciousItemIDs = ConfigParse.GetMultipleStr<int>(FuncConfigConfig.Get("ItemPush").Numerical3);
-            drugIDs = ConfigParse.GetMultipleStr<int>(FuncConfigConfig.Get("LifePotionlist").Numerical1);
 
-            onekeySellTypes = ConfigParse.GetMultipleStr<int>(FuncConfigConfig.Get("OneKeySellItemType").Numerical1);
 
-            pushItemIds = ConfigParse.GetMultipleStr<int>(FuncConfigConfig.Get("IntroductionItem").Numerical1);
-
-            betterEquipExceptDungeonDict = new Dictionary<int, List<int>>();
-            var excEquipData = JsonMapper.ToObject(FuncConfigConfig.Get("GoodItemDungeon").Numerical1);
-            foreach (var dungeonId in excEquipData.Keys)
-            {
-                var itemIds = new List<int>();
-                betterEquipExceptDungeonDict.Add(int.Parse(dungeonId), itemIds);
-                for (var i = 0; i < excEquipData[dungeonId].Count; i++)
-                {
-                    var itemId = int.Parse(excEquipData[dungeonId][i].ToString());
-                    itemIds.Add(itemId);
-                }
-            }
 
             DTC0102_tagCDBPlayer.beforePlayerDataInitializeEvent += OnBeforePlayerDataInitialize;
         }
@@ -385,370 +346,7 @@
 
         #endregion
 
-        #region 涓荤晫闈㈢墿鍝佸脊妗嗗睍绀�
-        public event Action<PackType, string> GetPreciousItemEvent; //寰楀埌鐝嶅搧  value 鐗╁搧鐨勫疄渚婭D
-        public event Action<PackType, string> GetExpItemEvent; //寰楀埌缁忛獙鐗╁搧  value 鐗╁搧鐨勫疄渚婭D
-        public void RecommendItem(ItemModel item)
-        {
-            if (item.packType != PackType.Item)
-            {
-                return;
-            }
-            if (!preciousItemTypes.Contains(item.config.Type))
-            {
-                int mapId = PlayerDatas.Instance.baseData.MapID;
-                var drugList = packModel.GetDrugIDListByDungeonID(mapId);
-                if (drugList == null)
-                    return;
-                if (!drugList.Contains(item.config.ID))
-                    return;
-            }
-
-            if (item.config.Type == 145 && item.config.CDTime > 0)
-            {
-                var createTime = item.GetUseDataFirstValue((int)ItemUseDataKey.createTime);
-                if (createTime > 0)
-                {
-                    DateTime useTime;
-                    if (item.config.CDTypeEx == 1)
-                    {
-                        //itemConfig.CDTime 涓哄ぉ锛岃繃0鐐瑰彲鐢�
-                        useTime = TimeUtility.GetTime((uint)createTime).AddDays(item.config.CDTime);
-                        useTime = TimeUtility.GetDayStartTime(useTime.Year, useTime.Month, useTime.Day);
-                    }
-                    else
-                    {
-                        useTime = TimeUtility.GetTime((uint)createTime).AddSeconds(item.config.CDTime);
-                    }
-                    if (TimeUtility.ServerNow < useTime)
-                    {
-                        return;
-                    }
-                }
-            }
-
-            if (preciousItemIDs != null && preciousItemIDs.Contains(item.config.ID))
-            {
-                return;
-            }
-            if (item.config.ID == packModel.lsItemID)
-            {
-                int tmpCnt = PlayerDatas.Instance.baseData.LV < 50 ? 5 : lsItemCnt;
-                if (packModel.GetItemCountByID(PackType.Item, packModel.lsItemID) < tmpCnt)
-                    return;
-            }
-            //if (item.isAuction)
-            //{
-            //    return;
-            //}
-
-            if (item.config.UseLV > PlayerDatas.Instance.baseData.LV)
-            {
-                return;
-            }
-
-            if (IsOverdue(item.guid))
-            {
-                return;
-            }
-
-            // if (!IsAbleToUse(item))
-            // {
-            //     return;
-            // }
-
-            if (IsSpiritWeapon(item.itemId))
-            {
-                if (IsFightUp(item.itemId, item.score) != 1)
-                {
-                    return;
-                }
-            }
-            if (item.config.Type == 13)
-            {
-                // 缁忛獙涓圭壒娈婂鐞嗭紝浼樺厛鏄剧ず
-                if (GetExpItemEvent != null)
-                {
-                    GetExpItemEvent(item.packType, item.guid);
-                }
-            }
-            else
-            {
-                if (GetPreciousItemEvent != null)
-                {
-                    GetPreciousItemEvent(item.packType, item.guid);
-                }
-
-            }
-        }
-
-        // bool IsAbleToUse(ItemModel item)
-        // {
-        //     var windowSearch = WindowSearchConfig.Get(item.config.Jump);
-        //     if (windowSearch != null)
-        //     {
-        //         if (!FuncOpen.Instance.IsFuncOpen(windowSearch.Lv) && windowSearch.Lv != 0)
-        //         {
-        //             return false;
-        //         }
-        //     }
-
-        //     if (pushItemIds.Contains(item.itemId))
-        //     {
-        //         var itemCnt = packModel.GetItemCountByID(PackType.Item, item.itemId) - item.count;
-        //         if (itemCnt > 0)
-        //         {
-        //             return false;
-        //         }
-        //         else
-        //         {
-        //             if (item.preItemCount > 0)
-        //             {
-        //                 return false;
-        //             }
-        //         }
-        //     }
-
-        //     if (promptUseLimitDict.ContainsKey(item.itemId))
-        //     {
-        //         var playerLv = PlayerDatas.Instance.baseData.LV;
-        //         if (playerLv < promptUseLimitDict[item.itemId])
-        //         {
-        //             return false;
-        //         }
-        //     }
-
-        //     ulong canUseCnt = 0;
-        //     if (packModel.IsReachUseLimit(item.guid, out canUseCnt))
-        //     {
-        //         return false;
-        //     }
-
-        //     bool isBox = false;
-        //     bool isCanOpen = ModelCenter.Instance.GetModel<BoxGetItemModel>().CheckOpenBoxCondition(item.itemId, out isBox);
-        //     if (isBox)
-        //     {
-        //         if (!isCanOpen)
-        //         {
-        //             return false;
-        //         }
-        //     }
-
-        //     //if (trialModel.trialTokens.Contains(item.itemId))
-        //     //{
-        //     //    if (!trialModel.IsAnySatisfyExchangeBetter(item.itemId))
-        //     //    {
-        //     //        return false;
-        //     //    }
-        //     //}
-
-        //     if (packModel.CheckIsDrugById(item.itemId))
-        //     {
-        //         if (item.config.RealmLimit > PlayerDatas.Instance.baseData.realmLevel)
-        //         {
-        //             return false;
-        //         }
-        //     }
-
-        //     var fruitConfig = AttrFruitConfig.Get(item.itemId);
-        //     if (fruitConfig != null && fruitConfig.FuncID == 2)
-        //     {
-        //         if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.BlastFurnace))
-        //         {
-        //             return false;
-        //         }
-        //     }
-
-        //     switch (item.config.Type)
-        //     {
-        //         case 8:
-        //             if (buffDatas.BastBuff(item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 20:
-        //             if (magicianModel.IsGodWeaponMaxLevelByItem(item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 21:
-        //             if (!mountDatas.IsHint(HorseEnum.HorseDan, item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 22:
-        //             if (!mountDatas.IsHint(HorseEnum.HorseStone, item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 41:
-        //             if (!mountDatas.IsHint(HorseEnum.HorseDebris, item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 26:
-        //             if (!petDatas.IsHint(PetEnum.PetDebris, item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 27:
-        //             if (!petDatas.IsHint(PetEnum.PetDan, item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 28:
-        //             if (!petDatas.IsHint(PetEnum.PetStone, item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 25:
-        //             if (!ModelCenter.Instance.GetModel<EquipGemModel>().IsBetterGem(item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 39:
-        //             if (!IsBetterWings(item))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 52:
-        //             if (!strengthDatas.IsHint(item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 55:
-        //             if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.BlastFurnace))
-        //             {
-        //                 return false;
-        //             }
-        //             var alchemyId = 0;
-        //             if (alchemyModel.TryGetAlchemyByStudyMaterial(item.itemId, out alchemyId))
-        //             {
-        //                 var alchemyConfig = AlchemyConfig.Get(alchemyId);
-        //                 int alchemingId;
-        //                 if (alchemyModel.IsStoveAlcheming((AlchemyType)alchemyConfig.AlchemType, out alchemingId))
-        //                 {
-        //                     return false;
-        //                 }
-        //                 if (alchemyModel.IsGraspRecipe(alchemyId))
-        //                 {
-        //                     return false;
-        //                 }
-        //                 var studyError = 0;
-        //                 if (!alchemyModel.TryLearn(alchemyId, out studyError))
-        //                 {
-        //                     return false;
-        //                 }
-        //             }
-        //             break;
-        //         case 127:
-        //             var error = 0;
-        //             bool isHaveMakeNum = ItemOperateUtility.Instance.CanUseItem(item.guid, 1, out error);
-        //             int remainNum = CrossServerOneVsOnePlayerInfo.Instance.GetDayRemainNum();
-        //             if (!CrossServerOneVsOnePKSeason.Instance.isSatisfyMatch
-        //                 || remainNum > 0
-        //                 || !isHaveMakeNum)
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         default:
-        //             break;
-        //     }
-
-        //     switch (item.itemId)
-        //     {
-        //         case 951:
-        //             if (!CheckIsExtendGrid(item.itemId))
-        //             {
-        //                 return false;
-        //             }
-        //             break;
-        //         case 952:
-        //             return false;
-        //             break;
-
-        //     }
-
-        //     return true;
-        // }
-
-        // private bool IsBetterWings(ItemModel item)
-        // {
-        //     if (item == null)
-        //     {
-        //         return false;
-        //     }
-
-        //     var putModel = packModel.GetItemByIndex(PackType.Equip, SpiritWeaponModel.WING_EQUIPINDEX);
-        //     var singlePack = packModel.GetSinglePack(PackType.Item);
-        //     if (singlePack == null)
-        //     {
-        //         return false;
-        //     }
-
-        //     int[] composeTypes = item.config.JumpComposeCondi;
-        //     bool isOpenCompose = false;
-        //     if (composeTypes != null && composeTypes.Length >= 3)
-        //     {
-        //         int first = composeTypes[0];
-        //         int second = composeTypes[1];
-        //         int third = composeTypes[2];
-        //         ComposeWinModel.ComposeThirdTypeData thirdTypeData = null;
-        //         composeModel.TryGetThirdTypeData(first, second, third, out thirdTypeData);
-        //         if (thirdTypeData != null)
-        //         {
-        //             var itemCompound = thirdTypeData.itemCompound;
-        //             if (itemCompound.levelNeed <= PlayerDatas.Instance.baseData.LV)
-        //             {
-        //                 isOpenCompose = true;
-        //             }
-        //         }
-        //     }
-
-        //     if (!isOpenCompose)
-        //     {
-        //         return false;
-        //     }
-
-        //     if (putModel != null && putModel.config.LV >= item.config.LV)
-        //     {
-        //         return false;
-        //     }
-
-        //     var itemModels = packModel.GetItems(PackType.Item, new SinglePack.FilterParams()
-        //     {
-        //         itemTypes = new List<int>() { (int)ItemType.Equip_Wing }
-        //     });
-
-        //     if (itemModels != null)
-        //     {
-        //         for (int i = 0; i < itemModels.Count; i++)
-        //         {
-        //             if (IsJobCompatibleItem(itemModels[i].itemId))
-        //             {
-        //                 if (itemModels[i].config.LV >= item.config.LV)
-        //                 {
-        //                     return false;
-        //                 }
-        //             }
-        //         }
-        //     }
-
-        //     return true;
-        // }
-
+       
         private bool CheckIsExtendGrid(int itemId)
         {
             SinglePack singlePack = packModel.GetSinglePack(PackType.Item);
@@ -954,7 +552,6 @@
         //     }
         //     return RealmDruglist;
         // }
-        #endregion
 
         #region 鐗╁搧澶勪簬CD涓殑閫昏緫澶勭悊
 

--
Gitblit v1.8.0