getGames method
Gets a list of games on the server
Implementation
@override
Future<IList<GameInfo>> getGames(PlayerID playerID) async {
final gms = games.values.where((g) =>
g.read(BackendProviders.lobby).players.any((p) => p.id == playerID));
return [
for (final g in gms)
GameInfo(
status: g.read(BackendProviders.lobby).gameStatus,
gameId: g.gameCode,
player: g
.read(BackendProviders.lobby)
.players
.firstWhere((p) => p.id == playerID)
.name,
players: g
.read(BackendProviders.lobby)
.players
.map((p) => p.name)
.toIList(),
gameType: g.read(BackendProviders.lobby).config.gameType,
creator: g.creator == playerID,
)
].lock;
}