From 788075dce1d592877daa11f032f01fc5f81c5339 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期三, 12 十二月 2018 18:02:51 +0800
Subject: [PATCH] Merge branch 'Cross_Server' of http://192.168.0.87:10010/r/snxxz_scripts into Cross_Server

---
 System/CrossServerOneVsOne/CrossServerModel.cs |  101 ++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 97 insertions(+), 4 deletions(-)

diff --git a/System/CrossServerOneVsOne/CrossServerModel.cs b/System/CrossServerOneVsOne/CrossServerModel.cs
index 5995199..9c58a3e 100644
--- a/System/CrossServerOneVsOne/CrossServerModel.cs
+++ b/System/CrossServerOneVsOne/CrossServerModel.cs
@@ -2,6 +2,8 @@
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
+using TableConfig;
+using LitJson;
 
 namespace Snxxz.UI
 {
@@ -11,7 +13,7 @@
     {
         public override void Init()
         {
-
+            ParseFuncConfig();
         }
 
         public void OnBeforePlayerDataInitialize()
@@ -34,14 +36,106 @@
 
         }
 
-        public int GetMaxUpgradeScore()
+        public bool TryGetMaxRank(out int upScore)
         {
-            return 0;
+            var arenaConfig = Config.Instance.Get<CrossServerArenaConfig>(curRank);
+            upScore = arenaConfig.LVUpScore;
+            return upScore == 0;
         }
 
         #region 琛ㄦ暟鎹�
         public int dayMaxMatchNum { get; private set; } //鍖归厤娆℃暟涓婇檺
         public int dayMaxScore { get; private set; } //浠婃棩绉垎涓婇檺
+        public List<AwardType> dayAwardTypelist { get; private set; }
+        private void ParseFuncConfig()
+        {
+            var CrossRealmPKAward = Config.Instance.Get<FuncConfigConfig>("CrossRealmPKAward");
+            var dayMatchAwardData = JsonMapper.ToObject(CrossRealmPKAward.Numerical1);
+            var dayWinAwardData = JsonMapper.ToObject(CrossRealmPKAward.Numerical2);
+            dayAwardTypelist = new List<AwardType>();
+            foreach (var num in dayWinAwardData.Keys)
+            {
+                int times = int.Parse(num);
+                var items = dayWinAwardData[num];
+                var awardType = new AwardType(times,1);
+                dayAwardTypelist.Add(awardType);
+                if (items.IsArray)
+                {
+                    for(int i = 0; i < items.Count; i++)
+                    {
+                        var itemInfo = items[i];
+                        if(itemInfo.IsArray && itemInfo.Count >= 3)
+                        {
+                            int id = 0;
+                            int.TryParse(itemInfo[0].ToString(), out id);
+                            int count = 0;
+                            int.TryParse(itemInfo[1].ToString(), out count);
+                            int isBind = 0;
+                            int.TryParse(itemInfo[2].ToString(), out isBind);
+                            AwardItem awardItem = new AwardItem(id, count, isBind);
+                            awardType.SetAwardItems(awardItem);
+                        }
+                    }
+                }
+            }
+
+            foreach (var num in dayMatchAwardData.Keys)
+            {
+                int times = int.Parse(num);
+                var items = dayMatchAwardData[num];
+                var awardType = new AwardType(times,2);
+                dayAwardTypelist.Add(awardType);
+                if (items.IsArray)
+                {
+                    for(int i = 0;i < items.Count; i++)
+                    {
+                        var itemInfo = items[i];
+                        if (itemInfo.IsArray && itemInfo.Count >= 3)
+                        {
+                            int id = 0;
+                            int.TryParse(itemInfo[0].ToString(), out id);
+                            int count = 0;
+                            int.TryParse(itemInfo[1].ToString(), out count);
+                            int isBind = 0;
+                            int.TryParse(itemInfo[2].ToString(), out isBind);
+                            AwardItem awardItem = new AwardItem(id, count, isBind);
+                            awardType.SetAwardItems(awardItem);
+                        }
+                    }
+                }
+            }
+        }
+
+        public class AwardType
+        {
+            public int type; //1 鑳滃埄濂栧姳 2 鍖归厤濂栧姳 
+            public int num { get; private set;}
+            public List<AwardItem> awardItems = new List<AwardItem>();
+            public AwardType(int _num,int _type)
+            {
+                type = _type;
+                num = _num;
+                awardItems.Clear();
+            }
+
+            public void SetAwardItems(AwardItem awardItem)
+            {
+                awardItems.Add(awardItem);
+            }
+        }
+
+        public struct AwardItem
+        {
+            public int itemId;
+            public int itemCount;
+            public int isBind;
+            public AwardItem(int _id,int _count,int _isBind)
+            {
+                itemId = _id;
+                itemCount = _count;
+                isBind = _isBind;
+            }
+        }
         #endregion
 
         #region 鍗忚
@@ -54,7 +148,6 @@
         public int dayMatchNum { get; private set; } //浠婃棩鍖归厤娆℃暟
         public int dayGetScore { get; private set; } //浠婃棩鑾峰彇绉垎
         #endregion
-
 
     }
 }

--
Gitblit v1.8.0