{{indexmenu_n>15}}
====== Елементи сторінки рівня ======
Движок збирає сторінку рівня з блоків із постійними ідентифікаторами. Знаючи їх, зі [[ua:authors_main:task_editor:advanced:author_scripts|скрипта завдання]] або зі свого css можна сховати, перейменувати чи переоформити майже будь-яку частину сторінки.
Готові рецепти «сховати коди», «перейменувати підказку» та подібні зібрані на сторінці [[ua:authors_main:task_editor:advanced:author_scripts:author_scripts_examples|Типові скрипти]]. Тут — карта самої сторінки та ті прийоми, які в рецепти не потрапили.
===== Карта сторінки =====
^ Ідентифікатор ^ Що це ^
| ''#autoupdateable'' | Весь змінюваний блок сторінки. Саме його вміст движок замінює при автооновленні рівня |
| ''#out_task'' | Текст завдання |
| ''#out_hints'' | Блок підказок |
| ''#out_codes'' | Блок кодів рівня |
| ''#out_bonuses'' | Блок бонусів |
| ''#out_global_bonuses'' | Блок наскрізних бонусів |
| ''#out_answer_frame'', ''#out_answer'' | Форма введення відповіді |
| ''#answer_button'' | Кнопка «Відповісти» |
| ''#button_finish_task'' | Кнопка «Завершити завдання» (з'являється при опції «Закрити завдання: Розумно») |
| ''#out_limit'' | Блок «відповіді заблоковано» з таймером ''#limit'' |
| ''#out_toggle_theme'' | Перемикач темного режиму в меню «Налаштування» |
| ''#out_toggle_answers'', ''#out_toggle_sounds'' | Перемикачі попередніх відповідей та звуків |
Окремі коди, бонуси та підказки адресуються за номером: ''#c1'', ''#c2'' — коди, ''#b1'', ''#b2'' — бонуси, ''#gb1'' — наскрізні бонуси, ''#hb1'' — підказки. Ці ж ідентифікатори використовуються в [[ua:authors_main:task_editor:advanced:author_scripts#динамічне_заміщення_контенту_replacer|Replacer]].
> Усе, що ви ховаєте скриптом, залишається у вихідному коді сторінки — гравець може це побачити. Якщо вміст має бути недоступним, ховайте його [[ua:authors_main:task_editor:advanced:edit_templates|шаблоном]] на сервері, а не стилями в браузері.
===== Примусова тема оформлення =====
За замовчуванням гравець сам обирає світле чи темне оформлення. Якщо рівень задуманий під конкретну тему (наприклад, «нічна» локація), тему можна нав'язати й прибрати перемикач:
// Темна тема
$('#out_toggle_theme').hide();
$('#theme_css').attr('href', dark_theme_css);
$('#theme_d_css').attr('href', dark_theme_d_css);
// Світла тема
$('#out_toggle_theme').hide();
$('#theme_css').attr('href', light_theme_css);
$('#theme_d_css').attr('href', light_theme_d_css);
''#theme_css'' — це стилі движка, ''#theme_d_css'' — стилі оформлення вашого домену; змінювати треба обидва, інакше половина сторінки залишиться в попередній темі. Змінні ''light_theme_css'', ''dark_theme_css'', ''light_theme_d_css'', ''dark_theme_d_css'' движок підставляє на сторінку сам.
Тема перемикається лише на цьому рівні. На наступному повернеться вибір гравця.
[[https://qeng.org/game.php?jump_to&gid=3493&task_id=52060|Приклад з темною темою]] | [[https://qeng.org/game.php?jump_to&gid=3493&task_id=52064|Приклад зі світлою темою]]
===== Своє оформлення блокування відповідей =====
Коли на рівні налаштовано ліміт спроб і гравці його вичерпали, движок показує блок ''#out_limit'' із таймером до розблокування. Блок можна не лише переоформити, а й повісити на нього власний елемент — наприклад, затемнити весь екран, поки введення недоступне.
Свій елемент кладеться в текст завдання, а у скрипті його видимість прив'язується до видимості ''#out_limit'':
document.getElementById('answers_blocked').style.display = document.getElementById('out_limit').style.display;
Скрипт завдання виконується після кожного оновлення рівня, тому стан елемента перераховуватиметься разом із таймером блокування.
[[https://qeng.org/game.php?jump_to&gid=3493&task_id=75513|Приклад у грі]]
===== Налаштування ліміту спроб =====
Сам ліміт (скільки відповідей і за який час) налаштовується не скриптом, а в параметрах рівня — див. [[ua:authors_main:task_editor:task_settings#ліміти_спроб_введення|Ліміти спроб введення]].