76 lines
2.5 KiB
Lua
76 lines
2.5 KiB
Lua
--[[ Copyright (c) 2017 Optera
|
|
* Part of Logistics Train Network
|
|
*
|
|
* See LICENSE.md in the project directory for license information.
|
|
--]]
|
|
|
|
MOD_NAME = "LogisticTrainNetwork"
|
|
|
|
ISDEPOT = "ltn-depot"
|
|
DEPOT_PRIORITY = "ltn-depot-priority"
|
|
NETWORKID = "ltn-network-id"
|
|
MINTRAINLENGTH = "ltn-min-train-length"
|
|
MAXTRAINLENGTH = "ltn-max-train-length"
|
|
MAXTRAINS = "ltn-max-trains"
|
|
REQUESTED_THRESHOLD = "ltn-requester-threshold"
|
|
REQUESTED_STACK_THRESHOLD = "ltn-requester-stack-threshold"
|
|
REQUESTED_PRIORITY = "ltn-requester-priority"
|
|
NOWARN = "ltn-disable-warnings"
|
|
PROVIDED_THRESHOLD = "ltn-provider-threshold"
|
|
PROVIDED_STACK_THRESHOLD = "ltn-provider-stack-threshold"
|
|
PROVIDED_PRIORITY = "ltn-provider-priority"
|
|
LOCKEDSLOTS = "ltn-locked-slots"
|
|
|
|
ControlSignals = {
|
|
[ISDEPOT] = {type="virtual", name=ISDEPOT},
|
|
[DEPOT_PRIORITY] = {type="virtual", name=DEPOT_PRIORITY},
|
|
[NETWORKID] = {type="virtual", name=NETWORKID},
|
|
[MINTRAINLENGTH] = {type="virtual", name=MINTRAINLENGTH},
|
|
[MAXTRAINLENGTH] = {type="virtual", name=MAXTRAINLENGTH},
|
|
[MAXTRAINS] = {type="virtual", name=MAXTRAINS},
|
|
[REQUESTED_THRESHOLD] = {type="virtual", name=REQUESTED_THRESHOLD},
|
|
[REQUESTED_STACK_THRESHOLD] = {type="virtual", name=REQUESTED_STACK_THRESHOLD},
|
|
[REQUESTED_PRIORITY] = {type="virtual", name=REQUESTED_PRIORITY},
|
|
[NOWARN] = {type="virtual", name=NOWARN},
|
|
[PROVIDED_THRESHOLD] = {type="virtual", name=PROVIDED_THRESHOLD},
|
|
[PROVIDED_STACK_THRESHOLD] = {type="virtual", name=PROVIDED_STACK_THRESHOLD},
|
|
[PROVIDED_PRIORITY] = {type="virtual", name=PROVIDED_PRIORITY},
|
|
[LOCKEDSLOTS] = {type="virtual", name=LOCKEDSLOTS},
|
|
}
|
|
|
|
ltn_stop_entity_names = { -- ltn stop entity.name with I/O entity offset away from tracks in tiles
|
|
["logistic-train-stop"] = 0,
|
|
["ltn-port"] = 1,
|
|
}
|
|
|
|
ltn_stop_input = "logistic-train-stop-input"
|
|
ltn_stop_output = "logistic-train-stop-output"
|
|
ltn_stop_output_controller = "logistic-train-stop-lamp-control"
|
|
|
|
ErrorCodes = {
|
|
[-1] = "white", -- not initialized
|
|
[1] = "red", -- short circuit / disabled
|
|
[2] = "pink", -- duplicate stop name
|
|
}
|
|
|
|
ColorLookup = {
|
|
red = "signal-red",
|
|
green = "signal-green",
|
|
blue = "signal-blue",
|
|
yellow = "signal-yellow",
|
|
pink = "signal-pink",
|
|
cyan = "signal-cyan",
|
|
white = "signal-white",
|
|
grey = "signal-grey",
|
|
black = "signal-black"
|
|
}
|
|
|
|
-- cache often used strings and functions
|
|
format = string.format
|
|
match = string.match
|
|
match_string = "([^,]+),([^,]+)"
|
|
btest = bit32.btest
|
|
band = bit32.band
|
|
min = math.min
|
|
ceil = math.ceil
|
|
sort = table.sort |