| | |
| | |
|
| | | #导入
|
| | | import FBLogic
|
| | | import GameLogic_SealDemon
|
| | | import GameLogic_ZhuXianBoss
|
| | | import IPY_GameWorld
|
| | | import PlayerControl
|
| | | import GameWorld
|
| | | import FBCommon
|
| | | import ChConfig
|
| | | import IpyGameDataPY
|
| | | import random
|
| | | #---------------------------------------------------------------------
|
| | | #全局变量
|
| | |
| | | # % (index, propertyID, playerManager.GetPlayerCount()))
|
| | | # 如果不是同一线路属性的,则跳过
|
| | | if propertyID == tagMapPropertyID:
|
| | | if tagMapID == ChConfig.Def_FBMapID_SealDemon:
|
| | | hpPer = GameLogic_SealDemon.GetBossRemainHPPer(index, tagMapLineID, tick)
|
| | | |
| | | elif tagMapID == ChConfig.Def_FBMapID_ZhuXianBoss:
|
| | | hpPer = GameLogic_ZhuXianBoss.GetBossRemainHPPer(index, tagMapLineID, tick)
|
| | | |
| | | findGameWord = gameWorld
|
| | | findPlayerManager = playerManager
|
| | | break
|
| | | if not findGameWord and propertyID == 0:
|
| | | findGameWord = gameWorld
|
| | | findPlayerManager = playerManager
|
| | | |
| | | if findPlayerManager and tagMapID == ChConfig.Def_FBMapID_ZhuXianBoss:
|
| | | if packCMDList[3] !=-1 and not GameLogic_ZhuXianBoss.GetHasSameFamilyMerber(packCMDList[3], findPlayerManager):
|
| | | notifyMark = "TryEnterJadeDynastyBossError_6"
|
| | | findGameWord = None
|
| | | GameWorld.DebugLog(" 归属次数为0且没有同盟玩家在副本里!")
|
| | |
|
| | | if findGameWord:
|
| | | if findGameWord.GetPropertyID() == 0:
|
| | |
| | | # 非协助玩家进入需要判断boss剩余血量是否允许进入
|
| | | if hpPer >= 0 and not PlayerControl.GetAssistTagPlayerID(curPlayer):
|
| | | minHPPer = 15
|
| | | if mapID == ChConfig.Def_FBMapID_SealDemon:
|
| | | minHPPer = IpyGameDataPY.GetFuncCfg('SealDemonFirstPos', 2)
|
| | | elif mapID == ChConfig.Def_FBMapID_ZhuXianBoss:
|
| | | minHPPer = IpyGameDataPY.GetFuncCfg('ZhuXianBossCntCfg', 4)
|
| | | if hpPer < minHPPer:
|
| | | GameWorld.DebugLog("boss血量少于可进入的最低血量百分比,无法进入!hpPer=%s,minHPPer=%s" % (hpPer, minHPPer))
|
| | | PlayerControl.NotifyCode(curPlayer, "DemonJar_Text4")
|
| | |
| | | if not retPos:
|
| | | return
|
| | |
|
| | | PlayerControl.PlayerResetWorldPosFB(curPlayer, mapID, retPos[0], retPos[1], False, backFBID, funcLineID=funcLineID)
|
| | | PlayerControl.PlayerResetWorldPosFB(curPlayer, mapID, retPos[0], retPos[1], backFBID, funcLineID=funcLineID)
|
| | | return
|
| | |
|