Improve rules and rule handling (#370)

This commit is contained in:
DS
2017-10-08 01:39:02 +02:00
committed by Vitaliy
parent 905260c8db
commit 37eb7f00e8
5 changed files with 141 additions and 110 deletions

View File

@ -24,7 +24,8 @@ minetest.register_node("mesecons_solarpanel:solar_panel_on", {
groups = {dig_immediate=3, not_in_creative_inventory = 1},
sounds = default.node_sound_glass_defaults(),
mesecons = {receptor = {
state = mesecon.state.on
state = mesecon.state.on,
rules = mesecon.rules.wallmounted_get,
}},
on_blast = mesecon.on_blastnode,
})
@ -52,10 +53,11 @@ minetest.register_node("mesecons_solarpanel:solar_panel_off", {
wall_side = { -8/16, -7/16, -7/16, -7/16, 7/16, 7/16 },
},
groups = {dig_immediate=3},
description="Solar Panel",
description = "Solar Panel",
sounds = default.node_sound_glass_defaults(),
mesecons = {receptor = {
state = mesecon.state.off
state = mesecon.state.off,
rules = mesecon.rules.wallmounted_get,
}},
on_blast = mesecon.on_blastnode,
})
@ -76,8 +78,9 @@ minetest.register_abm(
local light = minetest.get_node_light(pos, nil)
if light >= 12 then
minetest.set_node(pos, {name="mesecons_solarpanel:solar_panel_on", param2=node.param2})
mesecon.receptor_on(pos)
node.name = "mesecons_solarpanel:solar_panel_on"
minetest.swap_node(pos, node)
mesecon.receptor_on(pos, mesecon.rules.wallmounted_get(node))
end
end,
})
@ -90,8 +93,9 @@ minetest.register_abm(
local light = minetest.get_node_light(pos, nil)
if light < 12 then
minetest.set_node(pos, {name="mesecons_solarpanel:solar_panel_off", param2=node.param2})
mesecon.receptor_off(pos)
node.name = "mesecons_solarpanel:solar_panel_off"
minetest.swap_node(pos, node)
mesecon.receptor_off(pos, mesecon.rules.wallmounted_get(node))
end
end,
})