| | |
| | |
|
| | | 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刷怪
|
| | |
| | | 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
|
| | |
| | | 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:
|
| | |
| | | rebornBossState = 0
|
| | | stoneNPCID = 0 # 活动线暂不刷墓碑
|
| | |
|
| | | isNeedShunt = NPCCommon.IsMapNeedBossShunt(mapID) and ipyData.GetIsNeedShunt()
|
| | | isNeedShunt = NPCCommon.IsMapNeedBossShunt(mapID) and isNeedShunt
|
| | |
|
| | | curNPC = None
|
| | | if npcRefresh.GetCount() > 0:
|