2021-01-22 16:53:50 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
local heroConfig = ConfigManager.GetConfig(ConfigName.HeroConfig)
|
|
|
|
|
local propertyConfig = ConfigManager.GetConfig(ConfigName.PropertyConfig)
|
|
|
|
|
local equipConfig = ConfigManager.GetConfig(ConfigName.EquipConfig)
|
|
|
|
|
local equipsuite = ConfigManager.GetConfig(ConfigName.EquipSuiteConfig)
|
|
|
|
|
local jewelConfig = ConfigManager.GetConfig(ConfigName.JewelConfig)
|
|
|
|
|
local jewelRankupConfig = ConfigManager.GetConfig(ConfigName.JewelRankupConfig)
|
|
|
|
|
local jewelResonanceConfig = ConfigManager.GetConfig(ConfigName.JewelResonanceConfig)
|
|
|
|
|
local passiveSkillLogicConfig = ConfigManager.GetConfig(ConfigName.PassiveSkillLogicConfig)
|
2021-11-22 14:10:54 +08:00
|
|
|
|
local XiuXianSkillConfig = ConfigManager.GetConfig(ConfigName.XiuXianSkillConfig)
|
2021-01-22 16:53:50 +08:00
|
|
|
|
Hero_Prop_Type = {
|
2021-09-16 13:35:33 +08:00
|
|
|
|
Base = 0, -- 基础属性,自身成长
|
|
|
|
|
Equip = 1, -- 装备
|
|
|
|
|
EquipTreasure = 2, -- 宝物
|
|
|
|
|
PassiveSkill = 4, -- 被动,天赋
|
|
|
|
|
Talisman = 5, -- 法宝
|
|
|
|
|
SoulPrint = 6, -- 魂印
|
|
|
|
|
SkinAdd = 7, -- 皮肤
|
2021-09-26 09:54:58 +08:00
|
|
|
|
LikeAbility = 8, -- 好感度
|
2021-10-18 10:36:32 +08:00
|
|
|
|
GodSoul = 9, -- 神魂
|
2021-11-16 15:24:17 +08:00
|
|
|
|
TailsManSou = 10, -- 法宝之魂
|
2022-04-22 18:23:01 +08:00
|
|
|
|
GodPrint = 11, --神印
|
2023-02-17 19:43:00 +08:00
|
|
|
|
FaXiang= 12, --法相
|
2023-09-15 14:11:14 +08:00
|
|
|
|
Gift = 13, --礼物
|
2021-01-22 16:53:50 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
local BattlePropToConfig = {}
|
|
|
|
|
local TargetPropToConfig = {}
|
|
|
|
|
-- 将战斗中的被动属性转为ui用的属性
|
|
|
|
|
local function BattlePropToUIProp(id, v, ct)
|
|
|
|
|
if not BattlePropToConfig[id] then
|
|
|
|
|
BattlePropToConfig[id] = ConfigManager.GetConfigDataByKey(ConfigName.PropertyConfig, "PropertyIdInBattle", id)
|
|
|
|
|
end
|
|
|
|
|
local config = BattlePropToConfig[id]
|
|
|
|
|
if not config then
|
|
|
|
|
return id, v
|
|
|
|
|
end
|
|
|
|
|
local propId = config.PropertyId
|
|
|
|
|
local style = config.Style
|
|
|
|
|
local value = style == 1 and v or v * 10000
|
|
|
|
|
if ct == 1 then
|
|
|
|
|
return propId, value
|
|
|
|
|
elseif ct == 2 then
|
|
|
|
|
-- 对固定值的百分比加成转换成 对应的属性
|
|
|
|
|
if style == 1 then
|
|
|
|
|
if not TargetPropToConfig[propId] then
|
|
|
|
|
TargetPropToConfig[propId] = ConfigManager.TryGetConfigDataByKey(ConfigName.PropertyConfig, "TargetPropertyId", propId)
|
|
|
|
|
end
|
|
|
|
|
if TargetPropToConfig[propId] then
|
|
|
|
|
local propId2 = TargetPropToConfig[propId].PropertyId
|
|
|
|
|
local value = TargetPropToConfig[propId].Style == 1 and v or v * 10000
|
|
|
|
|
if propId2 then
|
|
|
|
|
return propId2, value
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
return propId, value
|
|
|
|
|
elseif ct == 3 then
|
|
|
|
|
return propId, -value
|
|
|
|
|
elseif ct == 4 then
|
|
|
|
|
return propId, value
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- 被动技能转换为属性列表
|
|
|
|
|
local function PassiveListToPropList(skillids)
|
|
|
|
|
local propList = {} -- 自身属性
|
|
|
|
|
local conPropList = {} -- 条件属性
|
|
|
|
|
local teamPropList = {} -- 团队属性
|
|
|
|
|
local conTeamPropList = {} -- 团队条件属性
|
|
|
|
|
local dePropList = {} -- 百分比减益属性(特殊计算)
|
|
|
|
|
for i = 1, #skillids do
|
|
|
|
|
local skillid = skillids[i]
|
|
|
|
|
if passiveSkillLogicConfig[skillid] then
|
|
|
|
|
local curSkillData = passiveSkillLogicConfig[skillid]
|
|
|
|
|
if curSkillData.EffectiveRange > 1 then
|
|
|
|
|
local args = curSkillData.Value
|
|
|
|
|
-- 计算
|
2021-12-30 16:22:44 +08:00
|
|
|
|
local pId, v, ct,ele
|
2021-01-22 16:53:50 +08:00
|
|
|
|
if curSkillData.Type == 90 then -- [a]增加[b],[c]改变 || a[属性]b[float]c[改变类型]
|
|
|
|
|
pId, v, ct = args[1], args[2], args[3]
|
|
|
|
|
elseif curSkillData.Type == 94 then -- 全体上阵武将增加[a]%[b],[c]改变 || a[float]b[属性]c[改变类型]
|
|
|
|
|
pId, v, ct = args[2], args[1], args[3]
|
|
|
|
|
elseif curSkillData.Type == 171 then -- 武将100级后每升一级[a]额外增加[b],[c]改变(战斗外实现) || a[属性]b[float]c[改变类型]
|
|
|
|
|
pId, v, ct = args[1], args[2], args[3]
|
|
|
|
|
elseif curSkillData.Type == 129 then -- 全体上阵[a]元素角色增加[b]%[c],[d]改变 || a[元素]b[float]c[属性]d[改变类型]
|
|
|
|
|
pId, v, ct = args[3], args[2], args[4]
|
2021-12-30 16:22:44 +08:00
|
|
|
|
elseif curSkillData.Type ==413 then
|
|
|
|
|
pId, v, ct,ele = args[3],args[2],args[4],args[1] --a[int],b[float],c[属性],d[int]
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
-- 获取UI属性
|
|
|
|
|
LogRed_Prop(string.format("args = %s|%s|%s", pId, v, ct))
|
|
|
|
|
local propId, value = BattlePropToUIProp(pId, v, ct)
|
|
|
|
|
LogRed_Prop(string.format("prop = %s|%s", propId, value))
|
|
|
|
|
|
|
|
|
|
if curSkillData.EffectiveRange == 2 then --战前个人
|
|
|
|
|
if ct == 4 then -- 减益效果
|
|
|
|
|
table.insert(dePropList, {propId = propId ,value = value})
|
|
|
|
|
elseif curSkillData.Type == 171 then -- 100级才开始加成(个人条件属性)
|
|
|
|
|
local propList = {}
|
|
|
|
|
propList[propId] = value
|
|
|
|
|
table.insert(conPropList, {type = Condition_Prop_Type.LV_100, propList = propList, args = args})
|
|
|
|
|
else
|
|
|
|
|
if not propList[propId] then
|
|
|
|
|
propList[propId] = 0
|
|
|
|
|
end
|
|
|
|
|
propList[propId] = propList[propId] + value
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
-- 条件
|
|
|
|
|
if curSkillData.Type == 129 then -- (团队条件属性)
|
|
|
|
|
local propList = {}
|
|
|
|
|
propList[propId] = value
|
|
|
|
|
table.insert(conTeamPropList, {type = Condition_Prop_Type.ELE_TEAM_ADD, propList = propList, args = args})
|
2021-12-30 16:22:44 +08:00
|
|
|
|
elseif curSkillData.Type == 413 then
|
|
|
|
|
local propList = {}
|
|
|
|
|
propList[propId] = value
|
|
|
|
|
table.insert(conTeamPropList, {type = Condition_Prop_Type.TEAM_ELE_NUM, propList = propList, args = args})
|
2021-01-22 16:53:50 +08:00
|
|
|
|
else
|
|
|
|
|
if not teamPropList[propId] then
|
|
|
|
|
teamPropList[propId] = 0
|
|
|
|
|
end
|
|
|
|
|
teamPropList[propId] = teamPropList[propId] + value
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
return propList, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Hero_Prop_Func = {
|
|
|
|
|
|
|
|
|
|
-- 基础属性计算
|
|
|
|
|
[Hero_Prop_Type.Base] = function(_heroData)
|
|
|
|
|
local allAddProVal = {}
|
|
|
|
|
local tData = heroConfig[_heroData.tId]
|
|
|
|
|
local curLvNum = _heroData.lv
|
|
|
|
|
local breakId = _heroData.breakId
|
|
|
|
|
local upStarId = _heroData.upStarId
|
|
|
|
|
allAddProVal[HeroProType.Attack] = HeroManager.CalculateProVal( tData.Attack, curLvNum,breakId, upStarId, HeroProType.Attack)
|
|
|
|
|
allAddProVal[HeroProType.Hp] = HeroManager.CalculateProVal(tData.Hp, curLvNum, breakId, upStarId, HeroProType.Hp)
|
|
|
|
|
allAddProVal[HeroProType.PhysicalDefence] = HeroManager.CalculateProVal(tData.PhysicalDefence, curLvNum, breakId, upStarId, HeroProType.PhysicalDefence)
|
|
|
|
|
allAddProVal[HeroProType.MagicDefence] = HeroManager.CalculateProVal(tData.MagicDefence, curLvNum, breakId, upStarId, HeroProType.MagicDefence)
|
|
|
|
|
|
|
|
|
|
local subProp = tData.SecondaryFactor
|
|
|
|
|
if subProp then
|
|
|
|
|
for i = 1, #subProp do
|
|
|
|
|
local propType = subProp[i][1]
|
|
|
|
|
local propValue = subProp[i][2]
|
|
|
|
|
if not allAddProVal[propType] then
|
|
|
|
|
allAddProVal[propType] = 0
|
|
|
|
|
end
|
|
|
|
|
allAddProVal[propType] = allAddProVal[propType] + propValue
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
return allAddProVal
|
|
|
|
|
end,
|
|
|
|
|
|
|
|
|
|
-- 普通装备
|
|
|
|
|
[Hero_Prop_Type.Equip] = function(_heroData)
|
2021-01-25 21:02:35 +08:00
|
|
|
|
local equipIdList = {}
|
2021-01-22 16:53:50 +08:00
|
|
|
|
local addAllProVal = {}
|
|
|
|
|
for i, v in ConfigPairs(propertyConfig) do
|
|
|
|
|
addAllProVal[i] = 0
|
|
|
|
|
end
|
2021-01-25 21:02:35 +08:00
|
|
|
|
local curHeroData = _heroData
|
|
|
|
|
if curHeroData then
|
2023-10-16 15:12:47 +08:00
|
|
|
|
--LogError("hero id===========================================".._heroData.tId)
|
2021-01-25 21:02:35 +08:00
|
|
|
|
for i = 1, #curHeroData.equipList do
|
|
|
|
|
table.insert(equipIdList,curHeroData.equipList[i].id)
|
|
|
|
|
end
|
|
|
|
|
local equipSuit = HeroManager.GetCurHeroEquipSuitPros(equipIdList)
|
|
|
|
|
--[id] = 件数
|
|
|
|
|
for i = 1, #equipIdList do
|
|
|
|
|
local curEquip = _heroData.equipList[i]
|
2023-10-16 15:12:47 +08:00
|
|
|
|
local potencyAdd=HeroManager.GetHeroPotencyAddByType(curHeroData.dId,curEquip.position)
|
2023-10-17 10:53:58 +08:00
|
|
|
|
--LogError("装备 potencyAdd==================="..potencyAdd)
|
2021-01-25 21:02:35 +08:00
|
|
|
|
if curEquip then
|
|
|
|
|
for index, prop in ipairs(curEquip.mainAttribute) do
|
|
|
|
|
local id = prop.propertyId
|
|
|
|
|
local value = prop.propertyValue
|
2023-10-17 10:53:58 +08:00
|
|
|
|
--LogError("equip id============================ id=="..id.." value=="..value)
|
2023-09-15 14:11:14 +08:00
|
|
|
|
if id~=0 and id~=nil then
|
|
|
|
|
if addAllProVal[id] then
|
|
|
|
|
addAllProVal[id] = addAllProVal[id] + value
|
|
|
|
|
else
|
|
|
|
|
addAllProVal[id] = value
|
|
|
|
|
end
|
|
|
|
|
if propertyConfig[id].Style == 1 then--摘星阁加持
|
2023-10-16 15:12:47 +08:00
|
|
|
|
--摘星阁加成先注释
|
|
|
|
|
--addAllProVal[id] = addAllProVal[id] + math.ceil(addAllProVal[id] * HomeLandManager.GetHeroEquipPropAdd(_heroData.dId,curEquip.position)/10000)
|
|
|
|
|
--英雄潜能加成
|
2023-10-17 10:53:58 +08:00
|
|
|
|
--LogError("addAllProVal[id]================================"..addAllProVal[id].." curEquip.potencyAdd=="..potencyAdd)
|
2023-10-16 15:12:47 +08:00
|
|
|
|
addAllProVal[id] = math.floor(addAllProVal[id]*(1+potencyAdd)+0.5) --+ math.ceil(addAllProVal[id] * HomeLandManager.GetHeroEquipPropAdd(_heroData.dId,curEquip.position)/10000)
|
2023-10-17 10:53:58 +08:00
|
|
|
|
--LogError("addAllProVal[id]后 ================================"..addAllProVal[id])
|
2023-09-15 14:11:14 +08:00
|
|
|
|
end
|
2021-12-31 13:44:11 +08:00
|
|
|
|
end
|
2023-09-15 14:11:14 +08:00
|
|
|
|
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
2023-10-17 10:53:58 +08:00
|
|
|
|
--屏蔽装备套装属性
|
|
|
|
|
-- if equipSuit and #equipSuit > 0 then
|
|
|
|
|
-- for i, v in ipairs(equipSuit) do
|
|
|
|
|
-- local curSuitConfig = equipsuite[i]
|
|
|
|
|
-- local curProId = equipSuit[i][2][2]
|
|
|
|
|
-- local curProVal = equipSuit[i][2][3]
|
|
|
|
|
-- if addAllProVal[curProId] then
|
|
|
|
|
-- addAllProVal[curProId] = addAllProVal[curProId] + curProVal
|
|
|
|
|
-- else
|
|
|
|
|
-- addAllProVal[curProId] = curProVal
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
|
|
|
|
return addAllProVal
|
|
|
|
|
end,
|
|
|
|
|
|
|
|
|
|
--英雄身上宝器属性计算
|
|
|
|
|
[Hero_Prop_Type.EquipTreasure] = function(_heroData)
|
|
|
|
|
local addAllProVal = {}
|
|
|
|
|
local minLv
|
|
|
|
|
local mainRefineLv
|
2023-10-16 15:12:47 +08:00
|
|
|
|
local hunAddList={}
|
|
|
|
|
local lingAddList={}
|
|
|
|
|
--LogError("hero id===========================================".._heroData.tId)
|
2021-01-22 16:53:50 +08:00
|
|
|
|
for i = 1, #_heroData.treasureList do
|
|
|
|
|
local curEuipTreaSureData = _heroData.treasureList[i]
|
|
|
|
|
local curEuipTreaSureConfig = jewelConfig[curEuipTreaSureData.id]
|
2023-10-16 15:12:47 +08:00
|
|
|
|
--魂宝
|
|
|
|
|
local potencyAdd=0
|
|
|
|
|
if curEuipTreaSureConfig.Location==1 then
|
|
|
|
|
potencyAdd=HeroManager.GetHeroPotencyAddByType(_heroData.dId,5)
|
|
|
|
|
elseif curEuipTreaSureConfig.Location==2 then --灵宝
|
|
|
|
|
potencyAdd=HeroManager.GetHeroPotencyAddByType(_heroData.dId,6)
|
|
|
|
|
end
|
|
|
|
|
-- LogError("混灵宝potencyAdd=============="..potencyAdd)
|
2021-01-22 16:53:50 +08:00
|
|
|
|
for _, configInfo in ConfigPairs(jewelRankupConfig) do
|
|
|
|
|
--强化的属性
|
|
|
|
|
if
|
|
|
|
|
configInfo.PoolID == curEuipTreaSureConfig.LevelupPool and configInfo.Type == 1 and
|
|
|
|
|
configInfo.Level == curEuipTreaSureData.lv
|
|
|
|
|
then
|
2023-10-16 15:12:47 +08:00
|
|
|
|
if curEuipTreaSureConfig.Location==1 then
|
|
|
|
|
for j = 1, #configInfo.Property do
|
|
|
|
|
local pro=configInfo.Property[j][1]
|
|
|
|
|
local value=0
|
|
|
|
|
if hunAddList[pro] then
|
|
|
|
|
hunAddList[pro] = hunAddList[pro] + configInfo.Property[j][2]
|
|
|
|
|
else
|
|
|
|
|
hunAddList[pro] = configInfo.Property[j][2]
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
for j = 1, #configInfo.Property do
|
|
|
|
|
local pro=configInfo.Property[j][1]
|
|
|
|
|
local value=0
|
|
|
|
|
if lingAddList[pro] then
|
|
|
|
|
lingAddList[pro] = lingAddList[pro] + configInfo.Property[j][2]
|
|
|
|
|
else
|
|
|
|
|
lingAddList[pro] = configInfo.Property[j][2]
|
|
|
|
|
end
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
2023-10-16 15:12:47 +08:00
|
|
|
|
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
|
|
|
|
--精炼的属性
|
|
|
|
|
if
|
|
|
|
|
configInfo.PoolID == curEuipTreaSureConfig.RankupPool and configInfo.Type == 2 and
|
|
|
|
|
configInfo.Level == curEuipTreaSureData.refineLv
|
|
|
|
|
then
|
2023-10-16 15:12:47 +08:00
|
|
|
|
if curEuipTreaSureConfig.Location==1 then
|
|
|
|
|
for j = 1, #configInfo.Property do
|
|
|
|
|
local pro=configInfo.Property[j][1]
|
|
|
|
|
local value=0
|
|
|
|
|
if hunAddList[pro] then
|
|
|
|
|
hunAddList[pro] = hunAddList[pro] + configInfo.Property[j][2]
|
|
|
|
|
else
|
|
|
|
|
hunAddList[pro] = configInfo.Property[j][2]
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
for j = 1, #configInfo.Property do
|
|
|
|
|
local pro=configInfo.Property[j][1]
|
|
|
|
|
local value=0
|
|
|
|
|
if lingAddList[pro] then
|
|
|
|
|
lingAddList[pro] = lingAddList[pro] + configInfo.Property[j][2]
|
|
|
|
|
else
|
|
|
|
|
lingAddList[pro] = configInfo.Property[j][2]
|
|
|
|
|
end
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
2023-10-16 15:12:47 +08:00
|
|
|
|
|
|
|
|
|
|
2021-09-17 15:08:37 +08:00
|
|
|
|
--神应属性
|
2023-08-09 17:57:35 +08:00
|
|
|
|
--屏蔽宝物树加成的属性 2023/08/09
|
|
|
|
|
-- if
|
|
|
|
|
-- configInfo.PoolID == curEuipTreaSureConfig.GodHoodPool and configInfo.Type == 3 and
|
|
|
|
|
-- configInfo.Level == curEuipTreaSureData.treeLv
|
|
|
|
|
-- then
|
|
|
|
|
-- for j = 1, SacredTreeManager.CulAttri(curEuipTreaSureData) do
|
|
|
|
|
-- if addAllProVal[configInfo.Property[j][1]] then
|
|
|
|
|
-- addAllProVal[configInfo.Property[j][1]] =
|
|
|
|
|
-- addAllProVal[configInfo.Property[j][1]] + configInfo.Property[j][2]
|
|
|
|
|
-- else
|
|
|
|
|
-- addAllProVal[configInfo.Property[j][1]] = configInfo.Property[j][2]
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
2023-10-16 15:12:47 +08:00
|
|
|
|
if potencyAdd>0 and curEuipTreaSureConfig.Location==1 then
|
|
|
|
|
for key, value in pairs(hunAddList) do
|
|
|
|
|
if propertyConfig[key].Style == 1 then--潜能加成
|
|
|
|
|
--英雄潜能加成
|
|
|
|
|
--LogError("魂宝灵宝属性强化加成 前==========================="..value.." pro==="..key)
|
|
|
|
|
hunAddList[key] = math.floor(value*(1+potencyAdd)+0.5) --+ math.ceil(addAllProVal[id] * HomeLandManager.GetHeroEquipPropAdd(_heroData.dId,curEquip.position)/10000)
|
|
|
|
|
--LogError("魂宝灵宝属性强化加成 后===========================".. hunAddList[key].." pro==="..key)
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
2023-10-16 15:12:47 +08:00
|
|
|
|
end
|
|
|
|
|
if potencyAdd>0 and curEuipTreaSureConfig.Location==2 then
|
|
|
|
|
for key, value in pairs(lingAddList) do
|
|
|
|
|
if propertyConfig[key].Style == 1 then--潜能加成
|
|
|
|
|
--英雄潜能加成
|
|
|
|
|
--LogError("魂宝灵宝属性精炼加成 前==========================="..value.." pro==="..key)
|
|
|
|
|
lingAddList[key] = math.floor(value*(1+potencyAdd)+0.5) --+ math.ceil(addAllProVal[id] * HomeLandManager.GetHeroEquipPropAdd(_heroData.dId,curEquip.position)/10000)
|
|
|
|
|
--LogError("魂宝灵宝属性精炼加成 后===========================".. lingAddList[key].." pro==="..key)
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
2023-10-16 15:12:47 +08:00
|
|
|
|
-- if #_heroData.treasureList > 1 then
|
|
|
|
|
-- --取 强化 精炼 最小值
|
|
|
|
|
-- if minLv then
|
|
|
|
|
-- if curEuipTreaSureData.lv < minLv then
|
|
|
|
|
-- minLv = curEuipTreaSureData.lv
|
|
|
|
|
-- end
|
|
|
|
|
-- else
|
|
|
|
|
-- minLv = curEuipTreaSureData.lv
|
|
|
|
|
-- end
|
|
|
|
|
-- if mainRefineLv then
|
|
|
|
|
-- if curEuipTreaSureData.refineLv < mainRefineLv then
|
|
|
|
|
-- mainRefineLv = curEuipTreaSureData.refineLv
|
|
|
|
|
-- end
|
|
|
|
|
-- else
|
|
|
|
|
-- mainRefineLv = curEuipTreaSureData.refineLv
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
2023-10-16 15:12:47 +08:00
|
|
|
|
|
2021-01-22 16:53:50 +08:00
|
|
|
|
--math.min()
|
|
|
|
|
--取 强化 精炼 共鸣属性
|
2023-10-16 15:12:47 +08:00
|
|
|
|
-- if #_heroData.treasureList > 1 then
|
|
|
|
|
-- local lvjewelResonanceConfig
|
|
|
|
|
-- local refineLvjewelResonanceConfig
|
|
|
|
|
-- for _, curjewelResonanceConfig in ConfigPairs(jewelResonanceConfig) do
|
|
|
|
|
-- if lvjewelResonanceConfig then
|
|
|
|
|
-- if
|
|
|
|
|
-- curjewelResonanceConfig.Type == 1 and curjewelResonanceConfig.Level <= minLv and
|
|
|
|
|
-- curjewelResonanceConfig.Id > lvjewelResonanceConfig.Id
|
|
|
|
|
-- then
|
|
|
|
|
-- lvjewelResonanceConfig = curjewelResonanceConfig
|
|
|
|
|
-- end
|
|
|
|
|
-- else
|
|
|
|
|
-- if curjewelResonanceConfig.Type == 1 and curjewelResonanceConfig.Level <= minLv then
|
|
|
|
|
-- lvjewelResonanceConfig = curjewelResonanceConfig
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- if refineLvjewelResonanceConfig then
|
|
|
|
|
-- if
|
|
|
|
|
-- curjewelResonanceConfig.Type == 2 and curjewelResonanceConfig.Level <= mainRefineLv and
|
|
|
|
|
-- curjewelResonanceConfig.Id > refineLvjewelResonanceConfig.Id
|
|
|
|
|
-- then
|
|
|
|
|
-- refineLvjewelResonanceConfig = curjewelResonanceConfig
|
|
|
|
|
-- end
|
|
|
|
|
-- else
|
|
|
|
|
-- if curjewelResonanceConfig.Type == 2 and curjewelResonanceConfig.Level <= mainRefineLv then
|
|
|
|
|
-- refineLvjewelResonanceConfig = curjewelResonanceConfig
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- --
|
|
|
|
|
-- if lvjewelResonanceConfig then
|
|
|
|
|
-- for j = 1, #lvjewelResonanceConfig.Property do
|
|
|
|
|
-- if addAllProVal[lvjewelResonanceConfig.Property[j][1]] then
|
|
|
|
|
-- addAllProVal[lvjewelResonanceConfig.Property[j][1]] =
|
|
|
|
|
-- addAllProVal[lvjewelResonanceConfig.Property[j][1]] +
|
|
|
|
|
-- lvjewelResonanceConfig.Property[j][2]
|
|
|
|
|
-- else
|
|
|
|
|
-- addAllProVal[lvjewelResonanceConfig.Property[j][1]] = lvjewelResonanceConfig.Property[j][2]
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- if refineLvjewelResonanceConfig then
|
|
|
|
|
-- for j = 1, #refineLvjewelResonanceConfig.Property do
|
|
|
|
|
-- if addAllProVal[refineLvjewelResonanceConfig.Property[j][1]] then
|
|
|
|
|
-- addAllProVal[refineLvjewelResonanceConfig.Property[j][1]] =
|
|
|
|
|
-- addAllProVal[refineLvjewelResonanceConfig.Property[j][1]] +
|
|
|
|
|
-- refineLvjewelResonanceConfig.Property[j][2]
|
|
|
|
|
-- else
|
|
|
|
|
-- addAllProVal[refineLvjewelResonanceConfig.Property[j][1]] =
|
|
|
|
|
-- refineLvjewelResonanceConfig.Property[j][2]
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
for k, v in pairs(hunAddList) do
|
|
|
|
|
if addAllProVal[k] then
|
|
|
|
|
addAllProVal[k]=addAllProVal[k]+v
|
|
|
|
|
else
|
|
|
|
|
addAllProVal[k]=v
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
2023-10-16 15:12:47 +08:00
|
|
|
|
end
|
|
|
|
|
for k, v in pairs(lingAddList) do
|
|
|
|
|
if addAllProVal[k] then
|
|
|
|
|
addAllProVal[k]=addAllProVal[k]+v
|
|
|
|
|
else
|
|
|
|
|
addAllProVal[k]=v
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
return addAllProVal
|
|
|
|
|
end,
|
|
|
|
|
|
|
|
|
|
-- 计算所有英雄被动技能的属性值
|
|
|
|
|
[Hero_Prop_Type.PassiveSkill] = function(_heroData)
|
|
|
|
|
local allOpenPassiveSkillIds = HeroManager.GetAllPassiveSkillIds(heroConfig[_heroData.tId], _heroData.breakId, _heroData.upStarId)
|
|
|
|
|
--单体加成 --团体加成 --单体等级限制加成 --减乘
|
|
|
|
|
local propList, conPropList, teamPropList, conTeamPropList, dePropList = PassiveListToPropList(allOpenPassiveSkillIds)
|
|
|
|
|
return propList, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
end,
|
|
|
|
|
|
|
|
|
|
-- 法宝
|
|
|
|
|
[Hero_Prop_Type.Talisman] = function(_heroData)
|
|
|
|
|
local addAllProVal = {}
|
2023-10-26 17:16:10 +08:00
|
|
|
|
LogError("get 法灵添加的属性========================================")
|
|
|
|
|
addAllProVal = FaLingManager.GetEquipAddPropByDid(_heroData.baublesId)
|
|
|
|
|
-- local propList, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
-- local star = _heroData.star
|
|
|
|
|
-- local profession = heroConfig[_heroData.tId].Profession
|
|
|
|
|
-- local curTalisman = heroConfig[_heroData.tId].EquipTalismana
|
|
|
|
|
-- if curTalisman and star >= curTalisman[1] then
|
|
|
|
|
-- local talismanConFig = ConfigManager.GetConfigDataByDoubleKey(ConfigName.EquipTalismana, "TalismanaId", curTalisman[2], "Level", _heroData.talismanLv)
|
|
|
|
|
-- if talismanConFig then
|
|
|
|
|
-- --主属性
|
|
|
|
|
-- for j = 1, #talismanConFig.Property do
|
|
|
|
|
-- if addAllProVal[talismanConFig.Property[j][1]] then
|
|
|
|
|
-- addAllProVal[talismanConFig.Property[j][1]] =
|
|
|
|
|
-- addAllProVal[talismanConFig.Property[j][1]] + talismanConFig.Property[j][2]
|
|
|
|
|
-- else
|
|
|
|
|
-- addAllProVal[talismanConFig.Property[j][1]] = talismanConFig.Property[j][2]
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- --副属性
|
|
|
|
|
-- if talismanConFig.SpecialProperty and #talismanConFig.SpecialProperty > 0 then
|
|
|
|
|
-- for k = 1, #talismanConFig.SpecialProperty do
|
|
|
|
|
-- if talismanConFig.SpecialProperty[k][1] == profession then
|
|
|
|
|
-- if addAllProVal[talismanConFig.SpecialProperty[k][2]] then
|
|
|
|
|
-- addAllProVal[talismanConFig.SpecialProperty[k][2]] =
|
|
|
|
|
-- addAllProVal[talismanConFig.SpecialProperty[k][2]] +
|
|
|
|
|
-- talismanConFig.SpecialProperty[k][3]
|
|
|
|
|
-- else
|
|
|
|
|
-- addAllProVal[talismanConFig.SpecialProperty[k][2]] =
|
|
|
|
|
-- talismanConFig.SpecialProperty[k][3]
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- --当前法宝全部天赋数据(天赋可能为空)
|
|
|
|
|
-- local dowerAllData =
|
|
|
|
|
-- ConfigManager.GetAllConfigsDataByKey(ConfigName.EquipTalismana, "TalismanaId", curTalisman[2])
|
|
|
|
|
-- local skillIds = {}
|
|
|
|
|
-- --LogError("当前法宝全部天赋数据 "..curTalisman[2].." "..#dowerAllData.." "..curHeroData.talismanList)
|
|
|
|
|
-- for i = 1, #dowerAllData do
|
|
|
|
|
-- if dowerAllData[i].OpenSkillRules and _heroData.talismanLv >= dowerAllData[i].Level then
|
|
|
|
|
-- for k = 1, #dowerAllData[i].OpenSkillRules do
|
|
|
|
|
-- --LogError("dowerAllData[i].OpenSkillRules[k]================="..dowerAllData[i].OpenSkillRules[k].." dowerAllData[i].id=="..dowerAllData[i].Id)
|
|
|
|
|
-- table.insert(skillIds, dowerAllData[i].OpenSkillRules[k])
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- --被动技能计算
|
|
|
|
|
-- if skillIds and #skillIds > 0 then --talismanConFig.OpenSkillRules and #talismanConFig.OpenSkillRules > 0 then
|
|
|
|
|
-- --单体加成 --单体等级限制加成 --团体加成 --减乘
|
|
|
|
|
-- propList, conPropList, teamPropList, conTeamPropList, dePropList = PassiveListToPropList(skillIds)
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- if propList and LengthOfTable(propList) > 0 then
|
|
|
|
|
-- for i, v in pairs(propList) do
|
|
|
|
|
-- if addAllProVal[i] then
|
|
|
|
|
-- addAllProVal[i] = addAllProVal[i] + v
|
|
|
|
|
-- else
|
|
|
|
|
-- addAllProVal[i] = v
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
|
|
|
|
-- end
|
2023-10-17 15:47:10 +08:00
|
|
|
|
-- for k, v in pairs(addAllProVal) do
|
|
|
|
|
-- LogError("法宝 k==================="..k.." v==="..v)
|
|
|
|
|
-- end
|
2023-10-26 17:16:10 +08:00
|
|
|
|
return addAllProVal--, conPropList, teamPropList, conTeamPropList, dePropList
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end,
|
|
|
|
|
|
|
|
|
|
-- 魂印
|
|
|
|
|
[Hero_Prop_Type.SoulPrint] = function(_heroData)
|
|
|
|
|
local allSoulPrintAddWarPowerVal = 0
|
|
|
|
|
if (table.nums(_heroData.soulPrintList) >= 1) then
|
|
|
|
|
for i = 1, #_heroData.soulPrintList do
|
|
|
|
|
local cursoulPrintConfig = equipConfig[_heroData.soulPrintList[i].equipId]
|
|
|
|
|
if cursoulPrintConfig then
|
|
|
|
|
allSoulPrintAddWarPowerVal = allSoulPrintAddWarPowerVal + cursoulPrintConfig.Score
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
2021-01-25 18:14:33 +08:00
|
|
|
|
-- local allAddProVal = {}
|
|
|
|
|
-- allAddProVal[HeroProType.WarPower] = allSoulPrintAddWarPowerVal
|
|
|
|
|
-- return allAddProVal
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
local addAllProVal = {}
|
|
|
|
|
local propList, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
local allPassiveSkill = {}
|
|
|
|
|
local curHeroData =_heroData
|
|
|
|
|
if curHeroData then
|
|
|
|
|
if(table.nums(curHeroData.soulPrintList) >= 1) then
|
|
|
|
|
for i = 1, #curHeroData.soulPrintList do
|
|
|
|
|
local cursoulPrintConfig = equipConfig[curHeroData.soulPrintList[i].equipId]
|
|
|
|
|
if cursoulPrintConfig then
|
|
|
|
|
--基础属性计算
|
|
|
|
|
local soulPrintPropertyList = cursoulPrintConfig.Property
|
|
|
|
|
if soulPrintPropertyList and #soulPrintPropertyList > 0 then
|
|
|
|
|
for i,v in pairs(soulPrintPropertyList) do
|
|
|
|
|
if(addAllProVal[v[1]]) then
|
|
|
|
|
addAllProVal[v[1]]=v[2]+addAllProVal[v[1]]
|
|
|
|
|
else
|
|
|
|
|
addAllProVal[v[1]]=v[2]
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
--被动技能计算
|
|
|
|
|
if cursoulPrintConfig.PassiveSkill and #cursoulPrintConfig.PassiveSkill > 0 then
|
|
|
|
|
for j = 1, #cursoulPrintConfig.PassiveSkill do
|
|
|
|
|
table.insert(allPassiveSkill,cursoulPrintConfig.PassiveSkill[j])
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
--被动技能计算
|
|
|
|
|
if allPassiveSkill and #allPassiveSkill > 0 then --talismanConFig.OpenSkillRules and #talismanConFig.OpenSkillRules > 0 then
|
|
|
|
|
--单体加成 --单体等级限制加成 --团体加成 --减乘
|
|
|
|
|
propList, conPropList, teamPropList, conTeamPropList, dePropList = PassiveListToPropList(allPassiveSkill)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if propList and LengthOfTable(propList) > 0 then
|
|
|
|
|
for i,v in pairs(propList) do
|
|
|
|
|
if addAllProVal[i] then
|
|
|
|
|
addAllProVal[i] = addAllProVal[i] + v
|
|
|
|
|
else
|
|
|
|
|
addAllProVal[i] = v
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
2023-08-09 17:57:35 +08:00
|
|
|
|
|
2021-01-25 18:14:33 +08:00
|
|
|
|
addAllProVal[HeroProType.WarPower] = allSoulPrintAddWarPowerVal
|
|
|
|
|
return addAllProVal, conPropList, teamPropList, conTeamPropList, dePropList
|
2021-01-22 16:53:50 +08:00
|
|
|
|
end,
|
2022-04-22 18:23:01 +08:00
|
|
|
|
-- 神印
|
|
|
|
|
[Hero_Prop_Type.GodPrint] = function(_heroData)
|
|
|
|
|
local allSoulPrintAddWarPowerVal = 0
|
|
|
|
|
if (_heroData.godPrintList and table.nums(_heroData.godPrintList) >= 1) then
|
|
|
|
|
for i = 1, #_heroData.godPrintList do
|
|
|
|
|
local cursoulPrintConfig = equipConfig[_heroData.godPrintList[i].equipId]
|
|
|
|
|
if cursoulPrintConfig then
|
|
|
|
|
allSoulPrintAddWarPowerVal = allSoulPrintAddWarPowerVal + cursoulPrintConfig.Score
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
local addAllProVal = {}
|
|
|
|
|
local propList, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
local allPassiveSkill = {}
|
|
|
|
|
local curHeroData =_heroData
|
|
|
|
|
if curHeroData then
|
|
|
|
|
if(_heroData.godPrintList and table.nums(curHeroData.godPrintList) >= 1) then
|
|
|
|
|
for i = 1, #curHeroData.godPrintList do
|
|
|
|
|
local cursoulPrintConfig = equipConfig[curHeroData.godPrintList[i].equipId]
|
|
|
|
|
if cursoulPrintConfig then
|
|
|
|
|
--基础属性计算
|
|
|
|
|
local soulPrintPropertyList = cursoulPrintConfig.Property
|
|
|
|
|
if soulPrintPropertyList and #soulPrintPropertyList > 0 then
|
|
|
|
|
for i,v in pairs(soulPrintPropertyList) do
|
|
|
|
|
if(addAllProVal[v[1]]) then
|
|
|
|
|
addAllProVal[v[1]]=v[2]+addAllProVal[v[1]]
|
|
|
|
|
else
|
|
|
|
|
addAllProVal[v[1]]=v[2]
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
--被动技能计算
|
|
|
|
|
if cursoulPrintConfig.PassiveSkill and #cursoulPrintConfig.PassiveSkill > 0 then
|
|
|
|
|
for j = 1, #cursoulPrintConfig.PassiveSkill do
|
|
|
|
|
table.insert(allPassiveSkill,cursoulPrintConfig.PassiveSkill[j])
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
--被动技能计算
|
|
|
|
|
if allPassiveSkill and #allPassiveSkill > 0 then --talismanConFig.OpenSkillRules and #talismanConFig.OpenSkillRules > 0 then
|
|
|
|
|
--单体加成 --单体等级限制加成 --团体加成 --减乘
|
|
|
|
|
propList, conPropList, teamPropList, conTeamPropList, dePropList = PassiveListToPropList(allPassiveSkill)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if propList and LengthOfTable(propList) > 0 then
|
|
|
|
|
for i,v in pairs(propList) do
|
|
|
|
|
if addAllProVal[i] then
|
|
|
|
|
addAllProVal[i] = addAllProVal[i] + v
|
|
|
|
|
else
|
|
|
|
|
addAllProVal[i] = v
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
addAllProVal[HeroProType.WarPower] = allSoulPrintAddWarPowerVal
|
|
|
|
|
--LogError("神印 addAllProVal=="..addAllProVal)
|
|
|
|
|
-- PrintTable(addAllProVal)
|
|
|
|
|
return addAllProVal, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
end,
|
2021-01-26 13:44:11 +08:00
|
|
|
|
-- 皮肤
|
|
|
|
|
[Hero_Prop_Type.SkinAdd] = function(_heroData)
|
|
|
|
|
local propList, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
|
|
|
|
|
local heroSkinSingleProVal = {}
|
|
|
|
|
local heroSkinAllHeroProVal = {}
|
|
|
|
|
if _heroData.skinId ~= 0 then
|
|
|
|
|
if HeroSkinManager.skinDatas[_heroData.skinId] and HeroSkinManager.skinDatas[_heroData.skinId].MonomerProperty and #HeroSkinManager.skinDatas[_heroData.skinId].MonomerProperty > 0 then
|
|
|
|
|
for _,v in ipairs(HeroSkinManager.skinDatas[_heroData.skinId].MonomerProperty) do
|
|
|
|
|
if not heroSkinSingleProVal[v[1]] then
|
|
|
|
|
heroSkinSingleProVal[v[1]] = 0
|
|
|
|
|
end
|
|
|
|
|
heroSkinSingleProVal[v[1]] = heroSkinSingleProVal[v[1]] + v[2]
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
for _,v in pairs(HeroSkinManager.skinDatas) do
|
|
|
|
|
if _heroData.skinId ~= v.id then
|
|
|
|
|
if HeroSkinManager.skinDatas[v.id] and HeroSkinManager.skinDatas[v.id].UnlockProperty and #HeroSkinManager.skinDatas[v.id].UnlockProperty > 0 then
|
|
|
|
|
for _,n in ipairs(HeroSkinManager.skinDatas[v.id].UnlockProperty) do
|
|
|
|
|
if not heroSkinAllHeroProVal[n[1]] then
|
|
|
|
|
heroSkinAllHeroProVal[n[1]] = 0
|
|
|
|
|
end
|
|
|
|
|
heroSkinAllHeroProVal[n[1]] = heroSkinAllHeroProVal[n[1]] + n[2]
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
2021-01-22 16:53:50 +08:00
|
|
|
|
|
2021-01-26 13:44:11 +08:00
|
|
|
|
propList = heroSkinSingleProVal
|
|
|
|
|
teamPropList = heroSkinAllHeroProVal
|
|
|
|
|
return propList, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
end,
|
2021-09-26 09:54:58 +08:00
|
|
|
|
-- 好感度
|
|
|
|
|
[Hero_Prop_Type.LikeAbility] = function(_heroData)
|
|
|
|
|
local SingleProVal, AllHeroProVal = LikabilityManager.GetTotalForce(_heroData)
|
|
|
|
|
return SingleProVal
|
|
|
|
|
end,
|
2023-09-15 14:11:14 +08:00
|
|
|
|
--礼物
|
|
|
|
|
[Hero_Prop_Type.Gift] =function(_heroData)
|
|
|
|
|
local addPro=GiftManager.GetHeroGiftAddPro(_heroData.dId)
|
2023-11-15 17:19:43 +08:00
|
|
|
|
for key, value in pairs(addPro) do
|
|
|
|
|
LogError("gift key==="..key.." value=="..value)
|
|
|
|
|
end
|
2023-09-15 14:11:14 +08:00
|
|
|
|
return addPro
|
|
|
|
|
end,
|
2021-10-26 16:00:31 +08:00
|
|
|
|
[Hero_Prop_Type.GodSoul] = function(_heroData)
|
|
|
|
|
local propList, conPropList, teamPropList, conTeamPropList, dePropList
|
2021-10-27 18:53:36 +08:00
|
|
|
|
local SingleProVal = GodSoulManager.GetHeroGodSoulDatas(_heroData.dId,_heroData.tId, _heroData.godSoulLv)
|
2021-10-26 16:00:31 +08:00
|
|
|
|
if SingleProVal and #SingleProVal > 0 then --talismanConFig.OpenSkillRules and #talismanConFig.OpenSkillRules > 0 then
|
|
|
|
|
--单体加成 --单体等级限制加成 --团体加成 --减乘
|
|
|
|
|
propList, conPropList, teamPropList, conTeamPropList, dePropList = PassiveListToPropList(SingleProVal)
|
|
|
|
|
end
|
|
|
|
|
return propList, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
end,
|
2021-11-16 15:24:17 +08:00
|
|
|
|
|
|
|
|
|
[Hero_Prop_Type.TailsManSou] = function(_heroData)
|
2022-03-28 18:18:19 +08:00
|
|
|
|
--属性相关修改
|
2021-11-16 15:24:17 +08:00
|
|
|
|
local propList, conPropList, teamPropList, conTeamPropList, dePropList
|
2021-11-22 15:02:42 +08:00
|
|
|
|
local SingleProVal = TailsManSoulManager.GetTailsmanPassivePower1(_heroData)
|
|
|
|
|
if SingleProVal and #SingleProVal > 0 then
|
2021-11-16 15:24:17 +08:00
|
|
|
|
propList, conPropList, teamPropList, conTeamPropList, dePropList = PassiveListToPropList(SingleProVal)
|
|
|
|
|
end
|
|
|
|
|
return propList, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
end,
|
2023-02-20 14:46:37 +08:00
|
|
|
|
[Hero_Prop_Type.FaXiang] = function(_heroData)
|
|
|
|
|
local allAddPro={}
|
|
|
|
|
local propList, conPropList, teamPropList, conTeamPropList, dePropList
|
2023-02-20 21:07:24 +08:00
|
|
|
|
--LogError("计算英雄法相 属性 被动属性")
|
2023-10-16 15:12:47 +08:00
|
|
|
|
--LogError("hero id===========================================".._heroData.tId)
|
2023-02-20 14:46:37 +08:00
|
|
|
|
allAddPro=FaXiangManager.CalculateAllFaXiangAddPro(_heroData)
|
|
|
|
|
local skills=FaXiangManager.GetHeroAllFaXiangSkill(_heroData)
|
|
|
|
|
--被动技能计算
|
|
|
|
|
if skills and #skills > 0 then --talismanConFig.OpenSkillRules and #talismanConFig.OpenSkillRules > 0 then
|
|
|
|
|
--单体加成 --单体等级限制加成 --团体加成 --减乘
|
|
|
|
|
propList, conPropList, teamPropList, conTeamPropList, dePropList = PassiveListToPropList(skills)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if propList and LengthOfTable(propList) > 0 then
|
|
|
|
|
for i,v in pairs(propList) do
|
|
|
|
|
if allAddPro[i] then
|
|
|
|
|
allAddPro[i] = allAddPro[i] + v
|
|
|
|
|
else
|
|
|
|
|
allAddPro[i] = v
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
return allAddPro, conPropList, teamPropList, conTeamPropList, dePropList
|
|
|
|
|
end,
|
2021-01-22 16:53:50 +08:00
|
|
|
|
}
|