From 01a0e539b786ae0f1c46646874502367f5410aca Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 04 二月 2026 18:18:51 +0800
Subject: [PATCH] 66 【公会】基础主体-服务端(优化游戏服及跨服启动、通讯逻辑;服务器类型增加跨服中心、跨服事件、时间管理;跨服玩家在线状态、基础信息、玩家资源增减管理、发送跨服个人邮件等;跨服公会初版,修复公会成员审核、成员战力刷新等bug,增加公会名次同步;跨服公会暂未测试;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/GMToolLogicProcess/ProjSpecialProcess.py |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/GMToolLogicProcess/ProjSpecialProcess.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/GMToolLogicProcess/ProjSpecialProcess.py
index ee3afd2..5b8add7 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/GMToolLogicProcess/ProjSpecialProcess.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/GMToolLogicProcess/ProjSpecialProcess.py
@@ -45,6 +45,7 @@
 import PyGameData
 import GameWorld
 import DBDataMgr
+import time
       
 ################################################################## 
                 ####### python逻辑入口 ####### 
@@ -320,6 +321,13 @@
         execType = GMCommon.Def_Unknow
         execInfo = ''
         if callFunc != None:
+            if GameWorld.IsBattleServer():
+                lastTime = PyGameData.g_batServerGMTTimeDict.get(self.funcName, 0)
+                curTime = int(time.time())
+                if lastTime and curTime - lastTime <= 60:
+                    GameWorld.Log("战斗服务器1分钟内不重复处理GMT命令! %s, lastTime=%s" % (self.funcName, GameWorld.ChangeTimeNumToStr(lastTime)))
+                    return
+                PyGameData.g_batServerGMTTimeDict[self.funcName] = curTime
             ret = callFunc(self.gmCmdDict)
             if isinstance(ret, int):
                 execType = ret
@@ -439,7 +447,10 @@
     resultMsg = json.dumps(resultDcit, ensure_ascii=False)
     
     mylog.info("gm result:%s"%resultMsg)
-    SendToGMToolCommandResult(orderId, resultMsg)
+    if GameWorld.IsBattleServer():
+        mylog.info("战斗服务器暂时不回复GM命令处理结果")
+    else:
+        SendToGMToolCommandResult(orderId, resultMsg)
     return
 
 

--
Gitblit v1.8.0