From ec45b62795c111074562fab788b5cccdea5d1d1d Mon Sep 17 00:00:00 2001 From: xdh <xiefantasy@qq.com> Date: 星期六, 01 九月 2018 11:25:38 +0800 Subject: [PATCH] fix:3124 守卫人皇、仙盟心法增加仙盟等级限制 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/NPC/NPCCustomRefresh.py | 26 +++++++++++++++++++------- 1 files changed, 19 insertions(+), 7 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 6d5e05c..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刷怪 @@ -361,7 +371,8 @@ mapID = GameWorld.GetMap().GetMapID() refreshMark = npcRefresh.GetRefreshMark() lineID = GameWorld.GetGameWorld().GetLineID() - + relatedType, relatedID = 0, 0 + isNeedShunt = 0 if mapID == ChConfig.Def_FBMapID_SealDemon: bossID = GameLogic_SealDemon.CurFBLineBOSSID() stoneNPCID = 0 @@ -371,13 +382,14 @@ return stoneNPCID = ipyData.GetStoneNPCID() bossID = ipyData.GetNPCID() + relatedType = ipyData.GetRelatedType() + relatedID = ipyData.GetRelatedID() + isNeedShunt = ipyData.GetIsNeedShunt() if not bossID and not stoneNPCID: return gameFB = GameWorld.GetGameFB() gameWorldMgr = GameWorld.GetGameWorld() - relatedType = ipyData.GetRelatedType() - relatedID = ipyData.GetRelatedID() isActivityBoss = False # 关联日常活动 if relatedType == 1: @@ -411,7 +423,7 @@ rebornBossState = 0 stoneNPCID = 0 # 活动线暂不刷墓碑 - isNeedShunt = NPCCommon.IsMapNeedBossShunt(mapID) and ipyData.GetIsNeedShunt() + isNeedShunt = NPCCommon.IsMapNeedBossShunt(mapID) and isNeedShunt curNPC = None if npcRefresh.GetCount() > 0: -- Gitblit v1.8.0