ua:authors_main:admin_api:admin_api_import_game

Различия

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

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

Последняя версия Следующая версия справа и слева
ua:authors_main:admin_api:admin_api_import_game [2023/04/15 20:39]
admin создано
ua:authors_main:admin_api:admin_api_import_game [2023/04/15 20:41]
admin
Строка 1: Строка 1:
-authors_main:admin_api:admin_api_import_game+{{indexmenu_n>​2}} 
 +===== Импорт игры из JSON.ua ===== 
 +===== Инструменты импорта ===== 
 +Импорт игры или её частей из её JSON можно провести двумя способами: 
 + 
 +  - Вставить нужный JSON объект на страницу https://​qeng.org/​import_tasks.php,​ указав айди игры, и нажав Импортировать. Эта же ссылка доступна из пункта меню "​Импорт заданий"​ на странице редактирования игры. 
 +  - (вариант для программистов) Отправить POST запрос на https://​qeng.org/​import_tasks.php?​gid=<​ваш айди игры>&​json=1,​ в котором в body будет корректно сформированный JSON объект. Для аутентификации необходимо удержать cookie с запроса на авторизацию,​ о чём детально написано тут: [[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