Module:Room features: Difference between revisions
Jump to navigation
Jump to search
Content added Content deleted
No edit summary |
No edit summary |
||
Line 6: | Line 6: | ||
end |
end |
||
local |
local infobox_cat_map = { |
||
⚫ | |||
'Non-player characters', |
['NPC'] = 'Non-player characters', |
||
⚫ | |||
['Scenery'] = 'Scenery', |
|||
'Skill nodes' |
['Skill_node'] = 'Skill nodes' |
||
'Scenery' |
|||
} |
} |
||
function base_query(location) |
function base_query(location) |
||
local ret = { |
local ret = { |
||
' |
'[[Located in::' .. location .. ']]', |
||
'?#-', |
'?Location object#-', |
||
'?Name', |
'?Location object.Name', |
||
'?Image#-' |
'?Location object.Image#-', |
||
'?Location object.Infobox', |
|||
'?Location quantity' |
|||
} |
} |
||
for _,cat in ipairs(categories) do |
|||
table.insert(ret, string.format('?Category:%s=%s', cat, cat)) |
|||
⚫ | |||
return ret |
return ret |
||
end |
end |
||
Line 34: | Line 33: | ||
if query ~= nil then |
if query ~= nil then |
||
local results_by_type = {} |
local results_by_type = {} |
||
for i,v in pairs(infobox_cat_map) do |
|||
⚫ | |||
⚫ | |||
for i,v in ipairs(query) do |
for i,v in ipairs(query) do |
||
local key = infobox_cat_map[v.Infobox] |
|||
for _,cat in ipairs(categories) do |
|||
⚫ | |||
if i == 1 then |
|||
⚫ | |||
⚫ | |||
if v[cat] == true then |
|||
⚫ | |||
end |
|||
end |
|||
end |
end |
||
for cat,results in pairs(results_by_type) do |
for cat,results in pairs(results_by_type) do |
||
Line 50: | Line 46: | ||
local gallery = '<gallery>\n' |
local gallery = '<gallery>\n' |
||
for i,v in ipairs(results) do |
for i,v in ipairs(results) do |
||
local image = v.Image or 'File:Section anchor light.svg' |
|||
local quantity = '' |
|||
if v['Location quantity'] ~= 'Unknown' then |
|||
quantity = string.format('%s × ', v['Location quantity']) |
|||
⚫ | |||
gallery = gallery .. string.format('%s|%s[[%s|%s]]\n', image, quantity, v['Location object'], v.Name) |
|||
end |
end |
||
gallery = gallery .. '</gallery>\n\n' |
gallery = gallery .. '</gallery>\n\n' |
||
mw.log(gallery) |
|||
ret = ret .. gallery |
ret = ret .. gallery |