Перейти к основному содержимому

18.1. Чем отличаются команды inclib и openqst?

В: Чем отличаются команды inclib и openqst?

О: Итак. У нас есть основная игра "start.qsp" и есть дополнительная игра (модуль) "mod.qsp".

Если в основной игре мы напишем:

openqst "mod.qsp"

То при выполнении этой команды произойдёт следующее:

  1. Значения всех переменных не изменятся
  2. Если проигрываются звуковые файлы, они продолжат проигрываться
  3. Все предметы в окне предметов останутся.
  4. Текст в окне дополнительного описания останется

Но, плеер будет работать уже с новой игрой. Т.е. все локации "start.qsp" будут удалены, а все локации "mod.qsp" буду добавлены к текущему списку локаций в плеере. Мы действительно фактически закрываем одну игру, а открываем другую, и переходим на самую первую локацию этой новой открытой игры.

Зачем это может понадобиться. Например, для разработки дополнительных миниигр в виде независимых игр. Либо, если у нас очень большая игра со множеством локаций (типа масштабной RPG), можно разбить её на части по областям, и это облегчит нам разработку, поскольку гораздо легче ориентироваться в коротком списке локаций.

Если же в основной игре мы напишем:

inclib "mod.qsp"

То при выполнении этой команды мы останемся в той же самой игре "start.qsp", и значения переменных не изменятся, и воспроизведение звуковых файлов продолжится, останутся и текущие действия и основное описание и так далее, и мы даже останемся на той же самой локации, из которой вызывали эту команду. Единственное, что произойдёт, это все локации из игры "mod.qsp" добавятся к списку локаций игры "start.qsp". Если же в списке локаций игры "mod.qsp" есть локации с названиями как у локаций игры "start.qsp", локации игры "mod.qsp" с идентичными названиями попросту не добавятся.