From 9cd33fdc6c0158edf12a1e89d5a657977d9e2bf9 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期五, 31 八月 2018 15:47:04 +0800 Subject: [PATCH] Fix: 修复活动线非1线时连续开活动无法刷出活动boss的bug; --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py | 16 +++++++++++++--- 1 files changed, 13 insertions(+), 3 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py index ab13355..d4d422f 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py @@ -340,14 +340,24 @@ def ResetActivityBossRefreshCount(): ## 重置活动boss刷怪个数 - gameFB = GameWorld.GetGameFB() - gameNPC = GameWorld.GetNPCManager() + + # gameFb 要取活动线 + activityLineIndex = 0 # 活动线, 默认1线 + mapID = GameWorld.GetMap().GetMapID() + activityMapLineDict = IpyGameDataPY.GetFuncEvalCfg("MapLine", 2, {}) + if mapID in activityMapLineDict: + activityLineIndex = max(0, activityMapLineDict[mapID] - 1) + + gameWorld = IPY_GameWorld.IPY_GameWorld(activityLineIndex) + gameFB = gameWorld.GetGameFBByFbIndex(activityLineIndex) + + gameNPC = GameWorld.GetNPCManager() # NPC标识点的无所谓,哪条线都可以,因为都一样 for i in xrange(gameNPC.GetCustomNPCRefreshCount()): npcRefresh = gameNPC.GetCustomNPCRefreshAt(i) refreshMark = npcRefresh.GetRefreshMark() if gameFB.GetGameFBDictByKey(ChConfig.Map_NPC_ActivityBossRebornCount % refreshMark): gameFB.SetGameFBDict(ChConfig.Map_NPC_ActivityBossRebornCount % refreshMark, 0) - GameWorld.DebugLog("重置活动boss刷怪点刷怪个数: refreshMark=%s" % refreshMark) + GameWorld.DebugLog("重置活动boss刷怪点刷怪个数: activityLineIndex=%s,refreshMark=%s" % (activityLineIndex, refreshMark)) return ## 世界boss刷怪 -- Gitblit v1.8.0