Загрузка следующего уровня

Я делаю игру в Unity. В настоящее время есть два уровня. Я считаю до 30 секунд, когда время становится 0, я хочу загрузить следующий уровень автоматически. Но когда загружается следующий уровень, экран игры зависает, и я не могу ничего подвинуть. Функция, которую я использовал для загрузки следующего уровня, следует ниже (эта функция в скрипте, который несет пустой игровой объект, который не будет уничтожен при загрузке нового уровня):

function loadNextlvl(){
        var cur_level = Application.loadedLevel;
        yield WaitForSeconds(5.0);
        Application.LoadLevel(cur_level + 1);
    }

Что я должен делать?

1 ответ

Моя работа с Unity была ориентирована только на хобби, но каждый раз, когда я использовал Application.LoadLevel, я передавал ей строку с именем уровня, а не указатель. По API я вижу, что он перегружен, чтобы принимать int, но, возможно, для целей тестирования, назовите его по имени, чтобы увидеть, работает ли он.

Также вам нужно сообщить Unity уровни, которые вы собираетесь использовать. Вы можете сделать это в Build Settings из меню File.

Наконец, вы можете попробовать использовать Application.levelCount чтобы увидеть, находитесь ли вы в пределах уровней.

Другие вопросы по тегам