From 92e5118d99b8e202b78c9cc781dd5b3b7d0b4485 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期六, 16 二月 2019 13:47:05 +0800
Subject: [PATCH] 5315 【后端】【1.6】登录奖励活动(循环广播)
---
ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py | 3 +++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBillboard.py | 13 +++++++++----
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_ZhuXianTower.py | 9 ++++-----
PySysDB/PySysDBG.h | 1 +
4 files changed, 17 insertions(+), 9 deletions(-)
diff --git a/PySysDB/PySysDBG.h b/PySysDB/PySysDBG.h
index 5b33bd4..a15c8f9 100644
--- a/PySysDB/PySysDBG.h
+++ b/PySysDB/PySysDBG.h
@@ -547,6 +547,7 @@
BYTE ResetType; //重置类型,0-0点重置;1-5点重置
dict NotifyInfoStart; //全服提示信息 - 相对开始时间
dict NotifyInfoEnd; //全服提示信息 - 相对结束时间
+ list NotifyInfoLoop; //全服提示信息 - 循环广播[间隔分钟, 广播key]
WORD LVLimit; //限制等级
};
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
index ff1ecf0..b78a0ce 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/IpyGameDataPY.py
@@ -456,6 +456,7 @@
("BYTE", "ResetType", 0),
("dict", "NotifyInfoStart", 0),
("dict", "NotifyInfoEnd", 0),
+ ("list", "NotifyInfoLoop", 0),
("WORD", "LVLimit", 0),
),
@@ -1388,6 +1389,7 @@
self.ResetType = 0
self.NotifyInfoStart = {}
self.NotifyInfoEnd = {}
+ self.NotifyInfoLoop = []
self.LVLimit = 0
return
@@ -1402,6 +1404,7 @@
def GetResetType(self): return self.ResetType # 重置类型,0-0点重置;1-5点重置
def GetNotifyInfoStart(self): return self.NotifyInfoStart # 全服提示信息 - 相对开始时间
def GetNotifyInfoEnd(self): return self.NotifyInfoEnd # 全服提示信息 - 相对结束时间
+ def GetNotifyInfoLoop(self): return self.NotifyInfoLoop # 全服提示信息 - 循环广播[间隔分钟, 广播key]
def GetLVLimit(self): return self.LVLimit # 限制等级
# 节日巡礼活动时间表
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 1a05974..49ae188 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,12 +121,11 @@
## 更新当前已通关关卡
-def SetZhuXianTowerCurPassLV(curPlayer, passlv, costTime=0):
+def SetZhuXianTowerCurPassLV(curPlayer, passlv, costSeconds=0):
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_ZhuXianTowerPassLV, passlv)
+ PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_ZhuXianTowerCostTime, costSeconds)
#更新诛仙塔排行榜
- saveTime = 10000-costTime/1000
- PlayerBillboard.UpdatePlayerBillboard(curPlayer, ShareDefine.Def_BT_ZhuXianTower, passlv, saveTime)
- PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_ZhuXianTowerCostTime, saveTime)
+ PlayerBillboard.UpdateZhuXianTowerBillboard(curPlayer)
GameWorld.DebugLog(' 更新诛仙塔已通关数 %s' % passlv)
return
@@ -445,7 +444,7 @@
isFirstS = 0
if fbLevel != __GetZhuXianTowerCurPassLV(curPlayer) and curStar == Def_MaxStar:
#更新关卡
- SetZhuXianTowerCurPassLV(curPlayer, fbLevel, costTime)
+ SetZhuXianTowerCurPassLV(curPlayer, fbLevel, costTime/1000)
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 863555a..8836a33 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBillboard.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBillboard.py
@@ -50,10 +50,7 @@
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))
+ UpdateZhuXianTowerBillboard(curPlayer)
#UpdateTJGBillboard(curPlayer, minuteExp) 脱机效率可不更新
@@ -182,6 +179,14 @@
UpdatePlayerBillboard(curPlayer, ShareDefine.Def_BT_TrialTower, passLV)
return
+def UpdateZhuXianTowerBillboard(curPlayer):
+ ##诛仙塔榜(通关时长没有的默认50秒)
+ costTime = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_ZhuXianTowerCostTime, 50)
+ passLV = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_ZhuXianTowerPassLV)
+ UpdatePlayerBillboard(curPlayer, ShareDefine.Def_BT_ZhuXianTower, passLV, 10000-costTime)
+ return
+
+
def UpdateTJGBillboard(curPlayer, minuteExp):
##脱机效率榜
if not minuteExp:
--
Gitblit v1.8.0