Actor

非推奨を表示

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

Actor は、task.desynchronize() で安全に分割できるコードのコンテナです。また、スクリプトに使用されるインスタンスも含まれるべきです。

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

概要

プロパティ

Model から継承した プロパティ
  • プラグインのセキュリティ
    並列読み取り

    インスタンスストリーミングを有効にしたエクスペリエンスのモデルの詳細レベルを設定します。

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

  • 並列読み取り

    The primary part of the Model 、または nil が明示的に設定する定されていない場合

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

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

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

    どこに Modelしない を持つピボットが位置するかを決定します。Determines where the pivot of a > which does not have a set Model.PrimaryPart is located.

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

方法

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

    指定されたプレイヤーのために、このモデルを永続するように設定します。Model.ModelStreamingMode は、追加により変更されるため、 PersistentPerPlayer に設定する必要があります。

  • モデルのすべての部分を含むボリュームの説明を返します。

  • 返すのは、BaseParts すべてを含む最小のバインディングボックスのサイズ、そして Model に沿って設定されている場合、Model.PrimaryPart と一致します。

  • このモデルオブジェクトが持続するすべての Player オブジェクトを返します。動作は、このメソッドが Script または LocalScript から呼ばれるかどうかによって異なります。

  • モデルの正規スケールを返し、新しく作成されたモデルにはデフォルトで 1 が割り当てられ、Model/ScaleTo を介してスケールすると変更されます。

  • MoveTo(position : Vector3):()

    PrimaryPart を指定された位置に移動します。プライマリパーツが指定されていない場合、モデルのルートパーツが使用されます。

  • RemovePersistentPlayer(playerInstance : Player):()

    指定されたプレイヤーに対して、このモデルを永続しなくする。Model.ModelStreamingMode は、削除により変更されるため、 PersistentPerPlayer に設定する必要があります。

  • ScaleTo(newScaleFactor : number):()

    モデルのスケール因子を設定し、すべての子インスタンスのサイズと場所を調整して、スケール因子が 1 のときと比較して、そのスケール因子が初期のサイズと場所に関連しているようにします。

  • TranslateBy(delta : Vector3):()

    指定された オフセットによってシフトし、モデルの向きを保持します。新しい位置に別の BasePart または Terrain がすでに存在する場合、Model はそのオブジェクトをオーバーライドします。

PVInstance から継承した 方法

プロパティ

方法

BindToMessage

並列書き込み

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

複数の Luau コールバックは、単一のアクターまたは単一のメッセージトピックにバインドできます。

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


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

パラメータ

topic: string

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

既定値: ""
function: function
既定値: ""

戻り値

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

BindToMessageParallel

並列書き込み

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

複数の Luau コールバックは、単一のアクターまたは単一のメッセージトピックにバインドできます。

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


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

パラメータ

topic: string

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

既定値: ""
function: function
既定値: ""

戻り値

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

SendMessage

()
並列書き込み

アクターにメッセージを送信します。メッセージは非同期で送信されるため、送信者は SendMessage() メソッドを呼び出すときにブロックしたり、交換したりしません。

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

BindToMessage() で送信されたメッセージを受信する方法の詳細は、SendMessage() を参照してください。


-- `actor` がアクターインスタンスを参照するローカル変数であると仮定
actor:SendMessage("Greeting", "Hello World")

パラメータ

topic: string

送信されるメッセージを識別するために使用されるトピック行

既定値: ""
message: Tuple

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

既定値: ""

戻り値

()

イベント