public WaveManager(Texture2D enemyTexture, int numOfWaves, Queue<Vector2> waypoints)
        {
            this.numOfWaves = numOfWaves;
            this.enemyTexture = enemyTexture;

            this.waypoints = waypoints;

            Vector2 startLocation = new Vector2(this.waypoints.Peek().X -
                Engine.TileWidth / 2, this.waypoints.Peek().Y - Engine.TileHeight / 2);

            for (int i = 0; i < numOfWaves; i++)
            {
                int numOfEnemies = 12;

                int test = (i + 1) % 5;

                if ((i + 1) % 5 != 0 && (i + 1) % 6 != 0) // Normal
                {
                    numOfEnemies = 12;
                }

                else if ((i + 1) % 5 == 0 && (i + 1) % 6 != 0) // Boss
                {
                    numOfEnemies = 1;
                }

                else if ((i + 1) % 5 != 0 && (i + 1) % 6 == 0) // Fast
                {
                    numOfEnemies = 10;
                }

                Wave wave = new Wave(this.enemyTexture, numOfEnemies, i,
                    startLocation, this.waypoints);

                waves.Enqueue(wave);
            }
        }