From 28717b4d65dc2e4080d5c7bde799fb4b87ef9a9d Mon Sep 17 00:00:00 2001 From: orwell96 Date: Wed, 3 May 2017 16:31:13 +0200 Subject: Performance improvements: Don't clear paths unless absolutely necessary instead delete path elements that are too far from the train one-by-one Also when switching a switch or changing rails, only clear train paths of trains that are nearby. --- advtrains/advtrains_luaautomation/active_common.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'advtrains/advtrains_luaautomation/active_common.lua') diff --git a/advtrains/advtrains_luaautomation/active_common.lua b/advtrains/advtrains_luaautomation/active_common.lua index e17af91..8c910c6 100644 --- a/advtrains/advtrains_luaautomation/active_common.lua +++ b/advtrains/advtrains_luaautomation/active_common.lua @@ -49,7 +49,7 @@ function ac.getform(pos, meta_p) end function ac.after_dig_node(pos, node, player) - advtrains.invalidate_all_paths() + advtrains.invalidate_all_paths(pos) advtrains.ndb.clear(pos) local ph=minetest.pos_to_string(pos) ac.nodes[ph]=nil -- cgit v1.2.3