- Welcome to the Kancolle Wiki!
- If you have any questions regarding site content, account registration, etc., please visit the KanColle Wiki Discord
Difference between revisions of "Module:CalcFit"
Jump to navigation
Jump to search
m |
|||
Line 1: | Line 1: | ||
local Stat = require("Module:Stat") | local Stat = require("Module:Stat") | ||
+ | local Combat2 = require("Module:Combat2") | ||
return { | return { | ||
Line 28: | Line 29: | ||
local diff = 100 * (context.cl2) / (context.cl0 + context.cl1 + context.cl2) - context.critical_hit_rate | local diff = 100 * (context.cl2) / (context.cl0 + context.cl1 + context.cl2) - context.critical_hit_rate | ||
return string.format("%.2f%%", diff) | return string.format("%.2f%%", diff) | ||
+ | else | ||
+ | return "nil" | ||
+ | end | ||
+ | end, | ||
+ | |||
+ | accuracy_value = function(ship, target) | ||
+ | local accuracy_value_1, accuracy_value_2, accuracy_value_3 = Combat2.accuracy_value(ship, target) | ||
+ | if accuracy_value_1 and accuracy_value_2 and accuracy_value_3 then | ||
+ | return string.format('<span class="explain" title="%.2f%%">%d%%</span>', accuracy_value_1, math.floor(accuracy_value_3)) | ||
else | else | ||
return "nil" | return "nil" |
Revision as of 18:40, 7 November 2017
Documentation for this module may be created at Module:CalcFit/doc
local Stat = require("Module:Stat")
local Combat2 = require("Module:Combat2")
return {
hit = function(context)
return Stat.rate({ args = { context.cl1 + context.cl2, context.cl0 + context.cl1 + context.cl2 } }) .. "%"
end,
crit = function(context)
return Stat.rate({ args = { context.cl2, context.cl0 + context.cl1 + context.cl2 } }) .. "%"
end,
error = function(context)
return Stat.error({ args = { context.cl1 + context.cl2, context.cl0 + context.cl1 + context.cl2 } }) .. "%"
end,
difference = function(context)
if context.hit_rate then
local diff = 100 * (context.cl1 + context.cl2) / (context.cl0 + context.cl1 + context.cl2) - context.hit_rate
return string.format("%.2f%%", diff)
else
return "nil"
end
end,
critical_difference = function(context)
if context.critical_hit_rate then
local diff = 100 * (context.cl2) / (context.cl0 + context.cl1 + context.cl2) - context.critical_hit_rate
return string.format("%.2f%%", diff)
else
return "nil"
end
end,
accuracy_value = function(ship, target)
local accuracy_value_1, accuracy_value_2, accuracy_value_3 = Combat2.accuracy_value(ship, target)
if accuracy_value_1 and accuracy_value_2 and accuracy_value_3 then
return string.format('<span class="explain" title="%.2f%%">%d%%</span>', accuracy_value_1, math.floor(accuracy_value_3))
else
return "nil"
end
end,
}