def _add_current_player(self, players_model, board_model, current_player): if current_player not in players_model: PlayerBoardService.new(board=board_model, player=current_player).save() if board_model.turn is None: board_model.turn = current_player
def reload_tiles(self, current_player, board_model, board): player_board = PlayerBoardService().get(board=board_model, player=current_player) tiles_count = player_board.tiles.count() if tiles_count < SCRABBLE_RULES["max_tiles_per_player"]: letters = board.get_random_tiles(SCRABBLE_RULES["max_tiles_per_player"] - tiles_count) for letter in letters: tile = TileService().new(letter=letter, x=0, y=0) tile.save() player_board.tiles.add(tile) player_board.save() return player_board