Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

MultiplayerSpawner

Hérite de : Node < Object

Réplique automatiquement les nœuds spawnables de l'autorité sur les autres pairs multijoueurs.

Description

Les scènes spawnables peuvent être configurées dans l'éditeur ou via le code (voir add_spawnable_scene()).

Supporte également le spawn de nœuds personnalisés via spawn(), en appelant spawn_function sur tous les pairs.

En interne, MultiplayerSpawner utilise MultiplayerAPI.object_configuration_add() pour notifier des spawns en passant le nœud spawné dans object et lui-même dans configuration, et MultiplayerAPI.object_configuration_remove() pour notifier des despawns de manière similaire.

Propriétés

Callable

spawn_function

int

spawn_limit

0

NodePath

spawn_path

NodePath("")

Méthodes

void

add_spawnable_scene(path: String)

void

clear_spawnable_scenes()

String

get_spawnable_scene(index: int) const

int

get_spawnable_scene_count() const

Node

spawn(data: Variant = null)


Signaux

despawned(node: Node) 🔗

Émis lorsqu'une scène spawnable ou un spawn personnalisé a été despawn par l'autorité multijoueur. Seulement appelée sur les pairs distants.


spawned(node: Node) 🔗

Émis lorsqu'une scène spawnable ou un spawn personnalisé a été spawn par l'autorité multijoueur. Seulement appelée sur les pairs distants.


Descriptions des propriétés

Callable spawn_function 🔗

Méthode appelée sur tous les pairs quand un spawn() personnalisé est demandé par l'autorité. Recevra le paramètre data et devrait renvoyer un Node qui n'est pas dans l'arborescence de scène.

Note : Le nœud renvoyé ne devrait pas être ajouté à la scène avec Node.add_child(). Ceci est fait automatiquement.


int spawn_limit = 0 🔗

  • void set_spawn_limit(value: int)

  • int get_spawn_limit()

Nombre maximal de nœuds autorisés à être spawnés par ce spawner. Comprend des scènes spawnables et des spawns personnalisés.

Lorsque défini à 0 (par défaut), il n'y a pas de limite.


NodePath spawn_path = NodePath("") 🔗

Chemin vers la racine de spawn. Les scènes spawnables qui sont ajoutées comme enfants directs sont répliquées sur les autres pairs.


Descriptions des méthodes

void add_spawnable_scene(path: String) 🔗

Ajoute un chemin de scène aux scènes spawnables, la rendant automatiquement répliquée de l'autorité multijoueur vers d'autres pairs lorsqu'elle est ajoutée comme enfant du nœud pointé par spawn_path.


void clear_spawnable_scenes() 🔗

Efface toutes les scènes spawnables. Ne despawn pas les instances existantes sur les pairs distants.


String get_spawnable_scene(index: int) const 🔗

Renvoie le chemin d'une scène spawnable par index.


int get_spawnable_scene_count() const 🔗

Renvoie le nombre de chemins de scènes spawnables.


Node spawn(data: Variant = null) 🔗

Demande un spawn personnalisé, avec data passée à spawn_function sur tous les pairs. Renvoie l'instance du nœud spawné localement déjà à l'intérieur de l’arborescence de scène, et ajouté en tant qu'enfant du nœud pointé par spawn_path.

Note : Les scènes spawnables sont générées automatiquement. spawn() n'est nécessaire que pour les spawns personnalisés.