async def set(self, ctx, who: discord.User, game_id: int, player_pos: int): player = Player.get_player_from_user(who) round_display = self.data.override_set(player, game_id, player_pos) self.save() await ctx.send( f'Scores reset for game: {game_id}.\n' f'Match up is now:{round_display}')
def _to_player(self, type_: str) -> Player: """ Creates a player object to represent the unknown <winner/loser> of this game """ return Player(-1, f'{type_} of Game {self.game_id}', "?", is_dummy=True)
async def register_other(self, ctx, user: discord.User, cat_number: Union[int, str] = None): player = Player.get_player_from_user(user) self.data.register(player, cat_number) self.save() await self.send_data_str(ctx, f"{player} voted for idea " f"{cat_number}")
async def unregister_other(self, ctx, user: discord.User, cat_number: Union[int, str] = None): player = Player.get_player_from_user(user) self.data.unregister(player, cat_number) self.save() await self.send_data_str( ctx, f'{player}\'s vote removed from idea ' f'{cat_number}')
def register(self, player: Player): if not self.is_reg_open: raise commands.errors.UserInputError(f'Registration is closed') if player.id in self: raise commands.errors.UserInputError( f'{player} already exists') assert player.disp_id is None player.disp_id = self.get_id() self.players.append(player) self.invalidate_computed_values()
def fix_recreate_players(self): """ Utility method used when updated happen to player fields during an active tournament to apply the change. NOTE: Only works during registration. """ if not self.data.is_reg_open: log('[CogTournament] Registration closed. Fix not applied to ' 'recreate players.', logging.ERROR) return replacement = [] for x in self.data.players: replacement.append(Player(x.id, x.display, x.disp_id)) self.data.players = replacement self.data.invalidate_computed_values()
async def remove_other(self, ctx, user: discord.User): player = Player.get_player_from_user(user) self.data.remove_player(player) self.save() await self.send_data_str(ctx, f'{player} removed')
async def score_other(self, ctx, user: discord.User, score: int): player = Player.get_player_from_user(user) self.data.score(player, score) self.save() await self.send_data_str(ctx, f"{player}'s score set to {score}")
async def unregister_other(self, ctx, at_ref_for_other: discord.User): player = Player.get_player_from_user(at_ref_for_other) disp_id = self.data.unregister(player) self.save() await ctx.send(f'{player} unregistered. ID was {disp_id}')
async def register_other(self, ctx, at_ref_for_other: discord.User): player = Player.get_player_from_user(at_ref_for_other) self.data.register(player) self.save() await ctx.send(f'{player} registered.')
async def win_other(self, ctx, user: discord.User, qty: int = 1): player = Player.get_player_from_user(user) response = self.data.win(player, qty) self.save() await ctx.send(response)
async def win(self, ctx): player = Player.get_player_from_user(ctx.author) response = self.data.win(player, 1) self.save() await ctx.send(response)
async def unregister(self, ctx): player = Player.get_player_from_user(ctx.author) disp_id = self.data.unregister(player) self.save() await ctx.send(f'{player} unregistered. ID was {disp_id}')
async def register(self, ctx): player = Player.get_player_from_user(ctx.author) self.data.register(player) self.save() await ctx.send(f'{player} registered')