participantQuitInTurn(with:nextParticipants:turnTimeout:match:completionHandler:)
Forfeits the match on behalf of the local player when it’s their turn.
Declaration
func participantQuitInTurn(with matchOutcome: GKTurnBasedMatch.Outcome, nextParticipants: [GKTurnBasedParticipant], turnTimeout timeout: TimeInterval, match matchData: Data, completionHandler: (@Sendable ((any Error)?) -> Void)? = nil)func participantQuitInTurn(with matchOutcome: GKTurnBasedMatch.Outcome, nextParticipants: [GKTurnBasedParticipant], turnTimeout timeout: TimeInterval, match matchData: Data) async throwsParameters
- matchOutcome:
The outcome of the local player who forfeits the match. Don’t pass
nilas this parameter. - nextParticipants:
Match participants in the order you want Game Center to pass the turn. Game Center passes the turn to the next participant in the array when communication fails or a participant doesn’t finish their turn within the time limit. Elements in this array must be in the Participants property.
- timeout:
The length of time a participant has to complete their turn before Game Center passes the turn to the next participant. The maximum value is 90 days.
- matchData:
Your game-specific data representing the match state. For example, include information needed for the next participant to take their turn in this object. Don’t pass
nilas this parameter. - completionHandler:
The block that GameKit calls when it completes the request.
The block receives the following parameter:
- error
Describes an error if it occurs, or
nilif the operation completes.
Mentioned in
Discussion
Invoke this method to forfeit the match when the local player is the current participant. To receive turn-based events that this method generates, register a listener that conforms to the GKTurnBasedEventListener protocol with the local player. See Starting turn-based matches and passing turns between players.