Окно основного описания
Это то самое окно, которое используется чаще всего. В него выводятся практически все тексты игры, и оно не отключается.
Окно основного описания очищается автоматически, при переходе на локацию с помощью оператора GOTO (GT).
Чтобы вывести текст в Окно основного описания, нужно воспользоваться одним из следующих способов:
- Написать текст в поле “Описание” локации (Базовое описание локации) в Quest Generator. Тогда весь текст из этого поля автоматически будет выведен в Окно основного описания при переходе на локацию.
- Воспользоваться одной из команд для вывода текста, прописав эту команду в поле Выполнить при посещении локации в Quest Generator. При работе в текстовом редакторе у вас есть т олько этот способ.
Команды для работы с Окном основного описания
Под обозначением [$текст] ниже на странице понимается любая строка текста, число, значение выражения, переменной или функции.
Команды для вывода текста в Окно основного описания
-
*P [$текст]- простой вывод текста. Выводит текст в Окно основного описания без перехода на новую строку. Пример:*p 'Шла'*p 'Саша'*p 'По'*p 'Шоссе'После выполнения кода (если запустим игру) — в Окне основного описания мы увидим:
ШлаСашаПоШоссе -
*PL [$текст]- вывод текста, затем переход на новую строку. Пример:*p 'Шла' & ! здесь выводим текст без перехода на новую строку*p 'Саша' & ! и здесь тоже*pl 'По'*pl 'Шоссе'После выполнения кода — в Окне основного описания мы увидим:
ШлаСашаПоШоссе-
Если не указать
[$текст], то команда просто создаст переход на новую строку:*p 'Шла Саша'*pl*p 'По шоссе'В Окне основного описания мы увидим:
Шла СашаПо Шоссе -
Если не указать
*pl, а указать только[$текст], работа такой команды почти не будет отличаться от работы команды с операторм*pl. Это называется неявный оператор:'Во поле''берёзка''стояла'! эквивалентно*pl 'Во поле'*pl 'берёзка'*pl 'стояла'
-
-
*NL [$текст]- переход на новую строку, а затем вывод текста. Пример:*p 'Шла' & ! здесь выводим текст без перехода на новую строку*p 'Саша' & ! и здесь тоже*nl 'По'*nl 'Шоссе'После выполнения кода — в Окне основного описания мы увидим:
ШлаСашаПоШоссе-
Если не указать
[$текст], то команда просто совершит переход на новую строку:*p 'Шла Саша'*nl*p 'По Шоссе'В Окне основного описания мы увидим:
Шла СашаПо Шоссе
-
Команды для очистки Окна основного описания
-
*CLEARили*CLR- очищает Окно основного описания. Пример:*p 'Шла' & ! выводим текст без перехода на новую строку*pl 'Саша' & ! выводим текст и переходим на новую строку*nl 'По' & ! переходим на новую строку и выводим текст*nl 'Шоссе' & ! переходим на новую строку и выводим текст*clear & ! очищаем окно основного описания от всего текстаВ результате работы этого кода Окно основного описания окажется пустым.
-
CLS- эквивалентно конструкции “CLEAR & *CLEAR & CLA & CMDCLEAR”, т.е. очищает все окна, кроме списка предметов.
Функции для работы с Окном осн овного описания
-
$MAINTXT- возвращает текст, выведенный в окно основного описания. Пример:*p 'Ехал Грека Через Реку'*nl 'Видит Грека В Реке Рак'$text = $maintxtВ данном случае в переменную
$textзапишутся две строки текста:Ехал Грека Через РекуВидит Грека В Реке Рак -
$DESC([$локация])- возвращает текст базового описания локации с названием[$локация].- Обратите внимание! Функция возвращает текст, написанный только в поле “Описание” (Базовое описание) редактора Quest Generator. При работе в текстовом редакторе данное поле преобразуется в команды
*pмежду тегами! BASEи! END BASE. Функция всегда будет возвращать сумму строк этих команд. - В Базовом описании можно использовать подвыражения, функция
$DESCавтоматически “раскроет” их.
- Обратите внимание! Функция возвращает текст, написанный только в поле “Описание” (Базовое описание) редактора Quest Generator. При работе в текстовом редакторе данное поле преобразуется в команды
Системные переменные для управления Окном основного описания
DISABLESCROLL- если значение переменной не равно0, то запрещает автопрокрутку текста при его выводе в окно основного или дополнительное описания. Что это значит. Предположим, мы вывели на экран большой объём текста, а затем при нажатии на действие у нас выводится ещё один фрагментик текста. ЕслиDISABLESCROLL = 0, этот фрагментик текста при выводе заставит экран прокрутиться вниз. Если мы не хотим, чтобы экран прокручивался вниз в этом случае, мы присваиваем переменнойDISABLESCROLLединицу.$BACKIMAGE- содержит путь к файлу фонового изображения для Окна основного описания.-
Фон в окне основного описания отображается в том случае, если значение данной переменной отлично от
""(пустая строка) и файл изображения удалось загрузить. -
Необходимо указывать путь к изображению относительно файла игр ы:
! файл игры лежит в папке C:\QSP\myCoolGame! файл изображения лежит в папке C:\QSP\myCoolGame\image и называется picture.png! значит установить изображение фоном в окно основного описания мы можем так:$backimage='image\picture.png' -
При этом фон вписывается в границы Окна основного описания, и управлять им в классическом плеере нельзя.
-
Если вы хотите убрать фон, присвойте переменной
$BACKIMAGEпустую строку:$backimage = ''
-
Другие примеры
*P '1'
*PL '23'
*NL '456'
'78'
После выполнения кода в Окно основного описания будет выведено:
123
45678
Можно выводить не только строки, но и числа, и значения переменных, функций и результаты вычисления выражений:
*pl 'I ♥ QSP!'
*pl 256 / 12 * 9
137 + (2 * 9)
$curloc
*nl rand(999)
x = 15
*nl x