From 3678e238ee59a49ecaf80248323a18dfcf3dcce2 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期四, 18 十月 2018 20:28:01 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts

---
 System/FairyAu/FairyGrabBossModel.cs |   26 ++++++++++++++++++--------
 1 files changed, 18 insertions(+), 8 deletions(-)

diff --git a/System/FairyAu/FairyGrabBossModel.cs b/System/FairyAu/FairyGrabBossModel.cs
index 907c98c..6f3eee7 100644
--- a/System/FairyAu/FairyGrabBossModel.cs
+++ b/System/FairyAu/FairyGrabBossModel.cs
@@ -346,6 +346,12 @@
                 noticeShowPet = int.Parse(config.Numerical1);
                 noticeShowHorse = int.Parse(config.Numerical2);
             }
+            config = Config.Instance.Get<FuncConfigConfig>("FairyGrabBossNoticeSessions");
+            noticeSessions = 2;
+            if (config != null)
+            {
+                noticeSessions = int.Parse(config.Numerical1);
+            }
         }
 
         public bool TryGetDropItems(int bossId, out List<Item> dropItems)
@@ -697,7 +703,8 @@
                 DailyQuestOpenTime dailyQuestOpenTime;
                 if (dailyQuestModel.TryGetOpenTime((int)DailyQuestType.FairyGrabBoss, out dailyQuestOpenTime))
                 {
-                    return FuncOpen.Instance.IsFuncOpen(139) && !dailyQuestOpenTime.IsAfterFirstOpen();
+                    return FuncOpen.Instance.IsFuncOpen(139)
+                        && dailyQuestOpenTime.PassSessionCount(TimeUtility.createRoleTime) < noticeSessions;
                 }
                 return false;
             }
@@ -715,17 +722,20 @@
 
         bool cacheNoticeOpen { get; set; }
 
+        int noticeSessions { get; set; }
+
         public event Action<int> onStateUpate;
-        public int GetFirstOpenSeconds()
+        public int GetNextSessionSeconds()
         {
             int seconds = 0;
-            if (!InActivityTime)
+            if (!IsOpen)
             {
-                DailyQuestOpenTime dailyQuestOpenTime;
-                if (dailyQuestModel.TryGetOpenTime((int)DailyQuestType.FairyGrabBoss, out dailyQuestOpenTime))
-                {
-                    seconds = dailyQuestOpenTime.GetFirstOpenSurplusSeconds();
-                }
+                return 0;
+            }
+            DailyQuestOpenTime dailyQuestOpenTime;
+            if (dailyQuestModel.TryGetOpenTime((int)DailyQuestType.FairyGrabBoss, out dailyQuestOpenTime))
+            {
+                seconds = dailyQuestOpenTime.GetNextSessionSurplusTime();
             }
             return seconds;
         }

--
Gitblit v1.8.0