80,736
edits
(Module:Luacard2) |
(Module:Luacard2) |
||
Line 1: | Line 1: | ||
--Module:Luacard2 | --Module:Luacard2 | ||
--Usage: english - {{#invoke | --Usage: english - {{#invoke luacard | viewcard | cardname=Angry Mob}} | ||
-- other language {{#invoke | -- other language {{#invoke luacard | viewcard | cardname=Angry Mob | locale=fr-fr}} (language codes are all 2 part) | ||
--Debug: print(p.viewcard({args={cardname='Angry Mob', debug=true}})) | --Debug: print(p.viewcard({args={cardname='Angry Mob', debug=true}})) | ||
local p = {} | local p = {} | ||
Line 282: | Line 282: | ||
where="Pages like '%•"..cardname.."•%' OR (pages IS null AND Cards like '%•"..cardname.."•%')", | where="Pages like '%•"..cardname.."•%' OR (pages IS null AND Cards like '%•"..cardname.."•%')", | ||
orderBy='Text ASC' | orderBy='Text ASC' | ||
}) | |||
end | |||
function twinquery(cardname) | |||
local searchname = cardname | |||
if string.find(cardname, 'Evil Twin') ~= nil then | |||
searchname = cardname:gsub(' \(Evil Twin\)', '') | |||
else | |||
searchname = cardname..' (Evil Twin)' | |||
end | |||
return cargo_results( | |||
'CardData', | |||
'Name', | |||
{ | |||
groupBy='Name', | |||
where="Name='"..searchname.."'" | |||
}) | }) | ||
end | end | ||
Line 307: | Line 323: | ||
vars.cardnotes = {} | vars.cardnotes = {} | ||
local related_set = relatedquery(vars.cardname_e) | local related_set = relatedquery(vars.cardname_e) | ||
local twin_set = twinquery(vars.cardname_e) | |||
map(twin_set, function(item) | |||
append(related_set, { | |||
Pages = "•"..cardname_e.."•", | |||
Text = "this card has a twin variant:", | |||
Cards = "•"..item["Name"].."•" | |||
}) | |||
end) | |||
map(related_set, function(item) | map(related_set, function(item) | ||
item['Text'] = item['Text']:gsub('this card', "'''"..vars.cardname_e.."'''") | item['Text'] = item['Text']:gsub('this card', "'''"..vars.cardname_e.."'''") |