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
向使用者顯示 UI,顯示所有成就資訊。
ShowAllUI()
void
已淘汰,,瞭解如何調查及移除這項存取權。 優先使用 ShowAllUI(ShowAllUICallback 回呼)。向使用者顯示 UI,顯示所有成就資訊。所有平台上的使用者介面會以非同步方式顯示。
ShowAllUIBlocking()
向使用者顯示 UI,顯示所有成就資訊。
ShowAllUIBlocking(Timeout timeout)
向使用者顯示 UI,顯示所有成就資訊。
Unlock(const std::string & achievement_id)
void
為目前登入的玩家解鎖成就。

Structs

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_sourcetimeout 會造成這個函式呼叫等同於呼叫 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
)

向使用者顯示 UI,顯示所有成就資訊。

非同步呼叫 ShowAllUICallback

ShowAllUI

void ShowAllUI()

已淘汰,,瞭解如何調查及移除這項存取權。 優先使用 ShowAllUI(ShowAllUICallback 回呼)。向使用者顯示 UI,顯示所有成就資訊。所有平台上的使用者介面會以非同步方式顯示。

ShowAllUIBlocking

UIStatus ShowAllUIBlocking()

向使用者顯示 UI,顯示所有成就資訊。

以同步方式傳回 UIStatus。如未指定 timeout,這個函式呼叫會等同於呼叫 ShowAllUIBlocking(Timeout timeout),其中 timeout 已指定為 10 年。

ShowAllUIBlocking

UIStatus ShowAllUIBlocking(
  Timeout timeout
)

向使用者顯示 UI,顯示所有成就資訊。

以同步方式傳回 UIStatus。將 timeout 指定為任意毫秒數。

解鎖

void Unlock(
  const std::string & achievement_id
)

為目前登入的玩家解鎖成就。

如果成就處於隱藏狀態,SDK 也會將其顯示。