Various small fixes
- Also do atomic operations on nodedb - no longer require Worldedit for at_sync_ndb - "overrun LZB 0 restriction" should now show where it happened.master
parent
7a6740eb8c
commit
daba00b6a2
|
@ -81,7 +81,8 @@ end
|
|||
|
||||
--save
|
||||
function ndb.save_data()
|
||||
local file, err = io.open(path, "wb")
|
||||
local tmppath = path.."~"
|
||||
local file, err = io.open(tmppath, "wb")
|
||||
if not file then
|
||||
atwarn("Couldn't save the node database: ", err or "Unknown Error")
|
||||
else
|
||||
|
@ -97,6 +98,7 @@ function ndb.save_data()
|
|||
end
|
||||
file:close()
|
||||
end
|
||||
os.rename(tmppath, path)
|
||||
return {nodeids = ndb_nodeids}
|
||||
end
|
||||
|
||||
|
@ -288,7 +290,7 @@ minetest.register_chatcommand("at_sync_ndb",
|
|||
{
|
||||
params = "", -- Short parameter description
|
||||
description = "Write node db back to map and find ghost nodes", -- Full description
|
||||
privs = {train_operator=true, worldedit=true}, -- Require the "privs" privilege to run
|
||||
privs = {train_operator=true},
|
||||
func = function(name, param)
|
||||
return advtrains.pcall(function()
|
||||
if not minetest.check_player_privs(name, {server=true}) and os.time() < ptime+30 then
|
||||
|
|
|
@ -17,7 +17,7 @@ local il = advtrains.interlocking
|
|||
local function get_over_function(speed, shunt)
|
||||
return function(pos, id, train, index, speed, lzbdata)
|
||||
if speed == 0 and minetest.settings:get_bool("at_il_force_lzb_halt") then
|
||||
atwarn(id,"overrun LZB 0 restriction (red signal) ",ent.pos)
|
||||
atwarn(id,"overrun LZB 0 restriction (red signal) ",pos)
|
||||
-- Set train 1 index backward. Hope this does not lead to bugs...
|
||||
train.index = index - 0.5
|
||||
train.velocity = 0
|
||||
|
|
Loading…
Reference in New Issue