diff options
author | orwell96 <mono96.mml@gmail.com> | 2017-05-03 16:31:13 +0200 |
---|---|---|
committer | orwell96 <mono96.mml@gmail.com> | 2017-05-03 16:31:13 +0200 |
commit | 28717b4d65dc2e4080d5c7bde799fb4b87ef9a9d (patch) | |
tree | 81511699486ff8130ed23a43622bf73662f2be59 /advtrains/advtrains/atc.lua | |
parent | 0c7144bcc49449eba9f6ab8f2c1d8efa72b0307a (diff) | |
download | advtrains-28717b4d65dc2e4080d5c7bde799fb4b87ef9a9d.tar.gz advtrains-28717b4d65dc2e4080d5c7bde799fb4b87ef9a9d.tar.bz2 advtrains-28717b4d65dc2e4080d5c7bde799fb4b87ef9a9d.zip |
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.
Diffstat (limited to 'advtrains/advtrains/atc.lua')
-rw-r--r-- | advtrains/advtrains/atc.lua | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/advtrains/advtrains/atc.lua b/advtrains/advtrains/atc.lua index ed631a3..5f1f64d 100644 --- a/advtrains/advtrains/atc.lua +++ b/advtrains/advtrains/atc.lua @@ -93,7 +93,7 @@ advtrains.register_tracks("default", { after_place_node=apn_func, after_dig_node=function(pos) return advtrains.pcall(function() - advtrains.invalidate_all_paths() + advtrains.invalidate_all_paths(pos) advtrains.ndb.clear(pos) local pts=minetest.pos_to_string(pos) atc.controllers[pts]=nil |