From e1b0dab2eebdc781367b81d8bb5e8d9870fdf5ba Mon Sep 17 00:00:00 2001 From: alexandr_sizov Date: Sun, 16 Jan 2022 10:10:36 +0300 Subject: [PATCH] =?UTF-8?q?-=D0=9E=D1=82=D0=BA=D0=B0=D1=82=20PR434=20-?= =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=BE=20=D0=BF?= =?UTF-8?q?=D0=B8=D1=82=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=BF=D1=80=D0=BE=D0=B2?= =?UTF-8?q?=D0=BE=D0=B4=D0=B0=20=D0=941=20=D1=81=2016=D0=9F=D0=9F=20-?= =?UTF-8?q?=D0=9D=D0=B0=20717=D0=A1=D0=9F=D0=B1=20=D0=B4=D0=BE=D0=B1=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=B7=D0=B0=D0=BF=D0=B8=D1=82?= =?UTF-8?q?=D0=BA=D0=B0=2031=D0=9F=D0=9F=20=D1=87=D0=B5=D1=80=D0=B5=D0=B7?= =?UTF-8?q?=20=D0=B4=D0=BE=D0=BF=D0=BE=D0=BB=D0=BD=D0=B8=D1=82=D0=B5=D0=BB?= =?UTF-8?q?=D1=8C=D0=BD=D1=83=D1=8E=20=D0=BA=D0=BD=D0=BE=D0=BF=D0=BA=D1=83?= =?UTF-8?q?=20=D0=BB=D0=B5=D0=B2=D1=8B=D1=85=20=D0=B4=D0=B2=D0=B5=D1=80?= =?UTF-8?q?=D0=B5=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../systems/sys_81_717_electric.lua | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/lua/metrostroi/systems/sys_81_717_electric.lua b/lua/metrostroi/systems/sys_81_717_electric.lua index a73d956..73097dc 100644 --- a/lua/metrostroi/systems/sys_81_717_electric.lua +++ b/lua/metrostroi/systems/sys_81_717_electric.lua @@ -717,11 +717,12 @@ function TRAIN_SYSTEM:SolveAllInternalCircuits(Train,dT,firstIter) Panel.KUP = S["B9a"]*Train.KUP.Value S["D4"] = BO*Train.A13.Value - S["D1"] = T[10]*Train.A21.Value*KV["D-D1"]+S["14b"]*KRU["11/3-D1/1"] if isLVZ then if isKSD then + S["D1"] = T[10]*Train.A21.Value*KV["D-D1"]+S["14b"]*KRU["11/3-D1/1"]+T[16]*Train.VUD1.Value S[16] = S["D1"]*Train.VUD1.Value else + S["D1"] = T[10]*Train.A21.Value*KV["D-D1"]+S["14b"]*KRU["11/3-D1/1"]+T[16]*Train.VUD1.Value*Train.VUD2.Value S[16] = S["D1"]*Train.VUD1.Value*Train.VUD2.Value end Train:WriteTrainWire(16,S[16]+AVO["16"]*RC2) @@ -735,23 +736,19 @@ function TRAIN_SYSTEM:SolveAllInternalCircuits(Train,dT,firstIter) S[31] = S[31]*(1-Train.VUD1.Value) S[32] = S[32]*(1-Train.VUD1.Value) else - S["D16"] = Train.VUD1.Value*Train.VUD2.Value - S[31] = (S["D1"]+T[16]*S["D16"])*(1-Train.DoorSelect.Value) - S[32] = (S["D1"]+T[16]*S["D16"])*Train.DoorSelect.Value - Train:WriteTrainWire(16,S["D1"]*S["D16"]) + S["D1"] = T[10]*Train.A21.Value*KV["D-D1"]+S["14b"]*KRU["11/3-D1/1"]+T[16]*Train.VUD1.Value*Train.VUD2.Value + S[31] = (S["D1"])*(1-Train.DoorSelect.Value) + S[32] = (S["D1"])*Train.DoorSelect.Value + Train:WriteTrainWire(16,S["D1"]*Train.VUD1.Value*Train.VUD2.Value) end Train:WriteTrainWire(12,S["D1"]*Train.KRZD.Value) Panel.DoorsLeft = S[31] Panel.DoorsRight = S[32] - + S["12A"] = T[12]*Train.A12.Value if isLVZ then if isPA then AVI.ZD = S[16] end - if isKSD then - Train:WriteTrainWire(31,S[31]*(Train.KDL.Value*(1-RC2))+(S["D1"]+T[16]*Train.VUD1.Value)*Train.VDL.Value+AVO["31"]*RC2 + S["12A"]*Train.A31.Value) - else - Train:WriteTrainWire(31,S[31]*(Train.KDL.Value*(1-RC2))+(S["D1"]+T[16]*Train.VUD1.Value*Train.VUD2.Value)*Train.VDL.Value+AVO["31"]*RC2 + S["12A"]*Train.A31.Value) - end + Train:WriteTrainWire(31,S[31]*((Train.KDL.Value+Train.KDLR.Value)*(1-RC2))+(S["D1"])*Train.VDL.Value+AVO["31"]*RC2 + S["12A"]*Train.A31.Value) Train:WriteTrainWire(32,S[32]*(Train.KDP.Value)*(1-RC2)+AVO["32"]*RC2 + S["12A"]*Train.A32.Value) elseif not isDot2 then Train:WriteTrainWire(31,S[31]*(Train.KDL.Value+Train.KDLR.Value+Train.VDL.Value)*(Train.ASNP.K1+(1-Train.VBD.Value)) + S["12A"]*Train.A31.Value) @@ -760,7 +757,7 @@ function TRAIN_SYSTEM:SolveAllInternalCircuits(Train,dT,firstIter) Train:WriteTrainWire(31,S[31]*(Train.KDL.Value+Train.KDLR.Value+Train.VDL.Value) + S["12A"]*Train.A31.Value) Train:WriteTrainWire(32,S[32]*Train.KDP.Value + S["12A"]*Train.A32.Value) end - + if isMVM then S["15B"] = T[15]*(KV["15A-15B"]+Train.KD.Value)