Здесь показаны различия между двумя версиями данной страницы.
Both sides previous revision Предыдущая версия Следущая версия | Предыдущая версия | ||
help:main [2022/12/30 12:45] aleks_versus частично переписано |
help:main [2024/10/10 17:35] (текущий) aleks_versus |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | |||
[[help:locations|Назад: Локации]] | [[help:locations|Назад: Локации]] | ||
Строка 10: | Строка 9: | ||
Чтобы вывести текст в **Окно основного описания**, нужно воспользоваться одним из следующих способов: | Чтобы вывести текст в **Окно основного описания**, нужно воспользоваться одним из следующих способов: | ||
- | * Написать текст в поле "Описание" локации (Базовое описание локации) в Quest Generator. Тогда весь текст из этого поля автоматически будет выведен в **Окно основного описания** при переходе на локацию. | + | * Написать текст в поле “Описание” локации (Базовое описание локации) в Quest Generator. Тогда весь текст из этого поля автоматически будет выведен в **Окно основного описания** при переходе на локацию. |
- | * Воспользоваться одной из команд для вывода текста, прописав эту команду в поле **Выполнить при посещении** локации в **Quest Generator**. При работе в текстовом редакторе у вас есть только этот способ. | + | * Воспользоваться одной из команд для вывода текста, прописав эту команду в поле **Выполнить при посещении** локации в **Quest Generator**. При работе в текстовом редакторе у вас есть только этот способ. |
===== Команды для работы с Окном основного описания ===== | ===== Команды для работы с Окном основного описания ===== | ||
- | Под обозначением ''[$текст]'' ниже на странице понимается любая строка текста, число, значение выражения, переменной или функции. | + | Под обозначением ''%%[$текст]%%'' ниже на странице понимается любая строка текста, число, значение выражения, переменной или функции. |
==== Команды для вывода текста в Окно основного описания ==== | ==== Команды для вывода текста в Окно основного описания ==== | ||
- | + | * ''%%*P [$текст]%%'' - простой вывод текста. Выводит текст в **Окно основного описания** без перехода на новую строку. Пример:<sxh qsp> | |
- | + | ||
- | * ''***P** [$текст]'' - простой вывод текста. Выводит текст в **Окно основного описания** без перехода на новую строку. Пример: <sxh qsp> | + | |
*p 'Шла' | *p 'Шла' | ||
*p 'Саша' | *p 'Саша' | ||
*p 'По' | *p 'По' | ||
*p 'Шоссе' | *p 'Шоссе' | ||
- | </sxh> | + | </sxh> После выполнения кода (если запустим игру) — в **Окне основного описания** мы увидим:<sxh> |
- | После выполнения кода (если запустим игру) — в **Окне основного описания** мы увидим:<sxh> | + | |
ШлаСашаПоШоссе | ШлаСашаПоШоссе | ||
</sxh> | </sxh> | ||
- | * ''***PL** [$текст]'' - вывод текста, затем переход на новую строку. Пример:<sxh qsp> | + | |
+ | * ''%%*PL [$текст]%%'' - вывод текста, затем переход на новую строку. Пример:<sxh qsp> | ||
*p 'Шла' & ! здесь выводим текст без перехода на новую строку | *p 'Шла' & ! здесь выводим текст без перехода на новую строку | ||
*p 'Саша' & ! и здесь тоже | *p 'Саша' & ! и здесь тоже | ||
*pl 'По' | *pl 'По' | ||
*pl 'Шоссе' | *pl 'Шоссе' | ||
- | </sxh> После выполнения кода — в **Окне основного описания** мы увидим:<sxh> | + | </sxh> После выполнения кода — в **Окне основного описания** мы увидим:<sxh> |
ШлаСашаПо | ШлаСашаПо | ||
Шоссе | Шоссе | ||
</sxh> | </sxh> | ||
- | * Если не указать ''[$текст]'', то команда просто создаст переход на новую строку:<sxh qsp> | + | * Если не указать ''%%[$текст]%%'', то команда просто создаст переход на новую строку: <sxh qsp> |
*p 'Шла Саша' | *p 'Шла Саша' | ||
*pl | *pl | ||
*p 'По шоссе' | *p 'По шоссе' | ||
- | </sxh> | + | </sxh> В **Окне основного описания** мы увидим:<sxh> |
- | В **Окне основного описания** мы увидим:<sxh> | + | |
Шла Саша | Шла Саша | ||
По Шоссе | По Шоссе | ||
</sxh> | </sxh> | ||
- | * Если не указать ''*pl'', а указать только ''[$текст]'', работа такой команды почти не будет отличаться от работы команды с операторм **''*pl''**. Это называется [[help:keywords_operator|**неявный оператор**]]:<sxh qsp> | + | * Если не указать ''%%*pl%%'', а указать только ''%%[$текст]%%'', работа такой команды почти не будет отличаться от работы команды с операторм **''%%*pl%%''**. Это называется **[[help:keywords_operator|неявный оператор]]**: <sxh qsp> |
'Во поле' | 'Во поле' | ||
'берёзка' | 'берёзка' | ||
Строка 55: | Строка 51: | ||
! эквивалентно | ! эквивалентно | ||
- | *pl 'Во поле' | + | pl 'Во поле' |
- | *pl 'берёзка' | + | pl 'берёзка' |
*pl 'стояла' | *pl 'стояла' | ||
</sxh> | </sxh> | ||
- | * ''***NL** [$текст]'' - переход на новую строку, а затем вывод текста. Пример:<sxh qsp> | + | |
+ | * ''%%*NL [$текст]%%'' - переход на новую строку, а затем вывод текста. Пример: <sxh qsp> | ||
*p 'Шла' & ! здесь выводим текст без перехода на новую строку | *p 'Шла' & ! здесь выводим текст без перехода на новую строку | ||
*p 'Саша' & ! и здесь тоже | *p 'Саша' & ! и здесь тоже | ||
*nl 'По' | *nl 'По' | ||
*nl 'Шоссе' | *nl 'Шоссе' | ||
- | </sxh> | + | </sxh> После выполнения кода — в **Окне основного описания** мы увидим: <sxh> |
- | После выполнения кода — в **Окне основного описания** мы увидим:<sxh> | + | |
ШлаСаша | ШлаСаша | ||
По | По | ||
Шоссе | Шоссе | ||
</sxh> | </sxh> | ||
- | * Если не указать ''[$текст]'', то команда просто совершит переход на новую строку:<sxh qsp> | + | * Если не указать ''%%[$текст]%%'', то команда просто совершит переход на новую строку: <sxh qsp> |
*p 'Шла Саша' | *p 'Шла Саша' | ||
*nl | *nl | ||
*p 'По Шоссе' | *p 'По Шоссе' | ||
- | </sxh> | + | </sxh> В **Окне основного описания** мы увидим: <sxh> |
- | В **Окне основного описания** мы увидим:<sxh> | + | |
Шла Саша | Шла Саша | ||
По Шоссе | По Шоссе | ||
</sxh> | </sxh> | ||
+ | |||
==== Команды для очистки Окна основного описания ==== | ==== Команды для очистки Окна основного описания ==== | ||
- | * **''*CLEAR''** или **''*CLR''** - очищает **Окно основного описания**. Пример:<sxh qsp> | + | * **''%%*CLEAR%%''** или **''%%*CLR%%''** - очищает **Окно основного описания**. Пример: <sxh qsp> |
- | *p 'Шла' & ! выводим текст без перехода на новую строку | + | *p 'Шла' & ! выводим текст без перехода на новую строку |
- | *pl 'Саша' & ! выводим текст и переходим на новую строку | + | *pl 'Саша' & ! выводим текст и переходим на новую строку |
- | *nl 'По' & ! переходим на новую строку и выводим текст | + | *nl 'По' & ! переходим на новую строку и выводим текст |
- | *nl 'Шоссе' & ! переходим на новую строку и выводим текст | + | *nl 'Шоссе' & ! переходим на новую строку и выводим текст |
- | *clear & ! очищаем окно основного описания от всего текста | + | *clear & ! очищаем окно основного описания от всего текста |
- | </sxh>В результате работы этого кода **Окно основного описания** окажется пустым. | + | </sxh> В результате работы этого кода **Окно основного описания** окажется пустым. |
- | * **''CLS''** - эквивалентно конструкции "''CLEAR & *CLEAR & CLA & CMDCLEAR''", т.е. очищает все окна, кроме списка предметов. | + | * **''%%CLS%%''** - эквивалентно конструкции “''%%CLEAR & *CLEAR & CLA & CMDCLEAR%%''”, т.е. очищает все окна, кроме списка предметов. |
==== Функции для работы с Окном основного описания ==== | ==== Функции для работы с Окном основного описания ==== | ||
- | * **''$MAINTXT''** - возвращает текст, выведенный в окно основного описания. Пример:<sxh qsp> | + | * **''%%$MAINTXT%%''** - возвращает текст, выведенный в окно основного описания. Пример: <sxh qsp> |
*p 'Ехал Грека Через Реку' | *p 'Ехал Грека Через Реку' | ||
*nl 'Видит Грека В Реке Рак' | *nl 'Видит Грека В Реке Рак' | ||
$text = $maintxt | $text = $maintxt | ||
- | </sxh> В данном случае при выполнении кода в переменную **''$text''** запишутся две строки текста:<sxh> | + | </sxh> В данном случае в переменную **''%%$text%%''** запишутся две строки текста: <sxh> |
Ехал Грека Через Реку | Ехал Грека Через Реку | ||
Видит Грека В Реке Рак | Видит Грека В Реке Рак | ||
</sxh> | </sxh> | ||
- | * ''**$DESC**([$локация])'' - возвращает текст базового описания локации с названием ''[$локация]''. Обратите внимание! Функция возвращает текст, написанный только в поле "Описание" (**Базовое описание**) редактора **Quest Generator**. При работе в текстовом редакторе данное поле вам недоступно и функция будет всегда возвращать пустую строку. | + | * ''%%$DESC([$локация])%%'' - возвращает текст базового описания локации с названием ''%%[$локация]%%''. Обратите внимание! Функция возвращает текст, написанный только в поле “Описание” (**Базовое описание**) редактора **Quest Generator**. При работе в текстовом редакторе данное поле вам недоступно и функция будет всегда возвращать пустую строку.\\ В **Базовом описании** можно использовать [[help:strings#podvyrazhenija|подвыражения]], функция **''%%$DESC%%''** автоматически “раскроет” их. |
- | В **Базовом описании** можно использовать [[help:strings#podvyrazhenija|подвыражения]], функция **''$DESC''** автоматически "раскроет" их. | + | |
==== Системные переменные для управления Окном основного описания ==== | ==== Системные переменные для управления Окном основного описания ==== | ||
- | * **''DISABLESCROLL''** - если значение переменной не равно 0, то запрещает автопрокрутку текста при его выводе в окно основного или дополнительное описания. | + | * **''%%DISABLESCROLL%%''** - если значение переменной не равно ''%%0%%'', то запрещает автопрокрутку текста при его выводе в окно основного или дополнительное описания. **Что это значит**. Предположим, мы вывели на экран большой объём текста, а затем при нажатии на **действие** у нас выводится ещё один фрагментик текста. Если ''%%DISABLESCROLL = 0%%'', этот фрагментик текста при выводе заставит экран прокрутиться вниз. Если мы не хотим, чтобы экран прокручивался вниз в этом случае, мы присваиваем переменной **''%%DISABLESCROLL%%''** единицу. |
- | **Что это значит**. Предположим, мы вывели на экран большой объём текста, а затем при нажатии на **действие** у нас выводится ещё один фрагментик текста. Если ''DISABLESCROLL = 0'', этот фрагментик текста при выводе заставит экран прокрутиться вниз. Если мы не хотим, чтобы экран прокручивался вниз в этом случае, мы присваиваем переменной **''DISABLESCROLL''** единицу. | + | * **''%%$BACKIMAGE%%''** - содержит путь к файлу фонового изображения для **Окна основного описания**. |
- | * **''$BACKIMAGE''** - содержит путь к файлу фонового изображения для **Окна основного описания**. | + | * Фон в окне основного описания отображается в том случае, если значение данной переменной отлично от ''%%""%%'' (пустая строка) и файл изображения удалось загрузить. |
- | * Фон в окне основного описания отображается в том случае, если значение данной переменной отлично от '' (пустая строка) и файл изображения удалось загрузить. | + | * Необходимо указывать путь к изображению относительно файла игры: <sxh qsp> |
- | * Необходимо указывать путь к изображению относительно файла игры:<sxh qsp> | + | |
! файл игры лежит в папке C:\QSP\myCoolGame | ! файл игры лежит в папке C:\QSP\myCoolGame | ||
! файл изображения лежит в папке C:\QSP\myCoolGame\image и называется picture.png | ! файл изображения лежит в папке C:\QSP\myCoolGame\image и называется picture.png | ||
Строка 115: | Строка 109: | ||
$backimage='image\picture.png' | $backimage='image\picture.png' | ||
</sxh> | </sxh> | ||
- | * При этом фон вписывается в границы **Окна основного описания**, и управлять им в классическом плеере нельзя. | + | * При этом фон вписывается в границы **Окна основного описания**, и управлять им в классическом плеере нельзя. |
- | * Если вы хотите убрать фон, присвойте переменной **''$BACKIMAGE''** пустую строку:<sxh qsp> | + | * Если вы хотите убрать фон, присвойте переменной **''%%$BACKIMAGE%%''** пустую строку: <sxh qsp> |
- | $backimage='' | + | $backimage = '' |
</sxh> | </sxh> | ||
Строка 131: | Строка 125: | ||
После выполнения кода в **Окно основного описания** будет выведено: | После выполнения кода в **Окно основного описания** будет выведено: | ||
- | <sxh qsp> | + | <sxh> |
123 | 123 | ||
Строка 140: | Строка 134: | ||
<sxh qsp> | <sxh qsp> | ||
- | *pl 'I♥QSP!' | + | *pl 'I ♥ QSP!' |
- | *pl 256/12*9 | + | *pl 256 / 12 * 9 |
- | 137+(2*9) | + | 137 + (2 * 9) |
$curloc | $curloc | ||
*nl rand(999) | *nl rand(999) | ||
- | x=15 | + | x = 15 |
*nl x | *nl x | ||
</sxh> | </sxh> |