fixed handling of network_name

This commit is contained in:
Monica Moniot
2022-12-01 16:03:46 -05:00
parent e648291c0a
commit 73763ec2ca
3 changed files with 5 additions and 6 deletions

View File

@@ -61,7 +61,7 @@
---@field public is_available true?
---@field public parked_at_depot_id uint?
---@field public depot_name string
---@field public network_name string
---@field public network_name string? --can only be nil when the train is parked at a depot
---@field public network_flag int
---@field public priority int
---@field public se_depot_surface_i uint --se only

View File

@@ -116,7 +116,7 @@ end
---@param train Train
function remove_available_train(map_data, train_id, train)
---@type uint
if train.is_available then
if train.is_available and train.network_name then
local network = map_data.available_trains[train.network_name--[[@as string]]]
if network then
network[train_id] = nil

View File

@@ -154,16 +154,15 @@ local migrations_table = {
v.se_is_being_teleported = not v.entity and true or nil
--NOTE: we are guessing here because this information was never saved
v.se_depot_surface_i = v.entity.front_stock.surface.index
if v.parked_at_depot_id then
v.is_available = true
v.is_available = nil
if v.parked_at_depot_id and v.network_name then
local network = map_data.available_trains[v.network_name--[[@as string]]]
if not network then
network = {}
map_data.available_trains[v.network_name--[[@as string]]] = network
end
network[id] = true
else
v.is_available = nil
v.is_available = true
end
end
end,