gpg:: TurnBasedMatch
#include <turn_based_match.h>
包含 TurnBasedMatch
目前狀態相關資料的資料結構。
摘要
建構函式和解構函式 |
|
---|---|
TurnBasedMatch()
|
|
TurnBasedMatch(std::shared_ptr< const TurnBasedMatchImpl > impl)
|
|
TurnBasedMatch(const TurnBasedMatch & copy_from)
建立現有
TurnBasedMatch 的副本。 |
|
TurnBasedMatch(TurnBasedMatch && move_from)
移動現有的
TurnBasedMatch 。 |
公用函式 |
|
---|---|
AutomatchingSlotsAvailable() const
|
uint32_t
傳回相符項目的可用自動比對版位數量。
|
CreatingParticipant() const
|
傳回建立這場對戰的參與者。
|
CreationTime() const
|
std::chrono::milliseconds
傳回此
TurnBasedMatch was created 的時間 (以從 Unix Epoch 紀元時間起算的毫秒為單位)。 |
Data() const
|
const std::vector< uint8_t > &
如果
HasData() 為 true,系統會傳回比對資料。 |
Description() const
|
const std::string &
傳回伺服器產生的比對狀態摘要。
|
HasData() const
|
bool
如果此物件包含上次轉彎期間設定的資料,則為「true」。
|
HasPreviousMatchData() const
|
bool
如果這是重新比對的第一回合,且上一個 Valid 的資料必須傳回 true,這個函式才會使用。
|
HasRematchId() const
|
bool
如果已經重新比對相符項目,則傳回 true。
|
Id() const
|
const std::string &
傳回專門用來識別此
TurnBasedMatch 的 ID。 |
LastUpdateTime() const
|
傳回這個
TurnBasedMatch 的上次更新時間 (以毫秒為單位,自 Unix 紀元開始算起)。 |
LastUpdatingParticipant() const
|
傳回最近更新這場比對的參與者。
|
Number() const
|
uint32_t
數字,用來表示在重新比對之前,預先比對符合的相符項目數量。
|
ParticipantResults() const
|
const gpg::ParticipantResults &
傳回相符項目。
|
Participants() const
|
const std::vector< MultiplayerParticipant > &
這場比賽所有參與者的向量。
|
PendingParticipant() const
|
傳回交回參與者,以更新此對戰。
|
PreviousMatchData() const
|
const std::vector< uint8_t > &
如果 HasPreviousMatchData() 是上一個比對項目的資料,
|
RematchId() const
|
const std::string &
傳回與此相符項目重新比對的相符項目 ID (如果有的話)。
|
Status() const
|
傳回本機參與者的比對狀態。
|
SuggestedNextParticipant() const
|
一種輔助函式,會從已加入群組、可邀請及自動配對的參與者中,選出有效的參與者。
|
Valid() const
|
bool
如果這個
TurnBasedMatch 已填入資料,則傳回 true。 |
Variant() const
|
uint32_t
傳回遊戲專屬的變化版本 ID,方便遊戲用於識別不同的遊戲模式。
|
Version() const
|
uint32_t
絕對遞增的 ID,每次修改相符項目時都會更新。
|
operator=(const TurnBasedMatch & copy_from)
|
會從另一個
TurnBasedMatch 中複製此 。 |
operator=(TurnBasedMatch && move_from)
|
如要指派這個
TurnBasedMatch ,請將其他項目移至該項目。 |
公用函式
AutomatchingSlotsAvailable
uint32_t AutomatchingSlotsAvailable() const
傳回相符項目的可用自動比對版位數量。
此數字等於建立相符項目的自動對戰運算單元數量,減去已透過自動比對新增的參與者人數。Valid 必須傳回 true,這個函式才會使用。
CreatingParticipant
MultiplayerParticipant CreatingParticipant() const
傳回建立這場對戰的參與者。
Valid 必須傳回 true,這個函式才會使用。
CreationTime
std::chrono::milliseconds CreationTime() const
傳回此 TurnBasedMatch was created
的時間 (以從 Unix Epoch 紀元時間起算的毫秒為單位)。
Valid 必須傳回 true,這個函式才會使用。
資料
const std::vector< uint8_t > & Data() const
HasPreviousMatchData
bool HasPreviousMatchData() const
如果這是重新比對的第一回合,且上一個 Valid 的資料必須傳回 true,這個函式才會使用。
HasRematchId
bool HasRematchId() const
如果已經重新比對相符項目,則傳回 true。
ID
const std::string & Id() const
傳回專門用來識別此 TurnBasedMatch
的 ID。
與 TurnBasedMultiplayerManager::FetchMatch
搭配使用,可在稍後擷取這個相符項目。Valid 必須傳回 true,這個函式才會使用。
LastUpdateTime
Timestamp LastUpdateTime() const
傳回這個 TurnBasedMatch
的上次更新時間 (以毫秒為單位,自 Unix 紀元開始算起)。
Valid 必須傳回 true,這個函式才會使用。
LastUpdatingParticipant
MultiplayerParticipant LastUpdatingParticipant() const
傳回最近更新這場比對的參與者。
Valid 必須傳回 true,這個函式才會使用。
編號
uint32_t Number() const
數字,用來表示在重新比對之前,預先比對符合的相符項目數量。
在第一場相符項目時設為 1,並在每次重新比對時加 1。
ParticipantResults
const gpg::ParticipantResults & ParticipantResults() const
傳回相符項目。
結果可透過 TurnBasedMultiplayerManager::TakeMyTurn
、TurnBasedMultiplayerManager::FinishDuringMyTurn
和其他相關的函式設定。一律使用 ParticipantResults().WithResult(...)
建立新的 ParticipantResults
物件,與任何現有物件一致。Valid 必須傳回 true,這個函式才會使用。
參與者
const std::vector< MultiplayerParticipant > & Participants() const
這場比賽所有參與者的向量。
Valid 必須傳回 true,這個函式才會使用。
PendingParticipant
MultiplayerParticipant PendingParticipant() const
傳回交回參與者,以更新此對戰。
Valid 必須傳回 true,這個函式才會使用。
PreviousMatchData
const std::vector< uint8_t > & PreviousMatchData() const
如果 HasPreviousMatchData() 是上一個比對項目的資料,
只有在 Valid 傳回 true 時才能呼叫。
RematchId
const std::string & RematchId() const
傳回與此相符項目重新比對的相符項目 ID (如果有的話)。
SuggestedNextParticipant
MultiplayerParticipant SuggestedNextParticipant() const
一種輔助函式,會從已加入群組、可邀請及自動配對的參與者中,選出有效的參與者。
如果一律使用此功能選取下一位參與者,播放作業將依序播放所有參與者,並視需要重複播放。只有在 Status() 為 MatchStatus::MY_TURN 時才能呼叫此函式,因為這是唯一可以使用此函式結果有意義的時間。如果呼叫錯誤,這個函式會傳回無效的參與者 (MultiplayerParticipant::Valid() == false
)。
TurnBasedMatch
TurnBasedMatch()
TurnBasedMatch
TurnBasedMatch( std::shared_ptr< const TurnBasedMatchImpl > impl )
建構從 shared_ptr
到 TurnBasedMatchImpl
的 TurnBasedMatch
。
主要供 API 內部使用。
有效
bool Valid() const
如果這個 TurnBasedMatch
已填入資料,則傳回 true。
必須為 TurnBasedMatch
物件 (Id
、CreationTime
等...) 上的 getter 函式傳回 true,才能使用。
版本
uint32_t Version() const
絕對遞增的 ID,每次修改相符項目時都會更新。