gpg::AchievementManager

#include <achievement_manager.h>

获取和设置各种与成就相关的数据。

摘要

公共类型

FetchAllCallback typedef
std::function< void(const FetchAllResponse &)>
定义接收 FetchAllResponse 的回调类型。
FetchCallback typedef
std::function< void(const FetchResponse &)>
定义接收 FetchResponse 的回调类型。
ShowAllUICallback typedef
std::function< void(const UIStatus &)>
定义接收 UIStatus 的回调类型。

公共函数

Fetch(const std::string & achievement_id, FetchCallback callback)
void
针对当前登录的玩家异步加载特定成就的数据。
Fetch(DataSource data_source, const std::string & achievement_id, FetchCallback callback)
void
针对当前登录的玩家异步加载特定成就的数据。
FetchAll(FetchAllCallback callback)
void
异步加载当前已登录玩家的所有成就数据。
FetchAll(DataSource data_source, FetchAllCallback callback)
void
异步加载当前已登录玩家的所有成就数据。
FetchAllBlocking()
同步加载当前登录玩家的所有成就数据,直接返回 FetchAllResponse
FetchAllBlocking(DataSource data_source)
同步加载当前登录玩家的所有成就数据,直接返回 FetchAllResponse
FetchAllBlocking(Timeout timeout)
同步加载当前登录玩家的所有成就数据,直接返回 FetchAllResponse
FetchAllBlocking(DataSource data_source, Timeout timeout)
同步加载当前登录玩家的所有成就数据,直接返回 FetchAllResponse
FetchBlocking(const std::string & achievement_id)
为当前登录的玩家同步加载特定成就的数据,该成就由字符串 ID 标识;直接返回 FetchResponse
FetchBlocking(DataSource data_source, const std::string & achievement_id)
为当前登录的玩家同步加载特定成就的数据,该成就由字符串 ID 标识;直接返回 FetchResponse
FetchBlocking(Timeout timeout, const std::string & achievement_id)
为当前登录的玩家同步加载特定成就的数据,该成就由字符串 ID 标识;直接返回 FetchResponse
FetchBlocking(DataSource data_source, Timeout timeout, const std::string & achievement_id)
为当前登录的玩家同步加载特定成就的数据,该成就由字符串 ID 标识;直接返回 FetchResponse
Increment(const std::string & achievement_id)
void
将成就增加指定的步数。
Increment(const std::string & achievement_id, uint32_t steps)
void
将成就增加指定的步数。
Reveal(const std::string & achievement_id)
void
向当前登录的玩家显示隐藏成就。
SetStepsAtLeast(const std::string & achievement_id, uint32_t steps)
void
将成就设置为至少完成指定数量的步骤。
ShowAllUI(ShowAllUICallback callback)
void
向用户显示一个显示所有成就相关信息的界面。
ShowAllUI()
void
<ph type="x-smartling-placeholder"></ph> 已弃用。首选 ShowAllUI(ShowAllUICallback callback)。用于向用户显示显示所有成就相关信息的界面。界面在所有平台上异步显示。
ShowAllUIBlocking()
向用户显示一个显示所有成就相关信息的界面。
ShowAllUIBlocking(Timeout timeout)
向用户显示一个显示所有成就相关信息的界面。
Unlock(const std::string & achievement_id)
void
为当前已登录的玩家解锁成就。

结构体

gpg::AchievementManager::FetchAllResponse

保存所有成就的所有数据以及响应状态。

gpg::AchievementManager::FetchResponse

包含单个成就的数据和响应状态。

公共类型

FetchAllCallback

std::function< void(const FetchAllResponse &)> FetchAllCallback

定义接收 FetchAllResponse 的回调类型。

此回调类型提供给下面的 FetchAll(*) 函数。

FetchCallback

std::function< void(const FetchResponse &)> FetchCallback

定义接收 FetchResponse 的回调类型。

此回调类型提供给下面的 Fetch(*) 函数。

ShowAllUICallback

std::function< void(const UIStatus &)> ShowAllUICallback

定义接收 UIStatus 的回调类型。

此回调函数类型已提供给下面的 ShowAllUI* 函数。

公共函数

提取

void Fetch(
  const std::string & achievement_id,
  FetchCallback callback
)

针对当前登录的玩家异步加载特定成就的数据。

在操作完成时调用提供的 FetchCallback。如果未指定 data_source,则此函数调用等同于调用 Fetch(DataSource data_source, const std::string& id, FetchCallback),并将 data_source 指定为 CACHE_OR_NETWORK

提取

void Fetch(
  DataSource data_source,
  const std::string & achievement_id,
  FetchCallback callback
)

针对当前登录的玩家异步加载特定成就的数据。

在操作完成时调用提供的 FetchCallback。将 data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY

FetchAll

void FetchAll(
  FetchAllCallback callback
)

异步加载当前已登录玩家的所有成就数据。

在操作完成时调用提供的 FetchAllCallback。如果未指定 data_source,则此函数调用等同于调用 FetchAll(DataSource data_source, FetchAllCallback),并将 data_source 指定为 CACHE_OR_NETWORK

FetchAll

void FetchAll(
  DataSource data_source,
  FetchAllCallback callback
)

异步加载当前已登录玩家的所有成就数据。

在操作完成时调用提供的 FetchAllCallback。将 data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY

FetchAllBlocking

FetchAllResponse FetchAllBlocking()

同步加载当前登录玩家的所有成就数据,直接返回 FetchAllResponse

既未指定 data_source,也未指定 timeout,则此函数调用等同于调用 FetchAllResponse FetchAllBlocking(DataSource data_source, Timeout timeout),其中 data_source 指定为 CACHE_OR_NETWORKtimeout 指定为 10 年。

FetchAllBlocking

FetchAllResponse FetchAllBlocking(
  DataSource data_source
)

同步加载当前登录玩家的所有成就数据,直接返回 FetchAllResponse

data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY。如果未指定 timeout,则此函数调用等同于调用 FetchAllBlocking FetchAllResponse(DataSource data_source, Timeout timeout)(使用您指定的 data_source 值并将 timeout 指定为 10 年)。

FetchAllBlocking

FetchAllResponse FetchAllBlocking(
  Timeout timeout
)

同步加载当前登录玩家的所有成就数据,直接返回 FetchAllResponse

timeout 指定为任意毫秒数。如果未指定 data_source,则此函数调用等同于调用 FetchAllResponse FetchAllBlocking(DataSource data_source, Timeout timeout),其中 data_source 指定为 CACHE_OR_NETWORKtimeout 包含指定值。

FetchAllBlocking

FetchAllResponse FetchAllBlocking(
  DataSource data_source,
  Timeout timeout
)

同步加载当前登录玩家的所有成就数据,直接返回 FetchAllResponse

data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY。将超时指定为任意毫秒数。

FetchBlocking

FetchResponse FetchBlocking(
  const std::string & achievement_id
)

为当前登录的玩家同步加载特定成就的数据,该成就由字符串 ID 标识;直接返回 FetchResponse

未指定 data_sourcetimeout 后,此函数调用等同于调用 FetchResponse FetchBlocking(DataSource data_source, Timeout timeout, const std::string& id),其中 data_source 指定为 CACHE_OR_NETWORKtimeout 指定为 10 年。

FetchBlocking

FetchResponse FetchBlocking(
  DataSource data_source,
  const std::string & achievement_id
)

为当前登录的玩家同步加载特定成就的数据,该成就由字符串 ID 标识;直接返回 FetchResponse

data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY。如果不指定 timeout,此函数调用等同于调用 FetchResponse FetchBlocking(DataSource data_source, Timeout timeout, const std::string& id)(使用您指定的 data_source 值并将 timeout 指定为 10 年)。

FetchBlocking

FetchResponse FetchBlocking(
  Timeout timeout,
  const std::string & achievement_id
)

为当前登录的玩家同步加载特定成就的数据,该成就由字符串 ID 标识;直接返回 FetchResponse

timeout 指定为任意毫秒数。未指定 data_source 会使此函数调用等同于调用 FetchResponse FetchBlocking(DataSource data_source, Timeout timeout, const std::string& id),其中 data_source 指定为 CACHE_OR_NETWORKtimeout 包含您指定的值。

FetchBlocking

FetchResponse FetchBlocking(
  DataSource data_source,
  Timeout timeout,
  const std::string & achievement_id
)

为当前登录的玩家同步加载特定成就的数据,该成就由字符串 ID 标识;直接返回 FetchResponse

data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY。将 timeout 指定为任意毫秒数。

增加

void Increment(
  const std::string & achievement_id
)

将成就增加指定的步数。

不定义增量会导致其值默认为 1。该成就必须是增量成就。当成就达到最大步数时,它就会自动解锁。任何进一步的增量将被忽略。

增加

void Increment(
  const std::string & achievement_id,
  uint32_t steps
)

将成就增加指定的步数。

该成就必须是增量成就。当成就达到步数上限时,它就会自动解锁。所有其他增量都将被忽略。

显示

void Reveal(
  const std::string & achievement_id
)

向当前登录的玩家显示隐藏成就。

如果成就已经解锁,则不会产生任何影响。

SetStepsAtLeast

void SetStepsAtLeast(
  const std::string & achievement_id,
  uint32_t steps
)

将成就设置为至少完成指定数量的步骤。

当成就的步数多于所提供的值时,调用此方法是空操作。当成就达到最大步骤数后,成就会自动解锁,并忽略任何进一步的变更操作。

ShowAllUI

void ShowAllUI(
  ShowAllUICallback callback
)

向用户显示一个显示所有成就相关信息的界面。

它会异步调用 ShowAllUICallback

ShowAllUI

void ShowAllUI()

<ph type="x-smartling-placeholder"></ph> 已弃用。首选 ShowAllUI(ShowAllUICallback callback)。用于向用户显示显示所有成就相关信息的界面。界面在所有平台上异步显示。

ShowAllUIBlocking

UIStatus ShowAllUIBlocking()

向用户显示一个显示所有成就相关信息的界面。

它会同步返回一个 UIStatus。如果未指定 timeout,则此函数调用等同于调用 ShowAllUIBlocking(Timeout timeout) 并将 timeout 指定为 10 年。

ShowAllUIBlocking

UIStatus ShowAllUIBlocking(
  Timeout timeout
)

向用户显示一个显示所有成就相关信息的界面。

它会同步返回一个 UIStatus。将 timeout 指定为任意毫秒数。

解锁

void Unlock(
  const std::string & achievement_id
)

为当前已登录的玩家解锁成就。

如果成就被隐藏,SDK 也会显示该成就。