/// <summary>
        /// Allows the game to run logic such as updating the world,
        /// checking for collisions, gathering input, and playing audio.
        /// </summary>
        /// <param name="gameTime">Provides a snapshot of timing values.</param>
        protected override void Update(GameTime gameTime)
        {
            //if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || Keyboard.GetState().IsKeyDown(Keys.Escape))
            //    Paused = !Paused;
            if (currentLevelPoints >= pointsToWin || Enemies.Count <= 0)
            {
                SwitchLevel();
            }

            if (!Paused)
            {
                Input.CheckKeyboardInput(menu);
                if (!isGameOver)
                {
                    ScreenWidth  = GraphicsDevice.Viewport.Width;
                    ScreenHeight = GraphicsDevice.Viewport.Height;

                    link.Update(gameTime);
                    foreach (Bouncerang b in bouncerangs)
                    {
                        b.Update(gameTime);
                        b.CheckState(link);
                    }
                    for (int x = 0; x < Projectiles.Count; x++)
                    {
                        if (Projectiles[x] is Arrow)
                        {
                            Arrow a = (Arrow)Projectiles[x];
                            a.Update(gameTime);
                        }
                        else if (Projectiles[x] is Bomb)
                        {
                            Bomb a = (Bomb)Projectiles[x];
                            a.Update(gameTime);
                        }
                        else if (Projectiles[x] is Potion)
                        {
                            Potion a = (Potion)Projectiles[x];
                            a.Update(gameTime);
                            a.CheckState(link);
                        }
                    }
                }

                base.Update(gameTime);
            }
            else
            {
                Input.MenuInput(menu);
            }
        }