/// <summary>
    /// generates a new level based on a matrix create by the LevelGenerator
    /// </summary>
    public void GenerateNewLevel()
    {
        if (LG != null)
        {
            int[,] newLevel;

            if (loadLevel)
            {
                newLevel = Storage.LoadLevel(LG);
            }
            else
            {
                newLevel = LG.SetupNewLevel();
            }

            for (int i = 0; i < boardLength; i++)
            {
                for (int j = 0; j < boardHeight; j++)
                {
                    logicMatrix[i, j].SetNewID(newLevel[i, j]);
                }
            }

            SetupLogicMatrix();
        }
    }