Module:ItemsByStat: Difference between revisionsGive feedback
SerpentofSet (talk | contribs) mNo edit summary |
SerpentofSet (talk | contribs) mNo edit summary |
||
| Line 3: | Line 3: | ||
local selectByStat = function(stat) | local selectByStat = function(stat) | ||
-- List properties to grab and set up data structure to hold values | |||
local inKeys = {"Name","Tier","Cost","Slot",stat} | local inKeys = {"Name","Tier","Cost","Slot",stat} | ||
local outData = {} | local outData = {} | ||
| Line 8: | Line 9: | ||
outData[x] = {} | outData[x] = {} | ||
end | end | ||
local i = 1 | local i = 1 | ||
for m,itemData in pairs(AllItemData) do | for m,itemData in pairs(AllItemData) do | ||
for itemFieldName,n in pairs(itemData) do | for itemFieldName,n in pairs(itemData) do | ||
if itemFieldName == stat then | if itemFieldName == stat then -- If Item has given stat in its keys, | ||
for x = 1,#inKeys do | for x = 1,#inKeys do | ||
outData[x][i] = itemData[inKeys[x]] | outData[x][i] = itemData[inKeys[x]] -- grab stat and other values | ||
end | end | ||
i = i+1 | i = i+1 | ||
| Line 27: | Line 28: | ||
local stat = frame.args[1] | local stat = frame.args[1] | ||
local tableData = selectByStat(stat) | local tableData = selectByStat(stat) | ||
local outString = "" | local outString = '{| class="wikitable sortable"|-!Item!!Tier!!Cost!!Slot!!Value|-' | ||
for i=1,#tableData[1] do | for i=1,#tableData[1] do | ||
outString = outString..tableData[1][i]..tableData[2][i]..tableData[3][i]..tableData[4][i]..tableData[5][i] | outString = outString.."|"..tableData[1][i].."||"..tableData[2][i].."||"..tableData[3][i].."||"..tableData[4][i].."||"..tableData[5][i] | ||
end | end | ||
return outString | return outString.."|}" | ||
end | end | ||
return p | return p | ||