forked from minetest-mods/mesecons
Implement mesecon:register_receptor(onstate, offstate, rules, get_rules) and make add_receptor_node(_off) deprecated
This commit is contained in:
@ -20,7 +20,6 @@ mesecon.actions_on={} -- Saves registered function callbacks for mesecon on
|
||||
mesecon.actions_off={} -- Saves registered function callbacks for mesecon off
|
||||
mesecon.actions_change={} -- Saves registered function callbacks for mesecon change
|
||||
mesecon.receptors={}
|
||||
mesecon.receptors_off={}
|
||||
mesecon.effectors={}
|
||||
mesecon.rules={}
|
||||
mesecon.conductors={}
|
||||
@ -33,25 +32,26 @@ dofile(minetest.get_modpath("mesecons").."/internal.lua");
|
||||
|
||||
-- API API API API API API API API API API API API API API API API API API
|
||||
|
||||
function mesecon:add_receptor_node(name, rules, get_rules) --rules table is optional; if rules depend on param2 pass (nodename, nil, function get_rules)
|
||||
if get_rules==nil and rules==nil then
|
||||
rules=mesecon:get_rules("default")
|
||||
function mesecon:register_receptor(onstate, offstate, rules, get_rules)
|
||||
if get_rules == nil and rules == nil then
|
||||
rules = mesecon:get_rules("default")
|
||||
end
|
||||
table.insert(mesecon.receptors, {name = name, rules = rules, get_rules = get_rules})
|
||||
end
|
||||
|
||||
function mesecon:add_receptor_node_off(name, rules, get_rules)
|
||||
if get_rules==nil and rules==nil then
|
||||
rules=mesecon:get_rules("default")
|
||||
end
|
||||
table.insert(mesecon.receptors_off, {name = name, rules = rules, get_rules = get_rules})
|
||||
table.insert(mesecon.receptors,
|
||||
{onstate = onstate,
|
||||
offstate = offstate,
|
||||
rules = rules,
|
||||
get_rules = get_rules})
|
||||
end
|
||||
|
||||
function mesecon:register_effector(onstate, offstate, input_rules, get_input_rules)
|
||||
if get_input_rules==nil and input_rules==nil then
|
||||
rules=mesecon:get_rules("default")
|
||||
end
|
||||
table.insert(mesecon.effectors, {onstate = onstate, offstate = offstate, input_rules = input_rules, get_input_rules = get_input_rules})
|
||||
table.insert(mesecon.effectors,
|
||||
{onstate = onstate,
|
||||
offstate = offstate,
|
||||
input_rules = input_rules,
|
||||
get_input_rules = get_input_rules})
|
||||
end
|
||||
|
||||
function mesecon:receptor_on(pos, rules)
|
||||
@ -130,3 +130,5 @@ dofile(minetest.get_modpath("mesecons").."/wires.lua");
|
||||
|
||||
--Services like turnoff receptor on dignode and so on
|
||||
dofile(minetest.get_modpath("mesecons").."/services.lua");
|
||||
--Deprecated stuff
|
||||
dofile(minetest.get_modpath("mesecons").."/legacy.lua");
|
||||
|
Reference in New Issue
Block a user