diff --git a/DriverAssist/Implementation/DriverAssistController.cs b/DriverAssist/Implementation/DriverAssistController.cs index b3f1605..09b74cc 100644 --- a/DriverAssist/Implementation/DriverAssistController.cs +++ b/DriverAssist/Implementation/DriverAssistController.cs @@ -193,6 +193,7 @@ public void OnDestroy() public void OnFixedUpdate() { if (!loaded) return; + if (locoEntity?.Type == "LocoDM1U") return; Stopwatch stopWatch = new Stopwatch(); stopWatch.Start(); @@ -290,22 +291,21 @@ public void ChangeCar(TrainCar? trainCar) locoEntity.UpdateLocomotive(train); locoEntity.Components.LocoSettings = null; - LocoSettings settings = config.LocoSettings[locoEntity.Type]; - log.Debug($"locoEntity.Type={locoEntity.Type}"); - log.Debug( - $"MinTorque={settings.MinTorque}" + - $", MaxAmps={settings.MaxAmps}" + - $", OperatingTemp={settings.OperatingTemp}" + - $", HillClimbTemp={settings.HillClimbTemp}" + - $", BrakingTime={settings.BrakingTime}" + - $", BrakeReleaseFactor={settings.BrakeReleaseFactor}" + - $", MinBrake={settings.MinBrake}" + - $", HillClimbAccel={settings.HillClimbAccel}" + - $", CruiseAccel={settings.CruiseAccel}" + - $", MaxAccel={settings.MaxAccel}" - ); - if (settings != null) + + if (config.LocoSettings.TryGetValue(locoEntity.Type, out LocoSettings? settings)) { + log.Debug( + $"MinTorque={settings.MinTorque}" + + $", MaxAmps={settings.MaxAmps}" + + $", OperatingTemp={settings.OperatingTemp}" + + $", HillClimbTemp={settings.HillClimbTemp}" + + $", BrakingTime={settings.BrakingTime}" + + $", BrakeReleaseFactor={settings.BrakeReleaseFactor}" + + $", MinBrake={settings.MinBrake}" + + $", HillClimbAccel={settings.HillClimbAccel}" + + $", CruiseAccel={settings.CruiseAccel}" + + $", MaxAccel={settings.MaxAccel}" + ); log.Debug("Assigned settings to locoEntity"); locoEntity.Components.LocoSettings = settings; }