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 die Importierung von Dateien aus dem Dateisystem des Benutzers und andere misc-Informationen. Es ist so beabsichtigt, von Plugins zu verwendet, um eine konsistente Erlebniszu bieten.
- Plugins, die es dem Benutzer ermöglichen, Objekte zu bewegen, finden GridSize , RotateIncrement und UseLocalSpace nützlich.
- Plugins, die Benutzern ermöglichen, Dateien zu importieren, sollten PromptImportFile oder PromptImportFiles verwenden, um File -Objekte zu erhalten.
- Plugins, die Instanz-Klassen-Symbole anzeigen, können GetClassIcon verwenden.
- Plugins, die daran interessiert sind, welches Skript gerade bearbeitet wird (wenn vorhanden), können dies von ActiveScript lesen.
Zusammenfassung
Eigenschaften
Reflektiert den LuaSourceContainer der derzeit bearbeitet wird (wenn vorhanden).
Bestimmt die Entfernung in Studs, mit der Studio-Zieh- und -Bewegungswerkzeuge Objekte jedes Tick verschieben.
Bestimmt die Grad, in denen Studio's Rotationswerkzeug ausgewählte Objekte jedes Tick drehen wird.
Die lokale Umgebung, die 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 es dem Anzeigen eines Class-Explorer-Symbols erlaubt.
Gibt die Benutzeroberfläche des Studio-Benutzers zurück, wenn er angemeldet ist, sonst gibt er 0 zurück.
Fordert den aktuellen Studio-Benutzer auf, eine Datei auszuwählen, um sie als File hinzuzufügen.
Fordert den aktuellen Studio-Benutzer auf, Dateien zu wählen, die als Files hinzugefügt werden sollen.
Eigenschaften
ActiveScript
ActiveScript bezieht sich auf das LuaSourceContainer , das der Benutzer derzeit bearbeitet. Wenn der Benutzer kein Skript, das. PL: die Skriptsbearbeitet, wird dies nil sein. Dies ist ein Beispiel, das zeigt, wie Sie diese Eigenschaft verwenden, um zu messen, wie lange ein Skript aktiv ist.
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 bestimmt die Entfernung in Studs, mit der Studio-Zieh- und -Bewegungs-Tools Objekte jedes Tick verschieben. Dies wird in der Benutzeroberfläche unter der Rastereinstellung-Registerkarte festgelegt.
RotateIncrement
RotateIncrement bestimmt den Winkel in Grad, in denen Studio's Rotationswerkzeug die ausgewählten Objekte jedes Tick drehen wird. Dies wird in der Benutzeroberfläche unter der Snap to Grid-Sektion unter der Snap to Grid -Sektion festgelegt.
Secrets
ShowConstraintDetails
ShowWeldDetails
StudioLocaleId
Die StudioLocalId Eigenschaft enthält die lokale Konfiguration, die der Studio derzeit verwendet, z. B. en_US. Es ist nützlich, wenn Sie Plugins lokalisieren.
Das folgt 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
Methoden
GetClassIcon
GetClassIcon bietet ein Wörterbuch, das die Anzeige eines Class-Explorer-Windows-Symbols erlaubt, z. B. wenn Sie diese Funktion mit "Part" aufrufen, werden Eigenschaftswerte zurückgegeben, die das Teil-Symbol aus dem Explorer-Fenster anzeigen.
Das Folgende ist eine liturgische Tabellevertretung des zurückgegebenen Wertes, wenn diese Funktion mit "Part" aufgerufen wird.
{Image = "rbxasset://textures/ClassImages.png",ImageRectOffset = Vector2.new(16, 0),ImageRectSize = Vector2.new(16, 16)}
Die folgende Utility-Funktion kann nützlich sein, wenn die 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 einstellen
end
end
displayClassIcon(imageLabel, "Part")
Parameter
Rückgaben
GetUserId
Gibt die Benutzeroberfläche des Studio-Benutzers zurück, wenn er angemeldet ist, sonst gibt er 0 zurück.
Rückgaben
Code-Beispiele
-- 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 bittet den aktuellen Studio-Benutzer, eine Datei auszuwählen, die dann als File geladen wird.
Siehe auch:
- StudioService:PromptImportFiles() , die gleiche Funktion, aber für das Laden einer Liste von Dateien statt eines einzigen Dateis
Parameter
Eine Liste von Dateityypen, die der Benutzer auswählen kann. Dateityypen werden in Form ohne einen Punkt formatiert. Zum Beispiel "jpg", "png" würden nur ein JPG oder PNG-Datei auswählen lassen. Wenn kein Filter angegeben wird, ist der Filter null und erlaubt dem Benutzer, einen eingebenauszuwählen.
Rückgaben
PromptImportFiles
Diese Funktion bittet den aktuellen Studio-Benutzer, eine oder mehrere Dateien auszuwählen, die dann als Files geladen werden.
Wirft einen Fehler ab, wenn der FileTypeFilter eine leere Liste war.
Siehe auch:
- StudioService:PromptImportFile() , die gleiche Funktion, aber für das Laden eines einzelnen Dateien statt einer Liste von Dateien
Parameter
Eine Liste von Dateityypen, die der Benutzer auswählen kann. Dateityypen werden in Zeichen ohne Trennstrich formatiert. Zum Beispiel "jpg", "png" würden nur JPG und PNG-Dateien auswählen. Wenn kein Filter angegeben wird, ist der Filter null und erlaubt dem Benutzer, einen eingebenauszuwählen.
Rückgaben
Die importierte Files . Wird mit einer leeren Liste zurückgegeben, wenn keine Dateien ausgewählt wurden. Wird null zurückgegeben, wenn der Benutzer eine oder mehrere Dateien ausgewählt hat, die zu groß sind (DateSize größer als 100 Megabyte).