Actor

Pokaż przestarzałe

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Class.Actor jest pojemnikiem na kod, który można bezpiecznie podzielić na własny wątek używając Library.task.desynchronize(). Powinien on również zawierać instancje używane przez jego skrypciny.

Aby dowiedzieć się więcej o wykorzystywaniu wielu Aktorów do optymalizacji wykonywanieskryptu, zobacz Luau równoległy .

Podsumowanie

Właściwości

Właściwości odziedziczeni z: Model
  • Ustawia poziom szczegółowości na modelu dla doświadczeń z włączonym przesyłaniem instancji.

  • Kontroluje zachowanie przesyłania modelu na Models , gdy jest włączone przesyłanie instancji.

  • Odczyt równoległy

    Główna część Model lub nil jeśli nie jest wyraźnie ustawiać.

  • Bez replikacji
    Brak możliwości dodawania do skryptu
    Odczyt równoległy

    Własność tylko dla edytora używana do skalowania modelu wokół jego osi. Ustawienie tej własności przeniesie skalę, tak jakby Model/ScaleTo zostało na nią wezwane.

  • Bez replikacji
    Odczyt równoległy

    Określa, gdzie pivot a Model , który nie ma nie ma zestawu Model.PrimaryPart jest położony.

Właściwości odziedziczeni z: PVInstance
  • Bez replikacji
    Brak możliwości dodawania do skryptu
    Odczyt równoległy
  • Bez replikacji
    Brak możliwości dodawania do skryptu
    Odczyt równoległy

Metody

Metody odziedziczeni z: Model
  • AddPersistentPlayer(playerInstance : Player):void

    Ustawia ten model na trwały dla określonego gracza. Model.ModelStreamingMode musi być ustawiony na PersistentPerPlayer , aby zachować zachowanie w wyniku dodania.

  • Opisuje poziom, który zawiera wszystkie części Modelu.

  • Zwraca rozmiar najmniejszego pola granicznego, które zawiera wszystkie BaseParts w Model, zgodnie z Model.PrimaryPart ustawionym, jeśli jest ustawiać.

  • Wróщает wszystkie obiekty Player, które ten obiekt modelu jest trwały. Zachowanie się zmienia w zależności od tego, czy ten metodowy jest wezwany z Script lub LocalScript.

  • Zwraca skalę kanoniczną modelu, która domyślnie wynosi 1 dla nowo utworzonych modeli i będzie się zmieniać w miarę skalowania poprzez Model/ScaleTo.

  • MoveTo(position : Vector3):void

    Przenieś PrimaryPart do określonej pozycji. Jeśli główna część nie została określona, zostanie użyta część korzeni modelu.

  • RemovePersistentPlayer(playerInstance : Player):void

    Nie czyni tego modelu już trwałym dla określonego gracza. Model.ModelStreamingMode musi być ustawiony na PersistentPerPlayer , aby zachować zachowanie w wyniku usunięcia.

  • ScaleTo(newScaleFactor : number):void

    Ustawia czynnik skalowania modelu, dostosowując rozmiar i lokalizację wszystkich potomnych Instancji, aby miały ten czynnik skalowania w stosunku do ich początkowych rozmiarów i lokalizacji, gdy czynnik skalowania był 1.

  • TranslateBy(delta : Vector3):void

    Przesunięty Model przez podany Vector3 OFFSET, zachowując orientację modelu. Jeśli kolejny BasePart lub 1> Class.Terrain1> już istnieje w nowej pozycji, to 4> Class.Model4> będzie się łączyć z powyższym obiektem.

Metody odziedziczeni z: PVInstance

Właściwości

Metody

BindToMessage

Zapis równoległy

Ten metod używa się do wiązania wezwania Luau z wiadomością z określonym tematem. Gdy wiadomość zostanie wysłana (używając SendMessage() ) do tematu określonego dzwonienie zostanie wykonane w kontekście wykonania serwialnego.

Wiele wielu wezwywań Luau może być związane z jednym aktorem i nawet z jednym tematem wiadomości.

Uwaga: Tylko skrypty, które są potomstwami aktora, mogą być związane z jego wiadomościami.


local actor = script:GetActor()
-- Wyślij wiadomość, gdy wiadomość powitania zostanie wysłana do Actor
-- ten skrypt jest potomstwem.
local connection = actor:BindToMessage("Greeting", function(message)
print("Received Greeting Message:", message)
end)

Parametry

topic: string

Typ używany do identyfikacji rodzaju wiadomość.

function: function

Zwroty

Ten obiekt połączenia może być używany do odłączenia Luau od otrzymywania wiadomości.

BindToMessageParallel

Zapis równoległy

Ten metod używa się do wiązania wezwania Luau z wiadomością z określonym tematem. Gdy wiadomość zostanie wysłana (używając SendMessage() ) do tematu określonego dzwonieniem dostarczonego wezwania zostanie wywołane w kontekście wykonania równoległego.

Wiele wielu wezwywań Luau może być związane z jednym aktorem i nawet z jednym tematem wiadomości.

Uwaga: Tylko skrypty, które są potomstwami aktora, mogą być związane z jego wiadomościami.


local actor = script:GetActor()
-- Wyślij wiadomość, gdy wiadomość powitania zostanie wysłana do Actor
-- ten skrypt jest potomstwem.
local connection = actor:BindToMessageParallel("Greeting", function(message)
print("Received Greeting Message:", message)
end)

Parametry

topic: string

Typ używany do identyfikacji rodzaju wiadomość.

function: function

Zwroty

Ten obiekt połączenia może być używany do odłączenia Luau od otrzymywania wiadomości.

SendMessage

void
Zapis równoległy

Wyświetla wiadomość dla aktora. Wiadomości są wysyłane asynchronicznie, więc nadawca nie zablokuje lub nie podda się, gdy wezwie metodę SendMessage().

Ponieważ jeden Aktor może otrzymywać różne rodzaje wiadomości, używany jest parametr topic , aby odróżnić różne rodzaje wiadomości.

Zobacz BindToMessage() dla szczegółów o otrzymywaniu wiadomości wysłanej za pomocą SendMessage() .


-- Załóż, że `aktor` jest lokalną zmienną odniesieniem do instancji instancja
actor:SendMessage("Greeting", "Hello World")

Parametry

topic: string

Temat używany do identyfikacji wiadomości zd.

message: Tuple

Treść wiadomości do wysłania na Actor.


Zwroty

void

Zdarzenia