public override void Draw(GameTime gameTime)
        {
            graphicsDevice.Clear(Color.LightCoral);


            //implements a camera
            spriteBatch.Begin(SpriteSortMode.Immediate,
                              BlendState.AlphaBlend, null, null, null, null, cam.get_transformation(graphicsDevice));
            //background here

            platformList.Draw(spriteBatch);
            enemyList.Draw(spriteBatch);
            sliceList.Draw(spriteBatch);
            particleList.Draw(spriteBatch);

            player.Draw(spriteBatch);
            if (showbb)
            {
                //enemyList.drawInfo(spriteBatch, Color.Red, Color.Yellow);
                sliceList.drawInfo(spriteBatch, Color.Red, Color.Yellow);
                player.drawBB(spriteBatch, Color.Red);
                platformList.drawInfo(spriteBatch, Color.Red, Color.Yellow);
                LineBatch.drawLineRectangle(spriteBatch, new Rectangle((int)PlayerSpawnPosition.X, (int)PlayerSpawnPosition.Y, 20, 20), Color.Black);
                LineBatch.drawLineRectangle(spriteBatch, OutOfBounds, Color.Red);
            }



            goal.Draw(spriteBatch);
            spriteBatch.End();


            //DRAW UI STUFF HERE
            spriteBatch.Begin();
            abilityIconDoubleJump.Draw(spriteBatch);
            abilityIconDash.Draw(spriteBatch);
            abilityIconSlice.Draw(spriteBatch);

            TextRenderable score = new TextRenderable("SCORE: " + Game1.TimeScore.ToString(), new Vector2(100, 100), MenuScreen.menuFont, Color.Black);

            score.Draw(spriteBatch);
            //spriteBatch.Draw(texMouseCursor, new Vector2(InputManager.Instance.GetMousePositionX(), InputManager.Instance.GetMousePositionY()), Color.White);
            spriteBatch.Draw(texMouseCursor, null, new Rectangle(InputManager.Instance.GetMousePositionX(), InputManager.Instance.GetMousePositionY(), 30, 30), null, null, 0, null, Color.White, SpriteEffects.FlipHorizontally, 0);
            spriteBatch.End();
        }
        public override void Draw(GameTime gameTime)
        {
            Vector2 middleScreen = new Vector2(Game1.SCREEN_WIDTH / 2, Game1.SCREEN_HEIGHT / 2);

            spriteBatch.Begin();

            textRenderable = new TextRenderable(titleString, middleScreen + new Vector2(0, -100), titleFont, Color.White);
            textRenderable.Draw(spriteBatch);
            for (int i = 0; i < menuStrings.Count; i++)
            {
                textRenderable = new TextRenderable(menuStrings[i], middleScreen + new Vector2(0, i * 50), menuFont, Color.White);
                textRenderable.Draw(spriteBatch);
            }

            textRenderable = new TextRenderable("HIGHSCORES", middleScreen + new Vector2(-300, -50), menuFont, Color.White);
            textRenderable.Draw(spriteBatch);
            for (int i = 0; i < 5; i++)
            {
                textRenderable = new TextRenderable((i + 1).ToString() + ".  " + Game1.Scores[i].ToString(), middleScreen + new Vector2(-300, i * 50), menuFont, Color.White);
                textRenderable.Draw(spriteBatch);
            }

            if (unlockChallengeMode == true)
            {
                textRenderable = new TextRenderable("CHALLENGE HIGHSCORES", middleScreen + new Vector2(300, -50), menuFont, Color.Red);
                textRenderable.Draw(spriteBatch);
                for (int i = 0; i < 5; i++)
                {
                    textRenderable = new TextRenderable((i + 1).ToString() + ".  " + Game1.ChallengeScores[i].ToString(), middleScreen + new Vector2(300, i * 50), menuFont, Color.Red);
                    textRenderable.Draw(spriteBatch);
                }
            }

            selector.Position = middleScreen + new Vector2(200, menuSelector * 50 - selector.getWidth() / 2);
            selector.Draw(spriteBatch);

            particleList.Draw(spriteBatch);
            sliceList.Draw(spriteBatch);
            spriteBatch.End();
        }