Для документации этого модуля может быть создана страница Модуль:Test Project Companion equip/doc
local itemIcon = require('Модуль:Item_icon')
local p = {}
function p.Main( frame )
local cargo = mw.ext.cargo
tables = 'Items'
fields = '_pageName, name, icon, type, stat_accuracy, stat_awareness, stat_crit_resist, stat_critical_severity, stat_crit_chance, stat_defense, stat_deflection, hit_points_max, stat_power, stat_recovery, stat_combat_advantage'
local args = {
where='type HOLDS "только для спутников"',
orderBy = '_pageName,'
}
if frame.args['тип'] ~= "" then
args.where = args.where .. ' AND type HOLDS "'..frame.args['тип']..'"'
end
local result = cargo.query( tables, fields, args )
local r = result[1]
--Start the table
local tbl = mw.html.create('table')
tbl:addClass('wikitable sortable filter-table')
tbl:tag("th"):attr('style', 'width: 15%'):wikitext("Предмет"):done()
tbl:tag("th"):attr('style', 'width: 25%'):wikitext("Параметры"):done()
tbl:done()
--Construct the rows in the table
for _,row in ipairs(result) do
local stat_accuracy = ''
local stat_critical_severity = ''
local stat_awareness = ''
local stat_crit_chance = ''
local stat_crit_resist = ''
local stat_defense = ''
local stat_deflection = ''
local stat_power = ''
local stat_recovery = ''
local stat_combat_advantage = ''
if row.stat_accuracy ~= '' then
stat_accuracy = ', Точность'
end
if row.stat_critical_severity ~= '' then
stat_critical_severity = ', Критический урон'
end
if row.stat_awareness ~= '' then
stat_awareness = ', Осведомленность'
end
if row.stat_combat_advantage ~= '' then
stat_combat_advantage = ', Боевое преимущество'
end
if row.stat_crit_chance ~= '' then
stat_crit_chance = ', Вероятность критического удара'
end
if row.stat_crit_resist ~= '' then
stat_crit_resist = ', Критическое уклонение'
end
if row.stat_defense ~= '' then
stat_defense = ', Оборона'
end
if row.stat_deflection ~= '' then
stat_deflection = ', Уклонение'
end
if row.stat_power ~= '' then
stat_power = ', Могущество'
end
tr = tbl:tag("tr")
tr:tag("td"):wikitext(itemIcon.Main({args={row._pageName,""}})):done()
local stat_accuracy_number = ''
local stat_critical_severity_number = ''
local stat_awareness_number = ''
local stat_crit_chance_number = ''
local stat_crit_resist_number = ''
local stat_defense_number = ''
local stat_deflection_number = ''
local stat_power_number = ''
local stat_recovery_number = ''
local stat_combat_advantage_number = ''
if row.stat_accuracy ~= '' then
stat_accuracy_number = '+' .. row.stat_accuracy .. ' <span class="slate">Точность</span><br>'
end
if row.stat_critical_severity ~= '' then
stat_critical_severity_number = '+' .. row.stat_critical_severity .. ' <span class="slate">Критический урон</span><br>'
end
if row.stat_awareness ~= '' then
stat_awareness_number = '+' .. row.stat_awareness .. ' <span class="slate">Осведомленность</span><br>'
end
if row.stat_combat_advantage ~= '' then
stat_combat_advantage_number = '+' .. row.stat_combat_advantage .. ' <span class="slate">Боевое преимущество</span><br>'
end
if row.stat_crit_chance ~= '' then
stat_crit_chance_number = '+' .. row.stat_crit_chance .. ' <span class="slate">Вероятность критического удара</span><br>'
end
if row.stat_crit_resist ~= '' then
stat_crit_resist_number = '+' .. row.stat_crit_resist .. ' <span class="slate">Критическое уклонение</span><br>'
end
if row.stat_defense ~= '' then
stat_defense_number = '+' .. row.stat_defense .. ' <span class="slate">Оборона</span><br>'
end
if row.stat_deflection ~= '' then
stat_deflection_number = '+' .. row.stat_deflection .. ' <span class="slate">Уклонение</span><br>'
end
if row.stat_power ~= '' then
stat_power_number = '+' .. row.stat_power .. ' <span class="slate">Могущество</span><br>'
end
tr:tag("td"):wikitext(stat_accuracy_number .. ' ' .. stat_critical_severity_number .. ' ' .. stat_awareness_number .. ' ' .. stat_combat_advantage_number .. ' ' .. stat_crit_chance_number .. ' ' .. stat_crit_resist_number .. ' ' .. stat_defense_number .. ' ' .. stat_deflection_number .. ' ' .. stat_power_number):done()
--end
end
return tbl
end
return p