Перейти к содержанию

Менеджер игроков

Менеджер игроков в рамках одной игры.

PlayerManager

PlayerManager(storage: BaseStorage)

Менеджер игроков.

Позволяет взаимодействовать с игроками в рамках одной игры.

__slots__ class-attribute instance-attribute

__slots__ = ('_storage', '_players', 'winners', 'losers', '_cp')

current property

current: Player

Получает текущего игрока.

losers instance-attribute

losers: list[str] = []

winners instance-attribute

winners: list[str] = []

__len__

__len__() -> int

Возвращает количество игроков в игре.

add

add(player: Player) -> None

Добавляет игрока в хранилище.

end

end() -> None

Подготавливает к завершению игры.

get

get(user_id: str) -> Player

Возвращает игрока из хранилища по его ID.

get_or_none

get_or_none(user_id: str) -> Player | None

Возвращает игрока из хранилища по его ID.

iter

iter(players: Iterable[str] | None = None) -> Iterator[Player]

Проходится по всему списку игроков.

iter_others

iter_others() -> Iterator[tuple[int, Player]]

Возвращает индекс и ID всех игроков, кроме текущего.

next

next(n: int = 1, reverse: bool = False) -> None

Перемещает курсор игрока дальше.

remove

remove(player: Player) -> None

Удаляет игрока из списка игроков.

remove_players

remove_players() -> None

Удаляет всех игроков из хранилища, связанных с текущей игрой.

rotate_cards

rotate_cards(reverse: bool = False) -> None

Меняет карты в руках для всех игроков.

set_cp

set_cp(player: Player) -> None

Устанавливает курсор текущего игрока на переданного.

start

start() -> None

Подготавливает игроков к началу игры.