From af9f6c691fdab8d94d78266d4e62785cce07ade0 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 31 八月 2022 17:19:46 +0800 Subject: [PATCH] 9704 【后端】【越南】【BT7】【主干】跨服聊天支持全服不根据分区划分 --- ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerTalk.py | 16 ++++++++++++---- 1 files changed, 12 insertions(+), 4 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerTalk.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerTalk.py index a1c8215..110ce43 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerTalk.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerTalk.py @@ -187,10 +187,18 @@ def ClientServerMsg_ChatCrossWorld(serverGroupID, msgData, tick): ## 收到子服跨服世界频道聊天 - zoneIpyData = CrossRealmPlayer.GetCrossZoneIpyDataByServerGroupID(0, serverGroupID) - if not zoneIpyData: - return - serverGroupIDList = zoneIpyData.GetServerGroupIDList() + chatCrossType = IpyGameDataPY.GetFuncCfg("TalkCross", 1) # 跨服聊天范围设定 0-全服;1-boss分区;2-跨服竞技场分区 + if chatCrossType == 0: + serverGroupIDList = [] + else: + crossTypeMapDict = {1:ChConfig.Def_FBMapID_CrossPenglai, 2:ChConfig.Def_FBMapID_CrossRealmPK} + if chatCrossType not in crossTypeMapDict: + GameWorld.ErrLog("跨服聊天范围配置错误! chatCrossType=%s" % chatCrossType) + return + zoneIpyData = CrossRealmPlayer.GetCrossZoneIpyDataByServerGroupID(crossTypeMapDict[chatCrossType], serverGroupID) + if not zoneIpyData: + return + serverGroupIDList = zoneIpyData.GetServerGroupIDList() CrossRealmMsg.SendMsgToClientServer(ShareDefine.CrossServerMsg_ChatCrossWorld, msgData, serverGroupIDList) return -- Gitblit v1.8.0