WebRTCMultiplayerPeer

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

Простий інтерфейс для створення односторонньої сітки, що складається з WebRTCPeerConnection, який сумісний з MultiplayerAPI.

Опис

Цей клас побудує повну сіточку WebRTCPeerConnection (одне підключення для кожного однолітка), яке можна використовувати як MultiplayerAPI.multiplayer_peer.

Ви можете додати кожен WebRTCPeerConnection через add_peer() або видалити їх через видалення_peer(). Пірс необхідно додати в WebRTCPeerConnection. STATE_NEW стан для створення відповідних каналів. Цей клас не створить пропозиції, не встановлюючи описи, він буде тільки обпилювати їх, і повідомляти з'єднання і відключення.

При створенні однолітків через create_server() або method[code створення_server] MultiplayerPeer.is_server_relay_supported() повернеться true, що дозволяє проводити реле міжряддя та пакету при підтримці впровадження MultiplayerAPI.

Примітка: При експорті на Андроїд, переконайтеся, що ввімкнути INTERNET дозвіл на експорт Android перед експортуванням проекту або за допомогою однієї кнопки розгортання. Інакше, мережевий зв'язок будь-якого роду буде заблокований Android.

Методи

Error

add_peer(peer: WebRTCPeerConnection, peer_id: int, unreliable_lifetime: int = 1)

Error

create_client(peer_id: int, channels_config: Array = [])

Error

create_mesh(peer_id: int, channels_config: Array = [])

Error

create_server(channels_config: Array = [])

Dictionary

get_peer(peer_id: int)

Dictionary

get_peers()

bool

has_peer(peer_id: int)

void

remove_peer(peer_id: int)


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

Error add_peer(peer: WebRTCPeerConnection, peer_id: int, unreliable_lifetime: int = 1) 🔗

Додайте нового піра до мережі з заданим параметром peer_id. WebRTCPeerConnection має бути у стані WebRTCPeerConnection.STATE_NEW.

Буде створено три канали для надійного, ненадійного та впорядкованого транспортування. Значення unrelable_lifetime буде передано до опції "maxPacketLifetime" під час створення ненадійних та впорядкованих каналів (див. WebRTCPeerConnection.create_data_channel()).


Error create_client(peer_id: int, channels_config: Array = []) 🔗

Ініціалізуйте багатокористувацький вузол як клієнт із заданим параметром peer_id (повинен бути між 2 та 2147483647). У цьому режимі слід викликати метод add_peer() лише один раз та з параметром peer_id з параметра 1. Цей режим дозволяє методу MultiplayerPeer.is_server_relay_supported(), що дозволяє верхньому рівню MultiplayerAPI виконувати обмін вузлами та ретрансляцію пакетів.

За потреби можна вказати масив channels_config з параметром TransferMode, який буде використовуватися для створення додаткових каналів (WebRTC підтримує лише один режим передачі на канал).


Error create_mesh(peer_id: int, channels_config: Array = []) 🔗

Ініціалізація багатокористувацьких однолітків як сітчаста (тобто всі однолітки з'єднуються один з одним) з наведених peer_id (міститься між 1 і 2147483647).


Error create_server(channels_config: Array = []) 🔗

Іноземець мультиплеєра як сервер (з унікальним ідентифікатором 1). Цей режим дозволяє MultiplayerPeer.is_server_relay_supported(), дозволяючи верхній MultiplayerAPI шар, щоб виконати обмін і перекриття пакетів.

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


Dictionary get_peer(peer_id: int) 🔗

Повернутися до словникової репрезентації однолітків з даними du_id з трьома ключами. "connection", що містить WebRTCPeerConnection на цей одноліток, "канали" масив трьох WebRTCDataChannel, і " підключено", що представляє, якщо з'єднання з'єднання підключено (всі три канали відкриті).


Dictionary get_peers() 🔗

Повертає словник, який ключі є однолітковими кришками та значеннями, що є репрезентацією, як у get_peer().


bool has_peer(peer_id: int) 🔗

Повертаємо true, якщо надана аналог_id знаходиться на карті однолітків (не може бути підключений, хоча).


void remove_peer(peer_id: int) 🔗

Видаліть дует з наданою peer_id з сітки. Якщо був підключений одноліток, і для цього був представлений MultiplayerPeer.peer_connected, то MultiplayerPeer.peer_disconnected.