DoubleElimination is a strategy where each player plays atleast two games before being eliminated.

### Hierarchy

- DoubleEliminationMatchmaker

### Implements

- IMatchMaker

## Index

### Constructors

- constructor

### Properties

- finished
- oneLossOddPlayer
- options
- playerStats
- players
- processedMatches
- ranking
- tournament
- unlinkedMatches
- waitingForFinal
- zeroLossOddPlayer

### Methods

- anyPlayersWaiting
- createMatch
- finishedRanking
- getPlayerScore
- getRanking
- getRemainingMatches
- isFinished
- matchPlayers
- playerIsWaitingForMatch
- setParentMatches
- unfinishedRanking
- updateStats

## Constructors

### constructor

- new DoubleEliminationMatchmaker(players: Player[], options: MatchOptions): DoubleEliminationMatchmaker

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:34

  #### Parameters

  - ##### players: Player[]

  - ##### options: MatchOptions

  #### Returns DoubleEliminationMatchmaker

## Properties

### Private finished

finished: boolean

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:26

### Private oneLossOddPlayer

oneLossOddPlayer: Player

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:32

### Private options

options: MatchOptions

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:36

### Private playerStats

playerStats: object

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:30

#### Type declaration

- ##### [key: string]: PlayerStats

### Private players

players: Player[]

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:36

### Private processedMatches

processedMatches: string[]

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:29

### Private ranking

ranking: string[]

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:28

### Private tournament

tournament: Tournament

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:27

### Private unlinkedMatches

unlinkedMatches: DoubleEliminationMatch[] = []

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:34

### Private waitingForFinal

waitingForFinal: Player[]

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:33

### Private zeroLossOddPlayer

zeroLossOddPlayer: Player

- Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:31

## Methods

### Private anyPlayersWaiting

- anyPlayersWaiting(): boolean

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:248

  #### Returns boolean

### Private createMatch

- createMatch(playerA: Player, playerB: Player, optionOverrides?: any, parentMatches?: MatchParent[]): DoubleEliminationMatch

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:224

  #### Parameters

  - ##### playerA: Player

  - ##### playerB: Player

  - ##### Optional optionOverrides: any

  - ##### Optional parentMatches: MatchParent[]

  #### Returns DoubleEliminationMatch

### Private finishedRanking

- finishedRanking(): string[]

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:169

  #### Returns string[]

### Private getPlayerScore

- getPlayerScore(player: Player): number

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:198

  #### Parameters

  - ##### player: Player

  #### Returns number

### getRanking

- getRanking(): string[]

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:165

  #### Returns string[]

### getRemainingMatches

- getRemainingMatches(): DoubleEliminationMatch[]

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:80

  #### Returns DoubleEliminationMatch[]

### isFinished

- isFinished(): boolean

- Implementation of IMatchMaker.isFinished

  - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:46

  #### Returns boolean

### Private matchPlayers

- matchPlayers(players: Player[]): MatchingResult

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:202

  #### Parameters

  - ##### players: Player[]

  #### Returns MatchingResult

### Private playerIsWaitingForMatch

- playerIsWaitingForMatch(player: Player): boolean

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:244

  #### Parameters

  - ##### player: Player

  #### Returns boolean

### Private setParentMatches

- setParentMatches(match: DoubleEliminationMatch): void

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:252

  #### Parameters

  - ##### match: DoubleEliminationMatch

  #### Returns void

### Private unfinishedRanking

- unfinishedRanking(): string[]

- - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:190

  #### Returns string[]

### updateStats

- updateStats(tournament: Tournament): void

- Implementation of IMatchMaker.updateStats

  - Defined in src/lobby/tournament/matchmaker/DoubleEliminationMatchmaker.ts:50

  #### Parameters

  - ##### tournament: Tournament

  #### Returns void

Generated using TypeDoc