From fd1197fd91110938802a68d998e6f45bb65495ed Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 09 二月 2026 20:12:07 +0800
Subject: [PATCH] 66 【公会】基础主体-服务端(公会讨伐支持跨服;test_OnDay等命令支持跨服同步过天等;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py |  161 +++++++++--------------------------------------------
 1 files changed, 27 insertions(+), 134 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
index 0cdd336..54ae28a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
@@ -37,29 +37,11 @@
 import ChItem
 import GameLogic_Tianzi
 import PlayerGoldInvest
-import PlayerActCollectWords
-import PlayerActTotalRecharge
-import PlayerActGodGift
-import PlayerActFamilyCTGAssist
-import PlayerActManyDayRecharge
-import PlayerActSingleRecharge
-import PlayerActGrowupBuy
 import PlayerActTurntable
-import PlayerActBuyOne
-import PlayerSpringSale
-import PlayerFeastLogin
-import PlayerFeastWish
 import PlayerActTask
-import PlayerActYunshi
-import PlayerActLunhuidian
 import PlayerActBuyCountGift
 import PlayerActLoginNew
-import PlayerActLogin
-import PlayerFlashGiftbag
-import PlayerDailyGiftbag
 import PlayerOfflineSupport
-import PlayerLuckyTreasure
-import PlayerFlashSale
 import PlayerWishingWell
 import PlayerTreasure
 import PlayerZhanling
@@ -95,15 +77,6 @@
     
     # 其他跨服功能
     
-    # 游戏服额外处理玩家
-    if GameWorld.IsMainServer():
-        playerManager = GameWorld.GetPlayerManager()
-        for i in xrange(playerManager.OnlineCount()):
-            curPlayer = playerManager.OnlineAt(i)
-            if not GameWorld.IsNormalPlayer(curPlayer):
-                continue
-            PlayerOnCrossCenterEvent(curPlayer, centerEventValue)
-            
     PlayerBillboard.OnDay(centerEventValue)
     return
 
@@ -232,7 +205,7 @@
     return
 
 #--------------------------------------------------------
-def PlayerOnCrossCenterEvent(curPlayer, centerEventValue=0):
+def PlayerOnCrossCenterEvent(curPlayer, centerEventValue=0, gmEvent=""):
     ## 跨服中心过天
     if not centerEventValue:
         centerEventValue = DBDataMgr.GetEventTrigMgr().GetValue(ShareDefine.Def_CrossCenterEvent)
@@ -241,11 +214,11 @@
         playerEventValue = centerEventValue
         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OnCrossEvent, centerEventValue)
         
-    if playerEventValue == centerEventValue:
+    if playerEventValue == centerEventValue and not gmEvent:
         return
     
-    centerEventTime = GameWorld.ChangeStrToDatetime("%s:%02d:%02d" % centerEventValue, ChConfig.TYPE_Time_Format_YmdHMS)
-    playerEventTime = GameWorld.ChangeStrToDatetime("%s:%02d:%02d" % playerEventValue, ChConfig.TYPE_Time_Format_YmdHMS)
+    centerEventTime = GameWorld.ChangeStrToDatetime("%s" % centerEventValue, ChConfig.TYPE_Time_Format_YmdH)
+    playerEventTime = GameWorld.ChangeStrToDatetime("%s" % playerEventValue, ChConfig.TYPE_Time_Format_YmdH)
     
     center_Day = centerEventTime.day
     center_Month = centerEventTime.month
@@ -257,7 +230,7 @@
     
     PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OnCrossEvent, centerEventValue)
     
-    if (center_Day != player_Day or center_Month != player_Month or center_Year != player_Year):
+    if (center_Day != player_Day or center_Month != player_Month or center_Year != player_Year or gmEvent == "GMOnDay"):
         PlayerCrossCenterOnDay(curPlayer, centerEventValue)
         
     return
@@ -273,9 +246,10 @@
 
 def PlayerOnDay(curPlayer):
     #记录玩家字典值,待初始化后执行
-    if not curPlayer.GetGameServerInitOK():
-        GameServerRefresh.Set_PlayerGameServerInitOK_OnDay(curPlayer , 1)
-        return
+    #GameServer已废弃,不再验证
+    #if not curPlayer.GetGameServerInitOK():
+    #    GameServerRefresh.Set_PlayerGameServerInitOK_OnDay(curPlayer , 1)
+    #    return
     
     ondayValue = __Get_Can_OnDay(curPlayer)
     if not ondayValue:
@@ -398,9 +372,10 @@
 #  @remarks 函数详细说明.
 def PlayerOnWeek(curPlayer):
     #记录玩家字典值,待初始化后执行
-    if not curPlayer.GetGameServerInitOK():
-        GameServerRefresh.Set_PlayerGameServerInitOK_OnWeek(curPlayer , 1)
-        return
+    #GameServer已废弃,不再验证
+    #if not curPlayer.GetGameServerInitOK():
+    #    GameServerRefresh.Set_PlayerGameServerInitOK_OnWeek(curPlayer , 1)
+    #    return
     
     onWeekValue = __Get_Can_OnWeek(curPlayer)
     if not onWeekValue:
@@ -455,9 +430,10 @@
 #  @remarks 函数详细说明.
 def PlayerOnMonth(curPlayer):
     #记录玩家字典值,待初始化后执行
-    if not curPlayer.GetGameServerInitOK():
-        GameServerRefresh.Set_PlayerGameServerInitOK_OnMonth(curPlayer , 1)
-        return
+    #GameServer已废弃,不再验证
+    #if not curPlayer.GetGameServerInitOK():
+    #    GameServerRefresh.Set_PlayerGameServerInitOK_OnMonth(curPlayer , 1)
+    #    return
     
     onMonthValue = __Get_Can_OnMonth(curPlayer)
     if not onMonthValue:
@@ -495,9 +471,10 @@
 #  @remarks 函数详细说明.
 def PlayerOnYear(curPlayer):
     #记录玩家字典值,待初始化后执行
-    if not curPlayer.GetGameServerInitOK():
-        GameServerRefresh.Set_PlayerGameServerInitOK_OnYear(curPlayer , 1)
-        return
+    #GameServer已废弃,不再验证
+    #if not curPlayer.GetGameServerInitOK():
+    #    GameServerRefresh.Set_PlayerGameServerInitOK_OnYear(curPlayer , 1)
+    #    return
     
     curPlayerID = curPlayer.GetPlayerID()
     
@@ -519,9 +496,10 @@
 #  @remarks 函数详细说明.
 def PlayerOnHour(curPlayer):
     #记录玩家字典值,待初始化后执行
-    if not curPlayer.GetGameServerInitOK():
-        GameServerRefresh.Set_PlayerGameServerInitOK_OnHour(curPlayer , 1)
-        return
+    #GameServer已废弃,不再验证
+    #if not curPlayer.GetGameServerInitOK():
+    #    GameServerRefresh.Set_PlayerGameServerInitOK_OnHour(curPlayer , 1)
+    #    return
     
     curPlayerID = curPlayer.GetPlayerID()
     
@@ -904,93 +882,8 @@
                 PlayerControl.SetCoupleInfo(playerID, coupleInfo)
             return
         
-        if key.startswith(ShareDefine.Def_Notify_WorldKey_OperationActionInfo[:-2]): 
-            keyHead = ShareDefine.Def_Notify_WorldKey_OperationActionInfo[:-2]
-            actionName = key[len(keyHead):]
-            actInfo = eval(msgValue)
-            actNum = actInfo.get(ShareDefine.ActKey_ActNum, 0)
-            if actionName in ShareDefine.MultiActNumOperationActNameList:
-                if not actNum:
-                    GameWorld.ErrLog('MultiActNumOperation can not found actNum. actionName=%s,msg = %s' % (actionName, msg))
-                    return
-                if actionName not in PyGameData.g_operationActionDict:
-                    PyGameData.g_operationActionDict[actionName] = {}
-                PyGameData.g_operationActionDict[actionName][actNum] = actInfo
-            else:
-                PyGameData.g_operationActionDict[actionName] = actInfo
-                
-            if actionName == ShareDefine.OperationActionName_ExpRate:
-                PlayerControl.RefreshOperationAction_ExpRate()
-                
-            elif actionName == ShareDefine.OperationActionName_TotalRecharge:
-                PlayerActTotalRecharge.RefreshTotalRechargeActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_GodGift:
-                PlayerActGodGift.RefreshGodGiftActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_ManyDayRecharge:
-                PlayerActManyDayRecharge.RefreshManyDayRechargeActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_SingleRecharge:
-                PlayerActSingleRecharge.RefreshSingleRechargeActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_Turntable:
-                PlayerActTurntable.RefreshTurntableActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_SpringSale:
-                PlayerSpringSale.RefreshSpringSaleActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_FlashGiftbag:
-                PlayerFlashGiftbag.RefreshFlashGiftbagActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_DailyGiftbag:
-                PlayerDailyGiftbag.RefreshDailyGiftbagActionInfo()
-                
-            elif actionName == ShareDefine.OperationActionName_BuyOne:
-                PlayerActBuyOne.RefreshBuyOneActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_FamilyCTGAssist:
-                PlayerActFamilyCTGAssist.RefreshFamilyCTGAssistActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_FlashSale:
-                PlayerFlashSale.RefreshflashSaleActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_WishingWell:
-                PlayerWishingWell.RefreshWishingWellAction()
-                
-            elif actionName == ShareDefine.OperationActionName_CollectWords:
-                PlayerActCollectWords.RefreshActCollectWordsInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_BuyCountGift:
-                PlayerActBuyCountGift.RefreshBuyCountGiftActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_ActTask:
-                PlayerActTask.RefreshActTaskActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_Yunshi:
-                PlayerActYunshi.RefreshActYunshiActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_Lunhuidian:
-                PlayerActLunhuidian.RefreshActLunhuidianActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_LoginAward:
-                PlayerActLogin.RefreshOperationAction_LoginAward()
-                
-            elif actionName == ShareDefine.OperationActionName_ActLoginNew:
-                PlayerActLoginNew.RefreshActLoginActionInfo(actNum)
-                
-            elif actionName == ShareDefine.OperationActionName_FeastLogin:
-                PlayerFeastLogin.RefreshFeastLoginActionInfo()
-                
-            elif actionName == ShareDefine.OperationActionName_FeastWish:
-                PlayerFeastWish.RefreshFeastWishActionInfo()
-                
-            elif actionName == ShareDefine.OperationActionName_LuckyTreasure:
-                PlayerLuckyTreasure.RefreshLuckyTreasureAction()
-                
-            elif actionName == ShareDefine.OperationActionName_GrowupBuy:
-                PlayerActGrowupBuy.RefreshGrowupBuyActionInfo()
-                
+        if key.startswith(ShareDefine.Def_Notify_WorldKey_OperationActionInfo[:-2]):
+            # 运营活动改为通过 GameWorldAction.OnMapOperationActionRefresh 触发刷新
             return
         
         if key.startswith(ShareDefine.Def_Notify_WorldKey_CrossActInfo[:-2]):

--
Gitblit v1.8.0