StudioService
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
StudioService bietet Zugriff auf die Konfiguration von Roblox Studio, ermöglicht das Importieren von Dateien aus dem Dateisystem des Benutzers und andere allgemeine Informationen.Es soll von Plugins verwendet werden, um eine konsistente Erlebniszu bieten.
- Plugins, die es dem Benutzer ermöglichen, Objekte zu verschieben, finden möglicherweise GridSize, RotateIncrement und UseLocalSpace nützlich.
- Plugins, die den Benutzer verlangen, Dateien zu importieren, sollten PromptImportFile oder PromptImportFiles verwenden, um File Objekte zu erhalten.
- Plugins, die Symbole von Instanzklassen anzeigen, können GetClassIcon verwenden.
- Plugins, die sich darum kümmern, welches Skript derzeit bearbeitet wird (falls es welche gibt), können dies von ActiveScript lesen.
Zusammenfassung
Eigenschaften
Widerspiegelt die LuaSourceContainer
Bestimmt die Entfernung in Studs, mit der sich die Drag- und Move-Tools von Studio jede Sekunde Objekte bewegen.
Bestimmt die Grad, mit denen das Rotationswerkzeug von Studio jede Sekunde ausgewählte Objekte dreht.
Das lokale, das derzeit von Studio verwendet wird, z. B. en_US.
Bestimmt, ob Studio-Tools lokalen Speicher eines Objekts oder globalen Platzverwenden.
Methoden
Bietet ein Wörterbuch, das die Anzeige eines Symboleiner Klasse ermöglicht.
Gibt die ID des Benutzers des Studios zurück, wenn er sich angemeldet hat, sonst gibt er 0 zurück.
Fragt den aktuellen Studio-Benutzer, eine Datei auszuwählen, die als File hinzugefügt werden soll.
Fordert den aktuellen Studio-Benutzer auf, Dateien auszuwählen, die als Files hinzugefügt werden sollen.
Eigenschaften
ActiveScript
ActiveScript bezieht sich auf das LuaSourceContainer derzeit vom Benutzer bearbeitete.Wenn der Benutzer kein Skript, das. PL: die Skriptsbearbeitet, wird dies nil sein.Im folgenden Beispiel wird gezeigt, wie Sie diese Eigenschaft verwenden können, um zu messen, wie lange ein Skript aktiv war.
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 legt die Entfernung in Studs fest, mit der sich die Drag- und Move-Tools von Studio jede Sekunde Objekte bewegen.Dies wird in der Modell -Registerkarte der Toolbar des Benutzers eingestellt.
RotateIncrement
RotateIncrement legt den Winkel in Grad fest, um den sich die Rotationswerkzeug des Studios bei jedem Tick drehen wird, ausgewählte Objekte zu drehen.Dies wird in der Modell -Registerkarte der Toolbar des Benutzers eingestellt.
Secrets
ShowConstraintDetails
ShowWeldDetails
StudioLocaleId
Die Eigenschaft StudioLocaleId enthält das derzeit von Studio verwendete Lokal, z. B. en_US. Es ist nützlich, wenn Plugins lokalisiert werden.
Im Folgenden ist ein triviales Beispiel für die Lokalisierung basierend auf dem Wert, der von dieser Funktion zurückgegeben wird.
local locale = game:GetService("StudioService").StudioLocaleIdif locale == "en_US" thenprint("Howdy, ya'll")elseif locale == "en_GB" thenprint("'Ello, gov'na")elseif locale:sub(1, 2) == "en" thenprint("Hello")elseif locale == "fr_FR" thenprint("Bonjour")end
UseLocalSpace
UseLocalSpace bestimmt, ob die Studio-Bewegungs-/Rotationswerkzeuge einen Teil CFrame mit dem lokalen Raum eines Objekts oder dem globalen Platzmanipulieren.Standardmäßig wird diese Einstellung mit CtrlL oder ⌘L umgeschaltet.Plugins können von dieser Eigenschaft lesen, wenn sie ihre eigenen Objektbewegungs-Tools implementieren.
Methoden
GetClassIcon
GetClassIcon bietet ein Wörterbuch, das die Anzeige eines Klassen-Explorer-Symbols ermöglicht, z. B.Das Aufrufen dieser Funktion mit "Teil" gibt Eigenschaftswerte zurück, die das Teilsymbol aus dem Explorer-Fenster anzeigen.
Im Folgenden ist eine buchstäbliche Tabellenrepräsentation des Werts, der zurückgegeben wird, wenn diese Funktion mit "Part" aufgerufen wird.
{Image = "rbxasset://textures/ClassImages.png",ImageRectOffset = Vector2.new(16, 0),ImageRectSize = Vector2.new(16, 16)}
Die Funktion unten kann nützlich sein, wenn Klassen-Symbole angezeigt werden:
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 -- Eigenschaft festlegen
end
end
displayClassIcon(imageLabel, "Part")
Parameter
Rückgaben
GetUserId
Gibt die ID des Benutzers des Studios zurück, wenn er sich angemeldet hat, sonst gibt er 0 zurück.
Rückgaben
Code-Beispiele
The example prints the currently logged in user's ID.
-- 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
Parameter
Rückgaben
PromptImportFile
Diese Funktion fordert den aktuellen Studio-Benutzer auf, eine Datei auszuwählen, die dann als File geladen wird.
Siehe auch:
- StudioService:PromptImportFiles() , die gleiche funktion, aber zum laden einer liste von dateien statt einer einzigen datei
Parameter
Eine Liste der Dateitypen, die der Benutzer auswählen darf.Dateitypen werden ohne Punkt formatiert.Zum Beispiel würde "jpg", "png" nur eine JPG- oder PNG-Datei auswählen lassen.Wenn kein Filter bereitgestellt wird, ist der Filter nil und ermöglicht es dem Benutzer, jeden eingebenauszuwählen.
Rückgaben
PromptImportFiles
Diese Funktion fordert den aktuellen Studio-Benutzer auf, eine oder mehrere Dateien auszuwählen, die dann als Files geladen werden.
Wirft einen Fehler, wenn der Dateitypfilter eine leere Liste war.
Siehe auch:
- StudioService:PromptImportFile() , die gleiche funktion, aber zum laden einer einzigen datei anstelle einer liste von dateien
Parameter
Eine Liste der Dateitypen, die der Benutzer auswählen darf.Dateitypen werden ohne Punkt formatiert.Zum Beispiel würde "jpg", "png" nur JPG- und PNG-Dateien auswählen lassen.Wenn kein Filter bereitgestellt wird, ist der Filter nil und ermöglicht es dem Benutzer, jeden eingebenauszuwählen.
Rückgaben
Die importierte Files .Gibt eine leere Liste zurück, wenn keine Dateien ausgewählt wurden.Gibt nil zurück, wenn der Benutzer eine oder mehrere Dateien ausgewählt hat, die zu groß waren (Dateigröße größer als 100 Megabyte).