From c26f44a3d2d8debf560f46fb09e23761516ab7b4 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 28 十月 2025 16:36:28 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(王元姬、张宝技能;增加释放方式5-弹射攻击,9-弹射治疗,1002-持续治疗;增加效果6015-增加弹射次数;效果7004-随机弹射次数;效果5005-按类型清除buff;增加技能类型15-清除净化buff类;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/GMToolLogicProcess/GMToolPyInterface.py | 134 +++++++-------------------------------------
1 files changed, 21 insertions(+), 113 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/GMToolLogicProcess/GMToolPyInterface.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/GMToolLogicProcess/GMToolPyInterface.py
index 171f99e..3b75530 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/GMToolLogicProcess/GMToolPyInterface.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/GMToolLogicProcess/GMToolPyInterface.py
@@ -4,127 +4,35 @@
#
#-------------------------------------------------------------------------------
#
-from Protocol import (MMORPGPack,RecvPackProtocol, SendPackProtocol)
-from Common import (CommFunc, mylog)
-
-# from DBCommon import (CommonDefine,SingletonObject)
-# import GMToolCommandMgr
-# g_GMCMDMgr = GMToolCommandMgr.GetGMOrderMgr()
-
+from Protocol import SendPackProtocol
+from Common import mylog
+from DBCommon import CommonDefine
+import NetPackCommon
+from Commands import GMCommon
+import json
##################################################################
####### 提供的接口 ######
-#转发GM工具命令包到GameServer
-def SendGMToolCommandToGameServer(pack):
- # global g_GMCMDMgr
-
- # recvPack = RecvPackProtocol.tagGMCommand()
- # recvPack.ReadData(pack.getBuffer())
- # recvPack.Type = CommonDefine.bgDBGMCommand
+
- # mylog.info('ProjSpecialProcess SendGMToolCommandToGameServer OrderId = %s'%recvPack.OrderId)
-
- # ServerMgr = MongoDBServer.getServerMgr()
- # sendViaSessionID = ServerMgr.getClientSessionIDByName("CenterGate",0)
-
- # SessionID = 0
- # PoolIndex = -1
- # mylog.info('ProjSpecialProcess SendGMToolCommandToGameServer sendViaSessionID = %s,SessionID = %d,PoolIndex = %d'%(
- # sendViaSessionID,
- # SessionID,
- # PoolIndex))
- # ServerMgr.packSendBySessionID(sendViaSessionID, SessionID, PoolIndex,
- # CommonDefine.atInner,
- # MMORPGPack.stGame, MMORPGPack.stData,
- # recvPack.GetBuffer())
- mylog.info('ProjSpecialProcess SendGMToolCommandToGameServer Done')
-
-#回复GM工具命令执行结果包
-def SendToGMToolCommandResult(OrderLen,OrderId,ResultLen,Result,UserDataLen,UserData):
- # global g_GMCMDMgr
+#回复给ServersRoute->GM工具 命令执行结果包
+def SendToGMToolCommandResult(orderID, resultMsg, UserData = ''):
# if isinstance(Result, unicode):
# #直接从数据库未进行转化的话是unicode
# Result = Result.encode('gbk')
-
- # mylog.info('ProjSpecialProcess SendToGMToolCommandResult OrderId = %s'%OrderId)
- # recvPack = SendPackProtocol.tagGMCommandResult()
- # recvPack.Type = CommonDefine.gstGMToolCommandResult
- # recvPack.OrderLen = OrderLen
- # recvPack.OrderId = OrderId
- # recvPack.ResultLen = ResultLen
- # recvPack.Result = Result
- # recvPack.UserDataLen = UserDataLen
- # recvPack.UserData = UserData
-
-
- # sendViaSessionID = g_GMCMDMgr.PopPair(recvPack.OrderId)
- # ServerMgr = MongoDBServer.getServerMgr()
-
- # SessionID = 0
- # PoolIndex = -1
- # mylog.info('ProjSpecialProcess SendToGMToolCommandResult sendViaSessionID = %s,SessionID = %d,PoolIndex = %d'%(sendViaSessionID, SessionID,PoolIndex))
- # if sendViaSessionID == '':
- # mylog.warning('ProjSpecialProcess SendToGMToolCommandResult Fail, No Client in GMToolPort')
- # return
-
- # ServerMgr.packSendBySessionID(sendViaSessionID, SessionID, PoolIndex,
- # CommonDefine.atInner,
- # MMORPGPack.stGMTool, MMORPGPack.stData,
- # recvPack.GetBuffer())
- mylog.info('ProjSpecialProcess SendToGMToolCommandResult Done')
+
+ recvPack = SendPackProtocol.tagGMCommandResult()
+ recvPack.Type = CommonDefine.gstGMToolCommandResult
+ recvPack.OrderLen = len(orderID)
+ recvPack.OrderId = orderID
+ recvPack.ResultLen = len(resultMsg)
+ recvPack.Result = resultMsg
+ recvPack.UserDataLen = len(UserData)
+ recvPack.UserData = UserData
+
+ NetPackCommon.SendPyPackToServersRoute(recvPack.GetBuffer(), recvPack.GetLength())
+ mylog.info('ProjSpecialProcess SendToGMToolCommandResult OrderId = %s'%orderID)
-#发送数据库请求
-def SendDBRequest(Type,OrderLen,OrderId,DataLen,Data):
- #Type说明
- #CommonDefine.gstGMToolCmdSysDBRequest #GM工具SysCtrlDB请求类型
- #CommonDefine.gstGMToolCmdLogDBRequest #GM工具LogCtrlDB请求类型
- #CommonDefine.gstGMToolCmdUserDBRequest #GM工具UserCtrlDB请求类型
-
- # #构建请求包
- # pack = RecvPackProtocol.tagGMCommandDBRequest()
- # pack.Type = Type
- # pack.OrderLen = OrderLen
- # pack.OrderId = OrderId
- # pack.DataLen = DataLen
- # pack.Data = Data
- # #发请求包
- # sendPack = SingletonObject.getPackPool().alloc()
- # sendPack.setSendViaSocketID(-1)
- # sendPack.getPackHead().sessionID = 0
- # sendPack.getPackHead().poolIndex = -1
- # sendPack.getPackHead().type = CommonDefine.atInner
- # sendPack.setBuffer(pack.GetBuffer())
- # ctrlDBMgr = CtrlDBManager.getCtrlMgr()
- # ctrlDBMgr.dbRequestPush(sendPack)
- # mylog.info('ProjSpecialProcess SendDBRequest Done ,Type = %s, OrderId = %s'%(Type,OrderId))
- return True
-#发送逻辑处理请求
-def SendLogicProcessRequest(Type,OrderLen,OrderId,DataLen,Data):
- #Type说明
- #CommonDefine.gstGMToolCmdLogicProcessRequest #GM工具Logic请求类型
- #构建请求包
- # pack = RecvPackProtocol.tagGMCommandDBRequest()
- # pack.Type = Type
- # pack.OrderLen = OrderLen
- # pack.OrderId = OrderId
- # pack.DataLen = DataLen
- # pack.Data = Data
- # #发请求包
- # sendPack = SingletonObject.getPackPool().alloc()
- # sendPack.setSendViaSocketID(-1)
- # sendPack.getPackHead().sessionID = 0
- # sendPack.getPackHead().poolIndex = -1
- # sendPack.getPackHead().type = CommonDefine.atInner
- # sendPack.setBuffer(pack.GetBuffer())
-
- # logicProcess = GlobalVarDefine.g_logicProcessThread
- # if logicProcess == None:
- # mylog.warning('ProjSpecialProcess SendLogicProcessRequest Fail!!! logicProcessThread == None??')
- # return False
- # logicProcess.requestPush(sendPack)
- # mylog.info('ProjSpecialProcess SendLogicProcessRequest Done ,Type = %s, OrderId = %s'%(Type,OrderId))
- return True
-
##################################################################
\ No newline at end of file
--
Gitblit v1.8.0