Здесь показаны различия между двумя версиями данной страницы.
| Следущая версия | Предыдущая версия | ||
|
help:html [2013/10/10 06:46] newsash создано |
help:html [2024/10/14 12:36] (текущий) aleks_versus обновление 5.9.0 |
||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | =====HTML===== | + | [[help:interface|Назад: Настройки интерфейса]] |
| - | USEHTML - если отлична от 0, включает возможность использования HTML в описании локации, в дополнительном описании, в списках действий и предметов, а также в диалоге ввода текста, вызываемого функцией "INPUT". Выводимый текст распознаётся как HTML. Список поддерживаемых тегов и их атрибутов смотрите в приложении. | + | ====== HTML ====== |
| - | Поддерживаемые HTML теги и их атрибуты (для более подробной информации смотрите справочники по HTML): | + | При использовании HTML мы можем более гибко управлять внешним видом нашей игры, встраивать в неё изображения и использовать гиперссылки. Это позволяет разгрузить интерфейс от ненужных текстовых элементов, уменьшить число кнопок, и сделать управление игрой более гибким. |
| + | Иными словами HTML помогает нам сделать игру внешне привлекательной и удобной для игрока. | ||
| + | ===== Включение режима распознавания HTML ===== | ||
| - | |A | NAME=[строка] | | + | Чтобы мы могли использовать HTML в нашей игре, необходимо включить режим раcпознавания HTML. Это делается с помощью системной переменной ''%%USEHTML%%''. |
| - | | | HREF=[ссылка] | | + | |
| + | ''%%USEHTML%%'' — если значение данной переменной отлично от 0, включает возможность использования HTML в окне основного описания, в окне дополнительного описания, в списках действий и предметов, а также в диалоговых окнах, вызываемых функцией ''%%$INPUT%%'' и оператором ''%%MSG%%''. Выводимый текст распознаётся как HTML. | ||
| + | <sxh qsp> | ||
| + | usehtml = 1 & ! включаем режим распознавания HTML | ||
| + | </sxh> | ||
| + | По умолчанию в любом плеере **QSP** отключено распознавание HTML, поскольку на старте игры все переменные равны нулю, в т.ч. и ''%%USEHTML%%''. Из-за этого все HTML-теги, выводимые в тексте с помощью соответствующих команд, или в названиях предметов, действий или диалоговых окон ''%%$INPUT%%'' и ''%%MSG%%'', будут отображены на экране, как есть. ((Из этого правила есть исключения. Например, в **qSpider** распознавание HTML включено всегда и не зависит от значения переменной ''%%usehtml%%'')). | ||
| + | При изменении значения ''%%USEHTML%%'' на число, отличное от нуля, распознавание HTML включится, и сами теги будут скрыты от игрока, а к тексту, выводимому на экран, будет применено форматирование, соответствующее этим тегам. | ||
| - | Если в качестве ссылки для "A HREF" указано число, то при клике по ссылке будет произведена обработка действия с данным индексом. Индексация действий ведётся с 1. | + | ===== Код в гиперссылках ===== |
| - | Если в качестве ссылки для "A HREF" указана строка вида "EXEC:строка_кода", то при клике по ссылке будет выполнена указанная строка кода. | + | В **QSP** есть возможность запускать код по щелчку на гиперссылке. Для этого мы должны изменить содержимое атрибута **''%%href%%''**. |
| + | В этом атрибуте мы прописываем ключевое слово ''%%EXEC%%'', затем без пробелов ставим двоеточие, а после двоеточия в одну строку пишем обычный код **QSP**. Вот пример вставленной в текст гиперссылки, которая ведёт игрока на другую локацию: | ||
| + | <sxh qsp> | ||
| + | usehtml=1 | ||
| - | ADDRESS | + | *pl 'В тени сумрачного леса приютился маленький <a href="EXEC: goto ''пряничный_домик'' ">пряничный домик</a>.' |
| + | </sxh> | ||
| + | Обратите внимание на используемые в строке кавычки. Поскольку для записи строки мы использовали одинарные кавычки (апострофы), а двойные кавычки использовали для атрибута **href**, пришлось экранировать одинарные кавычки в строке дублированием, чтобы название локации ''%%пряничный_домик%%'' так же было заключено в кавычки. Сравните эту запись со следующей: | ||
| + | <sxh qsp> | ||
| + | *pl "В тени сумрачного леса приютился маленький <a href=""EXEC: goto 'пряничный_домик' "">пряничный домик</a>." | ||
| + | </sxh> | ||
| - | AREA | + | В гиперссылках нельзя размещать многострочный код, поскольку это нарушает чтение гиперссылок в плеерах, поддерживающих полноценный HTML. Записывайте все команды в одну строку: |
| - | SHAPE=POLY | + | <sxh qsp> |
| + | if был_здесь = 0: | ||
| + | яблоки = 10 | ||
| + | был_здесь = 1 | ||
| + | end | ||
| + | *pl "<a href=""EXEC: if яблоки > 0: яблоки-=1 & gt $curloc else: pl 'Яблок больше нет.' "">Яблоки (<<яблоки>> шт.)</a>" | ||
| + | </sxh> | ||
| - | SHAPE=CIRCLE | + | Если нужно выполнить из гиперссылки сложный многострочный код, разместите этот код на отдельной локации, а затем уже вызывайте локацию с помощью ''%%GOSUB%%'' из гиперссылки: |
| - | SHAPE=RECT | + | <sxh qsp> |
| + | *pl "<a href=""EXEC: gosub ''взять_яблоко'' "">Яблоки (<<яблоки>> шт.)</a>" | ||
| + | </sxh> | ||
| - | COORDS=[координаты] | + | Или поместите код в текстовую переменную, а потом выполняйте из гиперссылки с помощью оператора ''%%DYNAMIC%%'': |
| - | HREF=[ссылка] | + | <sxh qsp> |
| + | $code = { | ||
| + | if яблоки > 0: | ||
| + | яблоки -= 1 | ||
| + | pl 'Вы взяли одно яблоко.' | ||
| + | gt $curloc | ||
| + | else: | ||
| + | pl 'Яблок больше нет.' | ||
| + | end | ||
| + | } | ||
| + | *pl "<a href='EXEC: dynamic $code '>Яблоки (<<яблоки>> шт.)</a>" | ||
| + | </sxh> | ||
| + | ===== Особенности работы HTML в разных плеерах ===== | ||
| + | * Классический плеер поддерживает лишь некоторые HTML-теги. Полный список можно посмотреть на странице [[help:html_classic|HTML-теги поддерживаемые Классическим плеером]]. | ||
| + | * Плеер **qSpider** работает с полноценным браузером, а значит поддерживает все HTML-теги современного стандарта. В том числе и HTML-теги для встраивания видео. | ||
| + | * Плеер **Quest Navigator** имеет устаревший браузерный движок, который не соответствует современным стандартам, но поддерживает большинство HTML-тегов. | ||
| + | * Устаревший плеер **AeroQSP** поддерживает почти все HTML-теги, но поддерживает не все атрибуты, в основном только атрибут **''%%style%%''**. | ||
| - | B | + | [[help:inputs|Вперёд: Ввод текста игроком]] |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | BIG | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | BLOCKQUOTE | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | BR | + | |
| - | + | ||
| - | ALIGN=[выравнивание] | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | CENTER | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | CITE | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | CODE | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | DD | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | DIV | + | |
| - | + | ||
| - | ALIGN=[выравнивание] | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | DL | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | DT | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | EM | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | FONT | + | |
| - | + | ||
| - | COLOR=[цвет] | + | |
| - | + | ||
| - | SIZE=[размер шрифта: -2,-1,+0,+1,+2,+3,+4 или 1,2,3,4,5,6,7] | + | |
| - | + | ||
| - | FACE=[список названий шрифтов, разделенных запятыми] | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | HR | + | |
| - | + | ||
| - | ALIGN=[выравнивание] | + | |
| - | + | ||
| - | SIZE=[пиксели] | + | |
| - | + | ||
| - | WIDTH=[проценты|пиксели] | + | |
| - | + | ||
| - | NOSHADE | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | H1 | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | H2 | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | H3 | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | H4 | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | H5 | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | H6 | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | I | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | IMG | + | |
| - | + | ||
| - | SRC=[ссылка] | + | |
| - | + | ||
| - | WIDTH=[пиксели] | + | |
| - | + | ||
| - | HEIGHT=[пиксели] | + | |
| - | + | ||
| - | ALIGN=TEXTTOP | + | |
| - | + | ||
| - | ALIGN=CENTER | + | |
| - | + | ||
| - | ALIGN=ABSCENTER | + | |
| - | + | ||
| - | ALIGN=BOTTOM | + | |
| - | + | ||
| - | USEMAP=[ссылка] | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | KBD | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | LI | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | MAP | + | |
| - | + | ||
| - | NAME=[строка] | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | OL | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | P | + | |
| - | + | ||
| - | ALIGN=[выравнивание] | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | PRE | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | SAMP | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | SMALL | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | STRIKE | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | STRONG | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | SUB | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | SUP | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | TABLE | + | |
| - | + | ||
| - | ALIGN=[выравнивание] | + | |
| - | + | ||
| - | WIDTH=[проценты|пиксели] | + | |
| - | + | ||
| - | BORDER=[пиксели] | + | |
| - | + | ||
| - | VALIGN=[выравнивание] | + | |
| - | + | ||
| - | BGCOLOR=[цвет] | + | |
| - | + | ||
| - | CELLSPACING=[пиксели] | + | |
| - | + | ||
| - | CELLPADDING=[пиксели] | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | TD | + | |
| - | + | ||
| - | ALIGN=[выравнивание] | + | |
| - | + | ||
| - | VALIGN=[выравнивание] | + | |
| - | + | ||
| - | BGCOLOR=[цвет] | + | |
| - | + | ||
| - | WIDTH=[проценты|пиксели] | + | |
| - | + | ||
| - | COLSPAN=[количество] | + | |
| - | + | ||
| - | ROWSPAN=[количество] | + | |
| - | + | ||
| - | NOWRAP | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | TH | + | |
| - | + | ||
| - | ALIGN=[выравнивание] | + | |
| - | + | ||
| - | VALIGN=[выравнивание] | + | |
| - | + | ||
| - | BGCOLOR=[цвет] | + | |
| - | + | ||
| - | WIDTH=[проценты|пиксели] | + | |
| - | + | ||
| - | COLSPAN=[количество] | + | |
| - | + | ||
| - | ROWSPAN=[количество] | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | TR | + | |
| - | + | ||
| - | ALIGN=[выравнивание] | + | |
| - | + | ||
| - | VALIGN=[выравнивание] | + | |
| - | + | ||
| - | BGCOLOR=[цвет] | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | TT | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | U | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | UL | + | |