From 81e17bea6f1dec0fd60c44ca22f3068e90d42969 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期一, 17 六月 2019 21:08:13 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/SnxxServerCode

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetOSCRecordData.py |    1 +
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py   |    4 +++-
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetFreePoint.py     |    6 +++++-
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py                  |    7 +++++--
 ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py                                          |    1 +
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/OpenServerCampaign.py    |   15 +++++++++++++--
 ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py                                       |    7 +++++--
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py         |    4 +++-
 8 files changed, 36 insertions(+), 9 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py b/ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py
index 60b2355..b94a639 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py
@@ -582,6 +582,7 @@
             ShareDefine.Def_BT_Campaign_GodWeaponLV     : 100,           #神兵等级(开服活动榜)
             ShareDefine.Def_BT_Campaign_Recharge        : 100,           #累计充值(开服活动榜)
             ShareDefine.Def_BT_Campaign_PetLV           : 100,           #灵宠等级(开服活动榜)  
+            ShareDefine.Def_BT_Campaign_LingGen         : 100,           #灵根总点(开服活动榜)  
             ShareDefine.Def_BT_FCCostGold               : 5,             #消费排行榜(仙界盛典)
             ShareDefine.Def_BT_NewFCCostGold            : 5,             #消费排行榜(仙界盛典)
             ShareDefine.Def_BT_FBHelpBattle             : 100,           #助战次数榜
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
index 9417bc2..6938d3f 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ShareDefine.py
@@ -645,9 +645,10 @@
     Def_BT_Campaign_PetLV,                    #灵宠等级(开服活动榜)
     
     Def_BT_NewFCCostGold,                     #消费排行榜(新仙界盛典)
+    Def_BT_Campaign_LingGen,                  #灵根总点(开服活动榜)
     
     Def_BT_Max,                               #排行榜最大类型
-) = range(0, 23 + 2) 
+) = range(0, 24 + 2) 
     
 #职业对应战力排行榜类型
 JobFightPowerBillboardDict = {
@@ -1171,7 +1172,8 @@
 Def_Campaign_Type_GodWeaponLV,      # 神兵等级排行 8
 Def_Campaign_Type_Recharge,         # 累计充值排行 9
 Def_Campaign_Type_PetLV,            # 灵宠等级排行 10
-) = range(1, 1 + 10)
+Def_Campaign_Type_LingGen,          # 灵根点数排行 11
+) = range(1, 1 + 11)
 
 # 活动类型对应的奖励排行榜{活动类型:排行榜, ...}
 Def_Campaign_Billboard_Dict = {
@@ -1185,6 +1187,7 @@
                                Def_Campaign_Type_GodWeaponLV:Def_BT_Campaign_GodWeaponLV,
                                Def_Campaign_Type_Recharge:Def_BT_Campaign_Recharge,
                                Def_Campaign_Type_PetLV:Def_BT_Campaign_PetLV,
+                               Def_Campaign_Type_LingGen:Def_BT_Campaign_LingGen,
                                }
 
 #队伍最大人数
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py
index 37390c5..5847a24 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/QuestRunner.py
@@ -56,6 +56,7 @@
 import PlayerFairyCeremony
 import PlayerNewFairyCeremony
 import Operate_EquipStone
+import OpenServerCampaign
 import PlayerWeekParty
 import PlayerFairyDomain
 import GameFuncComm
@@ -4333,7 +4334,8 @@
     value = int(curActionNode.GetAttribute("value"))
     curPlayerFreePoint = curPlayer.GetFreePoint()
     curPlayer.SetFreePoint(curPlayerFreePoint + value)
-    
+    # 更新开服活动灵根数据
+    OpenServerCampaign.UpdOpenServerCampaignLingGenData(curPlayer)
     DataRecordPack.DR_Freepoint(curPlayer, "Event", value, {"MissionID":curMission.GetMissionID()})
     return
 
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetFreePoint.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetFreePoint.py
index 536ebf5..7194515 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetFreePoint.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetFreePoint.py
@@ -13,6 +13,7 @@
 #
 # 模块详细说明
 
+import OpenServerCampaign
 import GameWorld
 import Lang
 ## GM命令执行入口
@@ -26,4 +27,7 @@
         GameWorld.DebugAnswer(curPlayer, Lang.GBText("参数不正确"))
         return
     #获取 指定帐号<玩家ID>的未分配点数<未分配点数>
-    curPlayer.SetFreePoint(playerList[0])
\ No newline at end of file
+    curPlayer.SetFreePoint(playerList[0])
+    # 更新开服活动灵根数据
+    OpenServerCampaign.UpdOpenServerCampaignLingGenData(curPlayer)
+    return
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetOSCRecordData.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetOSCRecordData.py
index 56698af..a12e25e 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetOSCRecordData.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetOSCRecordData.py
@@ -41,6 +41,7 @@
                    ShareDefine.Def_Campaign_Type_GodWeaponLV:"神兵",
                    ShareDefine.Def_Campaign_Type_Recharge:"充值",
                    ShareDefine.Def_Campaign_Type_PetLV:"灵宠",
+                   ShareDefine.Def_Campaign_Type_LingGen:"灵根",
                    }
     
     if len(cmdList) == 1:
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/OpenServerCampaign.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/OpenServerCampaign.py
index 0a67be3..03f4d8f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/OpenServerCampaign.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/OpenServerCampaign.py
@@ -80,8 +80,13 @@
     
     recordData = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_OSC_RecordData % campaignType)
     
+    if value == recordData:
+        GameWorld.DebugLog("    开服活动数据等于历史记录, 不更新 campaignType=%s,recordData=%s,updValue=%s" 
+                           % (campaignType, recordData, value), curPlayer.GetPlayerID())
+        return
+    
     if campaignType not in [ShareDefine.Def_Campaign_Type_StoneLV, ShareDefine.Def_Campaign_Type_FightPower, 
-                            ShareDefine.Def_Campaign_Type_RuneLV] and value <= recordData:
+                            ShareDefine.Def_Campaign_Type_RuneLV, ShareDefine.Def_Campaign_Type_LingGen] and value < recordData:
         GameWorld.DebugLog("    开服活动数据小于历史记录, 不更新 campaignType=%s,recordData=%s,updValue=%s" 
                            % (campaignType, recordData, value), curPlayer.GetPlayerID())
         return
@@ -361,5 +366,11 @@
     NetPackCommon.SendFakePack(curPlayer, oscAwardListPack)
     return
 
-
+def UpdOpenServerCampaignLingGenData(curPlayer):
+    # 记录开服活动数据
+    totalLingGen = curPlayer.GetFreePoint() + PlayerControl.GetMetal(curPlayer) + PlayerControl.GetWood(curPlayer) + \
+                    PlayerControl.GetWater(curPlayer) + PlayerControl.GetFire(curPlayer) + PlayerControl.GetEarth(curPlayer)
+    #GameWorld.DebugLog("总灵根: %s" % totalLingGen)
+    UpdOpenServerCampaignRecordData(curPlayer, ShareDefine.Def_Campaign_Type_LingGen, totalLingGen)
+    return
 
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
index d33b761..ed073ad 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -4606,7 +4606,9 @@
                 if beforePointList[i] != afterPointList[i]:
                     diffPointAttrList.append(attrID)
             SkillShell.RefreshElementSkillByAttr(curPlayer, diffPointAttrList)
-            
+        # 更新开服活动灵根数据
+        OpenServerCampaign.UpdOpenServerCampaignLingGenData(curPlayer)
+        
         # 同步前端战力,因为有 SetFightPower 所以累加战力放在这里所有刷新及计算处理完后才处理,才能正常触发set同步前端
         self.SendModuleFightPowerPack(curPlayer, mfpDict)
         billFuncCnt = len(PyGameData.g_refreshAttrBillboardFunc) # 只处理固定次数,防止死循环
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
index 9417bc2..6938d3f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
@@ -645,9 +645,10 @@
     Def_BT_Campaign_PetLV,                    #灵宠等级(开服活动榜)
     
     Def_BT_NewFCCostGold,                     #消费排行榜(新仙界盛典)
+    Def_BT_Campaign_LingGen,                  #灵根总点(开服活动榜)
     
     Def_BT_Max,                               #排行榜最大类型
-) = range(0, 23 + 2) 
+) = range(0, 24 + 2) 
     
 #职业对应战力排行榜类型
 JobFightPowerBillboardDict = {
@@ -1171,7 +1172,8 @@
 Def_Campaign_Type_GodWeaponLV,      # 神兵等级排行 8
 Def_Campaign_Type_Recharge,         # 累计充值排行 9
 Def_Campaign_Type_PetLV,            # 灵宠等级排行 10
-) = range(1, 1 + 10)
+Def_Campaign_Type_LingGen,          # 灵根点数排行 11
+) = range(1, 1 + 11)
 
 # 活动类型对应的奖励排行榜{活动类型:排行榜, ...}
 Def_Campaign_Billboard_Dict = {
@@ -1185,6 +1187,7 @@
                                Def_Campaign_Type_GodWeaponLV:Def_BT_Campaign_GodWeaponLV,
                                Def_Campaign_Type_Recharge:Def_BT_Campaign_Recharge,
                                Def_Campaign_Type_PetLV:Def_BT_Campaign_PetLV,
+                               Def_Campaign_Type_LingGen:Def_BT_Campaign_LingGen,
                                }
 
 #队伍最大人数

--
Gitblit v1.8.0