From c3df46d41e1e2db96343c856e44f516495eef90f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 20 十月 2020 09:43:00 +0800
Subject: [PATCH] 4805 【BT】日常活动邮件内容都是天降宝箱 需要优化(屏蔽邮件)
---
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py | 53 +++++++++++++++++++++++++++++++++--------------------
1 files changed, 33 insertions(+), 20 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py
index 0243896..039f07e 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py
@@ -391,6 +391,9 @@
# % (bossInfoObj.BossID, bossInfoObj.IsAlive, bossInfoObj.KillRecord,
# killedTime, bossInfoObj.RefreshSecond))
+ if not bossInfo.BossInfoList:
+ return
+
bossInfo.BossCnt = len(bossInfo.BossInfoList)
if not curPlayer:
# 全服广播在线玩家
@@ -429,6 +432,9 @@
if mapID in ChConfig.Def_CrossMapIDList:
continue
bossPrizeRec = __GetBossRecDataByID(bossID)
+ refreshTimeStr = ipyData.GetRefreshTime()
+ if not refreshTimeStr or refreshTimeStr == "0":
+ continue
killedTime = bossPrizeRec.GetValue2()
refreshTime = __GetBossRefreshTime(bossID)
PyGameData.g_sortBOSSRefreshList.append([bossID, killedTime, refreshTime])
@@ -450,7 +456,7 @@
break
#此处只处理复活的
- PlayerGeTui.GeTuiBossReborn(bossID)
+ #PlayerGeTui.GeTuiBossReborn(bossID)
__SetIsAlive(bossID, 1)
syncBOSSIDList.append(bossID)
@@ -465,24 +471,25 @@
#BOSS个推提前倒计时通知处理, 复活由DoCheckWorldBossReborn处理
def ProcessBossGeTui(tick):
- if not GameWorld.SetWorldDictKey(ChConfig.TYPE_WorldBossGeTuiTick, tick):
- #间隔未到
- return
- if GameWorld.IsCrossServer():
- return
- curTime = int(time.time())
- for bossInfo in PyGameData.g_sortBOSSRefreshList:
- bossID, killedTime, refreshTime = bossInfo
- isAlive = __GetIsAlive(bossID)
- if isAlive:
- #GameWorld.DebugLog(" bossID=%s,未被击杀!" % bossID)
- continue
- rebornSecond = max(0, refreshTime - (curTime - killedTime))
- if not rebornSecond:
- #不处理复活BOSS
- continue
-
- PlayerGeTui.GeTuiBoss(bossID, rebornSecond)
+ return
+# if not GameWorld.SetWorldDictKey(ChConfig.TYPE_WorldBossGeTuiTick, tick):
+# #间隔未到
+# return
+# if GameWorld.IsCrossServer():
+# return
+# curTime = int(time.time())
+# for bossInfo in PyGameData.g_sortBOSSRefreshList:
+# bossID, killedTime, refreshTime = bossInfo
+# isAlive = __GetIsAlive(bossID)
+# if isAlive:
+# #GameWorld.DebugLog(" bossID=%s,未被击杀!" % bossID)
+# continue
+# rebornSecond = max(0, refreshTime - (curTime - killedTime))
+# if not rebornSecond:
+# #不处理复活BOSS
+# continue
+#
+# PlayerGeTui.GeTuiBoss(bossID, rebornSecond)
def GetBossIsAliveOrCanReborn(bossID):
@@ -980,6 +987,11 @@
NetPackCommon.SendFakePack(curPlayer, bossShuntLineInfo)
return
+def BossRebornOnDayEx():
+ ## boss复活过天
+ PlayerDBGSEvent.SetDBGSTrig_ByKey(PlayerDBGSEvent.Def_BossRebornCnt, 0)
+ Sync_BossRebornPoint()
+ return
def AddBossRebornPoint(addPoint):
## 增加boss复活点
@@ -997,7 +1009,7 @@
return
rebornCnt = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_BossRebornCnt)
maxRebornCnt = IpyGameDataPY.GetFuncCfg('BossRebornTotalPoint', 3)
- if rebornCnt >= maxRebornCnt:
+ if maxRebornCnt and rebornCnt >= maxRebornCnt:
GameWorld.DebugLog(' boss复活已达到最大次数! maxRebornCnt=%s' % maxRebornCnt)
return
@@ -1104,6 +1116,7 @@
totalPoint = SetBossRebornNeedPoint()
packData.TotalPoint = totalPoint
packData.RebornCnt = PlayerDBGSEvent.GetDBGSTrig_ByKey(PlayerDBGSEvent.Def_BossRebornCnt)
+ packData.TotalRebornCnt = IpyGameDataPY.GetFuncCfg('BossRebornTotalPoint', 3)
playerManager = GameWorld.GetPlayerManager()
if not curPlayer:
for i in xrange(playerManager.GetActivePlayerCount()):
--
Gitblit v1.8.0