Module:EliteShips
Revision as of 07:30, 29 January 2015 by com>Ckwng (parse highlight thresholds)
Documentation for this module may be created at Module:EliteShips/doc
local EliteShips = {}
local EliteShipsKai = require('Module:EliteShipsKai')
local Ship = require('Module:Ship')
local getArgs = require('Module:GetArgs')
function EliteShips.Table(frame)
local args = getArgs{frame = frame}
local ships = {}
for index, ship_name in ipairs(args) do
local split = mw.ustring.find(ship_name, '/')
if split == nil then
ships[index] = Ship:create(ship_name)
else
ships[index] = Ship:create(mw.ustring.sub(ship_name, 1, split - 1),mw.ustring.sub(ship_name, split + 1, -1))
end
end
local ranges = {}
for _, column in ipairs(EliteShipsKai._columns) do
local outstanding = args[column .. EliteShipsKai._outstanding_suffix]
local good = args[column .. EliteShipsKai._good_suffix]
if outstanding and good then
local operator = args[column .. EliteShipsKai._operator_suffix] or ">"
ranges[column] = {}
ranges[column].operator = operator
ranges[column].outstanding = tonumber(outstanding)
ranges[column].good = tonumber(good)
end
end
return EliteShipsKai:Table(ships, ranges)
end
return EliteShips