Difference between revisions of "Module:AttackSpell"
CommanderC (talk | contribs) |
CommanderC (talk | contribs) |
||
Line 22: | Line 22: | ||
function p.calc_damage(frame) | function p.calc_damage(frame) | ||
− | + | local hit_adder = p.to_number(frame.args[1]) | |
+ | local hit_num = p.to_number(frame.args[2]) | ||
+ | local hit_denom = p.to_number(frame.args[3]) | ||
+ | local power = p.to_number(frame.args[4]) | ||
+ | local powercap = p.to_number(frame.args[5]) | ||
+ | local resistance = p.to_number(frame.args[6]) | ||
+ | |||
+ | if not hit_adder or not hit_num or not hit_denom or not power or not powercap or not resistance then | ||
+ | return "" | ||
+ | end | ||
+ | if power > powercap then | ||
+ | power = powercap | ||
+ | end | ||
+ | return tostring(math.ceil((hit_adder + power * hit_num / hit_denom) / resistance)) | ||
end | end | ||
return p | return p |
Latest revision as of 19:55, 23 May 2014
Documentation for this module may be created at Module:AttackSpell/doc
local p = {} function p.to_number(x) local n = string.gsub(x, ",", "") return tonumber(n) end function p.calc_hit(frame) local hit_adder = p.to_number(frame.args[1]) local hit_num = p.to_number(frame.args[2]) local hit_denom = p.to_number(frame.args[3]) local power = p.to_number(frame.args[4]) local powercap = p.to_number(frame.args[5]) if not hit_adder or not hit_num or not hit_denom or not power or not powercap then return "" end if power > powercap then power = powercap end return tostring(math.ceil(hit_adder + power * hit_num / hit_denom)) end function p.calc_damage(frame) local hit_adder = p.to_number(frame.args[1]) local hit_num = p.to_number(frame.args[2]) local hit_denom = p.to_number(frame.args[3]) local power = p.to_number(frame.args[4]) local powercap = p.to_number(frame.args[5]) local resistance = p.to_number(frame.args[6]) if not hit_adder or not hit_num or not hit_denom or not power or not powercap or not resistance then return "" end if power > powercap then power = powercap end return tostring(math.ceil((hit_adder + power * hit_num / hit_denom) / resistance)) end return p