Перечисления
Общие перечисления.
Перечисления представлены в одном место для большего удобства. А также для решения проблемы циклического импорта.
COLOR_EMOJI
module-attribute
COLOR_EMOJI = ['❤️', '🧡', '💛', '💚', '🩵', '💙', '🖤', '🩷']
CardColor
Bases: IntEnum
Цвета карты.
У каждой карты есть свой цвет.
Возможные варианты: RED
, YELLOW
, GREEN
, BLUE
, BLACK
.
Чёрный цвет используется для диких карт.
Во время использования такой карты пользователю будет предложено
выбрать один из доступных цветов, кроме чёрного.
BLACK
class-attribute
instance-attribute
BLACK = 6
BLUE
class-attribute
instance-attribute
BLUE = 5
CREAM
class-attribute
instance-attribute
CREAM = 7
CYAN
class-attribute
instance-attribute
CYAN = 4
GREEN
class-attribute
instance-attribute
GREEN = 3
ORANGE
class-attribute
instance-attribute
ORANGE = 1
RED
class-attribute
instance-attribute
RED = 0
YELLOW
class-attribute
instance-attribute
YELLOW = 2
emoji
property
emoji: str
Преобразует цвет карты в соответствующий emoji.
GameEvents
Bases: IntEnum
Типы игровых событий.
Когда происходит некоторое действие в игре, вызывается событие.
События могут сопровождаться строкой с полезной информацией.
Для обработки игровых события воспользуйтесь классом EventHandler
.
Игровая сессия:
session_start
: Создана новая комната.session_end
: Сессия в комнате завершена.
Игра:
game_start
: Началась новая игра.game_end
: Завершилась игра.game_join
: Игрок присоединился к игре.game_leave
: Игрок вышел, проиграл, выиграл, был исключён, застрелился.game_select_color
: Выбор нового цвета для карты.game_select_player
: Выбор игрока для обмена картами.game_turn
: Завершение текущего и начало следующего хода.game_rotate
: Обмен картами между всеми игроками.game_state
: Обновление игрового состояния.
Игрок:
player_mau
: Когда у игрока остаётся только одна карта.player_bluff
: Проверка на честность предыдущего игрока.player_take
: Взятие карт из колоды, также вместо револьвера.player_push
: Игрок использует карту.player_intervened
: Игрок вмешался в ход другого игрока.
GAME_END
class-attribute
instance-attribute
GAME_END = 21
GAME_JOIN
class-attribute
instance-attribute
GAME_JOIN = 22
GAME_LEAVE
class-attribute
instance-attribute
GAME_LEAVE = 23
GAME_ROTATE
class-attribute
instance-attribute
GAME_ROTATE = 27
GAME_SELECT_COLOR
class-attribute
instance-attribute
GAME_SELECT_COLOR = 24
GAME_SELECT_PLAYER
class-attribute
instance-attribute
GAME_SELECT_PLAYER = 25
GAME_START
class-attribute
instance-attribute
GAME_START = 20
GAME_STATE
class-attribute
instance-attribute
GAME_STATE = 28
GAME_TURN
class-attribute
instance-attribute
GAME_TURN = 26
PLAYER_BLUFF
class-attribute
instance-attribute
PLAYER_BLUFF = 31
PLAYER_INTERVENED
class-attribute
instance-attribute
PLAYER_INTERVENED = 34
PLAYER_MAU
class-attribute
instance-attribute
PLAYER_MAU = 30
PLAYER_PUSH
class-attribute
instance-attribute
PLAYER_PUSH = 33
PLAYER_TAKE
class-attribute
instance-attribute
PLAYER_TAKE = 32
SESSION_END
class-attribute
instance-attribute
SESSION_END = 11
SESSION_START
class-attribute
instance-attribute
SESSION_START = 10
GameState
Bases: IntEnum
Игровые состояния.
В каждый момент времени игра находится в некотором состоянии. В зависимости от этого состояние изменяется поведение игры. Отслеживать состояния можно при помощи событий. Состояние игры сбрасывается на каждом ходе.
NEXT
: После использования карты игроком ход передаётся дальше.TAKE
: Игрок брал карту в этом ходу.CHOOSE_COLOR
: Выбирается цвет для карты. После завершается ход.TWIST_HAND
: Выбирается с кем обменяться картами.SHOTGUN
: Состояние револьвера. Стрелять или брать карты.CONTINUE
: Ход продолжается до ручного завершения.
CHOOSE_COLOR
class-attribute
instance-attribute
CHOOSE_COLOR = 2
CONTINUE
class-attribute
instance-attribute
CONTINUE = 5
NEXT
class-attribute
instance-attribute
NEXT = 0
SHOTGUN
class-attribute
instance-attribute
SHOTGUN = 4
TAKE
class-attribute
instance-attribute
TAKE = 1
TWIST_HAND
class-attribute
instance-attribute
TWIST_HAND = 3