Skip to content

Commit 4d5b1c5

Browse files
committed
Fix TrainCarOperations no interacts AltPgDn AltPgUp.
1 parent 511df24 commit 4d5b1c5

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

Source/RunActivity/Viewer3D/Popups/TrainCarOperationsWindow.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -571,6 +571,18 @@ public override void PrepareFrame(ElapsedTime elapsedTime, bool updateFull)
571571
var carOperations = Owner.Viewer.CarOperationsWindow;
572572
var trainCarWebpage = Owner.Viewer.TrainCarOperationsWebpage;
573573

574+
// Allows interaction with <Alt>+<PageDown> and <Alt>+<PageUP>.
575+
if (Owner.Viewer.Camera.AttachedCar != null && !(Owner.Viewer.Camera is CabCamera) && (trainCarViewer.Visible || Visible))
576+
{
577+
var currentCameraCarID = Owner.Viewer.Camera.AttachedCar.CarID;
578+
if (PlayerTrain != null && (currentCameraCarID != trainCarViewer.CurrentCarID || CarPosition != trainCarViewer.CarPosition))
579+
{
580+
trainCarViewer.CurrentCarID = currentCameraCarID;
581+
trainCarViewer.CarPosition = CarPosition = PlayerTrain.Cars.TakeWhile(x => x.CarID != currentCameraCarID).Count();
582+
CarPositionChanged = true;
583+
}
584+
}
585+
574586
trainCarViewer.TrainCarOperationsChanged = !trainCarViewer.Visible && trainCarViewer.TrainCarOperationsChanged ? false : trainCarViewer.TrainCarOperationsChanged;
575587

576588
CurrentDisplaySizeY = DisplaySizeY;

0 commit comments

Comments
 (0)