From 41a6e87783d042bf3e0ecebfa772443f2b5ed95d Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期四, 06 六月 2019 17:22:55 +0800
Subject: [PATCH] 7132 【2.0】【开发】打宝界面优化2

---
 System/FindPrecious/DemonJarModel.cs |   44 ++++++++++++++++----------------------------
 1 files changed, 16 insertions(+), 28 deletions(-)

diff --git a/System/FindPrecious/DemonJarModel.cs b/System/FindPrecious/DemonJarModel.cs
index 4f4f748..edd5681 100644
--- a/System/FindPrecious/DemonJarModel.cs
+++ b/System/FindPrecious/DemonJarModel.cs
@@ -77,7 +77,6 @@
             }
         }
 
-        int demonJarSoulBuf = 0;
         public int demonJarSoulIncreaseDelta { get; set; }
 
         public event Action<int> bossSelectedEvent;
@@ -93,7 +92,6 @@
 
         FindPreciousModel findPreciousModel { get { return ModelCenter.Instance.GetModel<FindPreciousModel>(); } }
         DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
-        TreasureModel treasureModel { get { return ModelCenter.Instance.GetModel<TreasureModel>(); } }
 
         public override void Init()
         {
@@ -172,10 +170,13 @@
                     continue;
                 }
 
-                bosses.Add(bossId);
+                if (findPreciousModel.IsBossUnlockOrUnlockSoon(bossId))
+                {
+                    bosses.Add(bossId);
+                }
             }
 
-            return new List<int>(bosses);
+            return bosses;
         }
 
         public int GetBossIdByLine(int _line)
@@ -190,12 +191,6 @@
             }
         }
 
-        public bool IsBossUnLocked(int _bossId)
-        {
-            var playerLevel = PlayerDatas.Instance.baseData.LV;
-            return demonBosses.ContainsKey(_bossId) && playerLevel >= demonBosses[_bossId].unLockLevel;
-        }
-
         public int GetLatestUnLockBoss()
         {
             if (FuncOpen.Instance.IsFuncOpen(76))
@@ -204,7 +199,7 @@
                 for (int i = sortedBossIds.Count - 1; i >= 0; i--)
                 {
                     var bossId = sortedBossIds[i];
-                    if (demonBosses[bossId].unLockLevel <= PlayerDatas.Instance.baseData.LV)
+                    if (findPreciousModel.IsBossUnlock(bossId))
                     {
                         latestBossId = bossId;
                         break;
@@ -328,17 +323,11 @@
             return new List<AutoChallengeLog>(autoChallengeLogs);
         }
 
-        public void UpdateDemonJarSoul()
-        {
-            //demonJarSoulIncreaseDelta = demonJarSoul - demonJarSoulBuf;
-            //demonJarSoulBuf = demonJarSoul;
-        }
-
         private void OnPlayerLevelUp(PlayerDataType _type)
         {
             switch (_type)
             {
-                case PlayerDataType.LV:
+                case PlayerDataType.RealmLevel:
                     if (FuncOpen.Instance.IsFuncOpen(76))
                     {
                         var bossId = GetLatestUnLockBoss();
@@ -434,35 +423,34 @@
             }
         }
 
-        private void AutoSubscribeLastUnLockBoss(int _bossId)
+        private void AutoSubscribeLastUnLockBoss(int bossId)
         {
-            if (_bossId == 0)
+            if (bossId == 0)
             {
                 return;
             }
 
             foreach (var boss in demonBosses.Values)
             {
-                if (this.findPreciousModel.IsBossAutoSubscribe(boss.id) && boss.id != _bossId)
+                if (this.findPreciousModel.IsBossAutoSubscribe(boss.id) && boss.id != bossId)
                 {
                     this.findPreciousModel.RequestDeSubscribeBoss(boss.id);
                 }
             }
 
-            if (_bossId != 0 && this.findPreciousModel.IsBossNeverSubscribe((int)_bossId))
+            if (bossId != 0 && this.findPreciousModel.IsBossNeverSubscribe(bossId))
             {
-                var npcConfig = NPCConfig.Get((int)_bossId);
-                if (PlayerDatas.Instance.baseData.LV >= npcConfig.NPCLV)
+                if (findPreciousModel.IsBossUnlock(bossId))
                 {
-                    var config = DemonJarConfig.Get((int)_bossId);
+                    var config = DemonJarConfig.Get(bossId);
                     if (config.AutoAttention == 1)
                     {
-                        this.findPreciousModel.RequestSubscribeBoss((int)_bossId, true);
+                        this.findPreciousModel.RequestSubscribeBoss(bossId, true);
                         var model = ModelCenter.Instance.GetModel<DungeonModel>();
                         var grade = model.GetGrade(new Dungeon(DATA_MAPID, config.LineID));
-                        if ((config.CanEnterTimes == 0 || grade == 0) && this.findPreciousModel.IsBossAlive((int)_bossId))
+                        if ((config.CanEnterTimes == 0 || grade == 0) && this.findPreciousModel.IsBossAlive(bossId))
                         {
-                            this.findPreciousModel.AddOneBossRebornNotify(_bossId);
+                            this.findPreciousModel.AddOneBossRebornNotify(bossId);
                         }
                     }
                 }

--
Gitblit v1.8.0