From bc9ed16c9112218e1ede711444675d3021f06aff Mon Sep 17 00:00:00 2001 From: binarycat Date: Sun, 17 Dec 2023 15:13:54 -0500 Subject: [PATCH] more optimization of inner loops related to mvps_push --- mesecons_mvps/init.lua | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/mesecons_mvps/init.lua b/mesecons_mvps/init.lua index 410fa28..af28240 100644 --- a/mesecons_mvps/init.lua +++ b/mesecons_mvps/init.lua @@ -98,15 +98,16 @@ function mesecon.mvps_get_stack(pos, dir, maximum, all_pull_sticky) -- optimization: don't check blocks that are already part of the stack if not pos_set[minetest.hash_node_position(adjpos)] then local adjnode = minetest.get_node(adjpos) - if minetest.registered_nodes[adjnode.name] - and minetest.registered_nodes[adjnode.name].mvps_sticky then - local sticksto = minetest.registered_nodes[adjnode.name] - .mvps_sticky(adjpos, adjnode) + local adjdef = minetest.registered_nodes[adjnode.name] + if adjdef + and adjdef.mvps_sticky then + local sticksto = adjdef.mvps_sticky(adjpos, adjnode) -- connects to this position? for _, link in ipairs(sticksto) do if vector.equals(link, np) then frontiers:add(adjpos) + break end end end