All new craft recipes are complete, closes #52
This commit is contained in:
parent
0feaa580d5
commit
fd24eca9ea
@ -41,7 +41,7 @@ minetest.register_globalstep(on_globalstep)
|
||||
minetest.register_craftitem(
|
||||
"nav:compass_0",
|
||||
{
|
||||
description = "Compass(N)",
|
||||
description = "Compass",
|
||||
|
||||
inventory_image = "nav_compass_inventory_0.png",
|
||||
wield_image = wield_image_0,
|
||||
@ -53,7 +53,7 @@ minetest.register_craftitem(
|
||||
minetest.register_craftitem(
|
||||
"nav:compass_1",
|
||||
{
|
||||
description = "Compass(NE)",
|
||||
description = "Compass",
|
||||
|
||||
inventory_image = "nav_compass_inventory_1.png",
|
||||
wield_image = wield_image_1,
|
||||
@ -65,7 +65,7 @@ minetest.register_craftitem(
|
||||
minetest.register_craftitem(
|
||||
"nav:compass_2",
|
||||
{
|
||||
description = "Compass(E)",
|
||||
description = "Compass",
|
||||
|
||||
inventory_image = "nav_compass_inventory_0.png^[transformR270",
|
||||
wield_image = wield_image_0 .. "^[transformR270",
|
||||
@ -77,7 +77,7 @@ minetest.register_craftitem(
|
||||
minetest.register_craftitem(
|
||||
"nav:compass_3",
|
||||
{
|
||||
description = "Compass(SE)",
|
||||
description = "Compass",
|
||||
|
||||
inventory_image = "nav_compass_inventory_1.png^[transformR270",
|
||||
wield_image = wield_image_1 .. "^[transformR270",
|
||||
@ -90,7 +90,7 @@ minetest.register_craftitem(
|
||||
minetest.register_craftitem(
|
||||
"nav:compass_4",
|
||||
{
|
||||
description = "Compass(S)",
|
||||
description = "Compass",
|
||||
|
||||
inventory_image = "nav_compass_inventory_0.png^[transformR180",
|
||||
wield_image = wield_image_0 .. "^[transformR180",
|
||||
@ -102,7 +102,7 @@ minetest.register_craftitem(
|
||||
minetest.register_craftitem(
|
||||
"nav:compass_5",
|
||||
{
|
||||
description = "Compass(SW)",
|
||||
description = "Compass",
|
||||
|
||||
inventory_image = "nav_compass_inventory_1.png^[transformR180",
|
||||
wield_image = wield_image_1 .. "^[transformR180",
|
||||
@ -114,7 +114,7 @@ minetest.register_craftitem(
|
||||
minetest.register_craftitem(
|
||||
"nav:compass_6",
|
||||
{
|
||||
description = "Compass(W)",
|
||||
description = "Compass",
|
||||
|
||||
inventory_image = "nav_compass_inventory_0.png^[transformR90",
|
||||
wield_image = wield_image_0 .. "^[transformR90",
|
||||
@ -126,7 +126,7 @@ minetest.register_craftitem(
|
||||
minetest.register_craftitem(
|
||||
"nav:compass_7",
|
||||
{
|
||||
description = "Compass(NW)",
|
||||
description = "Compass",
|
||||
|
||||
inventory_image = "nav_compass_inventory_1.png^[transformR90",
|
||||
wield_image = wield_image_1 .. "^[transformR90",
|
||||
@ -135,13 +135,13 @@ minetest.register_craftitem(
|
||||
stack_max = 1,
|
||||
})
|
||||
|
||||
minetest.register_alias("nav:compass", "nav:compass_2")
|
||||
minetest.register_alias("nav:compass", "nav:compass_0")
|
||||
|
||||
-- Crafting
|
||||
|
||||
crafting.register_craft(
|
||||
{
|
||||
output = "nav:compass_2",
|
||||
output = "nav:compass",
|
||||
items = {
|
||||
"default:ingot_steel 4",
|
||||
"default:stick",
|
||||
@ -156,7 +156,7 @@ achievements.register_achievement(
|
||||
title = "True Navigator",
|
||||
description = "Craft a compass",
|
||||
times = 1,
|
||||
craftitem = "nav:compass_2",
|
||||
craftitem = "nav:compass",
|
||||
})
|
||||
|
||||
default.log("compass", "loaded")
|
||||
|
@ -1 +1,2 @@
|
||||
default
|
||||
crafting
|
||||
|
@ -10,10 +10,12 @@ function partialblocks.register_material(name, desc, node, can_burn)
|
||||
|
||||
if nodedef == nil then
|
||||
minetest.log("warning", "Cannot find node for partialblock: " .. node)
|
||||
|
||||
return
|
||||
end
|
||||
|
||||
-- Slab
|
||||
|
||||
minetest.register_node(
|
||||
"partialblocks:" .. name .. "_slab",
|
||||
{
|
||||
@ -34,19 +36,14 @@ function partialblocks.register_material(name, desc, node, can_burn)
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
})
|
||||
minetest.register_craft( -- Craft to
|
||||
|
||||
crafting.register_craft( -- Craft to
|
||||
{
|
||||
output = "partialblocks:" .. name .. "_slab 3",
|
||||
recipe = {
|
||||
{node, node, node},
|
||||
items = {
|
||||
node .. " 3",
|
||||
},
|
||||
})
|
||||
minetest.register_craft( -- Craft back
|
||||
{
|
||||
output = node,
|
||||
type = "shapeless",
|
||||
recipe = {"partialblocks:" .. name .. "_slab"},
|
||||
})
|
||||
|
||||
if can_burn then
|
||||
minetest.register_craft( -- Fuel
|
||||
@ -58,6 +55,7 @@ function partialblocks.register_material(name, desc, node, can_burn)
|
||||
end
|
||||
|
||||
-- Stair
|
||||
|
||||
minetest.register_node(
|
||||
"partialblocks:" .. name .. "_stair",
|
||||
{
|
||||
@ -79,21 +77,14 @@ function partialblocks.register_material(name, desc, node, can_burn)
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
})
|
||||
minetest.register_craft( -- Craft to
|
||||
|
||||
crafting.register_craft( -- Craft to
|
||||
{
|
||||
output = "partialblocks:" .. name .. "_stair 6",
|
||||
recipe = {
|
||||
{node, "", ""},
|
||||
{node, node, ""},
|
||||
{node, node, node},
|
||||
items = {
|
||||
node .. " 6",
|
||||
},
|
||||
})
|
||||
minetest.register_craft( -- Craft back
|
||||
{
|
||||
output = node,
|
||||
type = "shapeless",
|
||||
recipe = {"partialblocks:" .. name .. "_stair"},
|
||||
})
|
||||
|
||||
if can_burn then
|
||||
minetest.register_craft( -- Fuel
|
||||
@ -105,20 +96,48 @@ function partialblocks.register_material(name, desc, node, can_burn)
|
||||
end
|
||||
end
|
||||
|
||||
-- Register some default node partials
|
||||
partialblocks.register_material("cobble", "Cobble", "default:cobble", false)
|
||||
partialblocks.register_material("stone", "Stone", "default:stone", false)
|
||||
partialblocks.register_material("brick", "Brick", "default:brick", false)
|
||||
-- Stonelike materials
|
||||
|
||||
partialblocks.register_material("wood", "Wood", "default:planks", true)
|
||||
partialblocks.register_material("oak", "Oak", "default:planks_oak", true)
|
||||
partialblocks.register_material("birch", "Birch", "default:planks_birch", true)
|
||||
partialblocks.register_material(
|
||||
"cobble", "Cobble", "default:cobble", false)
|
||||
|
||||
partialblocks.register_material("steel", "Steel", "default:block_steel", false)
|
||||
partialblocks.register_material("compressed_sandstone", "Compressed Sandstone", "default:compressed_sandstone", false)
|
||||
partialblocks.register_material("reinforced_cobble", "Reinforced Cobble", "default:reinforced_cobble", false)
|
||||
partialblocks.register_material("frame", "Frame", "default:frame", false)
|
||||
partialblocks.register_material("reinforced_frame", "Reinforced Frame", "default:reinforced_frame", false)
|
||||
partialblocks.register_material("coal", "Coal", "default:block_coal", false)
|
||||
partialblocks.register_material(
|
||||
"stone", "Stone", "default:stone", false)
|
||||
|
||||
partialblocks.register_material(
|
||||
"brick", "Brick", "default:brick", false)
|
||||
|
||||
-- Woodlike
|
||||
|
||||
partialblocks.register_material(
|
||||
"wood", "Wood", "default:planks", true)
|
||||
|
||||
partialblocks.register_material(
|
||||
"oak", "Oak", "default:planks_oak", true)
|
||||
|
||||
partialblocks.register_material(
|
||||
"birch", "Birch", "default:planks_birch", true)
|
||||
|
||||
-- Frames
|
||||
|
||||
partialblocks.register_material(
|
||||
"frame", "Frame", "default:frame", true)
|
||||
|
||||
partialblocks.register_material(
|
||||
"reinforced_frame", "Reinforced Frame", "default:reinforced_frame", true)
|
||||
|
||||
partialblocks.register_material(
|
||||
"reinforced_cobble", "Reinforced Cobble", "default:reinforced_cobble", false)
|
||||
|
||||
-- Misc. blocks
|
||||
|
||||
partialblocks.register_material(
|
||||
"coal", "Coal", "default:block_coal", false)
|
||||
|
||||
partialblocks.register_material(
|
||||
"steel", "Steel", "default:block_steel", false)
|
||||
|
||||
partialblocks.register_material(
|
||||
"compressed_sandstone", "Compressed Sandstone", "default:compressed_sandstone", false)
|
||||
|
||||
default.log("mod:partialblocks", "loaded")
|
||||
|
@ -1,2 +1,3 @@
|
||||
default
|
||||
crafting
|
||||
achievements
|
||||
|
@ -1,3 +1,4 @@
|
||||
|
||||
--
|
||||
-- TNT mod
|
||||
-- By PilzAdam and ShadowNinja
|
||||
@ -7,6 +8,7 @@
|
||||
tnt = {}
|
||||
|
||||
-- Default to enabled in singleplayer and disabled in multiplayer
|
||||
|
||||
local singleplayer = minetest.is_singleplayer()
|
||||
local setting = minetest.setting_getbool("tnt_enable")
|
||||
|
||||
@ -14,27 +16,18 @@ if (not singleplayer and setting ~= true) or (singleplayer and setting == false)
|
||||
return
|
||||
end
|
||||
|
||||
-- loss probabilities array (one in X will be lost)
|
||||
local loss_prob = {}
|
||||
local tnt_radius = tonumber(minetest.setting_get("tnt_radius") or 3)
|
||||
|
||||
loss_prob["default:cobble"] = 3
|
||||
loss_prob["default:dirt"] = 4
|
||||
-- Loss probabilities array (one in X will be lost)
|
||||
|
||||
local radius = tonumber(minetest.setting_get("tnt_radius") or 3)
|
||||
local loss_prob = {
|
||||
["default:cobble"] = 3,
|
||||
["default:dirt"] = 4,
|
||||
}
|
||||
|
||||
-- Fill a list with data for content IDs, after all nodes are registered
|
||||
|
||||
local cid_data = {}
|
||||
minetest.after(
|
||||
0,
|
||||
function()
|
||||
for name, def in pairs(minetest.registered_nodes) do
|
||||
cid_data[minetest.get_content_id(name)] = {
|
||||
name = name,
|
||||
drops = def.drops,
|
||||
on_blast = def.on_blast,
|
||||
}
|
||||
end
|
||||
end)
|
||||
|
||||
local function rand_pos(center, pos, radius)
|
||||
pos.x = center.x + math.random(-radius, radius)
|
||||
@ -168,6 +161,8 @@ function tnt.burn(pos)
|
||||
end
|
||||
end
|
||||
|
||||
-- TNT ground removal
|
||||
|
||||
function tnt.explode(pos, radius, sound)
|
||||
minetest.sound_play(
|
||||
sound,
|
||||
@ -212,15 +207,33 @@ function tnt.explode(pos, radius, sound)
|
||||
return drops
|
||||
end
|
||||
|
||||
-- TNT node explosion
|
||||
|
||||
function tnt.boom(pos)
|
||||
minetest.remove_node(pos)
|
||||
|
||||
local drops = tnt.explode(pos, radius, "tnt_explode")
|
||||
entity_physics(pos, radius)
|
||||
eject_drops(drops, pos, radius)
|
||||
add_effects(pos, radius)
|
||||
local drops = tnt.explode(pos, tnt_radius, "tnt_explode")
|
||||
entity_physics(pos, tnt_radius)
|
||||
eject_drops(drops, pos, tnt_radius)
|
||||
add_effects(pos, tnt_radius)
|
||||
end
|
||||
|
||||
-- On load register content IDs
|
||||
|
||||
local function on_load()
|
||||
for name, def in pairs(minetest.registered_nodes) do
|
||||
cid_data[minetest.get_content_id(name)] = {
|
||||
name = name,
|
||||
drops = def.drops,
|
||||
on_blast = def.on_blast,
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
minetest.after(0, on_load)
|
||||
|
||||
-- Nodes
|
||||
|
||||
minetest.register_node(
|
||||
"tnt:tnt",
|
||||
{
|
||||
@ -229,6 +242,7 @@ minetest.register_node(
|
||||
is_ground_content = false,
|
||||
groups = {dig_immediate = 2},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
|
||||
on_punch = function(pos, node, puncher)
|
||||
local itemname = puncher:get_wielded_item():get_name()
|
||||
|
||||
@ -239,7 +253,9 @@ minetest.register_node(
|
||||
on_blast = function(pos, intensity)
|
||||
tnt.burn(pos)
|
||||
end,
|
||||
})
|
||||
})
|
||||
|
||||
-- Nodes
|
||||
|
||||
minetest.register_node(
|
||||
"tnt:tnt_burning",
|
||||
@ -262,24 +278,25 @@ minetest.register_node(
|
||||
on_timer = tnt.boom,
|
||||
-- unaffected by explosions
|
||||
on_blast = function() end,
|
||||
})
|
||||
})
|
||||
|
||||
minetest.register_craft(
|
||||
-- Crafting
|
||||
|
||||
crafting.register_craft(
|
||||
{
|
||||
output = "tnt:tnt",
|
||||
recipe = {
|
||||
{"", "group:planks", ""},
|
||||
{"group:planks", "default:flint_and_steel", "group:planks"},
|
||||
{"", "group:planks", ""}
|
||||
items = {
|
||||
"group:planks 4",
|
||||
"default:flint_and_steel",
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
minetest.register_craft(
|
||||
{
|
||||
type = "fuel",
|
||||
recipe = "tnt:tnt",
|
||||
burntime = 13,
|
||||
})
|
||||
})
|
||||
|
||||
-- Achievements
|
||||
|
||||
@ -290,6 +307,6 @@ achievements.register_achievement(
|
||||
description = "Craft TNT",
|
||||
times = 1,
|
||||
craftitem = "tnt:tnt",
|
||||
})
|
||||
})
|
||||
|
||||
default.log("mod:tnt", "loaded")
|
||||
|
Loading…
x
Reference in New Issue
Block a user