Инструменты пользователя

Инструменты сайта


help:html

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Both sides previous revision Предыдущая версия
Следущая версия
Предыдущая версия
help:html [2023/01/03 12:14]
aleks_versus переписано
help:html [2024/10/14 12:36] (текущий)
aleks_versus обновление 5.9.0
Строка 1: Строка 1:
- 
 [[help:​interface|Назад:​ Настройки интерфейса]] [[help:​interface|Назад:​ Настройки интерфейса]]
  
 ====== HTML ====== ====== HTML ======
- 
  
 При использовании HTML мы можем более гибко управлять внешним видом нашей игры, встраивать в неё изображения и использовать гиперссылки. Это позволяет разгрузить интерфейс от ненужных текстовых элементов,​ уменьшить число кнопок,​ и сделать управление игрой более гибким. При использовании HTML мы можем более гибко управлять внешним видом нашей игры, встраивать в неё изображения и использовать гиперссылки. Это позволяет разгрузить интерфейс от ненужных текстовых элементов,​ уменьшить число кнопок,​ и сделать управление игрой более гибким.
Строка 11: Строка 9:
 ===== Включение режима распознавания HTML ===== ===== Включение режима распознавания HTML =====
  
-Чтобы мы могли использовать HTML в нашей игре, необходимо включить режим рапознавания HTML. Это делается с помощью системной переменной ''​**USEHTML**''​.+Чтобы мы могли использовать HTML в нашей игре, необходимо включить режим раcпознавания HTML. Это делается с помощью системной переменной ''​%%USEHTML%%''​.
  
-''​**USEHTML**''​ — если значение данной переменной отлично от 0, включает возможность использования HTML в окне основного описания,​ в окне дополнительного описания,​ в списках действий и предметов,​ а также в диалоговых окнах, вызываемых функцией ''​**$INPUT**''​ и оператором ''​**MSG**''​. Выводимый текст распознаётся как HTML.+''​%%USEHTML%%''​ — если значение данной переменной отлично от 0, включает возможность использования HTML в окне основного описания,​ в окне дополнительного описания,​ в списках действий и предметов,​ а также в диалоговых окнах, вызываемых функцией ''​%%$INPUT%%''​ и оператором ''​%%MSG%%''​. Выводимый текст распознаётся как HTML.
  
 <sxh qsp> <sxh qsp>
Строка 19: Строка 17:
 </​sxh>​ </​sxh>​
  
-По умолчанию в любом плеере **QSP** отключено распознавание HTML, поскольку на старте игры все переменные равны нулю, в т.ч. и ''​**USEHTML**''​. Из-за этого все HTML-теги,​ выводимые в тексте с помощью соответствующих команд,​ или в названиях предметов,​ действий или диалоговых окон ''​**$INPUT**''​ и ''​**MSG**'',​ будут отображены на экране,​ как есть.+По умолчанию в любом плеере **QSP** отключено распознавание HTML, поскольку на старте игры все переменные равны нулю, в т.ч. и ''​%%USEHTML%%''​. Из-за этого все HTML-теги,​ выводимые в тексте с помощью соответствующих команд,​ или в названиях предметов,​ действий или диалоговых окон ''​%%$INPUT%%''​ и ''​%%MSG%%'',​ будут отображены на экране,​ как есть. ((Из этого правила есть исключения. Например,​ в **qSpider** распознавание HTML включено всегда и не зависит от значения переменной ''​%%usehtml%%''​)).
  
-При изменении значения ''​**USEHTML**''​ на число, отличное от нуля, распознавание HTML включится,​ и сами теги будут скрыты от игрока,​ а к тексту,​ выводимому на экран, будет применено форматирование,​ соответствующее этим тегам.+При изменении значения ''​%%USEHTML%%''​ на число, отличное от нуля, распознавание HTML включится,​ и сами теги будут скрыты от игрока,​ а к тексту,​ выводимому на экран, будет применено форматирование,​ соответствующее этим тегам.
  
 ===== Код в гиперссылках ===== ===== Код в гиперссылках =====
  
-В **QSP** есть возможность запускать код по щелчку на гиперссылке. Для этого мы должны изменить содержимое атрибута **''​href''​**.+В **QSP** есть возможность запускать код по щелчку на гиперссылке. Для этого мы должны изменить содержимое атрибута **''​%%href%%''​**.
  
-В этом атрибуте мы прописываем ключевое слово ''​**EXEC**'',​ затем без пробелов ставим двоеточие,​ а после двоеточия в одну строку пишем обычный код **QSP**. Вот пример вставленной в текст гиперссылки,​ которая ведёт игрока на другую локацию:​+В этом атрибуте мы прописываем ключевое слово ''​%%EXEC%%'',​ затем без пробелов ставим двоеточие,​ а после двоеточия в одну строку пишем обычный код **QSP**. Вот пример вставленной в текст гиперссылки,​ которая ведёт игрока на другую локацию:​
  
 <sxh qsp> <sxh qsp>
Строка 35: Строка 33:
 </​sxh>​ </​sxh>​
  
-Обратите внимание на используемые в строке кавычки. Поскольку для записи строки мы использовали одинарные кавычки (апострофы),​ а двойные кавычки использовали для атрибута **href**, пришлось экранировать одинарные кавычки в строке дублированием,​ чтобы название локации ''​пряничный_домик''​ так же было заключено в кавычки. Сравните эту запись со следующей:​+Обратите внимание на используемые в строке кавычки. Поскольку для записи строки мы использовали одинарные кавычки (апострофы),​ а двойные кавычки использовали для атрибута **href**, пришлось экранировать одинарные кавычки в строке дублированием,​ чтобы название локации ''​%%пряничный_домик%%''​ так же было заключено в кавычки. Сравните эту запись со следующей:​ 
 <sxh qsp> <sxh qsp>
 *pl "В тени сумрачного леса приютился маленький <a href=""​EXEC:​ goto '​пряничный_домик'​ "">​пряничный домик</​a>​."​ *pl "В тени сумрачного леса приютился маленький <a href=""​EXEC:​ goto '​пряничный_домик'​ "">​пряничный домик</​a>​."​
Строка 44: Строка 43:
 <sxh qsp> <sxh qsp>
 if был_здесь = 0: if был_здесь = 0:
- яблоки = 10 +    ​яблоки = 10 
- был_здесь = 1+    был_здесь = 1
 end end
 *pl "<a href=""​EXEC:​ if яблоки > 0: яблоки-=1 & gt $curloc else: pl '​Яблок больше нет.'​ "">​Яблоки (<<​яблоки>>​ шт.)</​a>"​ *pl "<a href=""​EXEC:​ if яблоки > 0: яблоки-=1 & gt $curloc else: pl '​Яблок больше нет.'​ "">​Яблоки (<<​яблоки>>​ шт.)</​a>"​
 </​sxh>​ </​sxh>​
  
-Если нужно выполнить из гиперссылки сложный многострочный код, разместите этот код на отдельной локации,​ а затем уже вызывайте локацию с помощью ''​**GOSUB**''​ из гиперссылки:​+Если нужно выполнить из гиперссылки сложный многострочный код, разместите этот код на отдельной локации,​ а затем уже вызывайте локацию с помощью ''​%%GOSUB%%''​ из гиперссылки:​
  
 <sxh qsp> <sxh qsp>
Строка 56: Строка 55:
 </​sxh>​ </​sxh>​
  
-Или поместите код в текстовую переменную,​ а потом выполняйте из гиперссылки с помощью оператора ''​**DYNAMIC**'':​+Или поместите код в текстовую переменную,​ а потом выполняйте из гиперссылки с помощью оператора ''​%%DYNAMIC%%'':​
  
 <sxh qsp> <sxh qsp>
 $code = { $code = {
- if яблоки > 0: +  ​if яблоки > 0: 
- яблоки -= 1 +    яблоки -= 1 
- pl 'Вы взяли одно яблоко.'​ +    pl 'Вы взяли одно яблоко.'​ 
- gt $curloc +    gt $curloc 
- else: +  else: 
- pl '​Яблок больше нет.'​  +    pl '​Яблок больше нет.'​  
- end+  end
 } }
 *pl "<a href='​EXEC:​ dynamic $code '>​Яблоки (<<​яблоки>>​ шт.)</​a>"​ *pl "<a href='​EXEC:​ dynamic $code '>​Яблоки (<<​яблоки>>​ шт.)</​a>"​
Строка 73: Строка 72:
 ===== Особенности работы HTML в разных плеерах ===== ===== Особенности работы HTML в разных плеерах =====
  
- * Классический плеер поддерживает лишь некоторые HTML-теги. Полный список можно посмотреть на странице [[help:​html_classic|HTML-теги поддерживаемые Классическим плеером]]. +  ​* Классический плеер поддерживает лишь некоторые HTML-теги. Полный список можно посмотреть на странице [[help:​html_classic|HTML-теги поддерживаемые Классическим плеером]]. 
- * Плеер **qSpider** работает с полноценным браузером,​ а значит поддерживает все HTML-теги современного стандарта. В том числе и HTML-теги для встраивания видео. +  * Плеер **qSpider** работает с полноценным браузером,​ а значит поддерживает все HTML-теги современного стандарта. В том числе и HTML-теги для встраивания видео. 
- * Плеер **Quest Navigator** имеет устаревший браузерный движок,​ который не соответствует современным стандартам,​ но поддерживает большинство HTML-тегов. +  * Плеер **Quest Navigator** имеет устаревший браузерный движок,​ который не соответствует современным стандартам,​ но поддерживает большинство HTML-тегов. 
- * Устаревший плеер **AeroQSP** поддерживает почти все HTML-теги,​ но поддерживает не все атрибуты,​ в основном только атрибут **''​style''​**.+  * Устаревший плеер **AeroQSP** поддерживает почти все HTML-теги,​ но поддерживает не все атрибуты,​ в основном только атрибут **''​%%style%%''​**.
  
 [[help:​inputs|Вперёд:​ Ввод текста игроком]] [[help:​inputs|Вперёд:​ Ввод текста игроком]]
- 
  
help/html.1672748080.txt.gz · Последние изменения: 2023/01/03 12:14 — aleks_versus