Здесь показаны различия между двумя версиями данной страницы.
Both sides previous revision Предыдущая версия Следущая версия | Предыдущая версия | ||
help:dummy [2013/10/18 20:57] newsash удалено |
— (текущий) | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | <code> | ||
- | 6) В названиях действий и предметов не важен регистр букв, т.е. "ДеньГи" и "деньги" - одна и та же локация. | ||
- | 8) Максимальный индекс элемента массива - 2147483647. Не рекомендуется использовать большие индексы. | ||
- | |||
- | PS: | ||
- | При использовании операторов "KILLALL, KILLVAR" удаляются также все системные переменные. | ||
- | |||
- | Числовая константа записывается числом (например, 4535), а текстовая берётся с двух сторон в кавычки. Кавычками могут быть либо апострофы ('), либо прямые кавычки ("). Две подряд идущие кавычки считаются кавычкой, включённой в текстовую константу. Т.е. после выполнения строк | ||
- | |||
- | *PL 'Byte Soft''s QSP' | ||
- | *PL "Byte Soft's ""QSP""" | ||
- | вы увидите строки | ||
- | Byte Soft's QSP | ||
- | Byte Soft's "QSP" | ||
- | |||
- | Существует возможность использования преформатированных текстовых констант. Для таких констант сохраняются переносы строк и отступы. Примеры: | ||
- | 'Данный текст | ||
- | будет расположен на | ||
- | нескольких строках' | ||
- | |||
- | $a='И этот | ||
- | текст | ||
- | также' | ||
- | |||
- | a=2 & act 'Многострочное | ||
- | название':gt 'next' | ||
- | |||
- | PS: | ||
- | Строки, содержащие преформатированную текстовую константу, считаются ОДНОЙ строкой (сообщения об ошибках также выводятся с учётом того, что это одна строка). | ||
- | |||
- | В зависимости от результата вычисления выражения могут быть либо строковыми, либо числовыми. | ||
- | |||
- | Примеры числовых выражений: | ||
- | 3+4*3*4 | ||
- | (val('25')*4)/(2*5) | ||
- | был_в_комнате = 0 | ||
- | $был_в_комнате = 'нет' | ||
- | 1 AND 1 OR 0 | ||
- | A=B AND (C<>D OR 2=E+3) | ||
- | $str1 = $str2 AND $str2 <> $str3 | ||
- | |||
- | Примеры строковых выражений: | ||
- | 'строка' | ||
- | "проверка" | ||
- | "преформатированная | ||
- | текстовая | ||
- | константа" | ||
- | |||
- | mid("строка",1,2) | ||
- | $VAR | ||
- | $VAR + ' строка ' | ||
- | |||
- | Складывать с помощью "+" можно не только числа (значения числовых выражений), но и объединять текстовые константы (значения строковых выражений). Также для объединения строковых значений можно использовать символ "&", при этом такое объединение должно быть заключено в скобки. Например, | ||
- | |||
- | *PL 'The '+'door '+'is closed.' | ||
- | и | ||
- | *PL ('The '&'door '&'is closed.') | ||
- | выведут одно и то же: "The door is closed.". | ||
- | |||
- | Возможна ЛЮБАЯ комбинация констант, переменных, функций. | ||
- | При вычислении значений выражений движок (по возможности) конвертирует типы данных автоматически. | ||
- | В строковые константы, в базовые описания локаций и названия базовых действий существует возможность вставлять значения выражений. | ||
- | Такие "подвыражения" должны находиться между двойных угловых скобок: "<<" и ">>", до и после которых может идти любой текст, включая подобные "подвыражения". | ||
- | Например, вместо оператора | ||
- | pl 'i='+str(i) | ||
- | можно написать | ||
- | pl 'i=<<i>>' | ||
- | Ещё примеры: | ||
- | число_гоблинов=5 | ||
- | 'Тебя окружили <<число_гоблинов>> гоблинов!' | ||
- | pl 'Вас зовут <<$PlayerName>>, вы находитесь в <<$curloc>>.' | ||
- | Примеры использования вложенных "подвыражений": | ||
- | pl val('<<val("<<i>>")>><<j>>') | ||
- | pl val('<<str(val("<<i>>"))>>') | ||
- | Так как "подвыражения" вычисляются внутри строковых констант, то для вычисления вложенного "подвыражения" необходимо присутствие вложенной строковой константы. | ||
- | PS: | ||
- | Смотрите раздел "Использование массивов" этой части документации, чтобы получить дополнительную информацию о возможных выражениях. | ||
- | |||
- | |||
- | Системные переменные | ||
- | Системные переменные - переменные, значения которых обрабатываются интерпретатором специальным образом. Системные переменные используются как обычные переменные, т.е. в них можно заносить и считывать из них значения (правда стоит помнить, что в результате вы можете получить, например, чёрный цвет текста на чёрном же фоне - и ничего не будет видно). | ||
- | |||
- | |||
- | Базовые системные переменные - основные переменные. | ||
- | Переменные, задающие обработчики событий - позволяют обрабатывать такие события, как выбор предмета, переход на новую локацию, ввод строки в поле ввода... | ||
- | Переменные настройки интерфейса - позволяют настраивать цвета, шрифт, а также использовать в описаниях HTML. | ||
- | </code> |