【人物属性】新增爆伤减免属性,战斗适用
parent
12fe3eb3e4
commit
fe13249728
|
@ -301,22 +301,17 @@ HeroProType = {
|
|||
PhysicalDefence = 3, --护甲
|
||||
MagicDefence = 4, --魔抗
|
||||
Speed = 5, --速度
|
||||
InitRage = 7, -- 初始怒气值
|
||||
DamageBocusFactor = 51, --伤害加成百分比
|
||||
DamageReduceFactor = 52, --伤害减免百分比
|
||||
Hit = 53, --效果命中率
|
||||
Dodge = 54, --效果抵抗率
|
||||
CritFactor = 55, --暴击率
|
||||
CritDamageFactor = 56, --暴伤
|
||||
AntiCritFactor = 60, --抗暴率
|
||||
AntiCritDamageFactor = 113, --暴击伤害减免
|
||||
CureFacter = 57, --受到治疗系数
|
||||
TreatFacter = 58, --治疗系数
|
||||
DifferDemonsReduceFactor = 59, --异妖减伤率
|
||||
AntiCritDamageFactor = 60, --抗暴率
|
||||
MaxHpPercentage = 61, --生命值百分比
|
||||
AttackPercentage = 62, --攻击力百分比
|
||||
MaxHpPercentage = 63, --生命值百分比
|
||||
PhysicalDefencePercentage = 64, --护甲百分比
|
||||
SpeedPercentage = 65, --速度百分比
|
||||
DifferDemonsBocusFactor = 66, --异妖伤害加成系数
|
||||
RenBonus = 101, --对人杰阵营神将造成伤害时获得的伤害加成
|
||||
FoBonus = 102, --对佛禅阵营神将造成伤害时获得的伤害加成
|
||||
YaoBonus = 103, --对妖灵阵营神将造成伤害时获得的伤害加成
|
||||
|
@ -326,7 +321,6 @@ HeroProType = {
|
|||
YaoReduce = 109, --受到妖灵阵营神将造成的直接伤害时获得的伤害减免
|
||||
DaoReduce = 110, --受到道玄阵营神将造成的直接伤害时获得的伤害减免
|
||||
WarPower = 1000, --英雄战斗力(获取英雄属性时会用到)
|
||||
InitRage = 200, -- 初始怒气值
|
||||
}
|
||||
|
||||
--异妖图片资源
|
||||
|
|
|
@ -633,18 +633,19 @@ function this.GetMonsterPros(id, lv, star)
|
|||
table.insert(allProVal, 11, proList[HeroProType.Dodge] or 0) --闪避率(%)
|
||||
table.insert(allProVal, 12, proList[HeroProType.CritFactor] or 0) --暴击率(%)
|
||||
table.insert(allProVal, 13, proList[HeroProType.CritDamageFactor] or 0) --暴击伤害系数(%)
|
||||
table.insert(allProVal, 14, proList[HeroProType.AntiCritDamageFactor] or 0) --抗暴率(%)
|
||||
table.insert(allProVal, 14, proList[HeroProType.AntiCritFactor] or 0) --抗暴率(%)
|
||||
table.insert(allProVal, 15, proList[HeroProType.TreatFacter] or 1) --治疗加成系数(%) 默认为1
|
||||
table.insert(allProVal, 16, proList[HeroProType.CureFacter] or 1) --受到治疗系数(%)默认为1
|
||||
table.insert(allProVal, 17, 0) --异妖伤害加成系数(%)
|
||||
table.insert(allProVal, 18, 0) --异妖减伤率(%)
|
||||
table.insert(allProVal, 19, 0) --火系伤害减免系数(%)
|
||||
table.insert(allProVal, 20, 0) --风系伤害减免系数(%)
|
||||
table.insert(allProVal, 21, 0) --冰系伤害减免系数(%)
|
||||
table.insert(allProVal, 22, 0) --地系伤害减免系数(%)
|
||||
table.insert(allProVal, 23, 0) --光系伤害减免系数(%)
|
||||
table.insert(allProVal, 24, 0) --暗系伤害减免系数(%)
|
||||
table.insert(allProVal, 25, 0)
|
||||
table.insert(allProVal, 17, proList[HeroProType.RenBonus] or 0) -- 灭人
|
||||
table.insert(allProVal, 18, proList[HeroProType.FoBonus] or 0) -- 灭佛
|
||||
table.insert(allProVal, 19, proList[HeroProType.YaoBonus] or 0) -- 灭妖
|
||||
table.insert(allProVal, 20, proList[HeroProType.DaoBonus] or 0) -- 灭道
|
||||
table.insert(allProVal, 21, proList[HeroProType.RenReduce] or 0) -- 抗人
|
||||
table.insert(allProVal, 22, proList[HeroProType.FoReduce] or 0) -- 抗佛
|
||||
table.insert(allProVal, 23, proList[HeroProType.YaoReduce] or 0) -- 抗妖
|
||||
table.insert(allProVal, 24, proList[HeroProType.DaoReduce] or 0) -- 抗道
|
||||
table.insert(allProVal, 25, proList[HeroProType.InitRage] or 0) -- 初始怒气
|
||||
table.insert(allProVal, 26, proList[HeroProType.AntiCritDamageFactor] or 0) -- 爆伤减免
|
||||
local pros = table.concat(allProVal, "#")
|
||||
return pros
|
||||
end
|
||||
|
|
|
@ -1333,7 +1333,7 @@ local passivityList = {
|
|||
|
||||
local OnPassiveCriting = function(crit,skill)
|
||||
BattleUtil.RandomAction(f1, function ()
|
||||
crit(role:GetRoleData(RoleDataName.CritDamageFactor)+f2)
|
||||
crit(role:GetRoleData(RoleDataName.CritDamageBonus)+f2)
|
||||
end)
|
||||
end
|
||||
role.Event:AddEvent(BattleEventName.PassiveCriting, OnPassiveCriting,nil,nil,role)
|
||||
|
|
|
@ -199,7 +199,7 @@ RoleDataName = {
|
|||
Hit = indexAdd(), --施法率(%)
|
||||
Dodge = indexAdd(), --后期基础施法率(%)
|
||||
Crit = indexAdd(), --暴击率(%)
|
||||
CritDamageFactor = indexAdd(), --暴击伤害系数(%)
|
||||
CritDamageBonus = indexAdd(), --暴击伤害系数(%)
|
||||
Tenacity = indexAdd(), --抗暴率(%)
|
||||
TreatFacter = indexAdd(), --治疗加成系数(%)
|
||||
CureFacter = indexAdd(),--受到治疗加成系数(%)
|
||||
|
@ -212,7 +212,7 @@ RoleDataName = {
|
|||
YaoReduce = indexAdd(), --妖系伤害减免
|
||||
DaoReduce = indexAdd(), --道系伤害减免
|
||||
InitRage = indexAdd(), --初始怒气值
|
||||
|
||||
CritDamageReduce = indexAdd(), --暴击伤害减免
|
||||
}
|
||||
|
||||
-- 战斗表属性id对应战斗中属性数据
|
||||
|
@ -226,7 +226,7 @@ BattlePropList = {
|
|||
RoleDataName.Hit,
|
||||
RoleDataName.Dodge,
|
||||
RoleDataName.Crit,
|
||||
RoleDataName.CritDamageFactor,
|
||||
RoleDataName.CritDamageBonus,
|
||||
RoleDataName.TreatFacter,
|
||||
RoleDataName.MaxHp,
|
||||
RoleDataName.Hp,
|
||||
|
@ -241,6 +241,7 @@ BattlePropList = {
|
|||
RoleDataName.FoReduce,
|
||||
RoleDataName.YaoReduce,
|
||||
RoleDataName.DaoReduce,
|
||||
RoleDataName.CritDamageReduce,
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -607,15 +607,6 @@ function BattleUtil.ApplyDamage(skill, atkRole, defRole, damage, bCrit, damageTy
|
|||
bCrit = bCrit or false
|
||||
damageType = damageType or 0
|
||||
|
||||
-- if atkRole.isTeam then
|
||||
-- --max(技能基础伤害*(1+已方异妖伤害加成-目标异妖伤害减免),30%×技能基础伤害)
|
||||
-- local arr = RoleManager.Query(function (r) return r.camp == atkRole.camp end)
|
||||
-- local n = 0
|
||||
-- for i=1, #arr do
|
||||
-- n = n + arr[i]:GetRoleData(RoleDataName.TeamDamageBocusFactor)
|
||||
-- end
|
||||
-- damage = floor(max(damage * (1 + n / #arr - defRole:GetRoleData(RoleDataName.TeamDamageReduceFactor)), 0.3 * damage))
|
||||
-- end
|
||||
-- 计算护盾减伤
|
||||
|
||||
damage = BattleUtil.CalShield(atkRole, defRole, damage,skill)
|
||||
|
@ -972,7 +963,7 @@ function BattleUtil.CalDamage(skill, atkRole, defRole, damageType, baseFactor, i
|
|||
critDamageReduceFactor = max(BattleUtil.CountChangeList(critDamageReduceFactor, cl), 0)
|
||||
|
||||
-- 计算额外暴击伤害
|
||||
critDamageFactor = 1.3 + atkRole:GetRoleData(RoleDataName.CritDamageFactor) - critDamageReduceFactor
|
||||
critDamageFactor = 1.3 + atkRole:GetRoleData(RoleDataName.CritDamageBonus) - defRole:GetRoleData(RoleDataName.CritDamageReduce) - critDamageReduceFactor
|
||||
--加入被动效果 触发暴击被动
|
||||
local critFunc = function(critEx) critDamageFactor = critEx end
|
||||
atkRole.Event:DispatchEvent(BattleEventName.PassiveCriting, critFunc,skill)
|
||||
|
@ -1019,7 +1010,7 @@ function BattleUtil.CalTreat(castRole, targetRole, value, baseFactor,skill)
|
|||
--计算暴击
|
||||
if bCrit then
|
||||
--伤害有个+1.3 不知道干什么用的就给去了 by:wangxhenxing 2020/10/10 18:46
|
||||
critDamageFactor = 1.3 + castRole:GetRoleData(RoleDataName.CritDamageFactor)
|
||||
critDamageFactor = 1.3 + castRole:GetRoleData(RoleDataName.CritDamageBonus)
|
||||
end
|
||||
-- 基础伤害增加系数
|
||||
local addDamageFactor = 1 + castRole:GetRoleData(RoleDataName.DamageBocusFactor)
|
||||
|
|
|
@ -2192,7 +2192,7 @@ function this.CalculateWarAllProVal(heroDid)
|
|||
--暴击伤害系数(%)
|
||||
table.insert(allProVal, 13, allEquipAddProVal[HeroProType.CritDamageFactor])
|
||||
--抗暴率(%)
|
||||
table.insert(allProVal, 14, allEquipAddProVal[HeroProType.AntiCritDamageFactor])
|
||||
table.insert(allProVal, 14, allEquipAddProVal[HeroProType.AntiCritFactor])
|
||||
--治疗加成系数(%)
|
||||
table.insert(allProVal, 15, allEquipAddProVal[HeroProType.TreatFacter])
|
||||
--受到治疗系数(%)
|
||||
|
@ -2214,7 +2214,10 @@ function this.CalculateWarAllProVal(heroDid)
|
|||
-- 道系伤害减免
|
||||
table.insert(allProVal, 24, allEquipAddProVal[HeroProType.DaoReduce])
|
||||
-- 怒气
|
||||
table.insert(allProVal, 25, 0)
|
||||
table.insert(allProVal, 25, allEquipAddProVal[HeroProType.InitRage])
|
||||
-- 爆伤减免
|
||||
table.insert(allProVal, 26, allEquipAddProVal[HeroProType.AntiCritDamageFactor])
|
||||
|
||||
return allProVal
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue