From 48c780320dc826c50015d31dea1bbe55e7cf5173 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 26 十二月 2018 18:19:55 +0800
Subject: [PATCH] 5424 【后端】【1.4】跨服竞技场开发(增加强制退出跨服状态;增加相关提示;增加部分匹配限制;组队匹配进入副本增加验证是否跨服匹配中)

---
 ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
index 345992d..58401ad 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
@@ -779,6 +779,7 @@
                }
     CrossRealmMsg.SendMsgToCrossServer(ShareDefine.ClientServerMsg_PKCancel, dataMsg)
     PlayerControl.SetVsRoomId(curPlayer, 0)
+    SetIsCrossPKMatching(curPlayer, 0)
     GameWorld.Log("发送取消跨服PK匹配到跨服服务器:dataMsg=%s" % str(dataMsg), curPlayer.GetPlayerID())
     return
 
@@ -1476,9 +1477,18 @@
         return
     
     if result == 1:
+        SetIsCrossPKMatching(curPlayer, 1)
         NetPackCommon.SendFakePack(curPlayer, ChPyNetSendPack.tagGCCrossRealmPKStartMatch())
         
     return
+
+## 跨服匹配状态
+def SetIsCrossPKMatching(curPlayer, isMatching):
+    curPlayer.SetDict(ChConfig.Def_PlayerKey_IsCrossPKMatching, isMatching)
+    sysMsg = str(isMatching)
+    curPlayer.MapServer_QueryPlayerResult(0, 0, "CrossPKMatching", sysMsg, len(sysMsg))
+    return
+def GetIsCrossPKMatching(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_IsCrossPKMatching)
 
 def CrossServerMsg_PKMatchResult(vsRoomDict):
     ## 跨服PK匹配结果
@@ -1549,6 +1559,7 @@
                     break
                 
             PlayerControl.SetCrossRealmState(player, 1)
+            SetIsCrossPKMatching(player, 0)
             
             # 通知匹配成功,可进入跨服
             matchOKPack = ChPyNetSendPack.tagGCCrossRealmPKMatchOK()

--
Gitblit v1.8.0