Actor

Mostrar obsoleto

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Um Actor é um contêiner para código que pode ser dividido com segurança em seu próprio subprocesso usando task.desynchronize().Também deve conter as instâncias usadas por seus scripts.

Para aprender mais sobre o uso de múltiplos Atores para otimizar o performancedo script, veja Parallel Luau.

Resumo

Propriedades

Propriedades herdados de ModelPropriedades herdados de PVInstance

Métodos

Métodos herdados de Model
  • AddPersistentPlayer(playerInstance : Player):()

    Define esse modelo para ser persistente para o jogador especificado. Model.ModelStreamingMode deve ser definido como PersistentePerPlayer para que o comportamento seja alterado como resultado da adição.

  • Retorna uma descrição de um volume que contém todas as partes de um Modelo.

  • Retorna o tamanho da caixa de contorno mais pequena que contém todo o BaseParts na Model, alinhado com o Model.PrimaryPart se for configurar.

  • Retorna todos os objetos Player que este objeto de modelo é persistente para.O comportamento varia dependendo de se este método é chamado de um Script ou de um LocalScript.

  • Retorna a escala canônica do modelo, que padrão é 1 para modelos recém-criados e mudará à medida que for escalado via Model/ScaleTo.

  • MoveTo(position : Vector3):()

    Mova o PrimaryPart para a posição dada. Se uma parte primária não tiver sido especificada, a parte raiz do modelo será usada.

  • RemovePersistentPlayer(playerInstance : Player):()

    Torna esse modelo não persistente mais para o jogador especificado.Model.ModelStreamingMode deve ser definido como PersistentePerPlayer para que o comportamento seja alterado como resultado da remoção.

  • ScaleTo(newScaleFactor : number):()

    Define o fator de escala do modelo, ajustando o tamanho e a localização de todas as Instâncias descendentes de modo que elas tenham esse fator de escala em relação aos seus tamanhos e locais iniciais quando o fator de escala era 1.

  • TranslateBy(delta : Vector3):()

    Muda um Model por o deslocamento dado Vector3, preservando a orientação do modelo.Se outro BasePart ou Terrain já existir na nova posição, então o Model vai sobrepor o Objetodito.

Métodos herdados de PVInstance

Propriedades

Métodos

BindToMessage

Escrever Parallel

Este método é usado para vincular um retorno de chamada Luau a uma mensagem com o tópico especificado.Quando uma mensagem é enviada (usando SendMessage() ) para o tópico especificado, o retorno de chamada fornecido será chamado em um contexto de execução serial .

Vários retornos de chamada Luau podem ser vinculados a um único ator e até mesmo a um único tópico de mensagem.

Nota: Somente os scripts que são descendentes de um Actor podem se vincular às suas mensagens.


local actor = script:GetActor()
-- Imprimir uma mensagem quando uma mensagem de saudação for enviada ao Actor
-- este script é um descendente de.
local connection = actor:BindToMessage("Greeting", function(message)
print("Received Greeting Message:", message)
end)

Parâmetros

topic: string

O tópico usado para identificar o tipo de mensagem.

Valor Padrão: ""
function: function
Valor Padrão: ""

Devolução

Esse objeto de conexão pode ser usado para desconectar o retorno de chamada Luau de receber mensagens.

BindToMessageParallel

Escrever Parallel

Este método é usado para vincular um retorno de chamada Luau a uma mensagem com o tópico especificado.Quando uma mensagem é enviada (usando SendMessage() ) para o tópico especificado, o retorno de chamada fornecido será chamado em um contexto de execução paralela ..

Vários retornos de chamada Luau podem ser vinculados a um único ator e até mesmo a um único tópico de mensagem.

Nota: Somente os scripts que são descendentes de um Actor podem se vincular às suas mensagens.


local actor = script:GetActor()
-- Imprimir uma mensagem quando uma mensagem de saudação for enviada ao Actor
-- este script é um descendente de.
local connection = actor:BindToMessageParallel("Greeting", function(message)
print("Received Greeting Message:", message)
end)

Parâmetros

topic: string

O tópico usado para identificar o tipo de mensagem.

Valor Padrão: ""
function: function
Valor Padrão: ""

Devolução

Esse objeto de conexão pode ser usado para desconectar o retorno de chamada Luau de receber mensagens.

SendMessage

()
Escrever Parallel

Envia uma mensagem para um Actor. As mensagens são enviadas de forma assíncrona, então o remetente não bloqueará ou concederá quando chamar o método SendMessage().

Como um único Actor pode receber diferentes tipos de mensagens, um parâmetro topic é usado para distinguir entre vários tipos de mensagens.

Veja BindToMessage() para detalhes sobre receber uma mensagem enviada usando SendMessage().


-- Suponha que `actor` seja uma variável local que se refere a uma instância de Actor
actor:SendMessage("Greeting", "Hello World")

Parâmetros

topic: string

O tópico usado para identificar a mensagem a ser sentença / frase

Valor Padrão: ""
message: Tuple

O conteúdo da mensagem a ser enviada ao Actor.

Valor Padrão: ""

Devolução

()

Eventos