Optimize code, allfaces leaves by default, leaves walkable by default
parent
bd0fae584c
commit
87031b6051
41
crystal.lua
41
crystal.lua
|
@ -6,7 +6,7 @@ minetest.register_node("ethereal:crystal_spike", {
|
||||||
inventory_image = "crystal_spike.png",
|
inventory_image = "crystal_spike.png",
|
||||||
wield_image = "crystal_spike.png",
|
wield_image = "crystal_spike.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
light_source = default.LIGHT_MAX - 7,
|
light_source = 7,
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
walkable = false,
|
walkable = false,
|
||||||
damage_per_second = 1,
|
damage_per_second = 1,
|
||||||
|
@ -38,7 +38,7 @@ minetest.register_craft({
|
||||||
minetest.register_node("ethereal:crystal_block", {
|
minetest.register_node("ethereal:crystal_block", {
|
||||||
description = "Crystal Block",
|
description = "Crystal Block",
|
||||||
tiles = {"crystal_block.png"},
|
tiles = {"crystal_block.png"},
|
||||||
light_source = default.LIGHT_MAX - 5,
|
light_source = 9,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
groups = {cracky = 1, level = 2, puts_out_fire = 1},
|
groups = {cracky = 1, level = 2, puts_out_fire = 1},
|
||||||
sounds = default.node_sound_glass_defaults(),
|
sounds = default.node_sound_glass_defaults(),
|
||||||
|
@ -152,28 +152,33 @@ minetest.register_tool("ethereal:shovel_crystal", {
|
||||||
|
|
||||||
on_use = function(itemstack, user, pointed_thing)
|
on_use = function(itemstack, user, pointed_thing)
|
||||||
|
|
||||||
if pointed_thing.type ~= "node" then return end
|
if pointed_thing.type ~= "node" then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
-- Check if node protected
|
-- Check if node protected
|
||||||
if not minetest.is_protected(pointed_thing.under, user:get_player_name()) then
|
if minetest.is_protected(pointed_thing.under, user:get_player_name()) then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
local pos = pointed_thing.under
|
local pos = pointed_thing.under
|
||||||
local nn = minetest.get_node_or_nil(pos)
|
local nn = minetest.get_node(pos).name
|
||||||
if nn then nn = nn.name else return end
|
|
||||||
|
|
||||||
-- Is node dirt, sand or gravel
|
-- Is node dirt, sand or gravel
|
||||||
if minetest.get_item_group(nn, "crumbly") > 0 then
|
if minetest.get_item_group(nn, "crumbly") > 0 then
|
||||||
|
|
||||||
local inv = user:get_inventory()
|
local inv = user:get_inventory()
|
||||||
|
|
||||||
minetest.remove_node(pointed_thing.under)
|
minetest.remove_node(pointed_thing.under)
|
||||||
nodeupdate(pos)
|
|
||||||
|
nodeupdate(pos)
|
||||||
inv:add_item("main", {name = nn})
|
|
||||||
itemstack:add_wear(65535 / 100) -- 111 uses
|
inv:add_item("main", {name = nn})
|
||||||
minetest.sound_play("default_dirt_footstep", {pos = pos, gain = 0.35})
|
itemstack:add_wear(65535 / 100) -- 111 uses
|
||||||
return itemstack
|
|
||||||
end
|
minetest.sound_play("default_dirt_footstep", {pos = pos, gain = 0.35})
|
||||||
|
|
||||||
|
return itemstack
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
52
dirt.lua
52
dirt.lua
|
@ -36,15 +36,14 @@ minetest.register_craft({
|
||||||
cooktime = 3,
|
cooktime = 3,
|
||||||
})
|
})
|
||||||
|
|
||||||
local dirt = {}
|
local dirts = {
|
||||||
dirt.type = {
|
"Bamboo", "Jungle", "Grove", "Prairie", "Cold",
|
||||||
{"Bamboo"}, {"Jungle"}, {"Grove"}, {"Prairie"}, {"Cold"},
|
"Crystal", "Mushroom", "Fiery", "Gray"
|
||||||
{"Crystal"}, {"Mushroom"}, {"Fiery"}, {"Gray"},
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, row in pairs(dirt.type) do
|
for n = 1, #dirts do
|
||||||
|
|
||||||
local desc = row[1]
|
local desc = dirts[n]
|
||||||
local name = desc:lower()
|
local name = desc:lower()
|
||||||
|
|
||||||
minetest.register_node("ethereal:"..name.."_dirt", {
|
minetest.register_node("ethereal:"..name.."_dirt", {
|
||||||
|
@ -80,31 +79,34 @@ minetest.register_abm({
|
||||||
chance = 2,
|
chance = 2,
|
||||||
catch_up = false,
|
catch_up = false,
|
||||||
action = function(pos, node)
|
action = function(pos, node)
|
||||||
|
|
||||||
local count_grasses = {}
|
local count_grasses = {}
|
||||||
local curr_max = 0
|
local curr_max = 0
|
||||||
local curr_type = "ethereal:green_dirt" -- fallback
|
local curr_type = "ethereal:green_dirt" -- fallback
|
||||||
local positions = minetest.find_nodes_in_area_under_air(
|
local positions = minetest.find_nodes_in_area(
|
||||||
{x = (pos.x - 2), y = (pos.y - 1), z = (pos.z - 2)},
|
{x = (pos.x - 1), y = (pos.y - 2), z = (pos.z - 1)},
|
||||||
{x = (pos.x + 2), y = (pos.y + 1), z = (pos.z + 2)},
|
{x = (pos.x + 1), y = (pos.y + 2), z = (pos.z + 1)},
|
||||||
"group:ethereal_grass")
|
"group:ethereal_grass")
|
||||||
local n
|
|
||||||
-- count new grass nodes
|
-- count new grass nodes
|
||||||
for _,p in pairs(positions) do
|
for _,p in pairs(positions) do
|
||||||
n = minetest.get_node_or_nil(p)
|
|
||||||
if n and n.name then
|
local n = minetest.get_node(p).name
|
||||||
count_grasses[n.name] = (count_grasses[n.name] or 0) + 1
|
|
||||||
-- we found a grass type with more than current max
|
count_grasses[n] = (count_grasses[n] or 0) + 1
|
||||||
if count_grasses[n.name] > curr_max then
|
|
||||||
curr_max = count_grasses[n.name]
|
-- we found a grass type with more than current max
|
||||||
curr_type = n.name
|
if count_grasses[n] > curr_max then
|
||||||
end
|
curr_max = count_grasses[n]
|
||||||
|
curr_type = n
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
minetest.swap_node(pos, {name = curr_type})
|
minetest.swap_node(pos, {name = curr_type})
|
||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
|
||||||
-- make dirt with dry grass spreads like ethereal grasses
|
-- have dirt with dry grass spreads like ethereal grasses
|
||||||
minetest.override_item("default:dirt_with_dry_grass", {
|
minetest.override_item("default:dirt_with_dry_grass", {
|
||||||
groups = {crumbly = 3, soil = 1, ethereal_grass = 1},
|
groups = {crumbly = 3, soil = 1, ethereal_grass = 1},
|
||||||
})
|
})
|
||||||
|
@ -116,21 +118,25 @@ minetest.register_abm({
|
||||||
chance = 20,
|
chance = 20,
|
||||||
catch_up = false,
|
catch_up = false,
|
||||||
action = function(pos, node)
|
action = function(pos, node)
|
||||||
|
|
||||||
local name = minetest.get_node({
|
local name = minetest.get_node({
|
||||||
x = pos.x,
|
x = pos.x,
|
||||||
y = pos.y + 1,
|
y = pos.y + 1,
|
||||||
z = pos.z
|
z = pos.z
|
||||||
}).name
|
}).name
|
||||||
|
|
||||||
local nodedef = minetest.registered_nodes[name]
|
local nodedef = minetest.registered_nodes[name]
|
||||||
if name ~= "ignore" and nodedef and not ((nodedef.sunlight_propagates or
|
|
||||||
nodedef.paramtype == "light") and
|
if name ~= "ignore" and nodedef
|
||||||
nodedef.liquidtype == "none") then
|
and not ((nodedef.sunlight_propagates or nodedef.paramtype == "light")
|
||||||
|
and nodedef.liquidtype == "none") then
|
||||||
|
|
||||||
minetest.swap_node(pos, {name = "default:dirt"})
|
minetest.swap_node(pos, {name = "default:dirt"})
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
|
||||||
-- If Baked Clay mod not active, make Red and Orange nodes
|
-- If Baked Clay mod not active, make Red, Orange and Grey nodes
|
||||||
if not minetest.get_modpath("bakedclay") then
|
if not minetest.get_modpath("bakedclay") then
|
||||||
|
|
||||||
minetest.register_node(":bakedclay:red", {
|
minetest.register_node(":bakedclay:red", {
|
||||||
|
|
20
extra.lua
20
extra.lua
|
@ -1,4 +1,4 @@
|
||||||
-- Vines
|
-- vines
|
||||||
minetest.register_node("ethereal:vine", {
|
minetest.register_node("ethereal:vine", {
|
||||||
description = "Vine",
|
description = "Vine",
|
||||||
drawtype = "signlike",
|
drawtype = "signlike",
|
||||||
|
@ -106,8 +106,6 @@ minetest.register_craft({
|
||||||
output = "ethereal:glostone",
|
output = "ethereal:glostone",
|
||||||
recipe = {
|
recipe = {
|
||||||
{"default:torch", "default:stone", "dye:yellow"},
|
{"default:torch", "default:stone", "dye:yellow"},
|
||||||
{"", "", ""},
|
|
||||||
{"", "", ""},
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -287,15 +285,17 @@ minetest.register_tool("ethereal:light_staff", {
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local node = minetest.get_node_or_nil(pos)
|
local node = minetest.get_node(pos).name
|
||||||
if node then node = node.name else return end
|
|
||||||
|
|
||||||
if node == "default:stone"
|
if node == "default:stone"
|
||||||
or node == "default:desert_stone" then
|
or node == "default:desert_stone" then
|
||||||
minetest.swap_node(pos, {name="ethereal:glostone"})
|
|
||||||
|
minetest.swap_node(pos, {name = "ethereal:glostone"})
|
||||||
|
|
||||||
if not minetest.setting_getbool("creative_mode") then
|
if not minetest.setting_getbool("creative_mode") then
|
||||||
itemstack:add_wear(65535 / 149) -- 150 uses
|
itemstack:add_wear(65535 / 149) -- 150 uses
|
||||||
end
|
end
|
||||||
|
|
||||||
return itemstack
|
return itemstack
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -319,13 +319,13 @@ minetest.register_on_generated(function(minp, maxp)
|
||||||
end
|
end
|
||||||
|
|
||||||
local bpos
|
local bpos
|
||||||
|
local coal = minetest.find_nodes_in_area_under_air(minp, maxp, "default:stone_with_coal")
|
||||||
|
|
||||||
for key, pos in pairs(minetest.find_nodes_in_area_under_air(minp, maxp, "default:stone_with_coal")) do
|
for n = 1, #coal do
|
||||||
|
|
||||||
bpos = {x = pos.x, y = pos.y + 1, z = pos.z }
|
bpos = {x = coal[n].x, y = coal[n].y + 1, z = coal[n].z }
|
||||||
|
|
||||||
if math.random(1, 2) == 1
|
if math.random(1, 2) == 1 then
|
||||||
and minetest.get_node(bpos).name == "air" then
|
|
||||||
|
|
||||||
if bpos.y > -3000 and bpos.y < -2000 then
|
if bpos.y > -3000 and bpos.y < -2000 then
|
||||||
minetest.swap_node(bpos, {name = "ethereal:illumishroom3"})
|
minetest.swap_node(bpos, {name = "ethereal:illumishroom3"})
|
||||||
|
|
48
fences.lua
48
fences.lua
|
@ -15,29 +15,31 @@ local fences = {
|
||||||
|
|
||||||
for _, row in pairs(fences) do
|
for _, row in pairs(fences) do
|
||||||
|
|
||||||
minetest.register_node("ethereal:fence_"..row[1], {
|
minetest.register_node("ethereal:fence_"..row[1], {
|
||||||
description = row[2].." Fence",
|
description = row[2].." Fence",
|
||||||
drawtype = "fencelike",
|
drawtype = "fencelike",
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
tiles = {row[3]},
|
tiles = {row[3]},
|
||||||
inventory_image = "default_fence_overlay.png^"..row[3].."^default_fence_overlay.png^[makealpha:255,126,126",
|
inventory_image = "default_fence_overlay.png^" .. row[3]
|
||||||
wield_image = "default_fence_overlay.png^"..row[3].."^default_fence_overlay.png^[makealpha:255,126,126",
|
.. "^default_fence_overlay.png^[makealpha:255,126,126",
|
||||||
paramtype = "light",
|
wield_image = "default_fence_overlay.png^" .. row[3]
|
||||||
sunlight_propagates = true,
|
.. "^default_fence_overlay.png^[makealpha:255,126,126",
|
||||||
selection_box = {
|
paramtype = "light",
|
||||||
type = "fixed",
|
sunlight_propagates = true,
|
||||||
fixed = {-1/7, -1/2, -1/7, 1/7, 1/2, 1/7},
|
selection_box = {
|
||||||
},
|
type = "fixed",
|
||||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
fixed = {-1/7, -1/2, -1/7, 1/7, 1/2, 1/7},
|
||||||
sounds = default.node_sound_wood_defaults(),
|
},
|
||||||
})
|
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||||
|
sounds = default.node_sound_wood_defaults(),
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
output = "ethereal:fence_"..row[1].." 4",
|
output = "ethereal:fence_"..row[1].." 4",
|
||||||
recipe = {
|
recipe = {
|
||||||
{row[4], "group:stick", row[4]},
|
{row[4], "group:stick", row[4]},
|
||||||
{row[4], "group:stick", row[4]},
|
{row[4], "group:stick", row[4]},
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -87,10 +87,11 @@ minetest.register_craftitem("ethereal:fishing_rod_baited", {
|
||||||
liquids_pointable = true,
|
liquids_pointable = true,
|
||||||
on_use = function (itemstack, user, pointed_thing)
|
on_use = function (itemstack, user, pointed_thing)
|
||||||
|
|
||||||
if pointed_thing.type ~= "node" then return end
|
if pointed_thing.type ~= "node" then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
local node = minetest.get_node_or_nil(pointed_thing.under)
|
local node = minetest.get_node(pointed_thing.under).name
|
||||||
if node then node = node.name else return end
|
|
||||||
|
|
||||||
if (node == "default:water_source"
|
if (node == "default:water_source"
|
||||||
or node == "default:river_water_source")
|
or node == "default:river_water_source")
|
||||||
|
@ -100,7 +101,9 @@ minetest.register_craftitem("ethereal:fishing_rod_baited", {
|
||||||
local inv = user:get_inventory()
|
local inv = user:get_inventory()
|
||||||
|
|
||||||
if inv:room_for_item("main", {name = type}) then
|
if inv:room_for_item("main", {name = type}) then
|
||||||
|
|
||||||
inv:add_item("main", {name = type})
|
inv:add_item("main", {name = type})
|
||||||
|
|
||||||
return {name = "ethereal:fishing_rod"}
|
return {name = "ethereal:fishing_rod"}
|
||||||
else
|
else
|
||||||
minetest.chat_send_player(user:get_player_name(),
|
minetest.chat_send_player(user:get_player_name(),
|
||||||
|
|
|
@ -90,9 +90,7 @@ minetest.register_abm({
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
if minetest.get_node(seedling).name == "air" then
|
minetest.swap_node(seedling, {name = node.name})
|
||||||
minetest.swap_node(seedling, {name = node.name})
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
12
gates.lua
12
gates.lua
|
@ -26,6 +26,7 @@ function gate_rightclick(pos, node)
|
||||||
end
|
end
|
||||||
|
|
||||||
node.name = split[1] .. "_" .. split[2] .. "_" .. name
|
node.name = split[1] .. "_" .. split[2] .. "_" .. name
|
||||||
|
|
||||||
minetest.swap_node(pos, node)
|
minetest.swap_node(pos, node)
|
||||||
|
|
||||||
minetest.sound_play("doors_door_"..sound, {
|
minetest.sound_play("doors_door_"..sound, {
|
||||||
|
@ -60,7 +61,10 @@ minetest.register_node("ethereal:fencegate_"..row[1].."_open", {
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
walkable = true,
|
walkable = true,
|
||||||
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, not_in_inventory = 1},
|
groups = {
|
||||||
|
snappy = 1, choppy = 2, oddly_breakable_by_hand = 2,
|
||||||
|
flammable = 2, not_in_inventory = 1
|
||||||
|
},
|
||||||
drop = "ethereal:fencegate_"..row[1].."_closed",
|
drop = "ethereal:fencegate_"..row[1].."_closed",
|
||||||
drawtype = "nodebox",
|
drawtype = "nodebox",
|
||||||
node_box = {
|
node_box = {
|
||||||
|
@ -93,8 +97,10 @@ minetest.register_alias("ethereal:"..row[1].."gate_open", "ethereal:fencegate_".
|
||||||
minetest.register_node("ethereal:fencegate_"..row[1].."_closed", {
|
minetest.register_node("ethereal:fencegate_"..row[1].."_closed", {
|
||||||
description = row[2].." Gate",
|
description = row[2].." Gate",
|
||||||
tiles = {row[3]},
|
tiles = {row[3]},
|
||||||
inventory_image = "default_gate_overlay.png^"..row[3].."^default_gate_overlay.png^[makealpha:255,126,126",
|
inventory_image = "default_gate_overlay.png^" .. row[3]
|
||||||
wield_image = "default_gate_overlay.png^"..row[3].."^default_gate_overlay.png^[makealpha:255,126,126",
|
.. "^default_gate_overlay.png^[makealpha:255,126,126",
|
||||||
|
wield_image = "default_gate_overlay.png^" .. row[3]
|
||||||
|
.. "^default_gate_overlay.png^[makealpha:255,126,126",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
paramtype2 = "facedir",
|
paramtype2 = "facedir",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
|
|
5
init.lua
5
init.lua
|
@ -1,6 +1,6 @@
|
||||||
--[[
|
--[[
|
||||||
|
|
||||||
Minetest Ethereal Mod 1.19 (13th December 2015)
|
Minetest Ethereal Mod 1.19 (21st January 2016)
|
||||||
|
|
||||||
Created by ChinChow
|
Created by ChinChow
|
||||||
|
|
||||||
|
@ -9,7 +9,8 @@
|
||||||
]]
|
]]
|
||||||
|
|
||||||
ethereal = {}
|
ethereal = {}
|
||||||
ethereal.leaftype = 0 -- 0 for 2D plantlike, 1 for 3D allfaces
|
ethereal.leaftype = 1 -- 0 for 2D plantlike, 1 for 3D allfaces
|
||||||
|
ethereal.leafwalk = true -- true for walkable leaves, false to fall through
|
||||||
|
|
||||||
-- Set following to 1 to enable biome or 0 to disable
|
-- Set following to 1 to enable biome or 0 to disable
|
||||||
ethereal.glacier = 1 -- Ice glaciers with snow
|
ethereal.glacier = 1 -- Ice glaciers with snow
|
||||||
|
|
28
leaves.lua
28
leaves.lua
|
@ -16,7 +16,7 @@ minetest.register_node("ethereal:acacia_leaves", {
|
||||||
inventory_image = "moretrees_acacia_leaves.png",
|
inventory_image = "moretrees_acacia_leaves.png",
|
||||||
wield_image = "moretrees_acacia_leaves.png",
|
wield_image = "moretrees_acacia_leaves.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
visual_scale = 1.2,
|
visual_scale = 1.2,
|
||||||
waving = 1,
|
waving = 1,
|
||||||
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
||||||
|
@ -37,7 +37,7 @@ minetest.override_item("default:acacia_leaves", {
|
||||||
inventory_image = "moretrees_acacia_leaves.png",
|
inventory_image = "moretrees_acacia_leaves.png",
|
||||||
wield_image = "moretrees_acacia_leaves.png",
|
wield_image = "moretrees_acacia_leaves.png",
|
||||||
visual_scale = 1.2,
|
visual_scale = 1.2,
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
drop = {
|
drop = {
|
||||||
max_items = 1,
|
max_items = 1,
|
||||||
items = {
|
items = {
|
||||||
|
@ -57,7 +57,7 @@ minetest.register_node("ethereal:willow_twig", {
|
||||||
inventory_image = "willow_twig.png",
|
inventory_image = "willow_twig.png",
|
||||||
wield_image = "willow_twig.png",
|
wield_image = "willow_twig.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
visual_scale = 1.2,
|
visual_scale = 1.2,
|
||||||
waving = 1,
|
waving = 1,
|
||||||
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
||||||
|
@ -81,7 +81,7 @@ minetest.register_node("ethereal:redwood_leaves", {
|
||||||
inventory_image = "redwood_leaves.png",
|
inventory_image = "redwood_leaves.png",
|
||||||
wield_image = "redwood_leaves.png",
|
wield_image = "redwood_leaves.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
waving = 1,
|
waving = 1,
|
||||||
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
||||||
drop = {
|
drop = {
|
||||||
|
@ -101,7 +101,7 @@ minetest.override_item("default:leaves", {
|
||||||
visual_scale = 1.2,
|
visual_scale = 1.2,
|
||||||
inventory_image = "default_leaves.png",
|
inventory_image = "default_leaves.png",
|
||||||
wield_image = "default_leaves.png",
|
wield_image = "default_leaves.png",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
drop = {
|
drop = {
|
||||||
max_items = 1,
|
max_items = 1,
|
||||||
items = {
|
items = {
|
||||||
|
@ -120,7 +120,7 @@ minetest.register_node("ethereal:orange_leaves", {
|
||||||
inventory_image = "orange_leaves.png",
|
inventory_image = "orange_leaves.png",
|
||||||
wield_image = "orange_leaves.png",
|
wield_image = "orange_leaves.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
waving = 1,
|
waving = 1,
|
||||||
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
||||||
drop = {
|
drop = {
|
||||||
|
@ -140,7 +140,7 @@ minetest.override_item("default:jungleleaves", {
|
||||||
visual_scale = 1.2,
|
visual_scale = 1.2,
|
||||||
inventory_image = "default_jungleleaves.png",
|
inventory_image = "default_jungleleaves.png",
|
||||||
wield_image = "default_jungleleaves.png",
|
wield_image = "default_jungleleaves.png",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
drop = {
|
drop = {
|
||||||
max_items = 1,
|
max_items = 1,
|
||||||
items = {
|
items = {
|
||||||
|
@ -159,7 +159,7 @@ minetest.register_node("ethereal:bananaleaves", {
|
||||||
inventory_image = "banana_leaf.png",
|
inventory_image = "banana_leaf.png",
|
||||||
wield_image = "banana_leaf.png",
|
wield_image = "banana_leaf.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
waving = 1,
|
waving = 1,
|
||||||
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
||||||
drop = {
|
drop = {
|
||||||
|
@ -182,7 +182,7 @@ minetest.register_node("ethereal:yellowleaves", {
|
||||||
inventory_image = "yellow_leaves.png",
|
inventory_image = "yellow_leaves.png",
|
||||||
wield_image = "yellow_leaves.png",
|
wield_image = "yellow_leaves.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
waving = 1,
|
waving = 1,
|
||||||
groups = {snappy = 3, leafdecay = 3, leaves = 1},
|
groups = {snappy = 3, leafdecay = 3, leaves = 1},
|
||||||
drop = {
|
drop = {
|
||||||
|
@ -208,7 +208,7 @@ minetest.register_node("ethereal:palmleaves", {
|
||||||
inventory_image = "moretrees_palm_leaves.png",
|
inventory_image = "moretrees_palm_leaves.png",
|
||||||
wield_image = "moretrees_palm_leaves.png",
|
wield_image = "moretrees_palm_leaves.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
waving = 1,
|
waving = 1,
|
||||||
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
||||||
drop = {
|
drop = {
|
||||||
|
@ -231,7 +231,7 @@ minetest.register_node("ethereal:birch_leaves", {
|
||||||
inventory_image = "moretrees_birch_leaves.png",
|
inventory_image = "moretrees_birch_leaves.png",
|
||||||
wield_image = "moretrees_birch_leaves.png",
|
wield_image = "moretrees_birch_leaves.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
waving = 1,
|
waving = 1,
|
||||||
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
||||||
drop = {
|
drop = {
|
||||||
|
@ -252,7 +252,7 @@ minetest.override_item("default:pine_needles", {
|
||||||
tiles = {"pine_leaves.png"},
|
tiles = {"pine_leaves.png"},
|
||||||
inventory_image = "pine_leaves.png",
|
inventory_image = "pine_leaves.png",
|
||||||
wield_image = "pine_leaves.png",
|
wield_image = "pine_leaves.png",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
drop = {
|
drop = {
|
||||||
max_items = 1,
|
max_items = 1,
|
||||||
items = {
|
items = {
|
||||||
|
@ -273,7 +273,7 @@ minetest.register_node("ethereal:frost_leaves", {
|
||||||
inventory_image = "ethereal_frost_leaves.png",
|
inventory_image = "ethereal_frost_leaves.png",
|
||||||
wield_image = "ethereal_frost_leaves.png",
|
wield_image = "ethereal_frost_leaves.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
waving = 1,
|
waving = 1,
|
||||||
groups = {snappy = 3, leafdecay = 3, leaves = 1, puts_out_fire = 1},
|
groups = {snappy = 3, leafdecay = 3, leaves = 1, puts_out_fire = 1},
|
||||||
drop = {
|
drop = {
|
||||||
|
@ -347,7 +347,7 @@ minetest.register_node("ethereal:bamboo_leaves", {
|
||||||
inventory_image = "bamboo_leaves.png",
|
inventory_image = "bamboo_leaves.png",
|
||||||
wield_image = "bamboo_leaves.png",
|
wield_image = "bamboo_leaves.png",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
walkable = false,
|
walkable = ethereal.leafwalk,
|
||||||
waving = 1,
|
waving = 1,
|
||||||
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
|
||||||
drop = {
|
drop = {
|
||||||
|
|
|
@ -59,14 +59,16 @@ minetest.register_abm({
|
||||||
action = function(pos, node)
|
action = function(pos, node)
|
||||||
|
|
||||||
if minetest.get_node_light(pos, nil) > 14 then
|
if minetest.get_node_light(pos, nil) > 14 then
|
||||||
|
|
||||||
minetest.remove_node(pos)
|
minetest.remove_node(pos)
|
||||||
|
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local random = {
|
local random = {
|
||||||
x = pos.x + math.random(-2,2),
|
x = pos.x + math.random(-2, 2),
|
||||||
y = pos.y + math.random(-1,1),
|
y = pos.y + math.random(-1, 1),
|
||||||
z = pos.z + math.random(-2,2)
|
z = pos.z + math.random(-2, 2)
|
||||||
}
|
}
|
||||||
|
|
||||||
local random_node = minetest.get_node_or_nil(random)
|
local random_node = minetest.get_node_or_nil(random)
|
||||||
|
|
|
@ -14,6 +14,7 @@ minetest.register_abm({
|
||||||
local high = 4
|
local high = 4
|
||||||
|
|
||||||
pos.y = pos.y - 1
|
pos.y = pos.y - 1
|
||||||
|
|
||||||
local nod = minetest.get_node_or_nil(pos)
|
local nod = minetest.get_node_or_nil(pos)
|
||||||
|
|
||||||
if not nod
|
if not nod
|
||||||
|
@ -23,10 +24,11 @@ minetest.register_abm({
|
||||||
end
|
end
|
||||||
|
|
||||||
if node.name == "ethereal:bamboo" then
|
if node.name == "ethereal:bamboo" then
|
||||||
high = 8 -- was 5
|
high = 8
|
||||||
end
|
end
|
||||||
|
|
||||||
pos.y = pos.y + 1
|
pos.y = pos.y + 1
|
||||||
|
|
||||||
local height = 0
|
local height = 0
|
||||||
|
|
||||||
while height < high
|
while height < high
|
||||||
|
@ -40,8 +42,10 @@ minetest.register_abm({
|
||||||
if nod
|
if nod
|
||||||
and nod.name == "air"
|
and nod.name == "air"
|
||||||
and height < high then
|
and height < high then
|
||||||
|
|
||||||
if node.name == "ethereal:bamboo"
|
if node.name == "ethereal:bamboo"
|
||||||
and height == (high - 1) then
|
and height == (high - 1) then
|
||||||
|
|
||||||
ethereal.add_tree({
|
ethereal.add_tree({
|
||||||
x = pos.x,
|
x = pos.x,
|
||||||
y = oripos,
|
y = oripos,
|
||||||
|
|
|
@ -17,8 +17,7 @@ minetest.register_node("ethereal:fire_flower", {
|
||||||
fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},
|
fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},
|
||||||
},
|
},
|
||||||
on_punch = function(pos, node, puncher)
|
on_punch = function(pos, node, puncher)
|
||||||
--local item = puncher:get_wielded_item()
|
|
||||||
--local itemname = item:get_name()
|
|
||||||
puncher:punch(puncher, 1.0, {
|
puncher:punch(puncher, 1.0, {
|
||||||
full_punch_interval = 1.0,
|
full_punch_interval = 1.0,
|
||||||
damage_groups = {fleshy = 2}
|
damage_groups = {fleshy = 2}
|
||||||
|
@ -151,8 +150,9 @@ minetest.register_node("ethereal:crystalgrass", {
|
||||||
|
|
||||||
-- Define Moss Types (Has grass textures on all sides)
|
-- Define Moss Types (Has grass textures on all sides)
|
||||||
function ethereal.add_moss(typ, descr, texture, receipe_item)
|
function ethereal.add_moss(typ, descr, texture, receipe_item)
|
||||||
minetest.register_node("ethereal:"..typ.."_moss", {
|
|
||||||
description = descr.." Moss",
|
minetest.register_node("ethereal:" .. typ .. "_moss", {
|
||||||
|
description = descr .. " Moss",
|
||||||
tiles = {texture},
|
tiles = {texture},
|
||||||
groups = {crumbly = 3},
|
groups = {crumbly = 3},
|
||||||
sounds = default.node_sound_dirt_defaults()
|
sounds = default.node_sound_dirt_defaults()
|
||||||
|
@ -170,7 +170,7 @@ ethereal.add_moss( "fiery", "Fiery", "ethereal_grass_fiery_top.png", "ethereal:d
|
||||||
ethereal.add_moss( "gray", "Gray", "ethereal_grass_gray_top.png", "ethereal:snowygrass")
|
ethereal.add_moss( "gray", "Gray", "ethereal_grass_gray_top.png", "ethereal:snowygrass")
|
||||||
ethereal.add_moss( "green", "Green", "default_grass.png", "default:jungleleaves")
|
ethereal.add_moss( "green", "Green", "default_grass.png", "default:jungleleaves")
|
||||||
|
|
||||||
-- apple
|
-- fix apples hanging in sky when no tree around
|
||||||
minetest.override_item("default:apple", {
|
minetest.override_item("default:apple", {
|
||||||
drop = "default:apple",
|
drop = "default:apple",
|
||||||
})
|
})
|
||||||
|
@ -341,7 +341,7 @@ minetest.register_node("ethereal:bamboo", {
|
||||||
type = "fixed",
|
type = "fixed",
|
||||||
fixed = {-0.3, -0.5, -0.3, 0.3, 0.5, 0.3}
|
fixed = {-0.3, -0.5, -0.3, 0.3, 0.5, 0.3}
|
||||||
},
|
},
|
||||||
groups = {choppy = 3, oddly_breakable_by_hand = 1, flammable = 2, tree = 1}, -- added tree
|
groups = {choppy = 3, oddly_breakable_by_hand = 1, flammable = 2, tree = 1},
|
||||||
sounds = default.node_sound_leaves_defaults(),
|
sounds = default.node_sound_leaves_defaults(),
|
||||||
after_dig_node = function(pos, node, metadata, digger)
|
after_dig_node = function(pos, node, metadata, digger)
|
||||||
default.dig_up(pos, node, digger)
|
default.dig_up(pos, node, digger)
|
||||||
|
@ -364,13 +364,10 @@ minetest.register_node("ethereal:bamboo_sprout", {
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
walkable = false,
|
walkable = false,
|
||||||
--buildable_to = true,
|
|
||||||
--groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 2},
|
|
||||||
groups = {
|
groups = {
|
||||||
snappy = 3, attached_node = 1, flammable = 2,
|
snappy = 3, attached_node = 1, flammable = 2,
|
||||||
dig_immediate = 3, ethereal_sapling = 1
|
dig_immediate = 3, ethereal_sapling = 1
|
||||||
},
|
},
|
||||||
--sounds = default.node_sound_leaves_defaults(),
|
|
||||||
sounds = default.node_sound_defaults(),
|
sounds = default.node_sound_defaults(),
|
||||||
selection_box = {
|
selection_box = {
|
||||||
type = "fixed",
|
type = "fixed",
|
||||||
|
@ -462,7 +459,7 @@ for _,items in pairs({
|
||||||
{"default:ice", "default:snow"},
|
{"default:ice", "default:snow"},
|
||||||
{"ethereal:dry_dirt", "default:desert_sand"},
|
{"ethereal:dry_dirt", "default:desert_sand"},
|
||||||
}) do
|
}) do
|
||||||
local a,b = unpack(items)
|
local a, b = unpack(items)
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
output = b.." 5",
|
output = b.." 5",
|
||||||
recipe = {
|
recipe = {
|
||||||
|
@ -531,7 +528,7 @@ minetest.register_node("ethereal:candle", {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
light_source = default.LIGHT_MAX - 3,
|
light_source = 11,
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
walkable = false,
|
walkable = false,
|
||||||
groups = {dig_immediate = 3, attached_node = 1},
|
groups = {dig_immediate = 3, attached_node = 1},
|
||||||
|
@ -543,7 +540,7 @@ minetest.register_node("ethereal:candle", {
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
output = "ethereal:candle 6",
|
output = "ethereal:candle 4",
|
||||||
recipe = {
|
recipe = {
|
||||||
{"","farming:cotton"},
|
{"","farming:cotton"},
|
||||||
{"","ethereal:palm_wax"},
|
{"","ethereal:palm_wax"},
|
||||||
|
|
13
sapling.lua
13
sapling.lua
|
@ -57,8 +57,11 @@ local path = minetest.get_modpath("ethereal").."/schematics/"
|
||||||
|
|
||||||
ethereal.grow_sapling = function (pos, node)
|
ethereal.grow_sapling = function (pos, node)
|
||||||
|
|
||||||
local under = minetest.get_node_or_nil({x = pos.x, y = pos.y - 1, z = pos.z})
|
local under = minetest.get_node({
|
||||||
if under then under = under.name else return end
|
x = pos.x,
|
||||||
|
y = pos.y - 1,
|
||||||
|
z = pos.z
|
||||||
|
}).name
|
||||||
|
|
||||||
-- Check if Sapling is growing on correct substrate
|
-- Check if Sapling is growing on correct substrate
|
||||||
if node.name == "ethereal:yellow_tree_sapling"
|
if node.name == "ethereal:yellow_tree_sapling"
|
||||||
|
@ -139,13 +142,15 @@ minetest.register_craftitem("ethereal:tree_tool", {
|
||||||
description = "Tree Tool",
|
description = "Tree Tool",
|
||||||
inventory_image = "default_stick.png",
|
inventory_image = "default_stick.png",
|
||||||
on_use = function(itemstack, user, pointed_thing)
|
on_use = function(itemstack, user, pointed_thing)
|
||||||
|
|
||||||
if not pointed_thing
|
if not pointed_thing
|
||||||
or pointed_thing.type ~= "node" then
|
or pointed_thing.type ~= "node" then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local pos = pointed_thing.under
|
local pos = pointed_thing.under
|
||||||
local nod = minetest.get_node_or_nil(pos)
|
local nod = minetest.get_node(pos)
|
||||||
if not nod then return end
|
|
||||||
ethereal.grow_sapling(pos, nod)
|
ethereal.grow_sapling(pos, nod)
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
45
sealife.lua
45
sealife.lua
|
@ -138,11 +138,11 @@ minetest.register_ore({
|
||||||
clust_scarcity = 10*10*10,
|
clust_scarcity = 10*10*10,
|
||||||
clust_num_ores = 24,
|
clust_num_ores = 24,
|
||||||
clust_size = 4,
|
clust_size = 4,
|
||||||
y_max = -14,
|
y_max = -12,
|
||||||
y_min = -100,
|
y_min = -100,
|
||||||
})
|
})
|
||||||
|
|
||||||
-- randomly generate coral or seaweed and have seaweed grow up to 10 high
|
-- randomly generate coral or seaweed and have seaweed grow up to 14 high
|
||||||
minetest.register_abm({
|
minetest.register_abm({
|
||||||
nodenames = {"ethereal:sandy"},
|
nodenames = {"ethereal:sandy"},
|
||||||
neighbors = {"group:water"},
|
neighbors = {"group:water"},
|
||||||
|
@ -152,29 +152,42 @@ minetest.register_abm({
|
||||||
action = function(pos, node)
|
action = function(pos, node)
|
||||||
|
|
||||||
local sel = math.random(1, 5)
|
local sel = math.random(1, 5)
|
||||||
if sel == 1
|
|
||||||
or node.name == "ethereal:seaweed" then
|
|
||||||
local height = 0
|
|
||||||
|
|
||||||
while (minetest.get_node(pos).name == "ethereal:seaweed"
|
pos.y = pos.y + 1
|
||||||
or minetest.get_node(pos).name == "ethereal:sandy")
|
|
||||||
and height < 14 do
|
local nod = minetest.get_node(pos).name
|
||||||
|
|
||||||
|
if nod == "default:water_source"
|
||||||
|
and sel > 1 then
|
||||||
|
|
||||||
|
if minetest.get_node(pos).name == "default:water_source" then
|
||||||
|
|
||||||
|
minetest.swap_node(pos, {name = "ethereal:coral" .. sel})
|
||||||
|
end
|
||||||
|
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
if nod == "ethereal:seaweed"
|
||||||
|
or sel == 1 then
|
||||||
|
|
||||||
|
local height = 0
|
||||||
|
local high = 14
|
||||||
|
|
||||||
|
while height < high
|
||||||
|
and minetest.get_node(pos).name == "ethereal:seaweed" do
|
||||||
height = height + 1
|
height = height + 1
|
||||||
pos.y = pos.y + 1
|
pos.y = pos.y + 1
|
||||||
end
|
end
|
||||||
|
|
||||||
if height < 14
|
if pos.y < 1
|
||||||
and pos.y < 0
|
and height < high
|
||||||
and minetest.get_node(pos).name == "default:water_source" then
|
and minetest.get_node(pos).name == "default:water_source" then
|
||||||
|
|
||||||
minetest.swap_node(pos, {name = "ethereal:seaweed"})
|
minetest.swap_node(pos, {name = "ethereal:seaweed"})
|
||||||
end
|
end
|
||||||
|
|
||||||
else
|
|
||||||
pos.y = pos.y + 1
|
|
||||||
if minetest.get_node(pos).name == "default:water_source" then
|
|
||||||
minetest.swap_node(pos, {name = "ethereal:coral"..sel})
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 444 B After Width: | Height: | Size: 421 B |
Binary file not shown.
After Width: | Height: | Size: 444 B |
10
water.lua
10
water.lua
|
@ -89,6 +89,7 @@ minetest.register_abm({
|
||||||
action = function(pos, node)
|
action = function(pos, node)
|
||||||
|
|
||||||
local water_node = "default:water"
|
local water_node = "default:water"
|
||||||
|
|
||||||
if pos.y > 2 then
|
if pos.y > 2 then
|
||||||
water_node = "default:river_water"
|
water_node = "default:river_water"
|
||||||
end
|
end
|
||||||
|
@ -98,8 +99,10 @@ minetest.register_abm({
|
||||||
or node.name == "ethereal:icebrick"
|
or node.name == "ethereal:icebrick"
|
||||||
or node.name == "ethereal:snowbrick" then
|
or node.name == "ethereal:snowbrick" then
|
||||||
minetest.swap_node(pos, {name = water_node.."_source"})
|
minetest.swap_node(pos, {name = water_node.."_source"})
|
||||||
|
|
||||||
elseif node.name == "default:snow" then
|
elseif node.name == "default:snow" then
|
||||||
minetest.swap_node(pos, {name = water_node.."_flowing"})
|
minetest.swap_node(pos, {name = water_node.."_flowing"})
|
||||||
|
|
||||||
elseif node.name == "default:dirt_with_snow" then
|
elseif node.name == "default:dirt_with_snow" then
|
||||||
minetest.swap_node(pos, {name = "default:dirt_with_grass"})
|
minetest.swap_node(pos, {name = "default:dirt_with_grass"})
|
||||||
end
|
end
|
||||||
|
@ -116,6 +119,7 @@ minetest.register_abm({
|
||||||
chance = 2,
|
chance = 2,
|
||||||
catch_up = false,
|
catch_up = false,
|
||||||
action = function(pos, node)
|
action = function(pos, node)
|
||||||
|
|
||||||
if node == "ethereal:dry_dirt" then
|
if node == "ethereal:dry_dirt" then
|
||||||
minetest.swap_node(pos, {name = "default:dirt"})
|
minetest.swap_node(pos, {name = "default:dirt"})
|
||||||
else
|
else
|
||||||
|
@ -132,20 +136,26 @@ minetest.register_abm({
|
||||||
chance = 1,
|
chance = 1,
|
||||||
catch_up = false,
|
catch_up = false,
|
||||||
action = function(pos, node)
|
action = function(pos, node)
|
||||||
|
|
||||||
local num = #minetest.find_nodes_in_area(
|
local num = #minetest.find_nodes_in_area(
|
||||||
{x = pos.x - 1, y = pos.y, z = pos.z},
|
{x = pos.x - 1, y = pos.y, z = pos.z},
|
||||||
{x = pos.x + 1, y = pos.y, z = pos.z},
|
{x = pos.x + 1, y = pos.y, z = pos.z},
|
||||||
{"group:water"})
|
{"group:water"})
|
||||||
|
|
||||||
num = num + #minetest.find_nodes_in_area(
|
num = num + #minetest.find_nodes_in_area(
|
||||||
{x = pos.x, y = pos.y, z = pos.z - 1},
|
{x = pos.x, y = pos.y, z = pos.z - 1},
|
||||||
{x = pos.x, y = pos.y, z = pos.z + 1},
|
{x = pos.x, y = pos.y, z = pos.z + 1},
|
||||||
{"group:water"})
|
{"group:water"})
|
||||||
|
|
||||||
num = num + #minetest.find_nodes_in_area(
|
num = num + #minetest.find_nodes_in_area(
|
||||||
{x = pos.x, y = pos.y + 1, z = pos.z},
|
{x = pos.x, y = pos.y + 1, z = pos.z},
|
||||||
{x = pos.x, y = pos.y + 1, z = pos.z},
|
{x = pos.x, y = pos.y + 1, z = pos.z},
|
||||||
{"group:water"})
|
{"group:water"})
|
||||||
|
|
||||||
if num > 0 then
|
if num > 0 then
|
||||||
|
|
||||||
minetest.swap_node(pos, {name = "default:water_flowing"})
|
minetest.swap_node(pos, {name = "default:water_flowing"})
|
||||||
|
|
||||||
minetest.add_item(pos, {name = node.name})
|
minetest.add_item(pos, {name = node.name})
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
|
|
Loading…
Reference in New Issue