А что тут такого особенного? Мы создаем некий класс Map, который хранит в себе:
Текстуру (или айди текстуры, я не помню уже, как там устроено в libgdx, или же ты её при создании объекта назначаешь)
Массив, содержащий вот эти кнопочки, при нажатии на которых игрок попадает на новый уровень). Эти кнопочки расставляются автоматический на основе ранее заготовленных данных. Эти данные - обычный массив, содержащий информацию о номере уровня(ну или названия, как тебе удобнее), на которой игрок перейдет, а так же хранящий координаты расположения этой кнопки на текстуре (эти данные ты можешь в каком-то конфиге хранить удобного для тебя формата, json на пример, и при запуске игры их парсить)
Ничего такого сложного нет... С первого взгляда может показаться тебе громоздким, но по сути нет.