From 4180ba5f28c47d15a33d99973e2034f5337ab3fc Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 20 十二月 2022 17:04:17 +0800
Subject: [PATCH] 9731 【越南】【主干】【BT7】【BT8】转职业(转职附加重置灵根属性点)

---
 ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py |   33 +++++++++++++++++++++++++++++++--
 1 files changed, 31 insertions(+), 2 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py
index 0bcfc8e..721975c 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py
@@ -918,6 +918,17 @@
         return ReadChConfig.GetPyMongoConfig("Merge", "CrossZoneName")
     return PyGameData.g_crossZoneName
 
+def GetCrossServerTimeStr():
+    ## 跨服服务器时间
+    if IsCrossServer():
+        return GetCurrentDataTimeStr()
+    lastCrossServerTime, lastServerTime, _ = PyGameData.g_crossServerTimeInfo
+    if not lastCrossServerTime:
+        return GetCurrentDataTimeStr()
+    curTime = int(time.time())
+    crossServerTime = lastCrossServerTime + (curTime - lastServerTime)
+    return ChangeTimeNumToStr(crossServerTime)
+
 ## 获取玩家的区服名,仅在跨服有效
 #  @param curPlayer 玩家实例
 #  @return: 区服名
@@ -1080,7 +1091,7 @@
 #  @param order 名次,从1开始
 #  @param isDefaultLast 找不到的名次是否默认取最后一名的
 #  @return obj or None
-def GetOrderValueByDict(orderDict, order, isDefaultLast=True):
+def GetOrderValueByDict(orderDict, order, isDefaultLast=True, defaultValue=None):
     if order in orderDict:
         return orderDict[order]
     
@@ -1091,7 +1102,7 @@
                 return orderDict[dOrder]
         
     # 找不到的默认取最后一名
-    return orderDict[orderList[-1]] if isDefaultLast else None
+    return orderDict[orderList[-1]] if isDefaultLast else defaultValue
 
 ##概率相关, 这个事件是否能够出现
 # @param rate 基础几率
@@ -1115,6 +1126,24 @@
     curPlayer.DebugAnswer(text)
     return
 
+def CrossServerMsg_DebugAnswer(msgData):
+    playerID, text = msgData
+    curPlayer = GetPlayerManager().FindPlayerByID(playerID)
+    if not curPlayer:
+        return
+    curPlayer.DebugAnswer(text)
+    return
+
+def DebugAnswerCross(playerID, serverGroupID, text):
+    DebugLog(text)
+    text = text.decode(ShareDefine.Def_Game_Character_Encoding).encode(GetCharacterEncoding())
+    
+    import CrossRealmMsg
+    dataMsg = [playerID, text]
+    serverGroupIDList = [serverGroupID]
+    CrossRealmMsg.SendMsgToClientServer(ShareDefine.CrossServerMsg_DebugAnswer, dataMsg, serverGroupIDList)
+    return
+
 def GetMap(mapID): return IpyGameDataPY.GetIpyGameData("ChinMap", mapID)
 
 def GetNPCData(npcID): return IpyGameDataPY.GetIpyGameData("ChinNPC", npcID)

--
Gitblit v1.8.0