Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

MultiplayerPeerExtension

Успадковує: MultiplayerPeer < PacketPeer < RefCounted < Object

Клас, який може бути спадковим для реалізації користувацького багатокористувацького API мережних шарів через GDExtension.

Опис

Цей клас призначений для того, щоб бути у спадок від GDExtension плагіна, щоб реалізувати користувацькі шари мереж для багатокористувацького API (наприклад, WebRTC). Всі методи нижче must будуть реалізовані, щоб мати робочу індивідуальну багатокористувацьку реалізацію. Дивись ще MultiplayerAPI.

Методи

void

_close() virtual required

void

_disconnect_peer(peer: int, force: bool) virtual required

int

_get_available_packet_count() virtual required const

ConnectionStatus

_get_connection_status() virtual required const

int

_get_max_packet_size() virtual required const

Error

_get_packet(r_buffer: const uint8_t **, r_buffer_size: int32_t*) virtual

int

_get_packet_channel() virtual required const

TransferMode

_get_packet_mode() virtual required const

int

_get_packet_peer() virtual required const

PackedByteArray

_get_packet_script() virtual

int

_get_transfer_channel() virtual required const

TransferMode

_get_transfer_mode() virtual required const

int

_get_unique_id() virtual required const

bool

_is_refusing_new_connections() virtual const

bool

_is_server() virtual required const

bool

_is_server_relay_supported() virtual const

void

_poll() virtual required

Error

_put_packet(buffer: const uint8_t*, buffer_size: int) virtual

Error

_put_packet_script(buffer: PackedByteArray) virtual

void

_set_refuse_new_connections(enable: bool) virtual

void

_set_target_peer(peer: int) virtual required

void

_set_transfer_channel(channel: int) virtual required

void

_set_transfer_mode(mode: TransferMode) virtual required


Описи методів

void _close() virtual required 🔗

Викликається, коли багатокористувацький одноліток повинен бути негайно закритий (див. MultiplayerPeer.close()).


void _disconnect_peer(peer: int, force: bool) virtual required 🔗

Called when the connected peer should be forcibly disconnected (see MultiplayerPeer.disconnect_peer()).


int _get_available_packet_count() virtual required const 🔗

Викликається, коли наявна кількість пакетів внутрішньо запитується MultiplayerAPI.


ConnectionStatus _get_connection_status() virtual required const 🔗

Зателефонуйте, коли статус підключення запитується на MultiplayerPeer (див. MultiplayerPeer.get_connection_status()).


int _get_max_packet_size() virtual required const 🔗

Викликається при максимальному допустимому розмірі пакета (в байтах) запитується MultiplayerAPI.


Error _get_packet(r_buffer: const uint8_t **, r_buffer_size: int32_t*) virtual 🔗

Викликається, коли пакет потрібно отримати MultiplayerAPI, з r_buffer_size є розміром бінарних r_buffer в байтах.


int _get_packet_channel() virtual required const 🔗

Зателефонуйте, щоб отримати канал, над яким було отримано наступний пакет. Подивитися MultiplayerPeer.get_packet_channel().


TransferMode _get_packet_mode() virtual required const 🔗

Зателефонуйте, щоб отримати режим передачі, який використовується для відправки наступного пакета. Подивитися MultiplayerPeer.get_packet_mode().


int _get_packet_peer() virtual required const 🔗

Зателефонуйте, коли ID MultiplayerPeer, який відправив останні пакети запитують (див. MultiplayerPeer.get_packet_peer()).


PackedByteArray _get_packet_script() virtual 🔗

Зателефонуйте, коли пакет потрібно отримати за допомогою MultiplayerAPI, якщо _get_packet() не реалізовано. Використовуйте цей клас за допомогою GDScript.


int _get_transfer_channel() virtual required const 🔗

Зателефоновано при передачі каналу до використання на цьому MultiplayerPerr (див. MultiplayerPeer.transfer_channel).


TransferMode _get_transfer_mode() virtual required const 🔗

Викликається, коли режим передачі, який потрібно використовувати, зчитується на цьому MultiplayerPeer (див. MultiplayerPeer.transfer_mode).


int _get_unique_id() virtual required const 🔗

Викликається, коли запитується унікальний ідентифікатор цього MultiplayerPeer (див. method MultiplayerPeer.get_unique_id). Значення має бути в діапазоні від 1 до 2147483647.


bool _is_refusing_new_connections() virtual const 🔗

Зателефонуйте, коли статус "відновити нові з'єднання" запитується на цьому MultiplayerPeer (див. MultiplayerPeer.refuse_new_connections).


bool _is_server() virtual required const 🔗

Зателефоновано, коли статус "is server" запитується на MultiplayerAPI. Подивитися MultiplayerAPI.is_server().


bool _is_server_relay_supported() virtual const 🔗

Зателефоновано для перевірки, якщо сервер може діяти як реле в поточній конфігурації. MultiplayerPeer.is_server_relay_supported().


void _poll() virtual required 🔗

Зателефоновано при опитуванні MultiplayerAPI. Подивитися MultiplayerAPI.poll().


Error _put_packet(buffer: const uint8_t*, buffer_size: int) virtual 🔗

Called when a packet needs to be sent by the MultiplayerAPI, with buffer_size being the size of the binary buffer in bytes.


Error _put_packet_script(buffer: PackedByteArray) virtual 🔗

Зателефонуйте, коли пакет потрібно надсилати MultiplayerAPI, якщо _put_packet() не реалізовано. Використовуйте цей клас за допомогою GDScript.


void _set_refuse_new_connections(enable: bool) virtual 🔗

Зателефонуйте, коли статус "відновити нові з'єднання" встановлюється на цьому MultiplayerPeer (див. MultiplayerPeer.refuse_new_connections).


void _set_target_peer(peer: int) virtual required 🔗

Зателефонуйте, коли ціль-учасники використовувати для цього MultiplayerPeer (див. MultiplayerPeer.set_target_peer()).


void _set_transfer_channel(channel: int) virtual required 🔗

Зателефоновано, коли канал використовувати для цього MultiplayerPeer (див. MultiplayerPeer.transfer_канал).


void _set_transfer_mode(mode: TransferMode) virtual required 🔗

Зателефоновано, коли режим передачі встановлений на цьому MultiplayerPeer (див. MultiplayerPeer.transfer_mode).