From 0012445c0109fa67987800a1bac8f32e989b2d19 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期三, 15 八月 2018 15:16:01 +0800
Subject: [PATCH] Merge branch 'master' into leonard

---
 System/Welfare/MultipleExpModel.cs |   40 ++++++++++++++++++++++++++++++++++++++--
 1 files changed, 38 insertions(+), 2 deletions(-)

diff --git a/System/Welfare/MultipleExpModel.cs b/System/Welfare/MultipleExpModel.cs
index 92d1482..e87989b 100644
--- a/System/Welfare/MultipleExpModel.cs
+++ b/System/Welfare/MultipleExpModel.cs
@@ -4,17 +4,18 @@
 using UnityEngine;
 namespace Snxxz.UI
 {
-    public class MultipleExpModel : Model, IPlayerLoginOk, IBeforePlayerDataInitialize
+    public class MultipleExpModel : Model, IPlayerLoginOk, IBeforePlayerDataInitialize, IOpenServerActivity
     {
         private bool showTip = false;
         private bool todayRemind = false;
         public override void Init()
         {
             OperationTimeHepler.Instance.operationStartEvent += OperationStartEvent;
+            OperationTimeHepler.Instance.operationEndEvent += OperationEndEvent;
             OperationTimeHepler.Instance.operationTimeUpdateEvent += OperationTimeUpdateEvent;
             WindowCenter.Instance.windowAfterOpenEvent += WindowAfterOpenEvent;
             StageManager.Instance.onStageLoadFinish += OnStageLoadFinish;
-
+            OpenServerActivityCenter.Instance.Register(5, this);
         }
 
         private void OnStageLoadFinish()
@@ -70,6 +71,7 @@
         public override void UnInit()
         {
             OperationTimeHepler.Instance.operationStartEvent -= OperationStartEvent;
+            OperationTimeHepler.Instance.operationEndEvent -= OperationEndEvent;
             OperationTimeHepler.Instance.operationTimeUpdateEvent -= OperationTimeUpdateEvent;
             WindowCenter.Instance.windowAfterOpenEvent -= WindowAfterOpenEvent;
         }
@@ -79,6 +81,22 @@
             if (type == Operation.MultipleExp && state == 1)
             {
                 UpdateRedpoint();
+                if (onStateUpate != null)
+                {
+                    onStateUpate(5);
+                }
+            }
+        }
+
+        private void OperationEndEvent(Operation type, int state)
+        {
+            if (type == Operation.MultipleExp && state == 1)
+            {
+                UpdateRedpoint();
+                if (onStateUpate != null)
+                {
+                    onStateUpate(5);
+                }
             }
         }
 
@@ -92,6 +110,24 @@
 
         public Redpoint multipleExpRedpoint = new Redpoint(MainRedDot.REDPOINT_OPENSERVER, 20905);
 
+        public event Action<int> onStateUpate;
+
+        public bool IsOpen
+        {
+            get
+            {
+                return Open();
+            }
+        }
+
+        public bool priorityOpen
+        {
+            get
+            {
+                return multipleExpRedpoint.state == RedPointState.Simple;
+            }
+        }
+
         public void SetDayRemind()
         {
             if (multipleExpRedpoint.state == RedPointState.Simple)

--
Gitblit v1.8.0