| | |
| | | self.tagViewCache = tagViewCache
|
| | | return
|
| | |
|
| | | def getPVPPlayerID(self): return self.tagPlayerID # 获取PVP目标玩家ID,也可用于判断是否PVP
|
| | | |
| | | def isFBMap(self):
|
| | | ## 是否副本地图中,非主线的均视为副本
|
| | | return self.mapID not in [ChConfig.Def_FBMapID_Main, ChConfig.Def_FBMapID_MainBoss]
|
| | |
| | | olPlayer = PlayerOnline.GetOnlinePlayer(curPlayer)
|
| | | lineup = olPlayer.GetLineup(lineupID)
|
| | | if lineup.IsEmpty():
|
| | | GameWorld.DebugLog("玩家没有目标阵容默认取主阵容! lineupID=%s" % lineupID)
|
| | | GameWorld.DebugLog("玩家没有目标阵容默认取主阵容! lineupID=%s" % lineupID, curPlayer.GetPlayerID())
|
| | | lineup = olPlayer.GetLineup(ShareDefine.Lineup_Main)
|
| | | return lineup
|
| | |
|
| | |
| | | tagViewCache = PlayerViewCache.FindViewCache(tagPlayerID)
|
| | | if not tagViewCache:
|
| | | GameWorld.DebugLog("目标玩家没有缓存数据! tagPlayerID=%s" % tagPlayerID, playerID)
|
| | | return {}
|
| | | PlayerControl.NotifyCode(curPlayer, "TagNoViewCache")
|
| | | return
|
| | | defLineupInfo = GetCacheLineupInfo(tagViewCache, defLineupID)
|
| | | if not defLineupInfo:
|
| | | GameWorld.DebugLog("目标玩家没有该阵容数据! tagPlayerID=%s,defLineupID=%s" % (tagPlayerID, defLineupID), playerID)
|
| | | PlayerControl.NotifyCode(curPlayer, "TagNoLineup")
|
| | | return
|
| | |
|
| | | turnMax = GetTurnMax(mapID)
|
| | |
| | | def __doSetFightPoint(curPlayer, fightPoint):
|
| | | ## 设置消耗倍值
|
| | | GameWorld.DebugLog("设置战锤消耗倍值: %s" % fightPoint)
|
| | | if fightPoint == 1:
|
| | | pass
|
| | | elif fightPoint == 2:
|
| | | # 条件验证
|
| | | pass
|
| | | elif fightPoint == 3:
|
| | | # 条件验证
|
| | | pass
|
| | | else:
|
| | | needTreeLVList = IpyGameDataPY.GetFuncEvalCfg("AutoGuaji", 1)
|
| | | if fightPoint < 1 or fightPoint > len(needTreeLVList):
|
| | | return
|
| | | needTreeLV = needTreeLVList[fightPoint - 1]
|
| | | treeLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_TreeLV)
|
| | | if treeLV < needTreeLV:
|
| | | GameWorld.DebugLog("祝福树等级不足: treeLV=%s < %s" % (treeLV, needTreeLV))
|
| | | return
|
| | | curPlayer.SetFightPoint(fightPoint)
|
| | | return
|
| | |
| | | if turnNum > 1: # 第1回合不用刷新技能
|
| | | RefreshObjSkillByBigTurn(batObj)
|
| | | RefreshObjByBigTurn(turnFight, batObj)
|
| | | |
| | | batObj.ResetBigTurn() # 每大回合重置
|
| | | TurnPassive.OnTriggerPassiveEffect(turnFight, batObj, ChConfig.TriggerWay_BigTurnStart)
|
| | |
|
| | | return
|
| | |
| | | remainTime -= 1
|
| | | curSkill.SetRemainTime(remainTime)
|
| | | GameWorld.DebugLog(" 更新技能CD: curID=%s,skillID=%s,remainTime=%s" % (curID, skillID, remainTime))
|
| | | |
| | | batObj.ResetSkillTurnUseCnt() # 重置回合使用次数,放刷新CD后重置
|
| | | return
|
| | |
|
| | | def RefreshObjByBigTurn(turnFight, batObj):
|