Content added Content deleted
No edit summary |
No edit summary |
||
Line 4: | Line 4: | ||
p.getLootTable = function(frame) |
p.getLootTable = function(frame) |
||
local txt = frame:expandTemplate{ title = 'LootHeader' } |
|||
local txt = '{| class="wikitable sortable"\n|-\n! Item !! Quantity !! Rarity' |
|||
for i=1, #lootTable, 1 do |
for i=1, #lootTable, 1 do |
||
if lootTable[i][1] ~= nil then |
if lootTable[i][1] ~= nil then |
||
txt = txt |
txt = txt .. frame:expandTemplate{ title = 'LootRow', args = { itemname = lootTable[i][3] } } .. '|' |
||
end |
end |
||
end |
end |
||
txt = txt .. ' |
txt = txt .. frame:expandTemplate{ title = 'LootEnd' } |
||
return txt |
return txt |
||
end |
end |
Revision as of 18:22, 28 November 2021
This module retrieves data from the "Loot tables.json" template according to the {{PAGENAME}} (usually, an NPC name) provided as an argument value.
local lootTable = mw.text.jsonDecode(mw.getCurrentFrame():expandTemplate{title='Template:Loot tables.json'})
local p = {}
p.getLootTable = function(frame)
local txt = frame:expandTemplate{ title = 'LootHeader' }
for i=1, #lootTable, 1 do
if lootTable[i][1] ~= nil then
txt = txt .. frame:expandTemplate{ title = 'LootRow', args = { itemname = lootTable[i][3] } } .. '|'
end
end
txt = txt .. frame:expandTemplate{ title = 'LootEnd' }
return txt
end
return p