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

Module:Crafting: Difference between revisions

No edit summary
No edit summary
Line 44: Line 44:
function p.table(recipes)
function p.table(recipes)


result = [[
local result = mw.text.tag("table", {class="wikitable sortable"}, "") .. "\n"
result = result .. mw.text.tag("tr", {},
mw.text.tag("th", {colspan="2", style="width:30%"}, "Item") ..
mw.text.tag("th", {}, "Level Needed") ..
mw.text.tag("th", {style="width:20%"}, "Materials") ..
mw.text.tag("th", {style="width:25%"}, "Description") ..
mw.text.tag("th", {}, "XP")
) .. "\n"


! colspan="2" style="width: 30%" {{!}}Item
! Level Needed
! style="width: 20%" {{!}}Materials
! style="width: 25%" {{!}}Description
!XP
]]
     for _, e in pairs(recipes) do
     for _, e in pairs(recipes) do
local materialStr = ''
local materialStr = ''
Line 63: Line 60:
end
end


         result = result .. [[
         result = result .. mw.text.tag("tr", {},
 
mw.text.tag("td", {}, '[[File:' .. e.itemImage .. '.png|35px|link=' .. e.item .. ']]') ..
{{!}}-
mw.text.tag("td", {}, '[[' .. e.item .. ']]') ..
 
mw.text.tag("td", {}, e.level .. ' [[File:CraftingSigil.png|20px|link=]]') ..
{{!}}]] .. '[[File: ' .. e.itemImage .. '.png|35px|link=' .. e.item .. ']]' .. [[
mw.text.tag("td", {}, materialStr) ..
 
mw.text.tag("td", {}, e.description) ..
{{!}}]] .. '[[' .. e.item .. ']]' .. [[
mw.text.tag("td", {}, u.c(e.xp) .. "xp")
 
) .. "\n"
{{!}}]] .. e.level .. '[[File:CraftingSigil.png|20px|link=]]' .. [[
 
{{!}}]] .. materialStr .. [[
 
{{!}}]] .. e.description .. [[
 
{{!}}]] .. u.c(e.xp) .. 'xp' .. [[
]]
     end
     end
     result = mw.text.tag("table", {class="wikitable sortable"}, result)
     result = result .. "</table>"
    return result
return result
end
end
return p
return p

Revision as of 10:17, 4 November 2024

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

{{#invoke:Lua|crafting}}
ItemLevel NeededMaterialsDescriptionXP Stone Furnace2 10 Stone
Allow you to smelt Ores into Bars.24xp Bronze Furnace12 1,000 Stone
30 Bronze Bars
Upgrades your furnace capacity.155xp Iron Furnace27 28,000 Stone
200 Iron Bars
Upgrades your furnace capacity.545xp Silver Furnace40 40,000 Stone
200 Silver Bars
Upgrades your furnace capacity.898xp Gold Furnace51 70,000 Stone
200 Gold Bars
Upgrades your furnace capacity.1,500xp Promethium Furnace59 120,000 Stone
35 Promethium Bars
Upgrades your furnace capacity.2,999xp Titanium Furnace73 300,000 Stone
15 Titanium Bars
Upgrades your furnace capacity.6,666xp Ancient Furnace81 400,000 Stone
5 Ancient Bars
Upgrades your furnace capacity.10,000xp
ItemLevel NeededMaterialsDescriptionXP Bronze Oven10 1,000 Stone
30 Bronze Bars
Unlocks the Cooking skill.112xp Iron Oven22 10,000 Stone
250 Iron Bars
Decrease the chance of burning food.351xp Silver Oven31 20,000 Stone
250 Silver Bars
Decrease the chance of burning food.700xp Gold Oven48 50,000 Stone
250 Gold Bars
Decrease the chance of burning food.1,300xp Promethium Oven62 300,000 Stone
100 Promethium Bars
Decrease the chance of burning food.3,585xp Titanium Oven77 500,000 Stone
50 Titanium Bars
Decrease the chance of burning food.8,758xp Ancient Oven89 1,000,000 Stone
50 Ancient Bars
Decrease the chance of burning food.21,585xp
ItemLevel NeededMaterialsDescriptionXP Stone Statue1 3 Stone
Can be sold to the dwarf for Quest.10xp Bronze Statue9 20 Bronze Bars
Can be traded to the Dwarf for coins.500xp Glass Statue32 1 Molten Glass
A glass statue. Im sure the dwarf would love this.811xp File:BloodGlassStatue.pngBlood Glass Statue65 100 Molten Glass
500 Evil Blood
1 Invention
Ability to pray to the gods and convert evil blood into saint blood.6,788xp
ItemLevel NeededMaterialsDescriptionXP Bronze Oil Well1 5 Bronze Bars
Allows you to gather Oil.15xp Iron Oil Well11 25 Iron Bars
Allows you to gather Oil.200xp Gold Oil Well38 50 Gold Bars
Upgrade oil well to increase oil rate.555xp Promethium Oil Well50 50 Promethium Bars
Upgrade oil well to increase oil rate.1,500xp Titanium Oil Well72 20 Titanium Bars
Upgrade oil well to increase oil rate.6,000xp Ancient Oil Well83 20 Ancient Bars
Upgrade oil well to increase oil rate.12,414xp
ItemLevel NeededMaterialsDescriptionXP Community Center11 30 Normal Logs
NPC shop, unlocks more buyables.124xp Community Center 230 250 Oak Logs
100 Willow Logs
Upgrades the npc shop.666xp Community Center 343 50 Maple Logs
Upgrades the shop to sell more items.954xp Community Center 458 50 Stardust Logs
Upgrades the shop to sell more items, including the unlockable criptoe market.2,898xp
ItemLevel NeededMaterialsDescriptionXP Silver Oil Silo7 3 Silver Bars
Increases your Oil capacity.88xp Gold Oil Silo20 20 Gold Bars
Further increases your Oil capacity.301xp Promethium Oil Silo46 20 Promethium Bars
Increases your oil capacity.1,241xp Titanium Oil Silo67 10 Titanium Bars
Increases your oil capacity.5,175xp Ancient Oil Silo85 10 Ancient Bars
Increases your oil capacity.14,585xp
ItemLevel NeededMaterialsDescriptionXP Wooden Arrows1 15 Feathers
5 Logs
5 Iron Bars
Arrows for your bow for Combat.15xp Fire Arrows20 15 Fire Feathers
5 Oak Logs
5 Silver Bars
Fire Arrows for your bow for Combat.150xp Ice Arrows40 15 Ice Feathers
5 Willow Logs
5 Gold Bars
Very powerful againsts fire based monsters.315xp Ancient Arrows90 15 Ancient Feathers
5 Redwood Logs
5 Ancient Bars
Strong arrows0xp
ItemLevel NeededMaterialsDescriptionXP Drills3 7 Bronze Bars
Can be used to mine faster and higher level Ores. (Requires Oil).24xp Crushers15 100 Iron Bars
5 Gold Bars
Machinery that runs on oil and collects ores.250xp Giant Drills42 500 Iron Bars
300 Silver Bars
Can be used to mine faster and higher level ores. (Requires Oil)900xp Excavator65 1,000 Iron Bars
500 Gold Bars
100 Promethium Bars
Can be used to mine faster and higher level ores. (Requires Oil)4,200xp Giant Excavator80 100 Titanium Bars
200 Promethium Bars
Can be used to mine faster and higher level ores. (Requires Oil)9,857xp
ItemLevel NeededMaterialsDescriptionXP Row Boat24 100 Normal Logs
Easy Fishing Achievements
Allows you to send out a boat to gather fish for you.485xp Canoe39 200 Oak Logs
100 Willow Logs
50 Maple Logs
Easy Fishing Achievements
Can be sent out to collect fish for you.555xp Stardust Ship60 200 Stardust Logs
Easy Fishing Achievements
Boat that can gather stardust fish.3,152xp Pirate Ship92 500 Redwood Logs
10 Pirates
Easy Fishing Achievements
Ability to send your boat but not for fish, but to kidnap evil pirates who steal from cargo ships.31,584xp
ItemLevel NeededMaterialsDescriptionXP Fight Points MedallionFight Points Medallion31 3 Sapphire
900 Fight Points
Increases your Fight Points cap.(2000)788xp Fight Points MedallionFight Points Medallion55 3 Emerald
2,000 Fight Points
Increases your Fight Points cap.(4000)2,212xp Fight Points MedallionFight Points Medallion75 3 Ruby
4,000 Fight Points
Increases your Fight Points cap.(8000)6,857xp Fight Points MedallionFight Points Medallion90 3 Diamond
8,000 Fight Points
Increases your Fight Points cap.(12 000)25,142xp
ItemLevel NeededMaterialsDescriptionXP Wooden Sword5 5 Normal Logs
Unlocks the combat skill.80xp Poison Stinger17 1 Stinger
1 Poison
Deals extra damage and ignores enemy defence. Also needed for Quest "The Tank".150xp Longbow40 50 String
1 Long Bow Frame
More accurate bow.2,000xp Spiked Club45 1 Club
100 Ant Needles
Add spikes to a club, increasing its damage by 4.2,346xp Haunted Bow50 2 Long Bow Frame
1 Haunted Bow Frame
Double damage on ghost type monsters.0xp Balista100 700 String
500 Flexible Logs
5 Dragon Bars
A very strong range weapon - uses 5 arrows per hit.135,141xp
ItemLevel NeededMaterialsDescriptionXP Axe4 1 Iron Bar
Unlocks Woodcutting.78xp Rake5 5 Iron Bars
Required for the Quests The Achiever.500xp Brewing Kit21 100 Iron Bars
1 Stardust Potion
1 Energy Potion
1 Anti-Disease Potion
1 Tree Speed Potion
1 Smelting Upgrade Potion
1 Farming Speed Potion
1 Strange Leaf
When upgraded, increases the duration for all potions.322xp Magnet78 80 Promethium Bars
100 Iron Bars
10 Lava
A tool used to filter through junk from gathering.7,011xp

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

local p = {}

local groups = {'Furnace','Oven','Statue','Oil Well','Community Center','Oil Silo','Arrow','Mining Machinery','Boat','Fight Points Medallion','Weapon','Tool'}

function p.craftingTable()
	local tableText = [[{{tabs

]]
	for groupIndex, group in ipairs(groups) do
		local recipes = {}
		local itemIndex = 0
		for _, e in ipairs(db) do
			if e[6] == groupIndex then
				itemIndex = itemIndex + 1
				if not recipes[itemIndex] then
					recipes[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(recipes[itemIndex].materials, f)
				end
			end
		end
		tableText = tableText .. [[|name]] .. groupIndex .. [[=]] .. groups[groupIndex] .. [[

		|tab]] .. groupIndex .. [[=]] .. p.table(recipes)
	end
	tableText = tableText .. [[

	}}]]
	return tableText
end

function p.table(recipes)

	local result = mw.text.tag("table", {class="wikitable sortable"}, "") .. "\n"
	result = result .. mw.text.tag("tr", {}, 
		mw.text.tag("th", {colspan="2", style="width:30%"}, "Item") ..
		mw.text.tag("th", {}, "Level Needed") ..
		mw.text.tag("th", {style="width:20%"}, "Materials") ..
		mw.text.tag("th", {style="width:25%"}, "Description") ..
		mw.text.tag("th", {}, "XP")
	) .. "\n"

    for _, e in pairs(recipes) do
		local materialStr = ''
		for i, m in ipairs(e.materials) do
			materialStr = materialStr .. u.c(m[2]) .. " " .. '[[' .. m[1] .. ']]'
			materialStr = materialStr .. "<br>"
		end

        result = result .. mw.text.tag("tr", {}, 
			mw.text.tag("td", {}, '[[File:' .. e.itemImage .. '.png|35px|link=' .. e.item .. ']]') ..
			mw.text.tag("td", {}, '[[' .. e.item .. ']]') ..
			mw.text.tag("td", {}, e.level .. ' [[File:CraftingSigil.png|20px|link=]]') ..
			mw.text.tag("td", {}, materialStr) ..
			mw.text.tag("td", {}, e.description) ..
			mw.text.tag("td", {}, u.c(e.xp) .. "xp")
		) .. "\n"
    end
    result = result .. "</table>"
	return result
end
return p