diff options
author | Max Hilbrunner <mhilbrunner@users.noreply.github.com> | 2018-05-29 09:44:03 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-29 09:44:03 +0200 |
commit | d0b62ce1558766134ea2fc6bcf912e837d0ae40b (patch) | |
tree | a0ce8cb1d18ff5000d30bc854102cd7681ff474d /doc | |
parent | e2bf28e80599d5bbe362410f2261a1abf495afa5 (diff) | |
parent | a5e8a3be5e0ed2e7c6b1a9cc5803d96391b180f3 (diff) |
Merge pull request #19021 from Faless/rpc_sync_fix
RPCMode refactor, more sync modes
Diffstat (limited to 'doc')
-rw-r--r-- | doc/classes/MultiplayerAPI.xml | 24 | ||||
-rw-r--r-- | doc/classes/Node.xml | 23 |
2 files changed, 28 insertions, 19 deletions
diff --git a/doc/classes/MultiplayerAPI.xml b/doc/classes/MultiplayerAPI.xml index 7a7036c857..31904631a9 100644 --- a/doc/classes/MultiplayerAPI.xml +++ b/doc/classes/MultiplayerAPI.xml @@ -136,5 +136,29 @@ </signal> </signals> <constants> + <constant name="RPC_MODE_DISABLED" value="0" enum="RPCMode"> + Used with [method Node.rpc_config] or [method Node.rset_config] to disable a method or property for all RPC calls, making it unavailable. Default for all methods. + </constant> + <constant name="RPC_MODE_REMOTE" value="1" enum="RPCMode"> + Used with [method Node.rpc_config] or [method Node.rset_config] to set a method to be called or a property to be changed only on the remote end, not locally. Analogous to the [code]remote[/code] keyword. Calls and property changes are accepted from all remote peers, no matter if they are node's master or slaves. + </constant> + <constant name="RPC_MODE_SYNC" value="2" enum="RPCMode"> + Behave like [constant RPC_MODE_REMOTE] but also make the call or property change locally. Analogous to the [code]sync[/code] keyword. + </constant> + <constant name="RPC_MODE_MASTER" value="3" enum="RPCMode"> + Used with [method Node.rpc_config] or [method Node.rset_config] to set a method to be called or a property to be changed only on the network master for this node. Analogous to the [code]master[/code] keyword. Only accepts calls or property changes from the node's network slaves, see [method Node.set_network_master]. + </constant> + <constant name="RPC_MODE_SLAVE" value="4" enum="RPCMode"> + Used with [method Node.rpc_config] or [method Node.rset_config] to set a method to be called or a property to be changed only on slaves for this node. Analogous to the [code]slave[/code] keyword. Only accepts calls or property changes from the node's network master, see [method Node.set_network_master]. + </constant> + <constant name="RPC_MODE_REMOTESYNC" value="5" enum="RPCMode"> + Behave like [code]RPC_MODE_REMOTE[/code] but also make the call or property change locally. Same as [constant RPC_MODE_SYNC] which is only kept for compatibility. Analogous to the [code]remotesync[/code] keyword. + </constant> + <constant name="RPC_MODE_MASTERSYNC" value="6" enum="RPCMode"> + Behave like [code]RPC_MODE_MASTER[/code] but also make the call or property change locally. Analogous to the [code]mastersync[/code] keyword. + </constant> + <constant name="RPC_MODE_SLAVESYNC" value="7" enum="RPCMode"> + Behave like [code]RPC_MODE_SLAVE[/code] but also make the call or property change locally. Analogous to the [code]slavesync[/code] keyword. + </constant> </constants> </class> diff --git a/doc/classes/Node.xml b/doc/classes/Node.xml index 05ac6b1c0e..0fe576a39d 100644 --- a/doc/classes/Node.xml +++ b/doc/classes/Node.xml @@ -572,10 +572,10 @@ </return> <argument index="0" name="method" type="String"> </argument> - <argument index="1" name="mode" type="int" enum="Node.RPCMode"> + <argument index="1" name="mode" type="int" enum="MultiplayerAPI.RPCMode"> </argument> <description> - Changes the RPC mode for the given [code]method[/code] to the given [code]mode[/code]. See [enum RPCMode]. An alternative is annotating methods and properties with the corresponding keywords ([code]remote[/code], [code]sync[/code], [code]master[/code], [code]slave[/code]). By default, methods are not exposed to networking (and RPCs). Also see [method rset] and [method rset_config] for properties. + Changes the RPC mode for the given [code]method[/code] to the given [code]mode[/code]. See [enum MultiplayerAPI.RPCMode]. An alternative is annotating methods and properties with the corresponding keywords ([code]remote[/code], [code]sync[/code], [code]master[/code], [code]slave[/code]). By default, methods are not exposed to networking (and RPCs). Also see [method rset] and [method rset_config] for properties. </description> </method> <method name="rpc_id" qualifiers="vararg"> @@ -625,10 +625,10 @@ </return> <argument index="0" name="property" type="String"> </argument> - <argument index="1" name="mode" type="int" enum="Node.RPCMode"> + <argument index="1" name="mode" type="int" enum="MultiplayerAPI.RPCMode"> </argument> <description> - Changes the RPC mode for the given [code]property[/code] to the given [code]mode[/code]. See [enum RPCMode]. An alternative is annotating methods and properties with the corresponding keywords ([code]remote[/code], [code]sync[/code], [code]master[/code], [code]slave[/code]). By default, properties are not exposed to networking (and RPCs). Also see [method rpc] and [method rpc_config] for methods. + Changes the RPC mode for the given [code]property[/code] to the given [code]mode[/code]. See [enum MultiplayerAPI.RPCMode]. An alternative is annotating methods and properties with the corresponding keywords ([code]remote[/code], [code]sync[/code], [code]master[/code], [code]slave[/code]). By default, properties are not exposed to networking (and RPCs). Also see [method rpc] and [method rpc_config] for methods. </description> </method> <method name="rset_id"> @@ -860,21 +860,6 @@ <constant name="NOTIFICATION_INTERNAL_PHYSICS_PROCESS" value="26"> Notification received every frame when the internal physics process flag is set (see [method set_physics_process_internal]). </constant> - <constant name="RPC_MODE_DISABLED" value="0" enum="RPCMode"> - Used with [method rpc_config] or [method rset_config] to disable a method or property for all RPC calls, making it unavailable. Default for all methods. - </constant> - <constant name="RPC_MODE_REMOTE" value="1" enum="RPCMode"> - Used with [method rpc_config] or [method rset_config] to set a method to be called or a property to be changed only on the remote end, not locally. Analogous to the [code]remote[/code] keyword. - </constant> - <constant name="RPC_MODE_SYNC" value="2" enum="RPCMode"> - Used with [method rpc_config] or [method rset_config] to set a method to be called or a property to be changed both on the remote end and locally. Analogous to the [code]sync[/code] keyword. - </constant> - <constant name="RPC_MODE_MASTER" value="3" enum="RPCMode"> - Used with [method rpc_config] or [method rset_config] to set a method to be called or a property to be changed only on the network master for this node. Analogous to the [code]master[/code] keyword. See [method set_network_master]. - </constant> - <constant name="RPC_MODE_SLAVE" value="4" enum="RPCMode"> - Used with [method rpc_config] or [method rset_config] to set a method to be called or a property to be changed only on slaves for this node. Analogous to the [code]slave[/code] keyword. See [method set_network_master]. - </constant> <constant name="PAUSE_MODE_INHERIT" value="0" enum="PauseMode"> Inherits pause mode from the node's parent. For the root node, it is equivalent to PAUSE_MODE_STOP. Default. </constant> |