StudioService

非推奨を表示

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

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

StudioService は、Roblox Studio の構成へのアクセス、ユーザーのファイルシステムからファイルのインポート、その他の雑多な情報を許可します。一貫したユーザーエクスペリエンスを提供するために、Plugins に使用することが目的です。

  • ユーザーがオブジェクトを移動できるプラグインは、GridSizeRotateIncrement、および UseLocalSpace が役立つかもしれません。
  • ユーザーがファイルをインポートする必要のあるプラグインは、PromptImportFile または PromptImportFiles を使用して、File オブジェクトを受け取る必要があります。
  • インスタンスクラスのアイコンを表示するプラグインは、GetClassIcon を使用できます。
  • 現在編集中のスクリプトを気にするプラグイン (ある場合) は、ActiveScript からこれを読むことができます。

概要

プロパティ

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

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

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

    Studio のドラッグと移動ツールが各タイクでオブジェクトを移動する距離をスタッドで決定します。

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

    スタジオの回転ツールが各タイクで選択したオブジェクトを回転させる度を決定します。

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

    Studio が現在使用しているローカル、例えば en_US

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

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

方法

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

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

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

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

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

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

  • 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

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

グリッドサイズ は、スタジオのドラッグと移動ツールがオブジェクトを移動する距離をスタッドで決定します。これは、ユーザーのツールバーの モデル タブに設定されます。

RotateIncrement

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

回転増分 は、Studio の回転ツールが各タイクで選択オブジェクトを回転させる角度を度数で決定します。これは、ユーザーのツールバーの モデル タブに設定されます。

Secrets

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

ShowConstraintDetails

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

ShowWeldDetails

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

StudioLocaleId

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

StudioLocaleId プロパティには、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 は、Studio の移動/回転ツールがオブジェクトのローカルスペースまたはグローバルスペースを使用してパーツの CFrame を操作するかどうかを決めます。デフォルトでは、この設定は Ctrl L または L で切り替えられます。プラグインは、自分のオブジェクト移動ツールを実装した場合、このプロパティから読み込むことができます。

方法

GetClassIcon

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

GetClassIcon は、クラスの 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 ユーザーのユーザーIDを返し、そうでない場合は 0 を返します。


戻り値

コードサンプル

The example prints the currently logged in user's ID.

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 ファイルのみを選択できます。フィルターが提供されない場合、フィルターは nil であり、ユーザーが任意のファイルタイ入力を選択できます。

既定値: "{}"

戻り値

インポートされた File 。ファイルが選択されなかった場合、または選択されたファイルが大きすぎる場合 (ファイルサイズが 100MB 以上) には、nil が返されます。

PromptImportFiles

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

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

ファイルタイプフィルタが空のリストだった場合、エラーをスローします。

参照してください:

パラメータ

fileTypeFilter: Array

ユーザーが選択できるファイルタイプのリスト。ファイルタイプは期間なしで形式化されます。たとえば、「jpg」、「png」は、JPG と PNG ファイルのみを選択できます。フィルターが提供されない場合、フィルターは nil であり、ユーザーが任意のファイルタイ入力を選択できます。

既定値: "{}"

戻り値

Instances

インポートされた Files 。ファイルが選択されなかった場合は空のリストを返します。ユーザーが 1つまたは複数のファイルを選択した場合、ファイルサイズが 100MB 以上である場合、nil を返します。

イベント