fixed daylightsensor's register_abms

By changing the check if a normal/inverted daylightsensor should update by turning on and off, I made them workling again
This commit is contained in:
chmodsayshello 2021-12-10 13:59:31 +00:00
parent 0c8e5dc7a4
commit 5a4abcbcb7
1 changed files with 8 additions and 4 deletions

View File

@ -96,8 +96,9 @@ minetest.register_abm({
chance = 1,
action = function(pos, node, active_object_count, active_object_count_wider)
local light = minetest.get_node_light(pos, nil)
local time = minetest.get_us_time()
if light >= 12 and minetest.get_timeofday() > 0.2 and minetest.get_timeofday() < 0.8 then
if light >= 14 and time > 6000 then
minetest.set_node(pos, {name="mesecons_solarpanel:solar_panel_on", param2=node.param2})
mesecon.receptor_on(pos, mesecon.rules.pplate)
end
@ -111,8 +112,9 @@ minetest.register_abm({
chance = 1,
action = function(pos, node, active_object_count, active_object_count_wider)
local light = minetest.get_node_light(pos, nil)
local time = minetest.get_us_time()
if light < 12 then
if light < 14 and time > 18000 then
minetest.set_node(pos, {name="mesecons_solarpanel:solar_panel_off", param2=node.param2})
mesecon.receptor_off(pos, mesecon.rules.pplate)
end
@ -203,8 +205,9 @@ minetest.register_abm({
chance = 1,
action = function(pos, node, active_object_count, active_object_count_wider)
local light = minetest.get_node_light(pos, nil)
local time = minetest.get_us_time()
if light < 12 then
if light < 14 and time > 18000 then
minetest.set_node(pos, {name="mesecons_solarpanel:solar_panel_inverted_on", param2=node.param2})
mesecon.receptor_on(pos, mesecon.rules.pplate)
end
@ -218,8 +221,9 @@ minetest.register_abm({
chance = 1,
action = function(pos, node, active_object_count, active_object_count_wider)
local light = minetest.get_node_light(pos, nil)
local time = minetest.get_us_time()
if light >= 12 and minetest.get_timeofday() > 0.8 and minetest.get_timeofday() < 0.2 then
if light >= 14 and time > 6000 then
minetest.set_node(pos, {name="mesecons_solarpanel:solar_panel_inverted_off", param2=node.param2})
mesecon.receptor_off(pos, mesecon.rules.pplate)
end