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 的时间(表示为自 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 > &
此比赛中所有参与者的 vector。
|
PendingParticipant() const
|
返回轮到更新此比赛的参与者。
|
PreviousMatchData() const
|
const std::vector< uint8_t > &
如果 HasPreviousMatchData() 为 true,则返回上一场比赛的数据。
|
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 复制来赋值给此对象。 |
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
的时间(表示为自 Unix 纪元以来的毫秒数)。
Valid 必须返回 true 此函数才可用。
Data
const std::vector< uint8_t > & Data() const
HasPreviousMatchData
bool HasPreviousMatchData() const
如果这是重赛的第一回合,并且存在来自上一场的对局数据,则返回 true。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 此函数才可用。
Number
uint32_t Number() const
一个数字,表示通过重赛在此之前进行了多少场比赛。
在第一场比赛中设置为 1,每次重赛增加 1。
ParticipantResults
const gpg::ParticipantResults & ParticipantResults() const
返回比赛结果。
结果可以通过 TurnBasedMultiplayerManager::TakeMyTurn
、TurnBasedMultiplayerManager::FinishDuringMyTurn
和其他相关函数设置。始终使用 ParticipantResults().WithResult(...)
创建与任何现有结果一致的新 ParticipantResults
对象。Valid 必须返回 true 此函数才可用。
Participants
const std::vector< MultiplayerParticipant > & Participants() const
此比赛中所有参与者的 vector。
Valid 必须返回 true 此函数才可用。
PendingParticipant
MultiplayerParticipant PendingParticipant() const
返回轮到更新此比赛的参与者。
Valid 必须返回 true 此函数才可用。
PreviousMatchData
const std::vector< uint8_t > & PreviousMatchData() const
如果 HasPreviousMatchData() 为 true,则返回上一场比赛的数据。
仅当 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 )
从指向 TurnBasedMatchImpl
的 shared_ptr
构造一个 TurnBasedMatch
。
供 API 内部使用。
Valid
bool Valid() const
如果此 TurnBasedMatch
填充了数据,则返回 true。
必须返回 true TurnBasedMatch
对象上的 getter 函数(Id
、CreationTime
等)才能使用。
Version
uint32_t Version() const
一个严格递增的 ID,每次修改比赛时都会更新。
operator=
TurnBasedMatch & operator=( const TurnBasedMatch & copy_from )
通过从另一个 TurnBasedMatch
复制来赋值给此对象。
operator=
TurnBasedMatch & operator=( TurnBasedMatch && move_from )
通过将另一个 TurnBasedMatch
移动到此对象来赋值。