From 91d734746bb34a06e5b14cfc419a770a306f8fb2 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 22 十二月 2023 17:38:10 +0800
Subject: [PATCH] 0312 增加Setface同步gameserver
---
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py | 47 +++++++++++++++++++++++++++--------------------
1 files changed, 27 insertions(+), 20 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py
index bda5d47..79bce76 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):
@@ -799,7 +806,7 @@
cnt += 1
savaData += attentionData.getBuffer()
- GameWorld.Log("SaveBossAttention cnt :%s" % cnt)
+ GameWorld.Log("SaveBossAttention cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
--
Gitblit v1.8.0