mirror of
https://github.com/Xevion/project-cybersyn.git
synced 2025-12-08 12:08:09 -06:00
fixed multiple issues
This commit is contained in:
@@ -566,7 +566,6 @@ local function send_alert_for_train(train, icon, message)
|
||||
icon,
|
||||
{message},
|
||||
true)
|
||||
player.play_sound({path = ALERT_SOUND})
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -623,7 +622,7 @@ local send_stuck_train_alert_icon = {name = LOST_TRAIN_NAME, type = "fluid"}
|
||||
function send_alert_stuck_train(map_data, train)
|
||||
send_alert_for_train(train, send_stuck_train_alert_icon, "cybersyn-messages.stuck-train")
|
||||
map_data.active_alerts = map_data.active_alerts or {}
|
||||
map_data.active_alerts[train] = 1
|
||||
map_data.active_alerts[train.id] = {train, 1}
|
||||
end
|
||||
|
||||
local send_nonempty_train_in_depot_alert_icon = {name = NONEMPTY_TRAIN_NAME, type = "fluid"}
|
||||
@@ -631,8 +630,9 @@ local send_nonempty_train_in_depot_alert_icon = {name = NONEMPTY_TRAIN_NAME, typ
|
||||
---@param train LuaTrain
|
||||
function send_alert_nonempty_train_in_depot(map_data, train)
|
||||
send_alert_for_train(train, send_nonempty_train_in_depot_alert_icon, "cybersyn-messages.nonempty-train")
|
||||
send_alert_sounds(train)
|
||||
map_data.active_alerts = map_data.active_alerts or {}
|
||||
map_data.active_alerts[train] = 2
|
||||
map_data.active_alerts[train.id] = {train, 2}
|
||||
end
|
||||
|
||||
local send_lost_train_alert_icon = {name = LOST_TRAIN_NAME, type = "fluid"}
|
||||
@@ -640,36 +640,41 @@ local send_lost_train_alert_icon = {name = LOST_TRAIN_NAME, type = "fluid"}
|
||||
---@param train LuaTrain
|
||||
function send_alert_depot_of_train_broken(map_data, train)
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.depot-broken")
|
||||
send_alert_sounds(train)
|
||||
map_data.active_alerts = map_data.active_alerts or {}
|
||||
map_data.active_alerts[train] = 3
|
||||
map_data.active_alerts[train.id] = {train, 3}
|
||||
end
|
||||
---@param map_data MapData
|
||||
---@param train LuaTrain
|
||||
function send_alert_station_of_train_broken(map_data, train)
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.station-broken")
|
||||
send_alert_sounds(train)
|
||||
map_data.active_alerts = map_data.active_alerts or {}
|
||||
map_data.active_alerts[train] = 4
|
||||
map_data.active_alerts[train.id] = {train, 4}
|
||||
end
|
||||
---@param map_data MapData
|
||||
---@param train LuaTrain
|
||||
function send_alert_refueler_of_train_broken(map_data, train)
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.refueler-broken")
|
||||
send_alert_sounds(train)
|
||||
map_data.active_alerts = map_data.active_alerts or {}
|
||||
map_data.active_alerts[train] = 5
|
||||
map_data.active_alerts[train.id] = {train, 5}
|
||||
end
|
||||
---@param map_data MapData
|
||||
---@param train LuaTrain
|
||||
function send_alert_train_at_incorrect_station(map_data, train)
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.train-at-incorrect")
|
||||
send_alert_sounds(train)
|
||||
map_data.active_alerts = map_data.active_alerts or {}
|
||||
map_data.active_alerts[train] = 6
|
||||
map_data.active_alerts[train.id] = {train, 6}
|
||||
end
|
||||
---@param map_data MapData
|
||||
---@param train LuaTrain
|
||||
function send_alert_cannot_path_between_surfaces(map_data, train)
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.cannot-path-between-surfaces")
|
||||
send_alert_sounds(train)
|
||||
map_data.active_alerts = map_data.active_alerts or {}
|
||||
map_data.active_alerts[train] = 7
|
||||
map_data.active_alerts[train.id] = {train, 7}
|
||||
end
|
||||
|
||||
---@param train LuaTrain
|
||||
@@ -680,21 +685,27 @@ end
|
||||
|
||||
---@param map_data MapData
|
||||
function process_active_alerts(map_data)
|
||||
for train, id in pairs(map_data.active_alerts) do
|
||||
if id == 1 then
|
||||
send_alert_for_train(train, send_stuck_train_alert_icon, "cybersyn-messages.stuck-train")
|
||||
elseif id == 2 then
|
||||
send_alert_for_train(train, send_nonempty_train_in_depot_alert_icon, "cybersyn-messages.nonempty-train")
|
||||
elseif id == 3 then
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.depot-broken")
|
||||
elseif id == 4 then
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.station-broken")
|
||||
elseif id == 5 then
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.refueler-broken")
|
||||
elseif id == 6 then
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.train-at-incorrect")
|
||||
elseif id == 7 then
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.cannot-path-between-surfaces")
|
||||
for train_id, data in pairs(map_data.active_alerts) do
|
||||
local train = data[1]
|
||||
if train.valid then
|
||||
local id = data[2]
|
||||
if id == 1 then
|
||||
send_alert_for_train(train, send_stuck_train_alert_icon, "cybersyn-messages.stuck-train")
|
||||
elseif id == 2 then
|
||||
send_alert_for_train(train, send_nonempty_train_in_depot_alert_icon, "cybersyn-messages.nonempty-train")
|
||||
elseif id == 3 then
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.depot-broken")
|
||||
elseif id == 4 then
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.station-broken")
|
||||
elseif id == 5 then
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.refueler-broken")
|
||||
elseif id == 6 then
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.train-at-incorrect")
|
||||
elseif id == 7 then
|
||||
send_alert_for_train(train, send_lost_train_alert_icon, "cybersyn-messages.cannot-path-between-surfaces")
|
||||
end
|
||||
else
|
||||
map_data.active_alerts[train_id] = nil
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user