Private
Public Access
1
0

Refactor train state checks in GetTrainStates function

This commit is contained in:
Jan Grießhaber
2026-01-03 18:34:42 +01:00
parent 34629509c3
commit 0cb1b40f72
2 changed files with 17 additions and 5 deletions

View File

@@ -1,6 +1,6 @@
{ {
"name": "factorio-metrics-exporter", "name": "factorio-metrics-exporter",
"version": "0.1.18", "version": "0.1.19",
"title": "Prometheus Metrics Exporter", "title": "Prometheus Metrics Exporter",
"author": "Jan Grießhaber", "author": "Jan Grießhaber",
"contact": "jan@griesshaber.systems", "contact": "jan@griesshaber.systems",

View File

@@ -34,10 +34,22 @@ function GetTrainStates()
local trainsProblems = 0 local trainsProblems = 0
local trainsManual = 0 local trainsManual = 0
for _, train in pairs(storage.trains) do for _, train in pairs(storage.trains) do
if train.state == defines.train_state.wait_station or defines.train_state.destination_full or defines.train_state.no_schedule then trainsWaiting = trainsWaiting + 1 end if train.state == defines.train_state.wait_station
if train.state == defines.train_state.on_the_path or defines.train_state.arrive_signal or defines.train_state.wait_signal then trainsDriving = trainsDriving + 1 end or train.state ==defines.train_state.destination_full
if train.state == defines.train_state.manual_control or defines.train_state.manual_control_stop then trainsManual = trainsManual + 1 end or train.state == defines.train_state.no_schedule
if train.state == defines.train_state.no_path then trainsProblems = trainsProblems + 1 end then trainsWaiting = trainsWaiting + 1 end
if train.state == defines.train_state.on_the_path
or train.state ==defines.train_state.arrive_signal
or train.state ==defines.train_state.wait_signal
then trainsDriving = trainsDriving + 1 end
if train.state == defines.train_state.manual_control
or train.state == defines.train_state.manual_control_stop
then trainsManual = trainsManual + 1 end
if train.state == defines.train_state.no_path
then trainsProblems = trainsProblems + 1 end
end end
return ("---trains-states---\n%d:%d:%d:%d"):format(trainsDriving,trainsManual,trainsProblems,trainsWaiting) return ("---trains-states---\n%d:%d:%d:%d"):format(trainsDriving,trainsManual,trainsProblems,trainsWaiting)
end end