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