Player class

This commit is contained in:
Maxim Khomutov 2023-07-22 23:26:47 +03:00
parent cb00829ae7
commit 7de5837db4

View File

@ -57,7 +57,7 @@ lua функция вызывается с прямой передачей ар
_`pid: int` -> Player ID - Идентификатор игрока._\
_`nick: str` -> Player Nick - Ник игрока._
Метод возвращает объект игрока по его `pid`, `nick`.\
Метод возвращает объект игрока по его `pid` или `nick`.\
Если не удалось найти игрока вернётся `None`.
### kt.get_players() -> List[Player] | list:
@ -77,6 +77,98 @@ _`nick: str` -> Player Nick - Ник игрока._
## Player (или Client)
_`pl = kt.get_player()`_\
_`pl = event_data['kwargs']['player']`_\
_`pl = event_data['kwargs']['player']`_
#### pl.
### pl.log -> Logger
_Константа_\
Вернёт преднастроенный логгер
### pl.addr -> str
_Константа_\
Вернёт IP адрес игрока
### pl.pid -> int
### pl.cid -> int
_Константа_\
Вернёт id клиента _(pid: PlayerId = cid: ClientId)_
### pl.key -> str
_Константа_\
Вернёт ключ, переданный при авторизации
### pl.nick -> str
еременная_\
Ник, переданные при авторизации от сервера BeamMP, можно изменить, последствия не проверенны
### pl.roles -> str
еременная_\
Роль, переданная при авторизации от сервера BeamMP, можно изменить (Если установить не верную роль, могут происходить неожиданности.)
### pl.guest -> bool
_Константа_\
Вернёт является ли игрок гостем, передаётся при авторизации от сервера BeamMP
### pl.identifiers -> dict
_Константа_\
Идентификаторы, передаются при авторизации от сервера BeamMP.
### pl.ready -> bool
_Константа, меняется ядром_\
Вернёт bool значение, если True -> игрок скачал все ресурсы, прогрузился на карте
### pl.cars -> dict
_Константа, меняется ядром_\
Возвращает словарь автомобилей по типу:
```python
{
1: {
"packet": car_packet,
"json": car_json,
"json_ok": bool(car_json),
"snowman": snowman,
"over_spawn": (snowman and allow_snowman) or over_spawn,
"pos": {
"pos":[0,0,0],
"rvel":[0,0,0],
"rot":[0,0,0],
"vel":[0,0,0],
"tim":0,
"ping":0
}
}
}
```
Где `1` - car_id
Где `pkt` - Необработанный пакет который пришел от клиента (Для очень опытных пользователй)
Где `json` - Обработанный пакет, хранящийся в виде dict
Где `json_ok` - Смогло ли ядро обработать пакет
Где `snowman` - Снеговик ли машина
Где `over_spawn` - Заспавнена ли машина сверх лимита (Разрешается через плагины)
Где `pos` - Позиция машины (Передаётся через udp)
### pl.last_position -> dict
_Константа, меняется ядром_
Возвращает последнюю позицию игрока
### **async** pl.kick([reason: str = "Kicked!"]) -> None
_`reason: str` -> Причина кика. Параметр не обязателен, по дефолту: `Kicked!`_
Кикает игрока с сервера
### **async** pl.send_message(message: str, [to_all: bool = True]) -> None
_`message: str` -> Текст сообщения, отправляется без "Server:"_
_`to_all: bool` -> Нужно ли отправить это сообщение всем? Параметр не обязателен, по дефолту: `True`_
Отправляет сообщение игроку или всем сразу
### **async** pl.send_event(event_name: str, event_data: Any, [to_all: bool = True]) -> None
_`event_name: str` -> Имя ивента, который будет вызван_
_`event_data: Any` -> Отправляемые данные в ивент._
_`to_all: bool` -> Нужно ли отправить это сообщение всем? Параметр не обязателен, по дефолту: `True`_
Отправляет ивент на клиент.\
Если event_data будет tuple, list, dict, то перед отправкой ядро конвертирует в json через json.dumps(event_data)
Иначе данные будут строкой, без регуляции;
### **async** pl.delete_car(self, car_id: int) -> None
_`car_id: int` -> Идентификатор машины_
Удалят машину у игрока