Module:ItemsByStat: Difference between revisions
Jump to navigation
Jump to search
SerpentofSet (talk | contribs) No edit summary |
SerpentofSet (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
local p = {} | local p = {} | ||
local | local AllItemData = mw.loadJsonData("Data:ItemData.json") | ||
local selectByStat = function(stat) | local selectByStat = function(stat) | ||
local | local Name,Tier,Value = {},{},{} | ||
local outData = {Name,Tier,Value} | |||
local inKeys = {"Name","Tier",stat} | |||
local i = 1 | local i = 1 | ||
for m, | for m,itemData in pairs(AllItemData) do | ||
for n | for itemFieldName,n in pairs(itemData) do | ||
if | if itemFieldName == stat then | ||
for x = 1,#inKeys do | |||
outData[x][i] = itemData[inKeys[x]] | |||
i = i+1 | |||
break | |||
end | |||
end | end | ||
end | end | ||
end | end | ||
return outData | |||
return | |||
end | end | ||
Line 24: | Line 26: | ||
local tabledata = selectByStat(stat) | local tabledata = selectByStat(stat) | ||
Item = tabledata[1] | Item = tabledata[1] | ||
Value = tabledata[ | Value = tabledata[3] | ||
output = "" | output = "" | ||
for i=1,#Item do | for i=1,#Item do |
Revision as of 14:23, 27 September 2024
Documentation for this module may be created at Module:ItemsByStat/doc
local p = {}
local AllItemData = mw.loadJsonData("Data:ItemData.json")
local selectByStat = function(stat)
local Name,Tier,Value = {},{},{}
local outData = {Name,Tier,Value}
local inKeys = {"Name","Tier",stat}
local i = 1
for m,itemData in pairs(AllItemData) do
for itemFieldName,n in pairs(itemData) do
if itemFieldName == stat then
for x = 1,#inKeys do
outData[x][i] = itemData[inKeys[x]]
i = i+1
break
end
end
end
end
return outData
end
p.tablefy = function(frame)
local stat = frame.args[1]
local tabledata = selectByStat(stat)
Item = tabledata[1]
Value = tabledata[3]
output = ""
for i=1,#Item do
output = output.."Name: [["..Item[i].."]] Increased Weapon Damage: "..Value[i].."\n\n"
end
return output
end
return p