private void StartPlaying() { if (!string.IsNullOrEmpty(fileName)) { if (playing) { StopPlaying(); } file = File.OpenRead(fileName); binaryReader = new BinaryReader(file); aircraftParameters = new AircraftParameters(); aircraftParameters.ReadParameters(binaryReader.ReadString()); if (airplaneModel == null) { airplaneModel = new AirplaneModel(this); } playing = true; startTime = -1; relativeTime = 0; previousState = new AirplaneState(); nextState = new AirplaneState(); nextTime = binaryReader.ReadDouble(); nextState.Read(binaryReader); currentState.Gear = nextState.Gear; currentState.Flaps = nextState.Flaps; if (currentState.Gear) { Gear = 1.0; } if (currentState.Flaps) { Flaps = 1.0; } airplaneModel.StartEngine(); } }