StudioService

非推奨を表示

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

作成できません
サービス
複製されていません

StudioService は、Roblox Studio の設定にアクセスできます。ユーザーのファイルシステムからファイルをインポートし、その他のミスケルaneous 情報を提供できます。Plugins は、一貫したユーザーエクスペリエンスを提供するために使用されます。

  • ユーザーがオブジェクトを移動できるプラグインは、GridSizeRotateIncrement および UseLocalSpace を見つける可能性があります。
  • ユーザーがファイルをインポートする必要があるプラグインは、PromptImportFile または PromptImportFiles を使用して、File オブジェクトを受信する必要があります。
  • インスタンスクラスのアイコンを表示するプラグインは GetClassIcon を使用できます。
  • 現在編集されているスクリプトを気に入っているプラグインは、ActiveScript からこれを読むことができます。

概要

プロパティ

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

    現在編集中の LuaSourceContainer を反映します (ある場合)。

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

    Studio のドラッグと移動ツールがオブジェクトをどのように移動するかを、スタッドで決める。

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

    Studio の回転ツールが選択したオブジェクトを回転する度合いを度数で表示します。

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

    現在 Studio によって使用されているローカル、例えば en_US

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

    Studio ツールがオブジェクトのローカルスペースを使用するか、グローバルスペースを使用するかを決定します。

方法

  • プラグインのセキュリティ

    クラスの Explorer ウィンドウアイコンを表示できる辞書を提供します。

  • プラグインのセキュリティ

    ユーザーがログインしている場合は、Studio ユーザーのユーザー名を返します。そうでない場合は、0 を返します。

  • GizmoRaycast(origin : Vector3,direction : Vector3,raycastParams : RaycastParams):RaycastResult?
    プラグインのセキュリティ
  • PromptImportFile(fileTypeFilter : Array):Instance
    イールド
    プラグインのセキュリティ

    現在の Studio ユーザーに、File として追加するファイルを 1 つ選択するよう求めます。

  • PromptImportFiles(fileTypeFilter : Array):Instances
    イールド
    プラグインのセキュリティ

    現在の Studio ユーザーに、ファイルを追加するために Files を選択するように促します。

プロパティ

ActiveScript

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

ActiveScript は、ユーザーが編集中の LuaSourceContainer を参照しています。ユーザーがスクリプトを編集していない場合、これは nil になります。以下は、このプロパティを使用してスクリプトの有効期限を測定する方法を示しています。


local StudioService = game:GetService("StudioService")
local startTime = os.time()
local activeScript
local function onActiveScriptChanged()
local newActiveScript = StudioService.ActiveScript
if activeScript and newActiveScript ~= activeScript then
local deltaTime = os.time() - startTime
print(("You edited %s for %d:%2.d"):format(activeScript.Name, deltaTime // 60, deltaTime % 60))
end
startTime = os.time()
activeScript = newActiveScript
end
StudioService:GetPropertyChangedSignal("ActiveScript"):Connect(onActiveScriptChanged)

DraggerSolveConstraints

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

GridSize

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

GridSize は、Studio のドラッグと移動ツールがオブジェクトをどのように毎回スタッドで移動するかを決定します。これは、ユーザーの モデル タブの スナップグリッド セクションの下にあるユーザーの 0>モデル0> タブの下に設定されています。

Transform snapping tools indicated in Model tab

RotateIncrement

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

RotateIncrement は、Studio の回転ツールが選択したオブジェクトを毎のチクに回転する角度を度数で決定します。これは、モデル タブの スナップ グリッド セクションのユーザーの 0>モデル0> タブの下にあります。

Transform snapping tools indicated in Model tab

Secrets

並列読み取り
Robloxのスクリプトセキュリティ

ShowConstraintDetails

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

ShowWeldDetails

読み取り専用
複製されていません
並列読み取り
Robloxのスクリプトセキュリティ

StudioLocaleId

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

StudioLocalId プロパティには、Studio が現在使用中のローカル言語が含まれています。たとえば、en_US です。これはプラグインのローカライズに便利です。

この関数によって返される値に基づくローカライズのトリビアル例は次のとおりです。


local locale = game:GetService("StudioService").StudioLocaleId
if locale == "en_US" then
print("Howdy, ya'll")
elseif locale == "en_GB" then
print("'Ello, gov'na")
elseif locale:sub(1, 2) == "en" then
print("Hello")
elseif locale == "fr_FR" then
print("Bonjour")
end

UseLocalSpace

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

UseLocalSpace は、オブジェクトのローカルスペースを使用して、スタジオの移動/回転ツールがオブジェクトの CFrame を操作するかどうかを判断します。デフォルトでは、この設定は

方法

GetClassIcon

プラグインのセキュリティ

ClassIcon を取得すると、クラスの Explorer ウィンドウアイコンを表示できる辞典が提供されます。たとえば、「Part」関数を呼び出すと、クラスのウィンドウアイコンが Explorer ウィンドウから表示されるプロパティ値が返されます。 以下は、この関数が "Part" で呼び出されたときに返される値の文字通りの表示です。


{
Image = "rbxasset://textures/ClassImages.png",
ImageRectOffset = Vector2.new(16, 0),
ImageRectSize = Vector2.new(16, 16)
}

クラスアイコンを表示すると、下のユーティリティ関数が便利になる場合があります:


local StudioService = game:GetService("StudioService")
local imageLabel = script.Parent
local function displayClassIcon(image, className)
for k, v in StudioService:GetClassIcon(className) do
image[k] = v -- プロパティを設定
end
end
displayClassIcon(imageLabel, "Part")

パラメータ

className: string

戻り値

GetUserId

プラグインのセキュリティ

ユーザーがログインしている場合は、Studio ユーザーのユーザー名を返します。そうでない場合は、0 を返します。


戻り値

コードサンプル

StudioService:GetUserId

-- Can only be used in a plugin
local StudioService = game:GetService("StudioService")
local Players = game:GetService("Players")
local loggedInUserId = StudioService:GetUserId()
local loggedInUserName = Players:GetNameFromUserIdAsync(loggedInUserId)
print("Hello,", loggedInUserName)

GizmoRaycast

プラグインのセキュリティ

パラメータ

origin: Vector3
direction: Vector3
raycastParams: RaycastParams
既定値: "RaycastParams{IgnoreWater=false, BruteForceAllSlow=false, RespectCanCollide=false, CollisionGroup=Default, FilterDescendantsInstances={}}"

戻り値

PromptImportFile

イールド
プラグインのセキュリティ

この関数は、現在の Studio ユーザーが 1つのファイルを選択するように促し、その後、File

参照してください:

パラメータ

fileTypeFilter: Array

ユーザーが選択できるファイルタイプのリスト。ファイルタイプは期間を使用せずに形式されています。たとえば、「jpg」、「png」は JPG または PNG ファイルのみを選択できます。フィルターが提供されていない場合、フィルターは空であり、ユーザーがどのファイルタイプを選択できるかを選択できます。

既定値: "{}"

戻り値

インポートされた File 。 ファイルが選択されていない場合、または選択されたファイルが大きすぎる場合 (FileSize が 100メガバイトを超える) は、 nil を返します。

PromptImportFiles

Instances
イールド
プラグインのセキュリティ

この機能は、現在の Studio ユーザーが 1つまたは複数のファイルを選択するように促し、その後 Files として読み込まれます。

ファイルタイプフィルターが空のリストであった場合、エラーが発生します。

参照してください:

パラメータ

fileTypeFilter: Array

ユーザーが選択できるファイルタイプのリスト。ファイルタイプは期間を使用せずに形式付けされています。たとえば、「jpg」、「png」は JPG と PNG のみを選択できます。フィルターが提供されていない場合、フィルターは空であり、ユーザーがどのファイルタイプを選択できるかを選入力できます。

既定値: "{}"

戻り値

Instances

インポートされた Files 。ファイルが選択されていない場合は、空のリストを返します。ユーザーが 1 つ以上のファイルを選択した場合は、FileSize が 100メガバイト以上のファイルを返します。

イベント