| | |
| | | FBDict_EncourageCnt = 'FBDict_EncourageCnt' #鼓舞过次数
|
| | | Map_FB_StartTick = 'Map_FB_StartTick' #活动开始时间
|
| | |
|
| | | Map_SightLevelCounter = 'Map_SightLevelCounter' #视野层级人数计数器
|
| | |
|
| | | (
|
| | | Def_BossTime, #BOSS时间
|
| | | Def_LeaveTime, #离开时间
|
| | |
| | | if state:
|
| | | if not GameWorld.GetGameWorld().GetGameWorldDictByKey(Map_FB_StartTick):
|
| | | GameWorld.GetGameWorld().SetGameWorldDict(Map_FB_StartTick, tick)
|
| | | GameWorld.GetGameWorld().SetGameWorldDict(Map_SightLevelCounter, 0)
|
| | | else:
|
| | | GameWorld.GetGameWorld().SetGameWorldDict(Map_FB_StartTick, 0)
|
| | | if not GameWorld.GetGameFB().GetGameFBDictByKey(FBDict_IsOver):
|
| | |
| | | if fbStep >= FB_Step_Over:
|
| | | PlayerControl.PlayerLeaveFB(curPlayer)
|
| | | return
|
| | | |
| | | sightPlayerCount = IpyGameDataPY.GetFuncCfg("LeagueBOSSSight", 1)
|
| | | counter = GameWorld.GetGameWorld().GetGameWorldDictByKey(Map_SightLevelCounter) + 1
|
| | | GameWorld.GetGameWorld().SetGameWorldDict(Map_SightLevelCounter, counter)
|
| | | sightLevel = (counter - 1) / sightPlayerCount + 10 # 自定义视野层级从10开始,1为公共视野层
|
| | | PlayerControl.SetPlayerSightLevel(curPlayer, sightLevel)
|
| | | GameWorld.DebugLog("counter=%s,SetPlayerSightLevel=%s" % (counter, sightLevel), playerID)
|
| | |
|
| | | if familyID not in PyGameData.g_allfamilyBossDict:
|
| | | PyGameData.g_allfamilyBossDict[familyID] = [curPlayer.GetFamilyName(), 0, [playerID]]
|
| | |
| | | __DoLogicAllFamilyBossOver(1, tick, dropPosX, dropPosY)
|
| | | return
|
| | |
|
| | | def DoFBRebornNPC(curNPC, tick):
|
| | | ##副本有NPC召出
|
| | | lineID = GameWorld.GetGameWorld().GetPropertyID() - 1
|
| | | bossID = CurFBLineBOSSID(lineID)
|
| | | if curNPC.GetNPCID() == bossID:
|
| | | curNPC.SetSightLevel(ChConfig.SightLevel_Public) # 设置boss为公共视野层级
|
| | |
|
| | | return
|
| | |
|
| | | def GetBossRemainHPPer(copyMapID, tick):
|
| | | bossID = CurFBLineBOSSID()
|