Module:Luacard2: Difference between revisions

From Archon Arcana - The KeyForge Wiki
Module:Luacard2
No edit summary
(Module:Luacard2)
Line 288: Line 288:
local searchname = cardname
local searchname = cardname
if string.find(cardname, 'Evil Twin') ~= nil then
if string.find(cardname, 'Evil Twin') ~= nil then
searchname = cardname:gsub(' %(Evil Twin%)', ' ')
searchname = cardname:gsub(' \(Evil Twin\)', '')
mw.log('search for not evil twin '..searchname)
else
else
searchname = cardname..' (Evil Twin)'
searchname = cardname..' (Evil Twin)'
mw.log('search for the evil twin '..searchname)
end
end
return cargo_results(
return cargo_results(
Line 307: Line 305:
local card_names = related_row['Cards']
local card_names = related_row['Cards']
for name, _ in string.gmatch(card_names, '[^•]+') do
for name, _ in string.gmatch(card_names, '[^•]+') do
mw.log(name..', '..cardname)
if name~=cardname then
if name~=cardname then
local card_results = cargo_results(
local card_results = cargo_results(
Line 326: Line 323:
local twin_set = twinquery(vars.cardname_e)
local twin_set = twinquery(vars.cardname_e)
map(twin_set, function(item)
map(twin_set, function(item)
mw.log(item["Name"])
local twin_name = 'an Evil Twin'
if item["Name"]:find('Evil Twin')==nil then twin_name = 'a non-Evil Twin' end
append(related_set, {
append(related_set, {
Pages = "•"..vars.cardname_e.."•",
Pages = "•"..vars.cardname_e.."•",
Text = "this card has a twin variant:",
Text = "this card has "..twin_name.." version:",
Cards = "•"..item["Name"].."•"
Cards = "•"..item["Name"].."•"
})
})
Line 335: Line 333:
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.."'''")
mw.log('Fetch cards for '..item['Cards'])
item['Cards'] = get_related_cards(frame.args.cardname, item)
item['Cards'] = get_related_cards(frame.args.cardname, item)
return item
return item