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