From 36c1888dd0d44fa319c804a715c3551b98633650 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 03 三月 2026 15:09:33 +0800
Subject: [PATCH] 519 硬核渠道对接(指定appID可配置指定创角邮件;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py |  190 ++++++++---------------------------------------
 1 files changed, 32 insertions(+), 158 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..d0181ea 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEventCounter.py
@@ -27,48 +27,23 @@
 import PlayerCoin
 import PlayerControl
 import PlayerFamily
-import PlayerLoginDayAward
 import NPCCommon
 import FunctionNPCCommon
 import PlayerGoldGift
 import PlayerActivity
 import FBCommon
-import PlayerFreeGoods
 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
-import PlayerLove
 import IpyGameDataPY
 import PlayerArena
 import PyGameData
 import OpenServerActivity
-import PlayerXiangong
 import PlayerBillboard
 import PlayerViewCache
 import GameFuncComm
@@ -95,15 +70,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,20 +198,22 @@
     return
 
 #--------------------------------------------------------
-def PlayerOnCrossCenterEvent(curPlayer, centerEventValue=0):
+def PlayerOnCrossCenterEvent(curPlayer, centerEventValue=0, gmEvent=""):
     ## 跨服中心过天
     if not centerEventValue:
         centerEventValue = DBDataMgr.GetEventTrigMgr().GetValue(ShareDefine.Def_CrossCenterEvent)
     playerEventValue = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_OnCrossEvent)
-    if not playerEventValue:
-        playerEventValue = centerEventValue
-        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OnCrossEvent, centerEventValue)
+    #第一次也要执行一次
+    #if not playerEventValue:
+    #    playerEventValue = centerEventValue
+    #    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_OnCrossEvent, centerEventValue)
         
-    if playerEventValue == centerEventValue:
+    if playerEventValue == centerEventValue and not gmEvent:
+        GameWorld.DebugLog("玩家与跨服中心事件值相同不处理! playerEventValue=%s,centerEventValue=%s" % (playerEventValue, centerEventValue))
         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 +225,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 +241,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:
@@ -306,8 +275,6 @@
     
     #OnDay时清除每日签到的信息
     PlayerSignDay.SignDayOnDay(curPlayer)
-    # 累计登陆礼包登陆次数刷新
-    PlayerLoginDayAward.NotePlayerLoginDayCnt(curPlayer)
     
     #------------------------------------------------------------------------------ 
     
@@ -320,12 +287,6 @@
     #寻宝
     PlayerTreasure.OnDay(curPlayer)
     PlayerGoldGift.OnDay(curPlayer)
-    #转盘
-    PlayerActTurntable.PlayerOnDay(curPlayer)
-    #情缘
-    PlayerLove.DoPlayerOnDay(curPlayer)
-    #仙宫
-    PlayerXiangong.PlayerOnDay(curPlayer)
     PlayerControl.PlayerOnDay(curPlayer)
     ChPlayer.PlayerOnDay(curPlayer)
     PlayerActivity.OnDay(curPlayer)
@@ -340,8 +301,6 @@
     PlayerFamily.PlayerOnDay(curPlayer)
     # 重置物品每日使用次数
     ChItem.ResetItemUseCntToday(curPlayer)
-    # 极品白拿
-    PlayerFreeGoods.OnDay(curPlayer)
     #采集次数重置
     NPCCommon.PlayerOnDay(curPlayer)
     #竞技场
@@ -349,12 +308,8 @@
     
     # 以下为支持两种重置模式切换配置的
     FBCommon.FBOnDay(curPlayer, onEventType)
-    #许愿池
-    PlayerWishingWell.OnDay(curPlayer)
     #任务活动
     PlayerActTask.OnDay(curPlayer)
-    #登录活动
-    PlayerActLoginNew.OnDay(curPlayer)
     #购买次数礼包
     PlayerActBuyCountGift.OnDay(curPlayer, onEventType)
     return
@@ -398,9 +353,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 +411,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 +452,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 +477,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 +863,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