From 9f956e883ce4fa2d7a0d679b55c2e9d99ba9d73a Mon Sep 17 00:00:00 2001 From: zhouhaihai <781184096@qq.com> Date: Wed, 12 Feb 2020 13:51:42 +0800 Subject: [PATCH] 资助对积分的影响 --- src/adv/Adv.lua | 2 +- src/models/RolePlugin.lua | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/adv/Adv.lua b/src/adv/Adv.lua index 51b8bb7..24608b0 100644 --- a/src/adv/Adv.lua +++ b/src/adv/Adv.lua @@ -1250,7 +1250,7 @@ function Adv:scoreChange(scoreType, pms) return end self.score[scoreType] = self.score[scoreType] or 0 - self.score[scoreType] = self.score[scoreType] + score + self.score[scoreType] = self.score[scoreType] + self.owner:fixAdvScoreChange(score) end function Adv:getScore() diff --git a/src/models/RolePlugin.lua b/src/models/RolePlugin.lua index 2cfb883..44b8089 100644 --- a/src/models/RolePlugin.lua +++ b/src/models/RolePlugin.lua @@ -890,6 +890,20 @@ function RolePlugin.bind(Role) return level end + function Role:fixAdvScoreChange(score) + local change = 0 + for i = 0, self:getProperty("advL")[1] do + local effects = csvdb["adv_level_fundCsv"][i].effect:toArray() + for _, one in ipairs(effects) do + local effect = one:toArray(true, "=") + if effect[1] == 3 then + change = change + effect[2] + end + end + end + return score * (1 + change / 100) + end + function Role:getAdvLvAddAttrs() -- 1=冒险队属性;1=点数/百分比=属性枚举=参数;属性枚举(1=生命上限/2=魔法上限/3=攻击/4=防御);点数/百分比(0=点数/1=百分比) local attrs = {} -- libgit2 0.21.2