From b923772dbfdb2c5a5a7b42190bac092098ec82a1 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 23 五月 2022 17:00:32 +0800
Subject: [PATCH] 9415 【BT】【后端】古神战场(修复GM命令增加虚拟玩家数据时可能导致多次结算bug)

---
 ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldProcess.py |   28 ++++++++++++++++++++++++++--
 1 files changed, 26 insertions(+), 2 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldProcess.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldProcess.py
index 49db479..a73766d 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldProcess.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldProcess.py
@@ -90,6 +90,7 @@
 import CrossRealmPK
 import CrossRealmMsg
 import CrossRealmPlayer
+import CrossBattlefield
 import CrossActionControl
 import PlayerFBHelpBattle
 import PlayerFamilyRedPacket
@@ -98,7 +99,7 @@
 import PlayerFamilyParty
 import GameWorldFamilyWar
 import GameWorldArena
-import PlayerSocial
+import CrossLuckyCloudBuy
 import AuctionHouse
 import PlayerXMZZ
 import PlayerLove
@@ -106,6 +107,8 @@
 import PyGameData
 import CrossBoss
 import ChPlayer
+import PyDataManager
+import GameWorldOpenServerCampaign
 #---------------------------------------------------------------------
 
 #---------------------------------------------------------------------
@@ -166,6 +169,7 @@
     # 通知开服天数
     #openServerDay = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ServerDay)
     #GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_ServerDay, openServerDay)
+    GameWorldOpenServerCampaign.DoOnDay()
     #清理过期补偿
     PlayerCompensation.ClearUpTimeOutCompensation()
     #PlayerGeTui.ClearFMTGeTuiLimit()
@@ -175,6 +179,8 @@
     GameWorldFamilyWar.DoOnDay()
     # 情缘
     PlayerLove.DoOnDay()
+    # 云购
+    CrossLuckyCloudBuy.DoOnDay()
     return
 
 def OnDayEx(tick):
@@ -359,6 +365,7 @@
     GameWorldActionControl.Dispose_FBStateTime()
     #跨服PK
     CrossRealmPK.OnMinuteProcess()
+    CrossBattlefield.OnMinuteProcess()
     #处理重开服务器后, 活动继续开启逻辑根据天数
     #GameWorldActionControl.Dispose_Action_GoOn_ByDay(tick)
     #触发世界等级
@@ -374,6 +381,9 @@
         PlayerFamily.UpdFamilyTotalFightPower()
         PlayerFamilyRedPacket.CheckDelRedpacketData()
         
+    return
+
+def OnReloadConfig():
     return
 
 #---------------------------------------------------------------------
@@ -1212,6 +1222,7 @@
 def InitGameWorld(tick):
     #标记GameWorld初始化完成
     GameWorld.GetGameWorld().SetDict(ChConfig.Def_WorldKey_IsGameWorldInit, int(time.time()))
+    PlayerControl.LoadDBPlayer()
     #初始化游戏时钟
     GameWorld.GetGameWorld().SetTickTypeCount(ChConfig.TYPE_Tick_Count)
     #初始话开服时间、星期几
@@ -1250,8 +1261,12 @@
     GameWorldArena.OnServerStart()
     #跨服PK
     CrossRealmPK.OnGameServerInitOK()
+    #跨服战场
+    CrossBattlefield.OnServerStart()
     #红包
     PlayerFamilyRedPacket.OnServerStart()
+    #云购
+    CrossLuckyCloudBuy.OnServerStart()
     #世界boss被杀次数重置
     #GameWorldBoss.CheckResetBossKilledCntOnServerInit()
     
@@ -1351,6 +1366,8 @@
     
     GameWorldArena.OnServerStart()
     
+    CrossBattlefield.OnServerStart()
+    
     PlayerDBGSEvent.SetInitOpenServerTime(setOpenServerTime)
     
     ReadChConfig.ReloadConfig()
@@ -1433,14 +1450,19 @@
     GameWorldFamilyWar.OnMapServerInitOK()
     
     # 跨服服务器状态
+    GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_CrossServerTime, PyGameData.g_crossServerTimeInfo)
     isCrossServerOpen = GameWorld.GetGameWorld().GetDictByKey(ShareDefine.Def_Notify_WorldKey_CrossServerOpen)
     GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_CrossServerOpen, isCrossServerOpen)
     GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_CrossZoneName, PyGameData.g_crossZoneName)
     
     # 跨服PK
     CrossRealmPK.OnMapServerInitOK()
+    #跨服战场
+    CrossBattlefield.OnMapServerInitOK()
     # 本服竞技场
     GameWorldArena.SendMapServerArenaInfo()
+    # 幸运云购
+    CrossLuckyCloudBuy.OnMapServerInitOK()
     
     SendAllMapGlobalDropInfo() # 全局掉落控制
     
@@ -1450,7 +1472,7 @@
     #缥缈仙域
     PlayerFairyDomain.OnMapServerInitOK()
     #情侣信息
-    PlayerSocial.SendMapServerCoupleInfo()
+    PyDataManager.GetDBPyCoupleManager().SendMapServerCoupleInfo()
     # 记录服务器是否正常开启完毕
     getUrl = ReadChConfig.GetPyMongoConfig("EventReport", "OpenStateUrl") + "?Type=MapInit&MapCount=%s"%GameWorld.GetGameWorld().GetGameMapManager().GetCount()
     GameWorld.GetGameWorld().EventReport_EventReport("", "", "", "", 0, getUrl)
@@ -1950,7 +1972,9 @@
     ChPlayer.SavePlayerLVData()
     PlayerFBHelpBattle.OnServerClose()
     CrossActionControl.OnServerClose()
+    CrossBattlefield.OnServerClose()
     PlayerFamilyRedPacket.OnServerClose()
+    CrossLuckyCloudBuy.OnServerClose()
     GameWorldArena.OnServerClose()
     PlayerLove.OnServerClose()
     GameWorld.Log("通知C++关服!")

--
Gitblit v1.8.0