mirror of
https://github.com/metrostroi-repo/MetrostroiAddon.git
synced 2026-05-02 00:42:29 +00:00
@@ -382,7 +382,6 @@ function TRAIN_SYSTEM:Think(dT)
|
||||
self:CState("CloseDoors",RR and Train.SF7.Value>0 and (Train.DoorClose.Value == 0 or (not self.CloseRing and Train.DoorClose.Value==2 or self.CloseRing and CurTime()-self.CloseRing>4)))
|
||||
self:CState("PassLight",Train.PassLight.Value>0)
|
||||
self:CState("PassVent",Train.PassVent.Value-1)
|
||||
self:CState("ParkingBrake",Train.ParkingBrake.Value)
|
||||
if BARSPower and Train.BARS.V2 > 0 or not BARSPower and math.abs(self.Speed) < 0.5 and self.PowerCommand < 0 then
|
||||
self.StopV2 = true
|
||||
elseif self.PowerCommand > 0 then
|
||||
|
||||
@@ -276,7 +276,6 @@ function TRAIN_SYSTEM:Think()
|
||||
self.EnableMK = (not self:Get("PVU4") and self:Get("Compressor")) and 1 or 0
|
||||
self.DisableTP = (self:Get("PVU5") or self:Get("PVU6")) and 1 or 0
|
||||
self.DisablePant = (self:Get("DisablePant") or self:Get("PVU7")) and 1 or 0
|
||||
self.ParkingBrake = self:Get("ParkingBrake")
|
||||
local vent = self:Get("PassVent") or 0
|
||||
if vent==1 then
|
||||
self.VentMode = Train.Pneumatic.WeightLoadRatio>0.6 and 2 or Train.Pneumatic.WeightLoadRatio>0.1 and 1 or 0
|
||||
|
||||
@@ -137,6 +137,8 @@ function TRAIN_SYSTEM:Think(dT)
|
||||
Train:WriteTrainWire(30,self.BTB*S["RU"]*C(Panel.Controller<=-1))
|
||||
|
||||
Panel.V4 = (S["RVnE"]*C(Train.KRO.Value~=1)+S["RU"])*Train.SF6.Value
|
||||
Train:WriteTrainWire(11,Panel.V4*Train.ParkingBrake.Value)
|
||||
Train:WriteTrainWire(31,Panel.V4*(1-Train.ParkingBrake.Value))
|
||||
|
||||
Train:WriteTrainWire(-8,BO*min(1,(S["RV"]+S["RU"]))*Train.SF7.Value)
|
||||
Train:WriteTrainWire(9,W[8]*(1-self.CabActive)*C(Train.VRU.Value==1)*Train.SF7.Value)
|
||||
|
||||
@@ -436,10 +436,11 @@ function TRAIN_SYSTEM:Think(dT)
|
||||
else
|
||||
self:equalizePressure(dT,"BrakeCylinderPressure", 0.0, 2.00)
|
||||
end
|
||||
if Train.BUKV.ParkingBrake==0 then
|
||||
self:equalizePressure(dT,"ParkingBrakePressure", self.TrainLinePressure, 0.4,1,nil,0.5)
|
||||
else
|
||||
local w11, w31 = Train:ReadTrainWire(11), Train:ReadTrainWire(31)
|
||||
if w11*(1-w31) > 0 then
|
||||
self:equalizePressure(dT,"ParkingBrakePressure", 0, 0.4,1,nil,0.5)
|
||||
elseif w31*(1-w11) > 0 then
|
||||
self:equalizePressure(dT,"ParkingBrakePressure", self.TrainLinePressure, 0.4,1,nil,0.5)
|
||||
end
|
||||
Train:SetPackedRatio("ParkingBrakePressure_dPdT",self.ParkingBrakePressure_dPdT+0.02)
|
||||
trainLineConsumption_dPdT = trainLineConsumption_dPdT + math.max(0,self.BrakeCylinderPressure_dPdT + self.ParkingBrakePressure_dPdT)
|
||||
|
||||
Reference in New Issue
Block a user