public override void Enter(StateBasedGame container)
 {
     startTimer = 4000;
     pacman.SetStartPositionTile(50, 50);
     currentState = GAMEPLAYSTATES.START;
     cam.SetFixVector(Vector2.Zero);
     cam.CamSpeed = 0.2f;
     cam.Position = pacman.Position - Globals.CENTER_PACMAN / cam.Scale;
     MediaPlayer.IsRepeating = false;
     MediaPlayer.Volume = 1f;
     cam.ShakeScreen(2, 1);
     factory.ResetFactory(gameMap.Width, gameMap.Height);
     survialManager.ResetSurivalMode();
     hud.Reset();
 }
        private void UpdatePlay(int delta, StateBasedGame container)
        {
            pacman.Update(Keyboard.GetState(), delta);
            cam.Update(delta);
            survialManager.Update(delta);

            if (Keyboard.GetState().IsKeyDown(Keys.Escape))
            {
                startTimer = 2000;
                survialManager.NullCombo();
                currentState = GAMEPLAYSTATES.END;
                musicManager.PlayWinMusic();
            }

               //container.EnterState(Globals.MENUSTATE);

            if (/*musicManager.isSongStopped()*/ false)
            {
                startTimer = 2000;
                currentState = GAMEPLAYSTATES.END;
            }
        }
 // internal updates
 private void UpdateStart(int delta)
 {
     if (startTimer <= 0)
     {
         musicManager.PlayGameplayMusic();
         cam.CamSpeed = 0.8f;
         currentState = GAMEPLAYSTATES.PLAY;
     }
     else
     {
         if (startTimer >= 4000)
         {
             MusicManager.Get().PlaySound("start", 0.5f);
             startTimer -= delta;
         }
         else
             startTimer -= delta;
     }
     cam.Update(delta);
 }
 private void UpdateEnd(int delta)
 {
     if (startTimer <= 0)
         currentState = GAMEPLAYSTATES.ENDRESULT;
     else
     {
         startTimer -= delta;
         hud.UpdateEnd(delta, startTimer, 2000);
     }
 }