1
0
mirror of https://github.com/metrostroi-repo/MetrostroiAddon.git synced 2026-05-02 00:42:29 +00:00
This commit is contained in:
Hellss
2021-07-12 23:46:09 +03:00
committed by GitHub
parent 86b7cadd77
commit 5a8017bd52
10 changed files with 280 additions and 273 deletions

View File

@@ -0,0 +1,41 @@
--------------------------------------------------------------------------------
-- 81-508 UKS system
--------------------------------------------------------------------------------
-- Copyright (C) 2013-2018 Metrostroi Team & FoxWorks Aerospace s.r.o.
-- Contains proprietary code. See license.txt for additional information.
--------------------------------------------------------------------------------
Metrostroi.DefineSystem("81_509_UKS")
function TRAIN_SYSTEM:Initialize(parameters)
self.UKSEngaged = 0
self.UKSTriggered = 0
self.UKSEmerTriggered = 0
self.Train:LoadSystem("UKSDisconnect","Relay","Switch", {bass = true,normally_closed = true})
end
function TRAIN_SYSTEM:Outputs()
return { "UKSEngaged", "UKSTriggered", "UKSEmerTriggered" }
end
function TRAIN_SYSTEM:Think(dT)
local Train = self.Train
self.UKSEngaged = Train.UAVA.Value*Train.UKSDisconnect.Value
if self.UKSEngaged > 0 then
local speed = Train.ALSCoil.Speed*Train.ALSCoil.SpeedSign
if speed > 34 then
self.UKSTriggered = 1
if speed > 40 then
self.UKSEmerTriggered = 1
end
elseif speed < 31 and self.UKSEmerTriggered == 0 then
self.UKSTriggered = 0
self.UKSEmerTriggered = 0
elseif speed < 1 then
self.UKSTriggered = 0
self.UKSEmerTriggered = 0
end
else
self.UKSTriggered = 0
self.UKSEmerTriggered = 0
end
end