summaryrefslogtreecommitdiff
path: root/travelnet/restore_network_via_abm.lua
diff options
context:
space:
mode:
Diffstat (limited to 'travelnet/restore_network_via_abm.lua')
-rw-r--r--travelnet/restore_network_via_abm.lua24
1 files changed, 24 insertions, 0 deletions
diff --git a/travelnet/restore_network_via_abm.lua b/travelnet/restore_network_via_abm.lua
new file mode 100644
index 0000000..3bd1dda
--- /dev/null
+++ b/travelnet/restore_network_via_abm.lua
@@ -0,0 +1,24 @@
+
+minetest.register_abm({
+ nodenames = {"travelnet:travelnet"},
+ interval = 20,
+ chance = 1,
+ action = function(pos, node)
+ local meta = minetest.get_meta( pos );
+
+ local owner_name = meta:get_string( "owner" );
+ local station_name = meta:get_string( "station_name" );
+ local station_network = meta:get_string( "station_network" );
+
+ if( owner_name and station_name and station_network
+ and ( not( travelnet.targets )
+ or not( travelnet.targets[ owner_name ] )
+ or not( travelnet.targets[ owner_name ][ station_network ] )
+ or not( travelnet.targets[ owner_name ][ station_network ][ station_name ] ))) then
+
+ travelnet.add_target( station_name, station_network, pos, owner_name, meta, owner_name );
+ print( 'TRAVELNET: re-adding '..tostring( station_name )..' to '..tostring( station_network )..' owned by '..tostring( owner_name ));
+ end
+ end
+})
+