Commit fd4e0f4f951c4ed5b93dcfc0451164f6632dc0fa
1 parent
d8c07167
不能直接突破满
Showing
1 changed file
with
10 additions
and
3 deletions
Show diff stats
src/actions/GmAction.lua
... | ... | @@ -38,9 +38,16 @@ function _M.herol(role, pms) |
38 | 38 | if not hero or (hero:getProperty("breakL") >= #csvdb["unit_breakCsv"] and hero:getProperty("level") >= hero:getMaxLevel()) then |
39 | 39 | return "失败" |
40 | 40 | end |
41 | - local addbl = #csvdb["unit_breakCsv"] - hero:getProperty("breakL") | |
42 | - if addbl > 0 then | |
43 | - hero:updateProperty({field = "breakL", delta = addbl}) | |
41 | + local nextLevel = math.min(addLevel + hero:getProperty("level"), 200) | |
42 | + for i = 0, 10 do | |
43 | + local upLimit = csvdb["unit_breakCsv"][i].levelLimit | |
44 | + local lowLimit = csvdb["unit_breakCsv"][i - 1] and csvdb["unit_breakCsv"][i - 1].levelLimit or 0 | |
45 | + if upLimit > nextLevel and lowLimit <= nextLevel then | |
46 | + local addbl = i - hero:getProperty("breakL") | |
47 | + if addbl > 0 then | |
48 | + hero:updateProperty({field = "breakL", delta = addbl}) | |
49 | + end | |
50 | + end | |
44 | 51 | end |
45 | 52 | addLevel = math.min(hero:getMaxLevel() - hero:getProperty("level"), addLevel) |
46 | 53 | hero:updateProperty({field = "level", delta = addLevel}) | ... | ... |