Онлайн-справочник по самым часто задаваемым вопросам из темы "Как сделать?" на форуме QSP.su

18.2. Как сделать лаунчер?

В: Как сделать лаунчер?

Мне нужно, чтобы у игрока был выбор загрузить одну из двух игр, и когда он выбирает игру, она загружалась. Как это сделать?

О:

Наиболее простым и очевидным решением является написание игры-лаунчера, то есть модуля, который будет отвечать исключительно за отображение вступительной части, и предложит игроку на выбор одну из игр.

Пишем лаунчер с одной единственной локацией:

# launcher
*pl "Выберите игру:"
act "Выбрать игру №1":
    openqst 'game_1.qsp'
end
act "Выбрать игру №2":
    openqst 'game_2.qsp'
end
-- launcher

Обратите внимание, несмотря на то, что при использовании оператора openqst не происходит удаления переменных, удаления предметов инвентаря, очистки дополнительного описания и строки ввода, а также остановки проигрываемых файлов, он открывает именно новую игру. То есть ни одна из локаций лаунчера во вновь открытой игре использоваться не будет.

Если вам нужно именно подключить игру к уже текущей (к лаунчеру), используйте оператор `inclib`:

# launcher
*pl "Выберите игру:"
act "Выбрать игру №1":
    inclib 'game_1.qsp'
    goto 'start_1'
end
act "Выбрать игру №2":
    inclib 'game_2.qsp'
    goto 'start_2'
end
-- launcher

Если вы аботаете с Quest Navigator, то вместо `inclib` нужно использовать оператор `inclib`.