WebRTCMultiplayer¶
Inherits: NetworkedMultiplayerPeer < PacketPeer < Reference < Object
类别: 核心
简要说明¶
一个简单的接口,用于创建由 WebRTCPeerConnection 这与 MultiplayerAPI .
方法¶
add_peer ( WebRTCPeerConnection peer, int peer_id, int unreliable_lifetime=1 ) |
|
无效 |
close ( ) |
get_peers ( ) |
|
initialize ( int peer_id, bool server_compatibility=false ) |
|
无效 |
remove_peer ( int peer_id ) |
描述¶
此类构造的完整网格 WebRTCPeerConnection (每个对等机一个连接)可以用作 MultiplayerAPI.network_peer .
您可以添加每个 WebRTCPeerConnection 通过 add_peer 或者通过移除它们 remove_peer . 必须添加对等方 WebRTCPeerConnection.STATE_NEW 状态以允许它创建适当的通道。这个类既不创建提供也不设置描述,它只轮询它们,并通知连接和断开连接。
NetworkedMultiplayerPeer.connection_succeeded 和 NetworkedMultiplayerPeer.server_disconnected 除非 server_compatibility
是 true
在里面 initialize . 除此之外,数据传输的工作方式与 NetworkedMultiplayerPeer .
方法说明¶
Error add_peer ( WebRTCPeerConnection peer, int peer_id, int unreliable_lifetime=1 )
使用给定的 peer_id
. 这个 WebRTCPeerConnection 必须处于状态 WebRTCPeerConnection.STATE_NEW .
将为可靠、不可靠和有序的运输创建三个通道。价值 unreliable_lifetime
将传递给 maxPacketLifetime
创建不可靠和有序通道时的选项(请参见 WebRTCPeerConnection.create_data_channel )
void close ( )
关闭所有添加对等连接和通道,释放所有资源。
Dictionary get_peer ( int peer_id )
返回具有给定值的对等方的字典表示形式 peer_id
有三把钥匙。 connection
包含 WebRTCPeerConnection 对这个同龄人来说, channels
三个数组 WebRTCDataChannel 和 connected
一个布尔值,表示对等连接当前是否已连接(所有三个通道都已打开)。
Dictionary get_peers ( )
返回一个字典,其中键是对等ID,并将对等表示的值设置为 get_peer
返回 true
如果给定 peer_id
在对等映射中(但可能没有连接)。
用给定的初始化多人对等机 peer_id
(必须介于1和2147483647之间)。
如果 server_compatibilty
是 false
(默认),多人对等机将立即处于状态 NetworkedMultiplayerPeer.CONNECTION_CONNECTED 和 NetworkedMultiplayerPeer.connection_succeeded 不会发射。
如果 server_compatibilty
是 true
对等方将禁止所有 NetworkedMultiplayerPeer.peer_connected 向具有ID的对等机发送信号 NetworkedMultiplayerPeer.TARGET_PEER_SERVER 连接然后发射 NetworkedMultiplayerPeer.connection_succeeded . 在那之后,信号 NetworkedMultiplayerPeer.peer_connected 将为每个已连接的对等机以及任何可能连接的新对等机发出。如果服务器对等端在此之后断开连接,则发出信号 NetworkedMultiplayerPeer.server_disconnected 将被发射,状态将变为 NetworkedMultiplayerPeer.CONNECTION_CONNECTED .
void remove_peer ( int peer_id )
删除给定的对等项 peer_id
从网格中。如果对等机已连接,并且 NetworkedMultiplayerPeer.peer_connected 是为它而发射的,然后 NetworkedMultiplayerPeer.peer_disconnected 将被发射。