mirror of
https://github.com/minetest-mods/mesecons.git
synced 2025-06-28 13:56:02 +02:00
Re-implement settings system:
Settings can now be retrieved by mesecon.setting(<name>, <default>) and can be modified without editing the source code by adding the setting to minetest.conf For instance, you can add mesecon.blinky_plant_interval = 0.5 to minetest.conf in order to increase the blinking speed. Rewrite the blinky plant with nodetimers. Fixes #161
This commit is contained in:
@ -91,13 +91,14 @@ minetest.register_entity("mesecons_movestones:movestone_entity", {
|
||||
pos.x, pos.y, pos.z = math.floor(pos.x+0.5), math.floor(pos.y+0.5), math.floor(pos.z+0.5)
|
||||
local direction = mesecon.get_movestone_direction(pos)
|
||||
|
||||
local maxpush = mesecon.setting("movestone_max_push", 50)
|
||||
if not direction then -- no mesecon power
|
||||
--push only solid nodes
|
||||
local name = minetest.get_node(pos).name
|
||||
if name ~= "air" and name ~= "ignore"
|
||||
and ((not minetest.registered_nodes[name])
|
||||
or minetest.registered_nodes[name].liquidtype == "none") then
|
||||
mesecon.mvps_push(pos, self.lastdir, MOVESTONE_MAXIMUM_PUSH)
|
||||
mesecon.mvps_push(pos, self.lastdir, maxpush)
|
||||
end
|
||||
minetest.add_node(pos, {name="mesecons_movestones:movestone"})
|
||||
self.object:remove()
|
||||
@ -105,7 +106,7 @@ minetest.register_entity("mesecons_movestones:movestone_entity", {
|
||||
end
|
||||
|
||||
local success, stack, oldstack =
|
||||
mesecon.mvps_push(pos, direction, MOVESTONE_MAXIMUM_PUSH)
|
||||
mesecon.mvps_push(pos, direction, maxpush)
|
||||
if not success then -- Too large stack/stopper in the way
|
||||
minetest.add_node(pos, {name="mesecons_movestones:movestone"})
|
||||
self.object:remove()
|
||||
|
Reference in New Issue
Block a user