Implemented HideDirStatusWhenMoving entry

This commit is contained in:
2024-12-28 00:15:36 +01:00
parent dd49381c3c
commit 0522d12cd3
3 changed files with 12 additions and 2 deletions

View File

@@ -1196,6 +1196,7 @@ public:
bool ReleaseParkingBySpringBrakeWhenDoorIsOpen{ false };
bool SpringBrakeCutsOffDrive { true };
double SpringBrakeDriveEmergencyVel { -1 };
bool HideDirStatusWhenMoving { false };
TSecuritySystem SecuritySystem;
int EmergencyBrakeWarningSignal{ 0 }; // combined with basic WarningSignal when manual emergency brake is active
TUniversalCtrlTable UniCtrlList; /*lista pozycji uniwersalnego nastawnika*/

View File

@@ -10576,6 +10576,7 @@ void TMoverParameters::LoadFIZ_Cntrl( std::string const &line ) {
extract_value( SpringBrakeCutsOffDrive, "SpringBrakeCutsOffDrive", line, "");
extract_value( SpringBrakeDriveEmergencyVel, "SpringBrakeDriveEmergencyVel", line, "");
extract_value(HideDirStatusWhenMoving "HideDirStatusWhenMoving", line, "");
std::map<std::string, start_t> starts {
{ "Disabled", start_t::disabled },
{ "Manual", start_t::manual },

View File

@@ -7537,8 +7537,16 @@ bool TTrain::Update( double const Deltatime )
btLampkaDoorLockOff.Turn( false == mvOccupied->Doors.lock_enabled );
btLampkaDepartureSignal.Turn( mvControlled->DepartureSignal );
btLampkaNapNastHam.Turn((mvControlled->DirActive != 0) && (mvOccupied->EpFuse)); // napiecie na nastawniku hamulcowym
btLampkaForward.Turn(mvControlled->DirActive > 0); // jazda do przodu
btLampkaBackward.Turn(mvControlled->DirActive < 0); // jazda do tyłu
// Wylaczanie lampek kierunku gdy jedziemy
// Feature uruchamiany z fiz z sekcji Ctrl. wpisem HideDirStatusWhenMoving=Yes (domyslnie No)
if (mvOccupied->HideDirStatusWhenMoving && mvOccupied->Vel > 1) {
btLampkaForward.Turn(false);
btLampkaBackward.Turn(false);
}
else {
btLampkaForward.Turn(mvControlled->DirActive > 0); // jazda do przodu
btLampkaBackward.Turn(mvControlled->DirActive < 0); // jazda do tyłu
}
btLampkaED.Turn(mvControlled->DynamicBrakeFlag); // hamulec ED
btLampkaBrakeProfileG.Turn( TestFlag( mvOccupied->BrakeDelayFlag, bdelay_G ) );
btLampkaBrakeProfileP.Turn( TestFlag( mvOccupied->BrakeDelayFlag, bdelay_P ) );