ua:authors_main:admin_api:admin_api_import_game

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
ua:authors_main:admin_api:admin_api_import_game [2023/04/15 20:41]
admin
ua:authors_main:admin_api:admin_api_import_game [2024/02/24 16:06] (текущий)
sparklingsky создано
Строка 1: Строка 1:
 {{indexmenu_n>​2}} {{indexmenu_n>​2}}
-===== Импорт ​игры из JSON.ua ===== +===== Імпорт гри з JSON ===== 
-===== Инструменты импорта ===== +===== Інструменти ​імпорту ===== 
-Импорт ​игры или её частей из её JSON можно провести двумя способами:​+Імпорт гри ​або її частин з її JSON можна зробити двома способами:​
  
-  - Вставить нужный JSON объект ​на страницу https://​qeng.org/​import_tasks.php, ​указав айди игры, и нажав ИмпортироватьЭта же ссылка доступна из пункта меню "Импорт заданий" на странице редактирования игры+  - Вставити потрібний JSON на сторінку https://​qeng.org/​import_tasks.php, ​зазначивши айді гри ​та натиснувши "Імпортувати"Це саме посилання також доступне з пункту меню "Імпорт завдань" на сторінці редагування гри.  
-  - (вариант для программистов) Отправить POST запрос ​на https://​qeng.org/​import_tasks.php?​gid=<​ваш айди игры>&​json=1,​ в котором в body будет корректно ​сформированный JSON объект. Для аутентификации необходимо удержать cookie с запроса ​на авторизацию, ​о чём детально написано тут: [[api_embed_engine|Встраивание движка в другие сервисы]] +  - (варіант для програмістів) Відправити POST запит на https://​qeng.org/​import_tasks.php?​gid=<​ваш айді гри>&​json=1,​ в якому у body буде коректно ​зформований JSON обʼєкт. Для автентифікації необхідно отримати ​cookie ​з запиту на авторизацію, про ​що детально описано тут[[ua:​api_embed_engine|Вбудовування движка в інші сервіси]]
- +
-===== Варианты объектов для ​импорта ===== +
- +
-Каждый объект, который можно импортировать,​ можно экспортировать для получения его структуры в текущей игре, как описано в секции [[admin_json_export|инструкций экспорта]]. +
-==== Заливка новых уровней ==== +
-Если необходимо добавить НОВЫЕ уровни в игру, то JSON будет списком ​из одного или нескольких уровней,​ разделённых ​запятыми. Чтобы ​уровень добавился, ​а не обновился существующий, ​он должен НЕ иметь поля number внутри секции настроек task. Описание структуры уровня [[admin_api_json#​Пример уровня ​целиком|тут]]. +
- +
-==== Редактирование существующих уровней ==== +
-Если необходимо обновить СУЩЕСТВУЮЩИЕ уровни в игрето JSON будет списком из одного или нескольких уровней, разделённых запятыми,​ причём поле number в секции настроек task должно быть передано (отвечает номер уровня,​ который редактируется). Описание структуры уровня [[admin_api_json#​Пример уровня целиком|тут]]. +
- +
-Настройки игры из секции task, если присутствуют в JSON - значения в движке будут заменены на новые. Если поля отсутствуют в предоставленном JSON - то они будут оставлены как было. +
- +
-Для остальных секций (codes, bonuses, hints), если секция присутствует в JSON - то она полностью заменит существующую. Если отсутствует - то секция остаётся, как была. +
- +
-==== Заливка всей игры ==== +
-Есть возможность залить всю игру из JSON целиком. Для этого JSON должен быть полным JSON игры, как описано на странице ​[[admin_api_json#​Пример всей игры целиком|описания структуры JSON]]. Также в JSON необходимо добавить поле ''​%%"​delete_all_tasks":​ 1%%'',​ чтобы ​удалить все существующие уровни и перезалить игру заново,​ например:​ +
-<code JavaScript [enable_line_numbers="​false"​]>​ +
-+
-    "​game":​ { +
-        "​name":​ "#New Unnamed Game 2", +
-    }, +
-    "​tasks":​ [{"​task":​ {"​number":​ 1, "​working_name":​ "​Название"​},​ "​codes":​ [], "​bonuses":​ [], "​hints":​ []}], +
-    "​gbonuses":​ [], +
-    "​lines":​ [], +
-    "​delete_all_tasks":​ 1, +
-+
-</​code>​ +
- +
-Настройки игры из секции game, если присутствуют в JSON - значения в движке будут заменены на новые. Если поля отсутствуют в предоставленном JSON - то они будут оставлены как было в игре раньше. +
- +
-Для остальных ​секций (gbonuses, lines), если секция присутствует в JSON - то она полностью заменит существующую. Если отсутствует - то секция остаётся,​ как была. +
- +
-==== Заливка настроек игры ==== +
-В JSON нужно передать только структуру настроек игры, как описано на [[admin_api_json#​Настройки игры|странице структуры JSON]]+
- +
-==== Заливка сквозных бонусов ==== +
-В JSON нужно передать только структуру глобальных бонусов,​ как описано на [[admin_api_json#​Сквозные бонусы|странице структуры JSON]]. +
- +
-==== Заливка линеек ==== +
-В JSON нужно передать только структуру глобальных бонусов,​ как описано на [[admin_api_json#​Линейки|странице структуры JSON]].+
  
 +/// не завершено ///
  • ua/authors_main/admin_api/admin_api_import_game.txt
  • Последние изменения: 2024/02/24 16:06
  • sparklingsky