Add full_laser_update

master
Wuzzy 2021-12-21 22:36:28 +01:00
parent 7be0b0b324
commit c2e0edac50
2 changed files with 8 additions and 4 deletions

View File

@ -111,3 +111,9 @@ function lzr_laser.emit_lasers_in_area(pos1, pos2)
end
end
end
-- Completely recalculate all lasers
function lzr_laser.full_laser_update(pos1, pos2)
lzr_laser.clear_lasers_in_area(pos1, pos2)
lzr_laser.emit_lasers_in_area(pos1, pos2)
end

View File

@ -18,13 +18,11 @@ minetest.register_tool("lzr_laser:emit_toggler", {
-- Deactivate emitter
if def._lzr_inactive then
minetest.swap_node(pos, {name=def._lzr_inactive, param2=node.param2})
lzr_laser.clear_lasers_in_area(lzr_globals.PLAYFIELD_START, lzr_globals.PLAYFIELD_END)
lzr_laser.emit_lasers_in_area(lzr_globals.PLAYFIELD_START, lzr_globals.PLAYFIELD_END)
lzr_laser.full_laser_update(lzr_globals.PLAYFIELD_START, lzr_globals.PLAYFIELD_END)
-- Activate emitter
elseif def._lzr_active then
minetest.swap_node(pos, {name=def._lzr_active, param2=node.param2})
lzr_laser.clear_lasers_in_area(lzr_globals.PLAYFIELD_START, lzr_globals.PLAYFIELD_END)
lzr_laser.emit_lasers_in_area(lzr_globals.PLAYFIELD_START, lzr_globals.PLAYFIELD_END)
lzr_laser.full_laser_update(lzr_globals.PLAYFIELD_START, lzr_globals.PLAYFIELD_END)
end
return itemstack
end,