16
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-07-22 20:59:19 +02:00

Small fix for AI driving DieselEngine - better cruising in SN61 too

This commit is contained in:
Królik Uszasty
2019-05-12 13:35:20 +02:00
parent 295386dd13
commit b8130b3f47

View File

@@ -3511,7 +3511,7 @@ void TController::SetTimeControllers()
} }
} }
//5. Check Main Controller in Dizels //5. Check Main Controller in Dizels
if ((mvControlling->EngineType == TEngineType::DieselEngine)&&(mvControlling->hydro_TC)) if ((mvControlling->EngineType == TEngineType::DieselEngine)&&(mvControlling->Vmax>30))
{ {
int MaxPos = mvControlling->MainCtrlPosNo; int MaxPos = mvControlling->MainCtrlPosNo;
int MinPos = MaxPos; int MinPos = MaxPos;
@@ -3522,8 +3522,12 @@ void TController::SetTimeControllers()
int DesiredPos = MinPos + (MaxPos - MinPos)*(VelDesired > mvControlling->Vel ? (VelDesired - mvControlling->Vel) / Factor : 0); int DesiredPos = MinPos + (MaxPos - MinPos)*(VelDesired > mvControlling->Vel ? (VelDesired - mvControlling->Vel) / Factor : 0);
if (DesiredPos > MaxPos) DesiredPos = MaxPos; if (DesiredPos > MaxPos) DesiredPos = MaxPos;
if (DesiredPos < MinPos) DesiredPos = MinPos; if (DesiredPos < MinPos) DesiredPos = MinPos;
while (mvControlling->MainCtrlPos > DesiredPos) mvControlling->DecMainCtrl(1); if (!mvControlling->SlippingWheels)
while (mvControlling->MainCtrlPos < DesiredPos) mvControlling->IncMainCtrl(1); {
while (mvControlling->MainCtrlPos > DesiredPos) mvControlling->DecMainCtrl(1);
if (mvControlling->Vel>mvControlling->dizel_minVelfullengage)
while (mvControlling->MainCtrlPos < DesiredPos) mvControlling->IncMainCtrl(1);
}
} }
} }
}; };