Actor

非推奨を表示

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

Class.Actor は、task.desynchronize() を使用して、自分のスレッドに安全に分割できるコードのコンテナです。スクリプトのインスタンスも含まれている必要があります。

スクリプトのパフォーマンスを最適化するために複数のアクターを使用する方法について詳しくは、「パラレル Luau」を参照してください。

概要

プロパティ

Model から継承した プロパティ
  • インスタンスストリーミングを有効にしたエクスペリエンスの詳細レベルを設定します。

  • インスタンスストリーミングが有効になっているときに Models のモデルストリーミング動作を制御します。

  • 並列読み取り

    Class.Model または nil が明示的に設定する定されていない場合のメイン部分。

  • 複製されていません
    スクリプト作成できません
    並列読み取り

    モデルのピボットの周りにモデルをスケールするための編集者専用プロパティ。このプロパティを設定すると、スケールが Model/ScaleTo が呼び出されたように移動します。

  • 複製されていません
    並列読み取り

    Class.Model のピボットが に設定されている場所を決定します。

PVInstance から継承した プロパティ
  • 複製されていません
    スクリプト作成できません
    並列読み取り
  • 複製されていません
    スクリプト作成できません
    並列読み取り

方法

Model から継承した 方法
  • AddPersistentPlayer(playerInstance : Player):void

    このモデルを特定のプレイヤーのために持続化するように設定します。 Model.ModelStreamingMode は、 PersistentPerPlayer に設定されなければ、動作が追加された結果により変更されることはありません。

  • モデルのすべてのパーツが含まれているボリュームの説明を返します。

  • Class.BasePart|BaseParts が含まれる最小限のバウンドボックスのサイズを返します。ModelModel.PrimaryPart が設定されている場合は、1>Class.BasePart|BaseParts1> が返されます。

  • このモデルオブジェクトが持続する Player すべてのオブジェクトを返します。このメソッドを Script から呼び出すか、LocalScript から呼び出すかによって動作は変わります。

  • モデルのキャノニカルスケールを返します。モデルの新規作成には、デフォルトで 1 が返されますが、Model/ScaleTo でスケールされると変更されます。

  • MoveTo(position : Vector3):void

    Class.Model.PrimaryPart|PrimaryPart を指定された位置に移動します。Class.Model.PrimaryPart が指定されていない場合は、モデルのルートパーツが使用されます。

  • RemovePersistentPlayer(playerInstance : Player):void

    このモデルは特定のプレイヤーのために再び持続しなくなります。 Model.ModelStreamingMode は、 PersistentPerPlayer に設定されて、結果として動作を変更するために変更された場合には持続しなくなります。

  • ScaleTo(newScaleFactor : number):void

    スケールファクターを設定し、すべての子孫インスタンスのサイズと場所を調整して、スケールファクターが 1 の場合、インスタンスのオリジナルサイズと場所に対するスケールファクターが相対的に変更されます。

  • TranslateBy(delta : Vector3):void

    Class.Model を Datatype.Vector3 のオフセットを保持しながら シフトすると、モデルのオリエンテーションを保持します。如果 他の Class.BasePart または Class.Terrain が新しい位置に既に存在する場合は、1> Class.Model は1>

PVInstance から継承した 方法
  • 並列書き込み

    Class.PVInstance のピボットを取得します。

  • PivotTo(targetCFrame : CFrame):void

    Class.PVInstance とそのすべての子孫 PVInstances は、ピボットが指定の CFrame に移動します。

プロパティ

方法

BindToMessage

並列書き込み

このメソッドは、Luau コールバックを指定されたトピックのメッセージにバインドするために使用されます。メッセージが送信されると、指定されたトピックのコールバックを使用して、SendMessage()実行コンテキストで呼び出されます。

複数の Luau コールバックは、1つのアクターにバインドされ、単一のメッセージトピックにさえバインドされることがあります。

注:アクターの子孫であるスクリプトのみがメッセージにバインドできます。


local actor = script:GetActor()
-- アクターに挨拶メッセージが送信されると、メッセージを印刷します
-- このスクリプトはの子です。
local connection = actor:BindToMessage("Greeting", function(message)
print("Received Greeting Message:", message)
end)

パラメータ

topic: string

メッセージの種類を識別するために使用されるトピック。

function: function

戻り値

この接続オブジェクトは、Luau コールバックのメッセージを受信するために使用できます。

BindToMessageParallel

並列書き込み

このメソッドは、Luau コールバックを指定されたトピックのメッセージにバインドするために使用されます。メッセージが送信されると、指定されたトピックのコールバックを使用する SendMessage() が並列実行コンテキストで呼び出されます。

複数の Luau コールバックは、1つのアクターにバインドされ、単一のメッセージトピックにさえバインドされることがあります。

注:アクターの子孫であるスクリプトのみがメッセージにバインドできます。


local actor = script:GetActor()
-- アクターに挨拶メッセージが送信されると、メッセージを印刷します
-- このスクリプトはの子です。
local connection = actor:BindToMessageParallel("Greeting", function(message)
print("Received Greeting Message:", message)
end)

パラメータ

topic: string

メッセージの種類を識別するために使用されるトピック。

function: function

戻り値

この接続オブジェクトは、Luau コールバックのメッセージを受信するために使用できます。

SendMessage

void
並列書き込み

アクターにメッセージを送信します。メッセージは非同期で送信されるため、送信者は SendMessage() メソッドを呼び出すとブロックまたはレイングを行わないです。

単一のアクターが異なる種類のメッセージを受信するため、topicパラメーターは、さまざまな種類のメッセージを区別するために使用されます。

Class.Actor:BindToMessage()|BindToMessage() を参照して、SendMessage() を使用して送信されたメッセージの詳細を見る。


-- `Actor` は Actor インスタンスを参照するローカル変数です
actor:SendMessage("Greeting", "Hello World")

パラメータ

topic: string

メッセージが送信されるトピックを識別するトピックです。

message: Tuple

アクターに送信するメッセージの内容。


戻り値

void

イベント