Anonymous
×
Create a new article
Write your page title here:
We currently have 496 articles on WIKI - Idle Pixel. Type your article name above or click on one of the titles below and start writing!



WIKI - Idle Pixel
Revision as of 18:11, 16 April 2024 by Dounford (talk | contribs)

This module uses the data from Module:Crafting_DB to create a exhibition of all the craftable items of the game

{{#invoke:Lua|crafting}}

Lua error in Module:Lua at line 100: attempt to call field 'craftingTable' (a nil value).


u = require("Module:Util")
db = require("Module:Crafting_DB")
inspect = require("Module:InspectLua")

local p = {}

function p.furnace()
    local furnaces = {}
	local itemIndex = 0
    for i, e in ipairs(db) do
		if e[6] == 1 then
			itemIndex = itemIndex + 1
			if not furnaces[itemIndex] then
				furnaces[itemIndex] = {
					item = e[1],
					itemImage = e[2],
					level = e[3],
					description = e[7],
					xp = e[4],
					materials = {}
				}
			end
			for _, f in ipairs(e[5]) do
				table.insert(furnaces[itemIndex].materials, f)
			end
		end
    end
	return p.table(furnaces)
end

function p.oven()
    local ovens = {}
	local itemIndex = 0
    for i, e in ipairs(db) do
		if e[6] == 2 then
			itemIndex = itemIndex + 1
			if not ovens[itemIndex] then
				ovens[itemIndex] = {
					item = e[1],
					itemImage = e[2],
					level = e[3],
					description = e[7],
					xp = e[4],
					materials = {}
				}
			end
			for _, f in ipairs(e[5]) do
				table.insert(ovens[itemIndex].materials, f)
			end
		end
    end
	return p.table(ovens)
end

function p.table(recipes)
    result = [[

{| class="wikitable sortable"

! colspan="2" style="width: 30%" |Item

! Level Needed

! style="width: 20%" |Materials

! style="width: 25%" |Description

!XP
]]
    for _, e in pairs(recipes) do
		local materialStr = ''
		for i, m in ipairs(e.materials) do
			materialStr = materialStr .. u.c(m[2]) .. " " .. '[[' .. m[1] .. ']]'
			if i < #m then
				materialStr = materialStr .. "\n"
			end
		end

        result = result .. [[

|-
|]] .. '[[File: ' .. e.itemImage .. '.png|35px|link=' .. e.item .. ']]' .. [[

|]] .. '[[' .. e.item .. ']]' .. [[

|]] .. e.level .. '[[File:CraftingSigil.png|20px|link=]]' .. [[
 
|]] .. materialStr .. [[

|]] .. e.description .. [[

|]] .. u.c(e.xp) .. 'xp' .. [[
 
]]
    end
    return result .. [[
|}
]]
end
return p