Таблицы лидеров
Вы можете показывать на странице игры персонализированные таблицы лидеров с результатами лучших игроков и местом в рейтинге авторизованного пользователя.
Чтобы у вас заработали описанные ниже запросы, проверьте, что выполнены условия:
- вы подключили и настроили SDK и
его объект доступен через переменную
ysdk
; - в консоли разработчика создан лидерборд.
Если в консоли нет таблицы лидеров с соответствующим именем в поле Техническое название таблицы лидеров, запросы будут выдавать ошибку 404.
Описание таблицы лидеров
Чтобы получить описание таблицы лидеров по его имени, используйте метод
ysdk.leaderboards.get_description()
:
ysdk.leaderboards.get_description(
leaderboard_name: string,
callback: function
)
callback
— function — обработчик вызванного метода. Имеет вид:
function(self, description: table|nil): nil
description: table
— описание таблицы лидеров. Содержит свойства:description: {
app_id: string,
dеfault: boolean,
invert_sort_order: boolean,
decimal_offset: integer,
type: string,
name: string,
title: {
en: string,
ru: string
}
}
Пример
function display_leaderboard()
ysdk.leaderboards.get_description("highscores",
function (self, description)
if description then
print(
description.name,
description.title.en
)
end
end)
end
Новый результат
Запрос доступен только для авторизованных пользователей. При необходимости воспользуйтесь авторизацией.
Чтобы установить игроку новый результат, используйте метод
ysdk.leaderboards.set_score()
:
ysdk.leaderboards.set_score(
leaderboard_name: string,
score: integer,
extraData: string|nil
)
Запрос можно отправлять не чаще, чем раз в секунду. В противном случае он будет отклонен с ошибкой.
Получение рейтинга
Запрос доступен только для авторизованных пользователей. При необх одимости воспользуйтесь авторизацией.
Чтобы получить рейтинг пользователя, используйте метод
ysdk.leaderboards.get_player_entry()
:
ysdk.leaderboards.get_player_entry(
leaderboard_name: string,
callback: function
)