/// <summary>
        /// Reload level before starting a game
        /// </summary>
        public void ReloadLevel()
        {
            // Load track
            if (track == null)
                track = new Track("TrackSimple", this);
            else
                track.Reload("TrackSimple", this);

            // Load replay for this track to show best player
            bestReplay = new Replay(false, track);
            newReplay = new Replay(true, track);

            // Kill brake tracks
            brakeTracksVertices.Clear();
            brakeTracksVerticesArray = null;

            // Set car at start pos
            SetCarToStartPosition();
        }
        /// <summary>
        /// Start new lap, checks if the newReplay is good and
        /// can be stored as best replay :)
        /// </summary>
        public void StartNewLap()
        {
            float thisLapTime =
                SpeedyRacerManager.Player.GameTimeMilliseconds / 1000.0f;

            // Upload new highscore (as we currently are in game,
            // no bonus or anything will be added, this score is low!)
            Highscores.SetHighscore(
                (int)SpeedyRacerManager.Player.GameTimeMilliseconds);

            SpeedyRacerManager.Player.AddLapTime(thisLapTime);

            if (thisLapTime < bestReplay.LapTime)
            {
                // Add final checkpoint
                SpeedyRacerManager.Landscape.NewReplay.CheckpointTimes.Add(
                    thisLapTime);

                // Save this replay to load it everytime in the future
                newReplay.Save(thisLapTime);

                // Set it as the current best replay
                bestReplay = newReplay;
            } // if

            // And start a new replay for this round
            newReplay = new Replay(true, track);
        }