From ae04644ddb2414ee9b1dd8df1db787a3b65050a8 Mon Sep 17 00:00:00 2001
From: Client_PangDeRong <593317293@qq.com>
Date: 星期一, 24 十二月 2018 10:42:24 +0800
Subject: [PATCH] 5398 子 【开发】【1.4】跨服竞技场 ,正在进入跨服时,限制进入副本

---
 System/CrossServerOneVsOne/CrossServerArenaWin.cs |   34 +++++++++++++++++-----------------
 1 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/System/CrossServerOneVsOne/CrossServerArenaWin.cs b/System/CrossServerOneVsOne/CrossServerArenaWin.cs
index 0c7c4af..1d83a78 100644
--- a/System/CrossServerOneVsOne/CrossServerArenaWin.cs
+++ b/System/CrossServerOneVsOne/CrossServerArenaWin.cs
@@ -44,7 +44,7 @@
             SetDisplay();
             TimeMgr.Instance.OnMinuteEvent += UpdateMinute;
             GlobalTimeEvent.Instance.secondEvent += UpdateSecond;
-            DTCC002_tagGCCrossRealmPKStartMatch.CrossServerStartMatchEvent += OnStartMatch;
+            CrossServerPKSeason.Instance.updateSelfSeasonEvent += OnChangeMatchState;
         }
 
         protected override void OnAfterOpen()
@@ -56,6 +56,7 @@
         {
             TimeMgr.Instance.OnMinuteEvent -= UpdateMinute;
             GlobalTimeEvent.Instance.secondEvent -= UpdateSecond;
+            CrossServerPKSeason.Instance.updateSelfSeasonEvent -= OnChangeMatchState;
         }
         protected override void OnAfterClose()
         {
@@ -69,8 +70,10 @@
             UpdatePKInfo();
             UpdateActivityState();
             UpdateLookPlayerTime();
-            seasonTimeText.text = CrossServerPKSeason.Instance.ToDisplaySeasonTime();
-            var openTimes = CrossServerPKSeason.Instance.GetActivityTimes();
+            OnChangeMatchState();
+            var pkSeason = CrossServerPKSeason.Instance;
+            seasonTimeText.text = pkSeason.ToDisplaySeasonTime();
+            var openTimes = pkSeason.GetActivityTimes();
             openTimeText.gameObject.SetActive(openTimes != null && openTimes.Count > 0);
             if(openTimes != null)
             {
@@ -92,7 +95,7 @@
                 openTimeText.text = Language.Get("CrossServer119", openTimeDes);
             }
 
-            lookPlayerObj.SetActive(crossServerModel.IsMatching);
+            lookPlayerObj.SetActive(pkSeason.MatchState != 0);
         }
 
         private void UpdateMatchInfo()
@@ -127,7 +130,7 @@
 
         private void UpdateLookPlayerTime()
         {
-            if (!crossServerModel.IsMatching) return;
+            if (CrossServerPKSeason.Instance.MatchState == 0) return;
 
             int totalSeconds = Mathf.RoundToInt((float)(DateTime.Now - crossServerModel.matchStartTime).TotalSeconds);
             if(totalSeconds < 3600)
@@ -176,7 +179,7 @@
             matchBtn.RemoveAllListeners();
             matchBtn_Text.text = Language.Get("CrossServer109");
             matchBtn_Img.material = MaterialUtility.GetUIDefaultGraphicMaterial();
-            if (!crossServerModel.IsMatching)
+            if (CrossServerPKSeason.Instance.MatchState == 0)
             {
                 matchBtn.AddListener(() => { ClickMatch(1); });
             }
@@ -206,24 +209,21 @@
             WindowCenter.Instance.Open<RankingWin>();
         }
 
-        private void OnStartMatch()
+        private void OnChangeMatchState()
         {
-            lookPlayerObj.SetActive(true);
-            crossServerModel.IsMatching = true;
-            crossServerModel.matchStartTime = DateTime.Now;
-            UpdateLookPlayerTime();
+            int matchState = CrossServerPKSeason.Instance.MatchState;
+            lookPlayerObj.SetActive(matchState != 0);
+            if(matchState != 0)
+            {
+                crossServerModel.matchStartTime = DateTime.Now;
+                UpdateLookPlayerTime();
+            }
             UpdateActivityState();
         }
 
         private void ClickMatch(int type)
         {
             crossServerModel.SendCrossMatch(type);
-            if(type != 1)
-            {
-                lookPlayerObj.SetActive(false);
-                crossServerModel.IsMatching = false;
-                UpdateActivityState();
-            }
         }
 
         private void ClickMatchRecord()

--
Gitblit v1.8.0