diff options
Diffstat (limited to 'mesecons/services.lua')
-rw-r--r-- | mesecons/services.lua | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/mesecons/services.lua b/mesecons/services.lua index a2f9d01..34413d1 100644 --- a/mesecons/services.lua +++ b/mesecons/services.lua @@ -1,5 +1,4 @@ -mesecon.on_placenode = function (pos) - local node = minetest.env:get_node(pos) +mesecon.on_placenode = function (pos, node) if mesecon:is_receptor_on(node.name) then mesecon:receptor_on(pos, mesecon:receptor_get_rules(node)) elseif mesecon:is_powered(pos) then @@ -7,7 +6,7 @@ mesecon.on_placenode = function (pos) mesecon:turnon (pos) mesecon:receptor_on (pos, mesecon:conductor_get_rules(node)) else - mesecon:changesignal(pos, node) + mesecon:changesignal(pos, node, mesecon:effector_get_rules(node), "on") mesecon:activate(pos, node) end elseif mesecon:is_conductor_on(node.name) then @@ -25,5 +24,15 @@ mesecon.on_dignode = function (pos, node) end end +minetest.register_abm({ + nodenames = {"group:overheat"}, + interval = 1.0, + chance = 1, + action = function(pos, node, active_object_count, active_object_count_wider) + local meta = minetest.env:get_meta(pos) + meta:set_int("heat",0) + end, +}) + minetest.register_on_placenode(mesecon.on_placenode) minetest.register_on_dignode(mesecon.on_dignode) |