Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- minetest .register_abm {
- label = 'automatic doors',
- nodenames = { 'paradroid_mt:autodoor_closed',
- 'paradroid_mt:autodoor_cracked',
- 'paradroid_mt:autodoor_ajar',
- 'paradroid_mt:autodoor_open' }, -- group:door ??
- interval = 0.25,
- chance = 1,
- action = function(pos, node, active_object_count, active_object_count_wider)
- local name = node .name
- local vacant = true
- if active_object_count_wider > 0 then
- print('wider ' ..active_object_count_wider) -- reports back every mouse on level
- local entities = minetest .get_objects_inside_radius(pos, 1)
- --print('found ' ..#entities ..' entities at ' ..dump(pos))
- for entity = 1, #entities do
- vacant = false
- if name == 'paradroid_mt:autodoor_ajar' then
- minetest .set_node( pos, {name = 'paradroid_mt:autodoor_open' })
- elseif name == 'paradroid_mt:autodoor_cracked' then
- minetest .set_node( pos, {name = 'paradroid_mt:autodoor_ajar' })
- elseif name == 'paradroid_mt:autodoor_closed' then
- minetest .set_node( pos, {name = 'paradroid_mt:autodoor_cracked' })
- end -- if name
- end -- entities
- elseif vacant then
- if name == 'paradroid_mt:autodoor_cracked' then
- minetest .set_node( pos, {name = 'paradroid_mt:autodoor_closed' })
- elseif name == 'paradroid_mt:autodoor_ajar' then
- minetest .set_node( pos, {name = 'paradroid_mt:autodoor_cracked' })
- elseif name == 'paradroid_mt:autodoor_open' then
- minetest .set_node( pos, {name = 'paradroid_mt:autodoor_ajar' })
- end -- if name
- end -- if active_object_count_wider()
- end -- action
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement