diff --git a/src/adv/AdvBattle.lua b/src/adv/AdvBattle.lua index fa84674..583ae31 100644 --- a/src/adv/AdvBattle.lua +++ b/src/adv/AdvBattle.lua @@ -61,7 +61,7 @@ function Battle:initPlayer() local baseAttr = csvdb["adv_unitCsv"][self.adv.chapterId] for _, attr in pairs(AttsEnumEx) do if baseAttr[attr] then - player[attr] = baseAttr[attr] + baseAttr[attr] * player.growth * (player.level - 1) + player[attr] = baseAttr[attr] + player.growth * (player.level - 1) end end player.hpMax = player.hp or 0 diff --git a/src/adv/AdvBuff.lua b/src/adv/AdvBuff.lua index e7b7b75..4137b40 100644 --- a/src/adv/AdvBuff.lua +++ b/src/adv/AdvBuff.lua @@ -204,7 +204,7 @@ local BuffFactory = { self._changeV = baseOwner[attrs[self.buffData.effectValue3]] * self.buffData.effectValue2 / 100 end if self._changeV < 0 then - self._changeV = -self.release:getHurtValue(-self._changeV) + self._changeV = self.release and -self.release:getHurtValue(-self._changeV) or self._changeV end end _Buff._initDB = function(self, data) diff --git a/src/adv/AdvPlayer.lua b/src/adv/AdvPlayer.lua index 3d3fa60..0e0055a 100644 --- a/src/adv/AdvPlayer.lua +++ b/src/adv/AdvPlayer.lua @@ -470,11 +470,11 @@ function Player:addExp(value) local baseAttr = csvdb["adv_unitCsv"][self.battle.adv.chapterId] for _, attr in pairs(AttsEnumEx) do if baseAttr[attr] then - self[attr] = self[attr] + baseAttr[attr] * self.growth * delta + self[attr] = self[attr] + self.growth * delta if attr == "hp" then - self.hpMax = self.hpMax + baseAttr[attr] * self.growth * delta + self.hpMax = self.hpMax + self.growth * delta else - self["_" .. attr] = self["_" .. attr] + baseAttr[attr] * self.growth * delta + self["_" .. attr] = self["_" .. attr] + self.growth * delta end end end -- libgit2 0.21.2