Module:Resource

Documentation for this module may be created at Module:Resource/doc

local p = {}
local utils = require("Module:Utils")
local data = mw.loadJsonData("Module:Data/resource.json")

function p.createInfobox(frame)
	local name = frame.args.name
	if name == nil or name == "" then name = mw.title.getCurrentTitle().subpageText end
	local image = frame.args.image
	-- if image == nil or image == "" then image = "placeholder.png" end
	local item = data[name]
	
	local str = { 
		image = image,
		type = item.type,
		value = item.sellValue
	}
	
	return frame:expandTemplate{title = 'Infobox resource', args = str}
end

function p.getDescription(frame)
	local name = frame.args.name
	if name == nil or name == "" then name = mw.title.getCurrentTitle().subpageText end
	
	return data[name].description
end

function p.createCraftingTable(frame)
	local name = frame.args.name
	if name == nil or name == "" then name = mw.title.getCurrentTitle().subpageText end
	local item = data[name]
	
	local count = 1
	local str = '{{Crafting'
	for k, v in ipairs(item.craftingRecipes) do
		str = str .. '\n| Material' .. count .. ' = ' .. v.name
		str = str .. '\n| Amount' .. count .. '   = ' .. v.amount
		count = count + 1
	end
	str = str .. '\n}}'
	
	return frame:preprocess(str)
end

return p
Cookies help us deliver our services. By using our services, you agree to our use of cookies.