Базовые операторы языка QSP |
Содержание Previous Next |
! - оператор комментария. То, что находится в данной строке после оператора комментария, и до конца строки игнорируется интерпретатором. Оператор комментария позволяет "закомментировать" (выключить) ненужный временно оператор / функцию во время отладки игры. Кроме того, написание комментариев к коду программы является одним из признаков хорошего стиля программирования. В операторе комментария поддерживаются преформатированные строки. Примеры:
! это комментарий без преформатированных строк !"а этот комментарий содержит преформатированную строку" !" и этот тоже " a = 3 & ! а также 'вот этот'
*P [выражение] - вывод текста в основное окно описаний (по умолчанию находится слева сверху и не может быть отключено).
*PL [выражение] - вывод текста, затем переход на новую строку в основном окне описаний. Если [выражение] не указано, то перевод строки. Аналогичным образом можно вывести текст, просто написав нужное выражение вместо данного оператора. Например, строки
*PL $AAA+'989' *PL 'Вы находитесь в парке' *PL 'Преформатированная строка'
и
$AAA+'989' 'Вы находитесь в парке' 'Преформатированная строка'
выполнят одно и то же действие.
*NL [выражение] - переход на новую строку, затем вывод текста в основном окне описаний. Если [выражение] не указано, то перевод строки. Отличается от *PL порядком вывода текста.
*CLEAR или *CLR - очистка основного окна описаний.
P [выражение] - вывод текста в окно пользователя (по умолчанию находится справа внизу, обычно служит для вспомогательных целей).
PL [выражение] - вывод текста, затем переход на новую строку в окне пользователя. Если [выражение] не указано, то перевод строки.
NL [выражение] - переход на новую строку (перевод каретки), затем вывод текста в окне пользователя. Если [выражение] не указано, то перевод строки. Отличается от PL порядком вывода текста.
CLEAR или CLR - очистка окна пользователя.
CMDCLEAR или CMDCLR - очистка строки ввода.
CLS - эквивалентен конструкции "CLEAR & *CLEAR & CLA & CMDCLEAR", т.е. очищает всё, кроме списка предметов.
MSG [выражение] - вывод заданного сообщения в информационном окне.
WAIT [#выражение] - остановка выполнения программы на заданное количество миллисекунд (1 секунда = 1000 миллисекунд).
MENU [$выражение] - вызов меню с заданным названием (см. раздел "Создание меню для предметов").
SETTIMER [#выражение] - задает интервал таймера для локации-счётчика (по умолчанию 500мс, т.е. локация-счётчик обрабатывается 2 раза в секунду). Также влияет на частоту автоматического обновления интерфейса.
DYNAMIC [$строка кода],[параметр 1],[параметр 2], ... - выполнение кода. Данный оператор позволяет динамически генерировать код игры. Переданные параметры хранятся в массиве ARGS. После выполнения кода предыдущие значения ARGS восстанавливаются. Примеры:
DYNAMIC '$a="string<<$b>>"' DYNAMIC '$a' DYNAMIC 'if $a="string":''text!''' DYNAMIC " $args[0] addobj $args[1] ",'Текст','Вилка' |