MultiplayerPeerExtension

继承: MultiplayerPeer < PacketPeer < RefCounted < Object

Class that can be inherited to implement custom multiplayer API networking layers via GDExtension.

描述

This class is designed to be inherited from a GDExtension plugin to implement custom networking layers for the multiplayer API (such as WebRTC). All the methods below must be implemented to have a working custom multiplayer implementation. See also MultiplayerAPI.

方法

void_close ( ) virtual1
void_disconnect_peer ( p_peer: int, p_force: bool ) virtual1
int_get_available_packet_count ( ) virtual1 const2
ConnectionStatus_get_connection_status ( ) virtual1 const2
int_get_max_packet_size ( ) virtual1 const2
Error_get_packet ( r_buffer: const uint8_t **, r_buffer_size: int32_t* ) virtual1
int_get_packet_channel ( ) virtual1 const2
TransferMode_get_packet_mode ( ) virtual1 const2
int_get_packet_peer ( ) virtual1 const2
PackedByteArray_get_packet_script ( ) virtual1
int_get_transfer_channel ( ) virtual1 const2
TransferMode_get_transfer_mode ( ) virtual1 const2
int_get_unique_id ( ) virtual1 const2
bool_is_refusing_new_connections ( ) virtual1 const2
bool_is_server ( ) virtual1 const2
bool_is_server_relay_supported ( ) virtual1 const2
void_poll ( ) virtual1
Error_put_packet ( p_buffer: const uint8_t*, p_buffer_size: int ) virtual1
Error_put_packet_script ( p_buffer: PackedByteArray ) virtual1
void_set_refuse_new_connections ( p_enable: bool ) virtual1
void_set_target_peer ( p_peer: int ) virtual1
void_set_transfer_channel ( p_channel: int ) virtual1
void_set_transfer_mode ( p_mode: TransferMode ) virtual1

方法说明

void _close ( ) virtual1

Called when the multiplayer peer should be immediately closed (see MultiplayerPeer.close).


void _disconnect_peer ( p_peer: int, p_force: bool ) virtual1

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


int _get_available_packet_count ( ) virtual1 const2

Called when the available packet count is internally requested by the MultiplayerAPI.


ConnectionStatus _get_connection_status ( ) virtual1 const2

Called when the connection status is requested on the MultiplayerPeer (see MultiplayerPeer.get_connection_status).


int _get_max_packet_size ( ) virtual1 const2

Called when the maximum allowed packet size (in bytes) is requested by the MultiplayerAPI.


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

Called when a packet needs to be received by the MultiplayerAPI, with r_buffer_size being the size of the binary r_buffer in bytes.


int _get_packet_channel ( ) virtual1 const2

Called to get the channel over which the next available packet was received. See MultiplayerPeer.get_packet_channel.


TransferMode _get_packet_mode ( ) virtual1 const2

Called to get the transfer mode the remote peer used to send the next available packet. See MultiplayerPeer.get_packet_mode.


int _get_packet_peer ( ) virtual1 const2

Called when the ID of the MultiplayerPeer who sent the most recent packet is requested (see MultiplayerPeer.get_packet_peer).


PackedByteArray _get_packet_script ( ) virtual1

Called when a packet needs to be received by the MultiplayerAPI, if _get_packet isn't implemented. Use this when extending this class via GDScript.


int _get_transfer_channel ( ) virtual1 const2

Called when the transfer channel to use is read on this MultiplayerPeer (see MultiplayerPeer.transfer_channel).


TransferMode _get_transfer_mode ( ) virtual1 const2

Called when the transfer mode to use is read on this MultiplayerPeer (see MultiplayerPeer.transfer_mode).


int _get_unique_id ( ) virtual1 const2

Called when the unique ID of this MultiplayerPeer is requested (see MultiplayerPeer.get_unique_id). The value must be between 1 and 2147483647.


bool _is_refusing_new_connections ( ) virtual1 const2

Called when the "refuse new connections" status is requested on this MultiplayerPeer (see MultiplayerPeer.refuse_new_connections).


bool _is_server ( ) virtual1 const2

Called when the "is server" status is requested on the MultiplayerAPI. See MultiplayerAPI.is_server.


bool _is_server_relay_supported ( ) virtual1 const2

Called to check if the server can act as a relay in the current configuration. See MultiplayerPeer.is_server_relay_supported.


void _poll ( ) virtual1

Called when the MultiplayerAPI is polled. See MultiplayerAPI.poll.


Error _put_packet ( p_buffer: const uint8_t*, p_buffer_size: int ) virtual1

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


Error _put_packet_script ( p_buffer: PackedByteArray ) virtual1

Called when a packet needs to be sent by the MultiplayerAPI, if _put_packet isn't implemented. Use this when extending this class via GDScript.


void _set_refuse_new_connections ( p_enable: bool ) virtual1

Called when the "refuse new connections" status is set on this MultiplayerPeer (see MultiplayerPeer.refuse_new_connections).


void _set_target_peer ( p_peer: int ) virtual1

Called when the target peer to use is set for this MultiplayerPeer (see MultiplayerPeer.set_target_peer).


void _set_transfer_channel ( p_channel: int ) virtual1

Called when the channel to use is set for this MultiplayerPeer (see MultiplayerPeer.transfer_channel).


void _set_transfer_mode ( p_mode: TransferMode ) virtual1

Called when the transfer mode is set on this MultiplayerPeer (see MultiplayerPeer.transfer_mode).

1

本方法通常需要用户覆盖才能生效。

2

本方法无副作用,不会修改该实例的任何成员变量。

3

本方法除了能接受在此处描述的参数外,还能够继续接受任意数量的参数。

4

本方法用于构造某个类型。

5

调用本方法无需实例,可直接使用类名进行调用。

6

本方法描述的是使用本类型作为左操作数的有效运算符。

7

这个值是由下列位标志构成位掩码的整数。

8

无返回值。