From dd3d1998f3a219118b9c24af1763a96e1fef85d1 Mon Sep 17 00:00:00 2001 From: xdh <xiefantasy@qq.com> Date: 星期一, 28 一月 2019 17:45:23 +0800 Subject: [PATCH] 6112 【后端】【1.5.200】诛仙塔优化 --- ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmMsg.py | 30 ++++++++++++++++++++++++++++-- 1 files changed, 28 insertions(+), 2 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmMsg.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmMsg.py index f0c731d..8291317 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmMsg.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmMsg.py @@ -22,6 +22,8 @@ import CrossRealmPlayer import GameWorldBoss import CrossRealmPK +import PlayerQuery +import PlayerTalk import CrossBoss import ChConfig import GMShell @@ -62,6 +64,9 @@ elif msgType == ShareDefine.ClientServerMsg_PKBillboard: CrossRealmPK.ClientServerMsg_PKBillboard(serverGroupID, msgData) + elif msgType == ShareDefine.ClientServerMsg_ChatCrossWorld: + PlayerTalk.ClientServerMsg_ChatCrossWorld(serverGroupID, msgData, tick) + elif msgType == ShareDefine.ClientServerMsg_GMCMD: GMShell.ClientServerMsg_GMCMD(msgData, tick) @@ -71,8 +76,14 @@ elif msgType == ShareDefine.ClientServerMsg_ViewPlayerCache: CrossRealmPlayer.ClientServerMsg_ViewPlayerCache(serverGroupID, msgData) + elif msgType == ShareDefine.ClientServerMsg_QueryNPCInfo: + PlayerQuery.ClientServerMsg_QueryNPCInfo(serverGroupID, msgData) + + elif msgType == ShareDefine.ClientServerMsg_SetPlayerAttrValue: + MapServer_CrossSetPlayerAttrValue(msgData) + # 需要发送到地图服务器处理的 - elif msgType in [ShareDefine.ClientServerMsg_Reborn]: + elif msgType in [ShareDefine.ClientServerMsg_Reborn, ShareDefine.ClientServerMsg_CollectNPC]: MapServer_CrossServerReceiveMsg(msgType, msgData, serverGroupID) else: @@ -107,6 +118,15 @@ return msgInfo = str([msgType, msgData, serverGroupID]) tagPlayer.MapServer_QueryPlayerResult(0, 0, "CrossServerReceiveMsg", msgInfo, len(msgInfo)) + return + +def MapServer_CrossSetPlayerAttrValue(msgData): + for playerID, setAttrInfoList in msgData.items(): + player = GameWorld.GetPlayerManager().FindPlayerByID(playerID) + if not player: + return + msgInfo = str(setAttrInfoList) + player.MapServer_QueryPlayerResult(0, 0, "CrossSetPlayerAttrValue", msgInfo, len(msgInfo)) return ## ================================================================================================ @@ -149,6 +169,9 @@ elif msgType == ShareDefine.CrossServerMsg_Notify: PlayerControl.CrossServerMsg_Notify(msgData) + elif msgType == ShareDefine.CrossServerMsg_ChatCrossWorld: + PlayerTalk.CrossServerMsg_ChatCrossWorld(msgData) + elif msgType == ShareDefine.CrossServerMsg_ViewPlayerCacheRet: CrossRealmPlayer.CrossServerMsg_ViewPlayerCacheRet(msgData, tick) @@ -188,8 +211,11 @@ elif msgType == ShareDefine.CrossServerMsg_DropGoodItem: GameWorldBoss.CrossServerMsg_DropGoodItem(msgData, tick) + elif msgType == ShareDefine.CrossServerMsg_NPCInfoRet: + PlayerQuery.CrossServerMsg_NPCInfoRet(msgData, tick) + # 需要发送到地图服务器处理的 - elif msgType in [ShareDefine.CrossServerMsg_RebornRet]: + elif msgType in [ShareDefine.CrossServerMsg_RebornRet, ShareDefine.CrossServerMsg_CollectNPCOK]: MapServer_ClientServerReceiveMsg(msgType, msgData) elif msgType == ShareDefine.CrossServerMsg_CrossServerState: -- Gitblit v1.8.0