Skip to content
Snippets Groups Projects
Commit b16a5f0a authored by neko259's avatar neko259
Browse files

Refactored nature classic global functions

parent 7a513e85
No related branches found
No related tags found
No related merge requests found
local NODE_YOUNG = "young"
local SETTING_TRUE = "true"
local SETTING_FALSE = "false"
local YOUTH_DELAY = 5
nature = {}
local function set_young_node(pos)
local meta = minetest.get_meta(pos)
meta:set_string(NODE_YOUNG, "true")
minetest.after(5,
function(pos)
local meta = minetest.get_meta(pos)
meta:set_string(NODE_YOUNG, "false")
end,
meta:set_string(NODE_YOUNG, SETTING_TRUE)
minetest.after(YOUTH_DELAY,
function(pos)
local meta = minetest.get_meta(pos)
meta:set_string(NODE_YOUNG, SETTING_FALSE)
end,
pos)
end
......@@ -18,26 +23,26 @@ local function is_not_young(pos)
local meta = minetest.get_meta(pos)
local young = meta:get_string(NODE_YOUNG)
return young ~= "true"
return young ~= SETTING_TRUE
end
function nature:grow_node(pos, nodename)
if pos ~= nil then
local light_enough = minetest.get_node_light(pos, nil)
>= MINIMUM_GROWTH_LIGHT
local light_enough = minetest.get_node_light(pos, nil)
>= MINIMUM_GROWTH_LIGHT
if is_not_young(pos) and light_enough then
minetest.remove_node(pos)
minetest.set_node(pos, { name = nodename })
set_young_node(pos)
if is_not_young(pos) and light_enough then
minetest.remove_node(pos)
minetest.set_node(pos, { name = nodename })
set_young_node(pos)
minetest.log("info", nodename .. " has grown at " .. pos.x .. ","
.. pos.y .. "," .. pos.z)
end
minetest.log("info", nodename .. " has grown at " .. pos.x .. ","
.. pos.y .. "," .. pos.z)
end
end
end
function nature:is_near_water(pos)
return minetest.find_node_near(pos, DISTANCE_FROM_WATER,
{ "default:water_source" }) ~= nil or DISTANCE_FROM_WATER == -1
return DISTANCE_FROM_WATER == -1 or minetest.find_node_near(pos, DISTANCE_FROM_WATER,
{ "default:water_source" }) ~= nil
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment