internal override int?Elapse(ElapseData data) { if (trainModeNew != null) { train.trainModeSelected = (Train.TrainModes)trainModeNew; changeModeTimer = CHANGE_MODE_TIMER; trainModeNew = null; } if (train.trainModeActual != train.trainModeSelected) { if (IsModeChangable(data)) { if (changeModeTimer > 0) { changeModeTimer -= (float)data.ElapsedTime.Seconds; } else { changeModeTimer = 0.0f; train.trainModeActual = train.trainModeSelected; } return(-train.specs.BrakeNotches); } else { return(-train.specs.BrakeNotches); } } return(null); }
internal override int? Elapse(ElapseData data) { if (trainModeNew != null) { train.trainModeSelected = (Train.TrainModes)trainModeNew; changeModeTimer = CHANGE_MODE_TIMER; trainModeNew = null; } if (train.trainModeActual != train.trainModeSelected) { if (IsModeChangable(data)) { if (changeModeTimer > 0) { changeModeTimer -= (float)data.ElapsedTime.Seconds; } else { changeModeTimer = 0.0f; train.trainModeActual = train.trainModeSelected; } } else { return -train.specs.BrakeNotches; } } return null; }
internal override void KeyDown(VirtualKeys key) { if (key == VirtualKeys.C1) //Mode Up { if ((int)train.trainModeSelected < train.trainModeCount - 1) { trainModeNew = train.trainModeSelected + 1; } } else if (key == VirtualKeys.C2) //Mode Down { if ((int)train.trainModeSelected > 0) { trainModeNew = train.trainModeSelected - 1; } } }
internal override void KeyDown(VirtualKeys key) { if (key == VirtualKeys.C1) //Mode Up { if ((int)train.trainModeSelected < train.trainModeCount - 1) { trainModeNew = train.trainModeSelected + 1; train.PlaySound(24, 1, 1, false); } } else if (key == VirtualKeys.C2) //Mode Down { if ((int)train.trainModeSelected > 0) { trainModeNew = train.trainModeSelected - 1; train.PlaySound(24, 1, 1, false); } } }