From cf6dd722bfc07a6ae19dd0378ecfda667d35ca67 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期三, 09 一月 2019 09:52:43 +0800
Subject: [PATCH] 5730 【后端】【1.5】时装功能开发

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossRealmPlayer.py |   29 ++++++++++++++++++++++-------
 1 files changed, 22 insertions(+), 7 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossRealmPlayer.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossRealmPlayer.py
index dc048da..11a0900 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossRealmPlayer.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossRealmPlayer.py
@@ -26,13 +26,18 @@
 def GetCrossPlayerName(curPlayer):
     # 通过游戏账号中的平台标志获取名称,目前为spid
     playerName = curPlayer.GetPlayerName()
-    nameFormat = ReadChConfig.GetPyMongoConfig("Merge", "NameFormat", True)
-    if not nameFormat:
+    
+    opName = ReadChConfig.GetPyMongoConfig("Merge", "OpName_%s_%s" % (GameWorld.GetPlayerPlatform(curPlayer), 
+                                           GameWorld.GetPlayerServerSID(curPlayer)))
+    
+    if not opName:
         return playerName
     
-    opName = ReadChConfig.GetPyMongoConfig("Merge", "OpName_%s" % GameWorld.GetPlayerPlatform(curPlayer))
-    
-    return (nameFormat%{"opname":opName, "sid":GameWorld.GetPlayerServerID(curPlayer)}).decode('gbk').encode(GameWorld.GetCharacterEncoding()) + playerName
+    return opName.decode('gbk').encode(GameWorld.GetCharacterEncoding()) + playerName
+
+def IsCrossServerOpen():
+    ## 跨服服务器是否开放中
+    return GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_CrossServerOpen)
 
 #// C1 04 主动退出跨服 #tagCMExitCrossRealm
 #
@@ -56,7 +61,7 @@
     
     # 通知子服玩家退出跨服服务器
     playerID = curPlayer.GetPlayerID()
-    serverGroupID = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_ServerGroupID)
+    serverGroupID = PlayerControl.GetPlayerServerGroupID(curPlayer)
     GameWorld.SendMsgToClientServer(ShareDefine.CrossServerMsg_ExitCrossServer, playerID, [serverGroupID])
     
     # 设置非跨服状态,踢下线
@@ -68,13 +73,23 @@
 def DoEnterCrossRealm(curPlayer):
     ## 玩家进入跨服处理,本服的逻辑处理
     curPlayer.SetVisible(False)
+    curPlayer.SetSight(0)
+    curPet = curPlayer.GetPetMgr().GetFightPet()
+    if curPet:
+        curPet.SetVisible(False)
     return
 
 def DoExitCrossRealm(curPlayer):
     ## 玩家退出跨服处理,本服的逻辑处理
     GameWorld.Log("DoExitCrossRealm...", curPlayer.GetPlayerID())
     curPlayer.SetVisible(True)
+    curPlayer.SetSight(1)
+    curPlayer.RefreshView()
+    curPlayer.SetSight(ChConfig.Def_PlayerSight_Default)
+    curPlayer.RefreshView()
+    curPet = curPlayer.GetPetMgr().GetFightPet()
+    if curPet:
+        curPet.SetVisible(True)
     if PlayerControl.GetCrossRealmState(curPlayer):
         PlayerControl.SetCrossRealmState(curPlayer, 0)
-        
     return

--
Gitblit v1.8.0