生命相关被动改为由队伍记录
This commit is contained in:
parent
7ee1d620bb
commit
0fa378ec88
@ -25,16 +25,16 @@ end
|
||||
local function _checkhpLowerThan(unitComp, skill, targetComp, hpPercent)
|
||||
local triggerValue = skill:getPassiveTriggerValue() or 0
|
||||
if hpPercent*DEFAULT_FACTOR < triggerValue then -- 低于指定血量,触发技能
|
||||
local data = skill:getRecordData(SKILL_RECORD_DATA_NAME.HP_LOWER_THAN) or 0
|
||||
local data = unitComp.unitEntity:getTeamRecordData(SKILL_RECORD_DATA_NAME.HP_LOWER_THAN) or 0
|
||||
if data == 1 then -- 已经触发过了
|
||||
return 0
|
||||
end
|
||||
skill:setRecordData(SKILL_RECORD_DATA_NAME.HP_LOWER_THAN, 1)
|
||||
unitComp.unitEntity:setTeamRecordData(SKILL_RECORD_DATA_NAME.HP_LOWER_THAN, 1)
|
||||
return 1
|
||||
else
|
||||
local data = skill:getRecordData(SKILL_RECORD_DATA_NAME.HP_LOWER_THAN) or 0
|
||||
local data = unitComp.unitEntity:getTeamRecordData(SKILL_RECORD_DATA_NAME.HP_LOWER_THAN) or 0
|
||||
if data == 1 then -- 已经触发过了,那么需要取消
|
||||
skill:setRecordData(SKILL_RECORD_DATA_NAME.HP_LOWER_THAN, 0)
|
||||
unitComp.unitEntity:setTeamRecordData(SKILL_RECORD_DATA_NAME.HP_LOWER_THAN, 0)
|
||||
return -1
|
||||
end
|
||||
end
|
||||
|
||||
@ -229,11 +229,34 @@ function BattleTeamEntity:handleShield(damageNum)
|
||||
end
|
||||
end
|
||||
|
||||
function BattleTeamEntity:getRecordData(name)
|
||||
if self.recordData == nil then
|
||||
self.recordData = {}
|
||||
end
|
||||
return self.recordData[name]
|
||||
end
|
||||
|
||||
function BattleTeamEntity:setRecordData(name, value)
|
||||
if self.recordData == nil then
|
||||
self.recordData = {}
|
||||
end
|
||||
self.recordData[name] = value
|
||||
end
|
||||
|
||||
function BattleTeamEntity:clearRecordData()
|
||||
if self.recordData then
|
||||
for k, v in pairs(self.recordData) do
|
||||
self.recordData[k] = nil
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function BattleTeamEntity:die()
|
||||
if self.isDead then
|
||||
return
|
||||
end
|
||||
self.isDead = true
|
||||
self:clearRecordData()
|
||||
end
|
||||
|
||||
function BattleTeamEntity:getIsDead()
|
||||
|
||||
@ -253,6 +253,14 @@ function BattleUnitEntity:getSkillExtraUseTimes(skillId)
|
||||
return self.skillExtraUseTimes[skillId] or 0
|
||||
end
|
||||
|
||||
function BattleUnitEntity:getTeamRecordData(name)
|
||||
return self.team:getRecordData(name)
|
||||
end
|
||||
|
||||
function BattleUnitEntity:setTeamRecordData(name, value)
|
||||
self.team:setRecordData(name, value)
|
||||
end
|
||||
|
||||
function BattleUnitEntity:onRoundEnd()
|
||||
for k, v in ipairs(self.activeSkills) do
|
||||
v:cooldown()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user