From 4259c2767ef9feb084b538cd6ebc271fd2f5745b Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期五, 15 三月 2019 20:25:10 +0800
Subject: [PATCH] 3335 排行榜代码修改

---
 System/OpenServerActivity/ImpactRankModel.cs |   57 ++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 36 insertions(+), 21 deletions(-)

diff --git a/System/OpenServerActivity/ImpactRankModel.cs b/System/OpenServerActivity/ImpactRankModel.cs
index 6c9529e..79f5515 100644
--- a/System/OpenServerActivity/ImpactRankModel.cs
+++ b/System/OpenServerActivity/ImpactRankModel.cs
@@ -10,10 +10,13 @@
     [XLua.LuaCallCSharp]
     public class ImpactRankModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk, IOpenServerActivity
     {
+
+        RankModel rankModel { get { return ModelCenter.Instance.GetModel<RankModel>(); } }
+
         public override void Init()
         {
             ParseConfig();
-            PlayerDatas.Instance.rank.OnRefreshRank += OnRefreshRank;
+            rankModel.onRankRefresh += OnRefreshRank;
             TimeUtility.OnServerOpenDayRefresh += OnServerOpenDayRefresh;
             FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
             OpenServerActivityCenter.Instance.Register(0, this);
@@ -21,7 +24,7 @@
 
         public override void UnInit()
         {
-            PlayerDatas.Instance.rank.OnRefreshRank -= OnRefreshRank;
+            rankModel.onRankRefresh -= OnRefreshRank;
             TimeUtility.OnServerOpenDayRefresh -= OnServerOpenDayRefresh;
         }
 
@@ -72,8 +75,8 @@
 
         private void OnRefreshRank(int type)
         {
-            if (type >= (int)PlayerRankData.RankType.OpenServerStrengthen
-                && type <= (int)PlayerRankData.RankType.OpenServerPet)
+            if (type >= (int)RankType.OpenServerStrengthen
+                && type <= (int)RankType.OpenServerPet)
             {
                 foreach (var _type in m_Redpoints.Keys)
                 {
@@ -320,7 +323,11 @@
             {
                 return false;
             }
-            var _rank = PlayerDatas.Instance.rank.GetSelfRank((int)GetRankType(_type));
+            var _rank = 0;
+            if (!rankModel.TryGetMyRank((int)GetRankType(_type), out _rank))
+            {
+                _rank = -1;
+            }
             if (_rank == -1)
             {
                 return false;
@@ -355,32 +362,32 @@
             return impactRankTypeOpenDict.ContainsKey(_type);
         }
 
-        public PlayerRankData.RankType GetRankType(int _type)
+        public RankType GetRankType(int _type)
         {
             switch (_type)
             {
                 case 2:
-                    return PlayerRankData.RankType.OpenServerMount;
+                    return RankType.OpenServerMount;
                 case 1:
-                    return PlayerRankData.RankType.OpenServerStrengthen;
+                    return RankType.OpenServerStrengthen;
                 case 3:
-                    return PlayerRankData.RankType.OpenServerGem;
+                    return RankType.OpenServerGem;
                 case 4:
-                    return PlayerRankData.RankType.OpenServerLv;
+                    return RankType.OpenServerLv;
                 case 5:
-                    return PlayerRankData.RankType.OpenServerRealm;
+                    return RankType.OpenServerRealm;
                 case 6:
-                    return PlayerRankData.RankType.OpenServerFightPower;
+                    return RankType.OpenServerFightPower;
                 case 7:
-                    return PlayerRankData.RankType.OpenServerRune;
+                    return RankType.OpenServerRune;
                 case 8:
-                    return PlayerRankData.RankType.OpenServerGodWeapon;
+                    return RankType.OpenServerGodWeapon;
                 case 9:
-                    return PlayerRankData.RankType.OpenServerRecharge;
+                    return RankType.OpenServerRecharge;
                 case 10:
-                    return PlayerRankData.RankType.OpenServerPet;
+                    return RankType.OpenServerPet;
             }
-            return PlayerRankData.RankType.OpenServerMount;
+            return RankType.OpenServerMount;
         }
 
         public struct OSCbillBoardCondition
@@ -437,8 +444,8 @@
             }
         }
 
-        private PlayerRankData.RankType m_PresentBillRankType = PlayerRankData.RankType.OpenServerMount;
-        public PlayerRankData.RankType presentBillRankType
+        private RankType m_PresentBillRankType = RankType.OpenServerMount;
+        public RankType presentBillRankType
         {
             get { return m_PresentBillRankType; }
             set
@@ -563,7 +570,11 @@
                     var _cfg = GetRankAwardConfig(_type, i);
                     var _start = _cfg.RankA;
                     var _end = _cfg.RankB;
-                    var _rank = PlayerDatas.Instance.rank.GetSelfRank((int)GetRankType(_type));
+                    var _rank = 0;
+                    if (!rankModel.TryGetMyRank((int)GetRankType(_type), out _rank))
+                    {
+                        _rank = -1;
+                    }
                     if (_rank != -1 && _rank >= _start
                         && _rank <= _end && !_playerData.billAwardGet)
                     {
@@ -615,7 +626,11 @@
                     var _cfg = GetRankAwardConfig(_type, i);
                     var _start = _cfg.RankA;
                     var _end = _cfg.RankB;
-                    var _rank = PlayerDatas.Instance.rank.GetSelfRank((int)GetRankType(_type));
+                    var _rank = 0;
+                    if (!rankModel.TryGetMyRank((int)GetRankType(_type), out _rank))
+                    {
+                        _rank = -1;
+                    }
                     if (_rank != -1 && _rank >= _start
                         && _rank <= _end && !_playerData.billAwardGet)
                     {

--
Gitblit v1.8.0