From 55c0dde92cc8e292f9385ee313b515649c6162b4 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期六, 16 二月 2019 11:49:12 +0800
Subject: [PATCH] 6236 【后端】【1.6】合服重新同步下诛仙排行榜

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetZhuXianTower.py                     |    5 ++---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBillboard.py                          |    5 +++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianTower.py |   14 +++++++-------
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py                                        |    1 +
 4 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index 63ba817..4fb01b4 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -3644,6 +3644,7 @@
 #诛仙塔
 Def_Player_Dict_ZhuXianTowerPassLV = "ZhuXianTowerPassLV"  # 诛仙塔已通关层数
 Def_Player_Dict_ZhuXianTowerLastFloor = "ZhuXianTowerLastFloor"  # 诛仙塔上次挑战层数
+Def_Player_Dict_ZhuXianTowerCostTime = "ZhuXianTowerCostTime"  # 诛仙塔通关时间
 
 #古神禁地
 Def_Player_Dict_GodArea_Anger = "GodArea_Anger"  # 古神禁地怒气值
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetZhuXianTower.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetZhuXianTower.py
index 8ae45b2..c3a4b5e 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetZhuXianTower.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/SetZhuXianTower.py
@@ -36,9 +36,8 @@
     if len(cmdList) != 1:
         return
     fbLevel = cmdList[0]
-    GameLogic_ZhuXianTower.SetZhuXianTowerCurPassLV(curPlayer, fbLevel)
-    #更新诛仙塔排行榜
-    PlayerBillboard.UpdatePlayerBillboard(curPlayer, ShareDefine.Def_BT_ZhuXianTower, fbLevel, 10000-100)
+    GameLogic_ZhuXianTower.SetZhuXianTowerCurPassLV(curPlayer, fbLevel, 100)
+
     GameLogic_ZhuXianTower.SyncZhuXianLevelInfo(curPlayer)
     GameWorld.DebugAnswer(curPlayer, "诛仙塔过关数设置 floor=%s!"%fbLevel)
     return
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianTower.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianTower.py
index 28702e1..1a05974 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianTower.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianTower.py
@@ -121,11 +121,12 @@
 
 
 ## 更新当前已通关关卡
-def SetZhuXianTowerCurPassLV(curPlayer, passlv):
+def SetZhuXianTowerCurPassLV(curPlayer, passlv, costTime=0):
     PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_ZhuXianTowerPassLV, passlv)
-    #PlayerRune.DoUnlockRuneHole(curPlayer)
-    
-    #PlayerWeekParty.AddWeekPartyActionCnt(curPlayer, ChConfig.Def_WPAct_Tower, passlv, False)
+    #更新诛仙塔排行榜
+    saveTime = 10000-costTime/1000
+    PlayerBillboard.UpdatePlayerBillboard(curPlayer, ShareDefine.Def_BT_ZhuXianTower, passlv, saveTime)
+    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_ZhuXianTowerCostTime, saveTime)
     GameWorld.DebugLog(' 更新诛仙塔已通关数 %s' % passlv)
     return
 
@@ -444,9 +445,8 @@
     isFirstS = 0
     if fbLevel != __GetZhuXianTowerCurPassLV(curPlayer) and curStar == Def_MaxStar:
         #更新关卡
-        SetZhuXianTowerCurPassLV(curPlayer, fbLevel)
-        #更新诛仙塔排行榜
-        PlayerBillboard.UpdatePlayerBillboard(curPlayer, ShareDefine.Def_BT_ZhuXianTower, fbLevel, 10000-costTime/1000)
+        SetZhuXianTowerCurPassLV(curPlayer, fbLevel, costTime)
+        
         isFirstS = 1  #是否首次S通关
     gameFB.SetGameFBDict(FBDict_isFirstS, isFirstS)
     
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBillboard.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBillboard.py
index ec5c0d4..863555a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBillboard.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBillboard.py
@@ -50,6 +50,11 @@
     
     if isAll:
         UpdateRuneTowerBillboard(curPlayer)
+        ##诛仙塔榜(通关时长没有的默认50秒)
+        UpdatePlayerBillboard(curPlayer, ShareDefine.Def_BT_ZhuXianTower, 
+                              curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_ZhuXianTowerPassLV), 
+                              curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_ZhuXianTowerCostTime, 9950))
+        
         #UpdateTJGBillboard(curPlayer, minuteExp) 脱机效率可不更新
         
     return

--
Gitblit v1.8.0