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 纪元开始算起的毫秒数表示)。 |
Data() const
|
const std::vector< uint8_t > &
如果
HasData() 为 true,则返回匹配数据。 |
Description() const
|
const std::string &
返回服务器生成的匹配状态摘要。
|
HasData() const
|
bool
如果此对象包含在上一个转弯期间设置的数据,则为 true。
|
HasPreviousMatchData() const
|
bool
如果这是重赛的第一回合,则为 true;并且上一个 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
返回游戏专用变体标识符,游戏可以使用该标识符来识别不同的游戏模式。
|
Version() const
|
uint32_t
一个严格递增的 ID,每次修改匹配项时都会更新。
|
operator=(const TurnBasedMatch & copy_from)
|
通过从其他
TurnBasedMatch 复制来分配此 TurnBasedMatch 。 |
operator=(TurnBasedMatch && move_from)
|
通过将另一个
TurnBasedMatch 移入其中来分配此 TurnBasedMatch 。 |
公共函数
AutomatchingSlotsAvailable
uint32_t AutomatchingSlotsAvailable() const
返回匹配项的可用自动匹配槽数。
此数值等于用于创建匹配的自动匹配槽数,减去已通过自动匹配添加的参与者数量。有效必须返回 true,此函数才能使用。
CreatingParticipant
MultiplayerParticipant CreatingParticipant() const
返回创建此匹配的参与者。
有效必须返回 true,此函数才能使用。
CreationTime
std::chrono::milliseconds CreationTime() const
返回此 TurnBasedMatch was created
的时间(以自 Unix 纪元开始算起的毫秒数表示)。
有效必须返回 true,此函数才能使用。
HasPreviousMatchData
bool HasPreviousMatchData() const
如果这是重赛的第一回合,则为 true;并且上一个 Valid 中的数据必须返回 true,此函数才能使用。
HasRematchId
bool HasRematchId() const
如果此匹配已重新匹配,则返回 true。
ID
const std::string & Id() const
返回用于唯一标识此 TurnBasedMatch
的 ID。
与 TurnBasedMultiplayerManager::FetchMatch
搭配使用,以便稍后检索此匹配项。有效必须返回 true,此函数才能使用。
LastUpdateTime
Timestamp LastUpdateTime() const
返回此 TurnBasedMatch
的上次更新时间(以自 Unix 纪元以来经历的毫秒数表示)。
有效必须返回 true,此函数才能使用。
LastUpdatingParticipant
MultiplayerParticipant LastUpdatingParticipant() const
返回最近更新此匹配项的参与者。
有效必须返回 true,此函数才能使用。
编号
uint32_t Number() const
一个数字,表示在此匹配之前通过重新匹配进行的匹配数量。
在首次匹配时设为 1,然后每次重新匹配时递增 1。
ParticipantResults
const gpg::ParticipantResults & ParticipantResults() const
返回匹配的结果。
您可以通过 TurnBasedMultiplayerManager::TakeMyTurn
、TurnBasedMultiplayerManager::FinishDuringMyTurn
和其他相关函数设置结果。始终使用 ParticipantResults().WithResult(...)
创建与所有现有 ParticipantResults
对象一致的新 ParticipantResults
对象。有效必须返回 true,此函数才能使用。
参与者
const std::vector< MultiplayerParticipant > & Participants() const
此匹配中的所有参与者的矢量。
有效必须返回 true,此函数才能使用。
PendingParticipant
MultiplayerParticipant PendingParticipant() const
返回轮到哪位参与者更新此匹配。
有效必须返回 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。
必须返回 true,TurnBasedMatch
对象(Id
、CreationTime
等)上的 getter 函数才能使用。
版本
uint32_t Version() const
一个严格递增的 ID,每次修改匹配项时都会更新。
operator=
TurnBasedMatch & operator=( const TurnBasedMatch & copy_from )
通过从其他 TurnBasedMatch
复制来分配此 TurnBasedMatch
。
operator=
TurnBasedMatch & operator=( TurnBasedMatch && move_from )
通过将另一个 TurnBasedMatch
移入其中来分配此 TurnBasedMatch
。