MultiplayerSpawner ​
Automatically replicates spawnable nodes from the authority to other multiplayer peers.
Description
Spawnable scenes can be configured in the editor or through code (see add_spawnable_scene).
Also supports custom node spawns through spawn, calling spawn_function on all peers.
Internally, MultiplayerSpawner uses MultiplayerAPI.object_configuration_add to notify spawns passing the spawned node as the object
and itself as the configuration
, and MultiplayerAPI.object_configuration_remove to notify despawns in a similar way.
Properties
0 | ||
NodePath("") |
Methods
void | add_spawnable_scene(path: String) |
void | |
get_spawnable_scene(index: int) const | |
get_spawnable_scene_count() const | |
Signals
Emitted when a spawnable scene or custom spawn was despawned by the multiplayer authority. Only called on puppets.
Emitted when a spawnable scene or custom spawn was spawned by the multiplayer authority. Only called on puppets.
Property Descriptions
Method called on all peers when for every custom spawn requested by the authority. Will receive the data
parameter, and should return a Node that is not in the scene tree.
Note: The returned node should not be added to the scene with Node.add_child. This is done automatically.
Maximum nodes that is allowed to be spawned by this spawner. Includes both spawnable scenes and custom spawns.
When set to 0
(the default), there is no limit.
NodePath spawn_path = NodePath("") 🔗
Path to the spawn root. Spawnable scenes that are added as direct children are replicated to other peers.
Method Descriptions
void add_spawnable_scene(path: String) 🔗
Adds a scene path to spawnable scenes, making it automatically replicated from the multiplayer authority to other peers when added as children of the node pointed by spawn_path.
void clear_spawnable_scenes() 🔗
Clears all spawnable scenes. Does not despawn existing instances on remote peers.
String get_spawnable_scene(index: int) const 🔗
Returns the spawnable scene path by index.
int get_spawnable_scene_count() const 🔗
Returns the count of spawnable scene paths.
Node spawn(data: Variant = null) 🔗
Requests a custom spawn, with data
passed to spawn_function on all peers. Returns the locally spawned node instance already inside the scene tree, and added as a child of the node pointed by spawn_path.
Note: Spawnable scenes are spawned automatically. spawn is only needed for custom spawns.