From cbb744c4e09c44cd44ab4a21bc3a814c0913f6fe Mon Sep 17 00:00:00 2001 From: Fabio Alessandrelli Date: Tue, 8 May 2018 11:33:25 +0200 Subject: Document MultiplayerAPI class --- doc/classes/MultiplayerAPI.xml | 57 +++++++++++++++++------------------------- 1 file changed, 23 insertions(+), 34 deletions(-) (limited to 'doc/classes/MultiplayerAPI.xml') diff --git a/doc/classes/MultiplayerAPI.xml b/doc/classes/MultiplayerAPI.xml index 591d715174..b2ed712554 100644 --- a/doc/classes/MultiplayerAPI.xml +++ b/doc/classes/MultiplayerAPI.xml @@ -1,88 +1,68 @@ + High Level Multiplayer API. + This class implements most of the logic behind the high level multiplayer API. + By default, [SceneTree] has a reference to this class that is used to provide multiplayer capabilities (i.e. RPC/RSET) across the whole scene. + It is possible to override the MultiplayerAPI instance used by specific Nodes by setting the [member Node.custom_multiplayer] property, effectively allowing to run both client and server in the same scene. - - - - - - - - - - - - - - - - - - - - - - - - - - - - + Clears the current MultiplayerAPI network state (you shouldn't call this unless you know what you are doing). + Returns the peer IDs of all connected peers of this MultiplayerAPI's [member network_peer]. + Returns the unique peer ID of this MultiplayerAPI's [member network_peer]. + Returns the sender's peer ID for the RPC currently being executed. + NOTE: If not inside an RPC this method will return 0. + Returns [code]true[/code] if there is a [member network_peer] set. + Returns [code]true[/code] if this MultiplayerAPI's [member network_peer] is in server mode (listening for connections). - - - - - - + Method used for polling the MultiplayerAPI. + You only need to worry about this if you are using [memeber Node.custom_multplayer] override. + SceneTree will poll the default MultiplayerAPI for you. @@ -91,38 +71,47 @@ + Sets the base root node to use for RPCs. Instead of an absolute path, a relative path will be used to find the node upon which the RPC should be executed. + This effectively allows to have different branches of the scene tree to be managed by different MultiplayerAPI, allowing for example to run both client and server in the same scene. + The peer object to handle the RPC system (effectively enabling networking when set). Depending on the peer itself, the MultiplayerAPI will become a network server (check with [method is_network_server()]) and will set root node's network mode to master (see NETWORK_MODE_* constants in [Node]), or it will become a regular peer with root node set to slave. All child nodes are set to inherit the network mode by default. Handling of networking-related events (connection, disconnection, new clients) is done by connecting to MultiplayerAPI's signals. + If [code]true[/code] the MultiplayerAPI's [member network_peer] refuses new incoming connections. + Emitted whenever this MultiplayerAPI's [member network_peer] successfully connected to a server. Only emitted on clients. + Emitted whenever this MultiplayerAPI's [member network_peer] fails to establish a connection to a server. Only emitted on clients. + Emitted whenever this MultiplayerAPI's [member network_peer] connects with a new peer. ID is the peer ID of the new peer. Clients get notified when other clients connect to the same server. Upon connecting to a server, a client also receives this signal for the server (with ID being 1). + Emitted whenever this MultiplayerAPI's [member network_peer] disconnects from a peer. Clients get notified when other clients disconnect from the same server. + Emitted whenever this MultiplayerAPI's [member network_peer] disconnected from server. Only emitted on clients. -- cgit v1.2.3