[[help:main|Назад: Окно основного описания]]
====== Окно дополнительного описан ======
Чаще всего **Окно дополнительного описания** используется для вывода сопроводительной информации, игровой статистики, логов и других сообщений, которые не требуется постоянно менять. Оно не очищается автоматически при смене локации, в отличие от **Окна основного описания**, и чтобы его очистить нужно использовать специальные команды.
Использование этого окна **без необходимости** считается дурным тоном, т.к. это перегружает интерфейс и создаёт проблемы отображения игры на Android и iOS.
**ВНИМАНИЕ!** При написании кроссплатформенных игр использовать дополнительное окно описания настоятельно не рекомендуется **Nex**-ом.
===== Команды для работы с Окном дополнительного описания =====
Под обозначением ''%%[$текст]%%'' ниже на странице понимается любая строка текста, число, значение выражения, переменной или функции.
==== Включение и выключение Окна дополнительного описания ====
* ''%%SHOWSTAT [#выражение]%%'' - если значение выражения отлично от 0, то показывает **Окно дополнительного описания**, иначе скрывает его. Пример:
showstat 0 & ! скрываем окно дополнительного описания
showstat 1 & ! окно дополнительного описания снова отображается
Для удобства чтения кода можно заранее определить переменные ''%%on%%'' и ''%%off%%'' с соответствующими значениями:
on, off = 1, 0
showstat on & ! включаем окно дополнительного описания
showstat off & ! выключаем окно дополнительного описания
==== Команды для вывода текста в Окно дополнительного описания ====
* ''%%P [$текст]%%'' - простой вывод текста. Выводит текст в **Окно дополнительного описания** без перехода на новую строку. Пример:
p 'Бобр'
p 'Добр'
p 'До'
p 'Бобрят'
После выполнения кода (если запустим игру) — в **Окне дополнительного описания** мы увидим:
БобрДобрДоБобрят
* ''%%PL [$текст]%%'' - вывод текста, затем переход на новую строку. Пример:
p 'Бобр' & ! выводим текст без перевода на новую строку
p 'Добр' & ! и здесь тоже
pl 'До'
pl 'Бобрят'
После выполнения кода (если запустим игру) — в **Окне дополнительного описания** мы увидим:
БобрДобрДо
Бобрят
* Если не указать ''%%[$текст]%%'', то команда просто создаст переход на новую строку:
p 'Бобр Добр'
pl
p 'До Бобрят'
В **Окне дополнительного описания** мы увидим:
Бобр Добр
До Бобрят
* ''%%NL [$текст]%%'' - переход на новую строку, а затем вывод текста. Пример:
p 'Бобр' & ! здесь выводим текст без перехода на новую строку
p 'Добр' & ! и здесь тоже
nl 'До'
nl 'Бобрят'
После выполнения кода — в **Окне дополнительного описания** мы увидим:
БобрДобр
До
Бобрят
* Если не указать ''%%[$текст]%%'', то команда просто совершит переход на новую строку:
*p 'Бобр Добр'
*nl
*p 'До Бобрят'
В **Окне дополнительного описания** мы увидим:
Бобр Добр
До Бобрят
==== Команды для очистки Окна дополнительного описания ====
* ''%%CLEAR%%'' или ''%%CLR%%'' - очищает **Окно дополнительного описания**. Пример:
*p 'Бобр' & ! выводим текст без перехода на новую строку
*pl 'Добр' & ! выводим текст и переходим на новую строку
*nl 'До' & ! переходим на новую строку и выводим текст
*nl 'Бобрят' & ! переходим на новую строку и выводим текст
*clear
& ! очищаем окно дополнительного описания от всего текста
В результате работы этого кода **Окно дополнительного описания** окажется пустым.
* ''%%CLS%%'' - эквивалентно конструкции “''%%CLEAR & *CLEAR & CLA & CMDCLEAR%%''”, т.е. очищает все окна, кроме списка предметов.
==== Функции для работы с Окном дополнительного описания ====
* ''%%$STATTXT%%'' - эта функция возвращает текст, выведенный в окно дополнительного описания. Пример:
p 'Вёз Корабль Карамель'
nl 'Наскочил Корабль На Мель'
$string = $stattxt
В данном случае при выполнении кода в переменную ''%%$string%%'' запишутся две строки текста:
Вёз Корабль Карамель
Наскочил Корабль На Мель
==== Системные переменные для управления Окном дополнительного описания ====
* ''%%DISABLESCROLL%%'' - если значение переменной не равно 0, то запрещает автопрокрутку текста при его выводе в окно основного или дополнительное описания.\\ **Что это значит**. Предположим, мы вывели на экран большой объём текста, а затем при нажатии на **действие** у нас выводится ещё один фрагментик текста. Если ''%%DISABLESCROLL = 0%%'', этот фрагментик текста при выводе заставит экран прокрутиться вниз. Если мы не хотим, чтобы экран прокручивался вниз в этом случае, мы присваиваем переменной ''%%DISABLESCROLL%%'' единицу.
===== Другие примеры =====
P '1'
PL '23'
NL '456'
'78'
После выполнения кода в **Окно дополнительного описания** будет выведено:
123
45678
Можно выводить не только строки, но и числа, и значения переменных, функций и результаты вычисления выражений:
p 'I ♥ QSP!'
pl 256 / 12 * 9
pl 137 + (2 * 9)
p $curloc
nl rand(999)
x = 15 & ! присваиваем значение переменной
nl x
[[help:msgbox|Вперёд: Окно сообщений]]