diff --git a/src/csvdata b/src/csvdata index 0f883be..d1b10c5 160000 --- a/src/csvdata +++ b/src/csvdata @@ -1 +1 @@ -Subproject commit 0f883beaf731c166deb8b7169108c1014d504e64 +Subproject commit d1b10c53dcd4e448396a8fbbe10fcfb595ec79f5 diff --git a/src/models/HeroPlugin.lua b/src/models/HeroPlugin.lua index c57038e..b1e301d 100644 --- a/src/models/HeroPlugin.lua +++ b/src/models/HeroPlugin.lua @@ -94,7 +94,7 @@ function HeroPlugin.bind(Hero) local equipAttrs = self:getRuneEquipAttrs() for _, attName in pairs(AttsEnumEx) do - attrs[attName] = ((attrs[attName] or 0) + equipAttrs.value[attName]) * (1 + equipAttrs.precent[attName] / 100) + attrs[attName] = ((attrs[attName] or 0) + equipAttrs.value[attName]) * (1 + equipAttrs.percent[attName] / 100) end -- 羁绊加成 @@ -108,10 +108,10 @@ function HeroPlugin.bind(Hero) -- 当前零件和装备增加属性 function Hero:getRuneEquipAttrs() - local attrs = {value = {}, precent = {}} + local attrs = {value = {}, percent = {}} for _, attName in pairs(AttsEnumEx) do attrs.value[attName] = 0 - attrs.precent[attName] = 0 + attrs.percent[attName] = 0 end local equipSuits = {} -- 装备效果 @@ -137,13 +137,13 @@ function HeroPlugin.bind(Hero) local effects = suitCsv.effect:toTableArray(true) local count = #eDatas if count >= 2 then - attrs.precent[AttsEnumEx[effects[1][1]]] = attrs.precent[AttsEnumEx[effects[1][1]]] + effects[1][2] + attrs.percent[AttsEnumEx[effects[1][1]]] = attrs.percent[AttsEnumEx[effects[1][1]]] + effects[1][2] end if count >= 3 then - attrs.precent[AttsEnumEx[effects[2][1]]] = attrs.precent[AttsEnumEx[effects[2][1]]] + effects[1][2] + attrs.percent[AttsEnumEx[effects[2][1]]] = attrs.percent[AttsEnumEx[effects[2][1]]] + effects[1][2] end if count >= 4 then - attrs.precent[AttsEnumEx[effects[3][1]]] = attrs.precent[AttsEnumEx[effects[3][1]]] + effects[3][2] + attrs.percent[AttsEnumEx[effects[3][1]]] = attrs.percent[AttsEnumEx[effects[3][1]]] + effects[3][2] end end end @@ -168,11 +168,14 @@ function HeroPlugin.bind(Hero) if suitCsv then local effects = suitCsv.effect:toTableArray(true) local count = #runeDatas - if count >= 2 then - attrs.precent[AttsEnumEx[effects[1][1]]] = attrs.precent[AttsEnumEx[effects[1][1]]] + effects[1][2] + if count >= 2 and AttsEnumEx[effects[1][1]]then + attrs.percent[AttsEnumEx[effects[1][1]]] = attrs.percent[AttsEnumEx[effects[1][1]]] + effects[1][2] + end + if count >= 4 and AttsEnumEx[effects[2][1]] then + attrs.percent[AttsEnumEx[effects[2][1]]] = attrs.percent[AttsEnumEx[effects[2][1]]] + effects[2][2] end - if count == 6 then - attrs.precent[AttsEnumEx[effects[3][1]]] = attrs.precent[AttsEnumEx[effects[3][1]]] + effects[3][2] + if count >= 6 and AttsEnumEx[effects[3][1]] then + attrs.percent[AttsEnumEx[effects[3][1]]] = attrs.percent[AttsEnumEx[effects[3][1]]] + effects[3][2] end end end -- libgit2 0.21.2