Actor

Afficher les obsolètes

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Un Actor est un conteneur pour le code qui peut être sécurément divisé en son propre thread en utilisant task.desynchronize().Il devrait également contenir les instances utilisées par ses scripts.

Pour en savoir plus sur l'utilisation de plusieurs acteurs pour optimiser les performances du script, voir Luau parallèle.

Résumé

Propriétés

Propriétés hérités de Model
  • Sécurité des plugins
    Lecture parallèle

    Définit le niveau de détail sur le modèle pour les expériences avec streaming d'instance activé.

  • Contrôle le comportement de streaming du modèle sur Models lorsque le streaming d'instance est activé.

  • Lecture parallèle

    La partie principale de la Model ou nil si elle n'est pas explicitement définie.

  • Non répliqué
    Non scriptable
    Lecture parallèle

    Propriété réservée aux éditeurs utilisée pour dimensionner le modèle autour de son pivot. Le réglage de cette propriété déplacera la mesure comme si Model/ScaleTo était appelé sur elle.

  • Non répliqué
    Lecture parallèle

    Détermine où se trouve le pivot d'un Model qui ne fait pas **** avoir un ensemble Model.PrimaryPart.

Propriétés hérités de PVInstance

Méthodes

Méthodes hérités de Model
  • AddPersistentPlayer(playerInstance : Player):()

    Définit ce modèle pour être persistant pour le joueur spécifié.Model.ModelStreamingMode doit être défini sur PersistantParJoueur pour que le comportement soit modifié en raison de l'ajout.

  • Renvoie une description d'un volume qui contient toutes les parties d'un modèle.

  • Renvoie la taille de la plus petite boîte de bordure qui contient tout le BaseParts dans le Model, alignée sur le Model.PrimaryPart si elle est définie.

  • Renvoie tous les objets Player que cet objet de modèle est persistant pour.Le comportement varie en fonction de si cette méthode est appelée à partir d'un Script ou d'un LocalScript .

  • Renvoie la taille canonique du modèle, qui est par défaut de 1 pour les modèles créés récemment et qui changera lorsqu'elle sera mise à l'échelle via Model/ScaleTo.

  • MoveTo(position : Vector3):()

    Déplace le PrimaryPart à la position donnée. Si aucune partie principale n'a été spécifiée, la partie racine du modèle sera utilisée.

  • RemovePersistentPlayer(playerInstance : Player):()

    Rend ce modèle non persistant pour le joueur spécifié.Model.ModelStreamingMode doit être défini sur PersistantParJoueur pour que le comportement soit modifié en raison de la suppression.

  • ScaleTo(newScaleFactor : number):()

    Définit le facteur d'échelle du modèle, ajustant la taille et l'emplacement de toutes les instances descendantes afin qu'elles aient ce facteur d'échelle par rapport à leurs tailles et emplacements initiaux lorsque le facteur d'échelle était de 1.

  • TranslateBy(delta : Vector3):()

    Déplace un Model par le décalage donné Vector3, en conservant l'orientation du modèle.Si un autre BasePart ou Terrain existe déjà à la nouvelle position, alors le Model couvrira cet objet.

Méthodes hérités de PVInstance

Propriétés

Méthodes

BindToMessage

Écrire en parallèle

Cette méthode est utilisée pour lier un rappel Luau à un message avec le sujet spécifié.Lorsqu'un message est envoyé (en utilisant SendMessage() ) au sujet spécifié, l'appel de rappel fourni sera effectué dans un contexte d'exécution série ..

Plusieurs appels de rappel Luau peuvent être liés à un seul acteur et même à un seul sujet de message.

Remarque : Seuls les scripts qui sont des descendants d'un acteur peuvent se lier à ses messages.


local actor = script:GetActor()
-- Imprimer un message lorsqu'un message de salutation est envoyé à l'acteur
-- ce script est un descendant de.
local connection = actor:BindToMessage("Greeting", function(message)
print("Received Greeting Message:", message)
end)

Paramètres

topic: string

Le sujet utilisé pour identifier le type de message.

Valeur par défaut : ""
function: function
Valeur par défaut : ""

Retours

Cet objet de connexion peut être utilisé pour déconnecter le rappel Luau de la réception de messages.

BindToMessageParallel

Écrire en parallèle

Cette méthode est utilisée pour lier un rappel Luau à un message avec le sujet spécifié.Lorsqu'un message est envoyé (en utilisant SendMessage() ) au sujet spécifié, l'appel de rappel fourni sera effectué dans un contexte d'exécution parallèle ..

Plusieurs appels de rappel Luau peuvent être liés à un seul acteur et même à un seul sujet de message.

Remarque : Seuls les scripts qui sont des descendants d'un acteur peuvent se lier à ses messages.


local actor = script:GetActor()
-- Imprimer un message lorsqu'un message de salutation est envoyé à l'acteur
-- ce script est un descendant de.
local connection = actor:BindToMessageParallel("Greeting", function(message)
print("Received Greeting Message:", message)
end)

Paramètres

topic: string

Le sujet utilisé pour identifier le type de message.

Valeur par défaut : ""
function: function
Valeur par défaut : ""

Retours

Cet objet de connexion peut être utilisé pour déconnecter le rappel Luau de la réception de messages.

SendMessage

()
Écrire en parallèle

Envoie un message à un acteur. Les messages sont envoyés de manière asynchrone, de sorte que l'expéditeur ne bloquera pas ou ne se rendra pas lors de l'appel de la méthode SendMessage().

Puisque un seul acteur peut recevoir différents types de messages, un paramètre topic est utilisé pour distinguer différents types de messages.

Voir BindToMessage() pour les détails sur la réception d'un message envoyé en utilisant SendMessage() .


-- Présupposez que `actor` est une variable locale se référant à une instance d'acteur
actor:SendMessage("Greeting", "Hello World")

Paramètres

topic: string

Le sujet utilisé pour identifier le message envoyé.

Valeur par défaut : ""
message: Tuple

Le contenu du message à envoyer à l'acteur.

Valeur par défaut : ""

Retours

()

Évènements