被动技能
This commit is contained in:
parent
9a6f2ad5e0
commit
e4edcfcf69
@ -360,8 +360,9 @@ function BattleController:enterNextWave()
|
||||
end
|
||||
if self.waveIndex == 1 then -- 第一波
|
||||
self:generateBoard(true)
|
||||
else
|
||||
self.defTeam:prepare()
|
||||
end
|
||||
self.defTeam:prepare()
|
||||
self:enterRoundBegin()
|
||||
self.isBossWave = self.defTeam:getMainUnit().unitEntity:getIsBoss()
|
||||
end
|
||||
|
||||
@ -22,7 +22,7 @@ local _changeBaseSkill = function(skillInfo, battleData, battleController)
|
||||
return
|
||||
end
|
||||
if battleData.atkTeam:getAllMembers()[elementType] then
|
||||
battleData.atkTeam:getAllMembers()[elementType]:changeActiveSkillId(skillId, newSkillId)
|
||||
battleData.atkTeam:getAllMembers()[elementType]:changeSkillId(skillId, newSkillId)
|
||||
end
|
||||
end
|
||||
end
|
||||
@ -139,7 +139,7 @@ local _addSkillEffectParams = function(skillInfo, battleData, battleController)
|
||||
return
|
||||
end
|
||||
if battleData.atkTeam:getAllMembers()[elementType] then
|
||||
battleData.atkTeam:getAllMembers()[elementType]:addActiveSkillParams(skillId, effect)
|
||||
battleData.atkTeam:getAllMembers()[elementType]:addSkillParams(skillId, effect)
|
||||
end
|
||||
end
|
||||
end
|
||||
@ -177,7 +177,7 @@ local _addSkillRound = function(skillInfo, battleData, battleController)
|
||||
return
|
||||
end
|
||||
if battleData.atkTeam:getAllMembers()[elementType] then
|
||||
battleData.atkTeam:getAllMembers()[elementType]:addActiveSkillRound(skillId, effect)
|
||||
battleData.atkTeam:getAllMembers()[elementType]:addSkillRound(skillId, effect)
|
||||
end
|
||||
end
|
||||
Logger.logHighlight("------addSkillRound------ " .. elementType .. " " .. json.encode(effect))
|
||||
|
||||
@ -532,6 +532,7 @@ function BattleData:addMonster(monsterId, newTeam)
|
||||
matchType = 0,
|
||||
normalSkills = monsterInfo.hurt_skill,
|
||||
activeSkills = monsterInfo.skill,
|
||||
passiveSkills = monsterInfo.passive_skill,
|
||||
assistingSkill = nil,
|
||||
isBoss = monsterInfo.is_boss,
|
||||
exp = monsterInfo.monster_exp or 0,
|
||||
|
||||
@ -24,6 +24,7 @@ function BattleSkillEntity:init()
|
||||
end
|
||||
self:initSkillEffect()
|
||||
self.available = self.skillInfo.effect_type ~= nil
|
||||
self:clearRecordData()
|
||||
end
|
||||
|
||||
function BattleSkillEntity:initSkillEffect()
|
||||
|
||||
@ -36,6 +36,13 @@ function BattleUnitEntity:initSkill()
|
||||
table.insert(self.activeSkills, skill)
|
||||
end
|
||||
end
|
||||
if self.unitData.passiveSkills then
|
||||
self.passiveSkills = {}
|
||||
for k, v in ipairs(self.unitData.passiveSkills) do
|
||||
local skill = BattleSkillEntity:create(v, GConst.BattleConst.SKILL_TYPE_PASSIVE, self)
|
||||
table.insert(self.passiveSkills, skill)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function BattleUnitEntity:getIsBoss()
|
||||
@ -160,31 +167,55 @@ function BattleUnitEntity:getPassiveSkills()
|
||||
return self.passiveSkills
|
||||
end
|
||||
|
||||
function BattleUnitEntity:changeActiveSkillId(originSkillId, tartgetSkillId)
|
||||
function BattleUnitEntity:changeSkillId(originSkillId, tartgetSkillId)
|
||||
for _, skillEntity in ipairs(self.activeSkills) do
|
||||
if skillEntity:getSkillId() == originSkillId then
|
||||
skillEntity:changeSkillId(tartgetSkillId)
|
||||
break
|
||||
return
|
||||
end
|
||||
end
|
||||
if self.passiveSkills then
|
||||
for _, skillEntity in ipairs(self.passiveSkills) do
|
||||
if skillEntity:getSkillId() == originSkillId then
|
||||
skillEntity:changeSkillId(tartgetSkillId)
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function BattleUnitEntity:addActiveSkillParams(skillId, effect)
|
||||
function BattleUnitEntity:addSkillParams(skillId, effect)
|
||||
for _, skillEntity in ipairs(self.activeSkills) do
|
||||
if skillEntity:getSkillId() == skillId then
|
||||
skillEntity:addSkillEffectParams(effect)
|
||||
break
|
||||
end
|
||||
end
|
||||
if self.passiveSkills then
|
||||
for _, skillEntity in ipairs(self.passiveSkills) do
|
||||
if skillEntity:getSkillId() == skillId then
|
||||
skillEntity:addSkillEffectParams(effect)
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function BattleUnitEntity:addActiveSkillRound(skillId, effect)
|
||||
function BattleUnitEntity:addSkillRound(skillId, effect)
|
||||
for _, skillEntity in ipairs(self.activeSkills) do
|
||||
if skillEntity:getSkillId() == skillId then
|
||||
skillEntity:addSkillEffectRound(effect)
|
||||
break
|
||||
end
|
||||
end
|
||||
if self.passiveSkills then
|
||||
for _, skillEntity in ipairs(self.passiveSkills) do
|
||||
if skillEntity:getSkillId() == skillId then
|
||||
skillEntity:addSkillEffectRound(effect)
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function BattleUnitEntity:getDamageCount()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user