forked from mtcontrib/nether-pack
at least a bit history
This commit is contained in:
243
nether/crafting.lua
Normal file
243
nether/crafting.lua
Normal file
@ -0,0 +1,243 @@
|
||||
minetest.register_craft({
|
||||
output = "nether:fim",
|
||||
recipe = {
|
||||
{"nether:shroom_head"},
|
||||
{"nether:fruit_no_leaf"},
|
||||
{"nether:shroom_head"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:fruit_leaves",
|
||||
recipe = {
|
||||
{"nether:fruit_leaf", "nether:fruit_leaf", "nether:fruit_leaf"},
|
||||
{"nether:fruit_leaf", "nether:fruit_leaf", "nether:fruit_leaf"},
|
||||
{"nether:fruit_leaf", "nether:fruit_leaf", "nether:fruit_leaf"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:pick_mushroom",
|
||||
recipe = {
|
||||
{"nether:shroom_head", "nether:shroom_head", "nether:shroom_head"},
|
||||
{"", "nether:shroom_stem", ""},
|
||||
{"", "nether:shroom_stem", ""},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:pick_wood",
|
||||
recipe = {
|
||||
{"nether:wood_cooked", "nether:wood_cooked", "nether:wood_cooked"},
|
||||
{"", "group:stick", ""},
|
||||
{"", "group:stick", ""},
|
||||
}
|
||||
})
|
||||
|
||||
for _,m in pairs({"netherrack", "netherrack_blue", "white"}) do
|
||||
local input = "nether:"..m
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:pick_"..m,
|
||||
recipe = {
|
||||
{input, input, input},
|
||||
{"", "group:stick", ""},
|
||||
{"", "group:stick", ""},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:axe_"..m,
|
||||
recipe = {
|
||||
{input, input},
|
||||
{input, "group:stick"},
|
||||
{"", "group:stick"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:sword_"..m,
|
||||
recipe = {
|
||||
{input},
|
||||
{input},
|
||||
{"group:stick"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:shovel_"..m,
|
||||
recipe = {
|
||||
{input},
|
||||
{"group:stick"},
|
||||
{"group:stick"},
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:netherrack_brick 4",
|
||||
recipe = {
|
||||
{"nether:netherrack", "nether:netherrack"},
|
||||
{"nether:netherrack", "nether:netherrack"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:netherrack_brick_black 4",
|
||||
recipe = {
|
||||
{"nether:netherrack_black", "nether:netherrack_black"},
|
||||
{"nether:netherrack_black", "nether:netherrack_black"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:netherrack_brick_blue 4",
|
||||
recipe = {
|
||||
{"nether:netherrack_blue", "nether:netherrack_blue"},
|
||||
{"nether:netherrack_blue", "nether:netherrack_blue"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "default:furnace",
|
||||
recipe = {
|
||||
{"nether:netherrack_brick", "nether:netherrack_brick", "nether:netherrack_brick"},
|
||||
{"nether:netherrack_brick", "", "nether:netherrack_brick"},
|
||||
{"nether:netherrack_brick", "nether:netherrack_brick", "nether:netherrack_brick"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:extractor",
|
||||
recipe = {
|
||||
{"nether:netherrack_brick", "nether:blood_top_cooked", "nether:netherrack_brick"},
|
||||
{"nether:blood_cooked", "nether:shroom_stem", "nether:blood_cooked"},
|
||||
{"nether:netherrack_brick", "nether:blood_stem_cooked", "nether:netherrack_brick"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:wood 4",
|
||||
recipe = {
|
||||
{"nether:blood_stem"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:wood_empty 4",
|
||||
recipe = {
|
||||
{"nether:blood_stem_empty"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:stick 4",
|
||||
recipe = {
|
||||
{"nether:wood_empty"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:forest_wood",
|
||||
recipe = {
|
||||
{"nether:forest_planks", "nether:forest_planks", "nether:forest_planks"},
|
||||
{"nether:forest_planks", "", "nether:forest_planks"},
|
||||
{"nether:forest_planks", "nether:forest_planks", "nether:forest_planks"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:forest_planks 8",
|
||||
recipe = {
|
||||
{"nether:forest_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "nether:forest_planks 7",
|
||||
recipe = {
|
||||
{"nether:tree"},
|
||||
},
|
||||
})
|
||||
|
||||
local sound_allowed = true
|
||||
minetest.register_on_craft(function(itemstack, player, old_craft_grid, craft_inv)
|
||||
if itemstack:get_name() == "nether:forest_planks"
|
||||
and itemstack:get_count() == 7 then
|
||||
local tree
|
||||
for i = 1,9 do
|
||||
if old_craft_grid[i]:get_name() == "nether:tree" then
|
||||
tree = i
|
||||
break
|
||||
end
|
||||
end
|
||||
if not tree then -- do nth if theres no tree
|
||||
return
|
||||
end
|
||||
local rdif = math.random(-1,1) -- add a bit randomness
|
||||
local barkstack = ItemStack("nether:bark "..4-rdif)
|
||||
local inv = player:get_inventory()
|
||||
if not inv:room_for_item("main", barkstack) then -- disallow crafting if there's not enough free space
|
||||
craft_inv:set_list("craft", old_craft_grid)
|
||||
itemstack:set_name("")
|
||||
return
|
||||
end
|
||||
itemstack:set_count(7+rdif)
|
||||
inv:add_item("main", barkstack)
|
||||
if sound_allowed then
|
||||
minetest.sound_play("default_wood_footstep", {pos=player:getpos(), gain=0.25})
|
||||
sound_allowed = false
|
||||
minetest.after(0, function()
|
||||
sound_allowed = true
|
||||
end)
|
||||
end
|
||||
end
|
||||
end)
|
||||
|
||||
minetest.register_craft({
|
||||
output = "default:paper",
|
||||
recipe = {
|
||||
{"nether:grass_dried", "nether:grass_dried", "nether:grass_dried"},
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
output = "default:coal",
|
||||
recipe = "nether:tree",
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
output = "nether:grass_dried",
|
||||
recipe = "nether:grass",
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
output = "nether:pearl",
|
||||
recipe = "nether:fim",
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
output = "nether:hotbed",
|
||||
recipe = "nether:blood_extracted",
|
||||
})
|
||||
|
||||
for _,i in ipairs({"nether:blood", "nether:blood_top", "nether:blood_stem", "nether:wood"}) do
|
||||
local cooked = i.."_cooked"
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
output = cooked,
|
||||
recipe = i,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "fuel",
|
||||
recipe = cooked,
|
||||
burntime = 30,
|
||||
})
|
||||
end
|
Reference in New Issue
Block a user