/level/complete
Метод завершает текущий активный уровень.
Адрес метода
/level/complete
Требует сессию пользователя
Параметры
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
| hp | ДА | float | Количество жизней, сколько осталось у игрока после завершения уровня; 0 — валидное значение |
| steps | ДА | int | Количество ходов, сколько потребовалось игроку для завершения уровня; 0 — валидное значение |
| result | ДА | int | Результат уровня (0 - провален, 1 - пройден) |
Результат
{
"response": {
"success": 1,
"timestamp": 1758253785.916074
},
"update": {
"member": {
...,
"options": {
...
},
"wallet": [
{...currency},
{...currency},
{...currency},
],
"levels": [
{...level},
{...level},
{...level}
],
"gacha": {
...
},
"pendingCompletions": [
...pending_completions
]
}
},
"events": [
{
"type": "reward",
"payload": {
"reasonType": "level_complete",
"reasonId": "level_1",
"rewards": [
{ "type": "soft", "amount": 100, "condition": "firstComplete" },
{ "type": "playerExp", "amount": 10 }
]
}
}
]
}
events
При успешном завершении уровня и выдаче наград метод добавляет reward event. Награды нужно читать из events, в response они не дублируются.
| Поле | Тип | Описание |
|---|---|---|
| reasonType | string | level_complete |
| reasonId | string | CID уровня |
| rewards | array | Фактически выданные награды в формате { type, amount, condition? } |
Поле condition добавляется только для награды, выданной по условному слоту; например, firstComplete означает награду за первое прохождение уровня.
Если уровень завершен поражением (result = 0) или награда не была выдана, reward event не добавляется.
При поражении и возврате энергии значение ограничивается energy_capacity, если текущий запас не превышает кап. Если энергия уже выше капа, возврат не ограничивается.
Objective progress
Метод двигает счетчики objectives: battles_played на любом завершении, battles_lost при result = 0,
а при result = 1 — levels_completed и, по режиму уровня, campaign_levels_completed / dungeon_levels_completed
плюс максимум campaign_max_level_reached / dungeon_max_level_reached.
В update.member возвращается очередь pending completions — клиент получает completion notifications по заданиям, достижениям и daily chest сразу после изменения objective progress. Тяжелые секции quests и achievements здесь не отдаются: их нужно запрашивать через filter у /member/info.