Make the liquid recipes work without functions.
This commit is contained in:
parent
d820a49197
commit
d18e98bfa2
6 changed files with 48 additions and 91 deletions
50
elixir.lua
50
elixir.lua
|
@ -91,37 +91,23 @@ if fun_caves.elixir_armor then
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
for _, solvent in pairs({'mobs_slimes:green_slimeball', 'fun_caves:bucket_sap'}) do
|
minetest.register_craft({
|
||||||
minetest.register_craft({
|
type = "shapeless",
|
||||||
type = "shapeless",
|
output = 'fun_caves:liquid_'..name,
|
||||||
output = 'fun_caves:liquid_'..name,
|
recipe = {
|
||||||
recipe = {
|
'mobs_slimes:green_slimeball',
|
||||||
solvent,
|
desc[3],
|
||||||
desc[3],
|
"vessels:glass_bottle",
|
||||||
"vessels:glass_bottle",
|
},
|
||||||
},
|
})
|
||||||
})
|
|
||||||
end
|
minetest.register_craft({
|
||||||
|
type = "shapeless",
|
||||||
|
output = 'fun_caves:liquid_'..name,
|
||||||
|
recipe = {
|
||||||
|
'fun_caves:syrup',
|
||||||
|
desc[3],
|
||||||
|
},
|
||||||
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
minetest.register_on_craft(function(itemstack, player, old_craft_grid, craft_inv)
|
|
||||||
local name = itemstack:get_name()
|
|
||||||
if not (name and name:find('^fun_caves:liquid_')) then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
local bucket
|
|
||||||
local index
|
|
||||||
for i = 1, player:get_inventory():get_size("craft") do
|
|
||||||
if (old_craft_grid[i]:get_name()):find('^fun_caves:bucket') then
|
|
||||||
bucket = old_craft_grid[i]
|
|
||||||
index = i
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if not bucket then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
craft_inv:set_stack("craft", index, 'bucket:bucket_empty')
|
|
||||||
end)
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -156,64 +156,12 @@ minetest.register_craft({
|
||||||
'group:water_bucket',
|
'group:water_bucket',
|
||||||
'group:bowl',
|
'group:bowl',
|
||||||
},
|
},
|
||||||
|
replacements = {
|
||||||
|
{'bucket:bucket_water', 'bucket:bucket_water'},
|
||||||
|
{'bucket:bucket_river_water', 'bucket:bucket_river_water'},
|
||||||
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
-- complicated function to keep from wasting water...
|
|
||||||
--minetest.register_on_craft(function(itemstack, player, old_craft_grid, craft_inv)
|
|
||||||
-- if itemstack:get_name() ~= "fun_caves:disgusting_gruel_raw" then
|
|
||||||
-- return
|
|
||||||
-- end
|
|
||||||
--
|
|
||||||
-- local bucket
|
|
||||||
-- local index
|
|
||||||
-- for i = 1, player:get_inventory():get_size("craft") do
|
|
||||||
-- if (old_craft_grid[i]:get_name()):find('^bucket') then
|
|
||||||
-- bucket = old_craft_grid[i]
|
|
||||||
-- index = i
|
|
||||||
-- end
|
|
||||||
-- end
|
|
||||||
-- if not bucket then
|
|
||||||
-- return
|
|
||||||
-- end
|
|
||||||
--
|
|
||||||
-- local data = minetest.deserialize(bucket:get_metadata())
|
|
||||||
-- if not data then
|
|
||||||
-- data = {}
|
|
||||||
-- end
|
|
||||||
-- if not data.gruels then
|
|
||||||
-- data.gruels = 20
|
|
||||||
-- end
|
|
||||||
-- data.gruels = data.gruels - 1
|
|
||||||
-- if data.gruels > 0 then
|
|
||||||
-- bucket:set_metadata(minetest.serialize(data))
|
|
||||||
-- craft_inv:set_stack("craft", index, bucket)
|
|
||||||
-- else
|
|
||||||
-- craft_inv:set_stack("craft", index, 'bucket:bucket_empty')
|
|
||||||
-- end
|
|
||||||
--end)
|
|
||||||
|
|
||||||
-- less complicated function to keep from wasting water...
|
|
||||||
-- Just return the bucket and don't worry about it.
|
|
||||||
minetest.register_on_craft(function(itemstack, player, old_craft_grid, craft_inv)
|
|
||||||
if itemstack:get_name() ~= "fun_caves:disgusting_gruel_raw" then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
local bucket
|
|
||||||
local index
|
|
||||||
for i = 1, player:get_inventory():get_size("craft") do
|
|
||||||
if (old_craft_grid[i]:get_name()):find('^bucket') then
|
|
||||||
bucket = old_craft_grid[i]
|
|
||||||
index = i
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if not bucket then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
craft_inv:set_stack("craft", index, bucket)
|
|
||||||
end)
|
|
||||||
|
|
||||||
minetest.register_craftitem("fun_caves:wooden_bowl", {
|
minetest.register_craftitem("fun_caves:wooden_bowl", {
|
||||||
description = "Wooden Bowl",
|
description = "Wooden Bowl",
|
||||||
drawtype = "plantlike",
|
drawtype = "plantlike",
|
||||||
|
|
2
mobs.lua
2
mobs.lua
|
@ -388,7 +388,7 @@ if minetest.registered_entities["mobs:bee"] then
|
||||||
drops = {
|
drops = {
|
||||||
{name = "mobs:honey", chance = 2, min = 1, max = 2},
|
{name = "mobs:honey", chance = 2, min = 1, max = 2},
|
||||||
},
|
},
|
||||||
water_damage = 1,
|
water_damage = 0,
|
||||||
lava_damage = 5,
|
lava_damage = 5,
|
||||||
light_damage = 0,
|
light_damage = 0,
|
||||||
fall_damage = 0,
|
fall_damage = 0,
|
||||||
|
|
|
@ -72,7 +72,8 @@ local function floor(pos, blocks, node_name, user)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
local nodes = {{'fun_caves:pyramid_1', 'default:sandstone'},}
|
-- Bombs
|
||||||
|
local nodes = {{'fun_caves:pyramid_1', 'default:sandstone'}, {'fun_caves:tree', 'fun_caves:tree'},}
|
||||||
for _, node in pairs(nodes) do
|
for _, node in pairs(nodes) do
|
||||||
local node_name = node[1]
|
local node_name = node[1]
|
||||||
local comp = node[2] or node_name
|
local comp = node[2] or node_name
|
||||||
|
@ -104,7 +105,8 @@ for _, node in pairs(nodes) do
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
local nodes = {{'default:sandstone', 'default:sandstone'},}
|
-- Floor bombs
|
||||||
|
local nodes = {{'default:sandstone', 'default:sandstone'}, {'default:wood', 'default:wood'},}
|
||||||
for _, node in pairs(nodes) do
|
for _, node in pairs(nodes) do
|
||||||
local node_name = node[1]
|
local node_name = node[1]
|
||||||
local comp = node[2] or node_name
|
local comp = node[2] or node_name
|
||||||
|
|
BIN
textures/fun_caves_amber.png
Normal file
BIN
textures/fun_caves_amber.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 659 B |
21
treegen.lua
21
treegen.lua
|
@ -150,6 +150,20 @@ bucket.register_liquid(
|
||||||
{}
|
{}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
minetest.register_node("fun_caves:amber", {
|
||||||
|
description = "Amber",
|
||||||
|
drawtype = "glasslike",
|
||||||
|
paramtype = "light",
|
||||||
|
sunlight_propagates = true,
|
||||||
|
tiles = {"fun_caves_amber.png"},
|
||||||
|
inventory_image = minetest.inventorycube("fun_caves_amber.png"),
|
||||||
|
light_source = 1,
|
||||||
|
use_texture_alpha = true,
|
||||||
|
is_ground_content = false,
|
||||||
|
groups = {cracky = 3, level=2},
|
||||||
|
sounds = default.node_sound_stone_defaults(),
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_node("fun_caves:syrup", {
|
minetest.register_node("fun_caves:syrup", {
|
||||||
description = "Syrup",
|
description = "Syrup",
|
||||||
drawtype = "plantlike",
|
drawtype = "plantlike",
|
||||||
|
@ -257,6 +271,13 @@ minetest.register_craft({
|
||||||
replacements = {{'fun_caves:bucket_sap', 'bucket:bucket_empty'},},
|
replacements = {{'fun_caves:bucket_sap', 'bucket:bucket_empty'},},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type = "cooking",
|
||||||
|
output = "fun_caves:amber",
|
||||||
|
recipe = "fun_caves:bucket_sap",
|
||||||
|
replacements = {{'fun_caves:bucket_sap', 'bucket:bucket_empty'},},
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
--minetest.register_craft( {
|
--minetest.register_craft( {
|
||||||
-- output = "vessels:glass_bottle 10",
|
-- output = "vessels:glass_bottle 10",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue