gpg::TurnBasedMatch

#include <turn_based_match.h>

一个包含有关 TurnBasedMatch 当前状态的数据结构。

摘要

构造函数和析构函数

TurnBasedMatch()
TurnBasedMatch(std::shared_ptr< const TurnBasedMatchImpl > impl)
从指向 TurnBasedMatchImplshared_ptr 构造一个 TurnBasedMatch
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
返回比赛结果。
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 

如果 HasData() 为 true,则返回比赛数据。

Valid 必须返回 true 此函数才可用。

Description

const std::string & Description() const 

返回服务器生成的比赛状态摘要。

Valid 必须返回 true 此函数才可用。

HasData

bool HasData() const 

如果此对象包含在上一回合中设置的数据,则返回 true。

Valid 必须返回 true 此函数才可用。

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::TakeMyTurnTurnBasedMultiplayerManager::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。

Status

MatchStatus Status() const 

返回本地参与者在此比赛中的状态。

状态决定了可以在比赛上执行哪些操作。Valid 必须返回 true 此函数才可用。

SuggestedNextParticipant

MultiplayerParticipant SuggestedNextParticipant() const 

一个辅助函数,从已加入、可邀请和自动匹配的参与者集合中选择一个有效的参与者。

如果始终使用此函数选择下一位参与者,则游戏将按顺序进行,如有必要则重复。仅当 Status()MatchStatus::MY_TURN 时才能调用此函数,因为只有此时此函数的结果才有实际意义。如果调用不正确,此函数将返回无效的参与者(MultiplayerParticipant::Valid() == false)。

TurnBasedMatch

 TurnBasedMatch()

TurnBasedMatch

 TurnBasedMatch(
  std::shared_ptr< const TurnBasedMatchImpl > impl
)

从指向 TurnBasedMatchImplshared_ptr 构造一个 TurnBasedMatch

供 API 内部使用。

TurnBasedMatch

 TurnBasedMatch(
  const TurnBasedMatch & copy_from
)

创建现有 TurnBasedMatch 的副本。

TurnBasedMatch

 TurnBasedMatch(
  TurnBasedMatch && move_from
)

移动现有 TurnBasedMatch

Valid

bool Valid() const 

如果此 TurnBasedMatch 填充了数据,则返回 true。

必须返回 true TurnBasedMatch 对象上的 getter 函数(IdCreationTime 等)才能使用。

Variant

uint32_t Variant() const 

返回游戏特定的变体标识符,游戏可以使用此标识符来区分不同的游戏模式。

Valid 必须返回 true 此函数才可用。

Version

uint32_t Version() const 

一个严格递增的 ID,每次修改比赛时都会更新。

operator=

TurnBasedMatch & operator=(
  const TurnBasedMatch & copy_from
)

通过从另一个 TurnBasedMatch 复制来赋值给此对象。

operator=

TurnBasedMatch & operator=(
  TurnBasedMatch && move_from
)

通过将另一个 TurnBasedMatch 移动到此对象来赋值。