StudioService
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
StudioService fournit un accès à la configuration de Roblox Studio, permettant l'importation de fichiers du système de fichiers de l'utilisateur et d'autres informations. Il est destiné à être utilisé par Plugins pour fournir une expérience d'utilisateur cohérente.
- Les plugins qui permettent à l'utilisateur de déplacer des objets peuvent trouver GridSize , RotateIncrement et UseLocalSpace utiles.
- Les plugins qui nécessitent que l'utilisateur importe des fichiers doivent utiliser PromptImportFile ou PromptImportFiles pour recevoir File d'objets.
- Les plugins qui affichent les icônes des classes d'instance peuvent utiliser GetClassIcon .
- Les plugins qui se soucient de savoir quel script est actuellement en cours de modification (si any) peuvent lire ceci à partir de ActiveScript.
Résumé
Propriétés
Renvoie le LuaSourceContainer actuellement en cours de modification (si any).
Détermine la distance en studs par laquelle les outils de déplacement et de détirement de Studio déplacent les objets à chaque clic.
Détermine les degrés dans lesquels Studio's outil de rotation sélectionnera les objets chaque tick.
La localisation actuellement utilisée par Studio, par exemple. en_US.
Détermine si les outils Studio utiliseront de l'espace local d'un objet ou de l'espace global.
Méthodes
Fournit un dictionnaire qui permet l'affichage d'une icône de fenêtre Explorateur de classe.
Renvoie l'identifiant de l'utilisateur Studio s'il est connecté, sinon renvoie 0.
Invite l'utilisateur actuel de Studio à sélectionner un fichier à ajouter en tant que File .
Invite l'utilisateur actuel de Studio à sélectionner les fichiers à ajouter en tant que Files .
Propriétés
ActiveScript
ActiveScript fait référence au LuaSourceContainer actuellement édité par l'utilisateur. Si l'utilisateur n'édite pas de script, cela sera nil . Voici un exemple qui montre comment vous pouvez utiliser cette propriété pour mesurer pendant combien de temps un script a été actif.
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 détermine la distance en studs par laquelle les outils de déplacement et de déplacement de Studio déplacent les objets à chaque clic. Ceci est réglé dans l'onglet Modèle de l'utilisateur sous la section Accrocher à la grille de la section.
RotateIncrement
Incrément de Rotation détermine l'angle en degrés dans lequel l'outil de rotation de Studio fera pivoter les objets sélectionnés chaque tick. Cela est défini dans l'onglet Modèle de l'utilisateur sous la section Ajuster à la grille .
Secrets
ShowConstraintDetails
ShowWeldDetails
StudioLocaleId
La propriété StudioLocalId contient la langue actuellement utilisée par Studio, par exemple, en_US. C'est utile lorsque vous localisez des plugins.
Ce qui suit est un exemple trivial de localisation basé sur la valeur renvoyée par cette fonction.
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
Méthodes
GetClassIcon
GetClassIcon fournit un dictionnaire qui permet l'affichage d'un icône d'explorateur de classe, par exemple, en appelant cette fonction avec «Part» renvoie les valeurs de propriété qui affichent l'icône d'explorateur de la fenêtre Explorer.
Ce qui suit est une représentation de table littérale de la valeur renvoyée lorsque cette fonction est appelée avec "Part" .
{Image = "rbxasset://textures/ClassImages.png",ImageRectOffset = Vector2.new(16, 0),ImageRectSize = Vector2.new(16, 16)}
La fonction utilitaire ci-dessous peut être utile lors de l'affichage des icônes de classe :
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 -- Définir la propriété
end
end
displayClassIcon(imageLabel, "Part")
Paramètres
Retours
GetUserId
Renvoie l'identifiant de l'utilisateur Studio s'il est connecté, sinon renvoie 0.
Retours
Échantillons de code
-- 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
Paramètres
Retours
PromptImportFile
Cette fonction demande à l'utilisateur actuel de Studio de sélectionner un fichier, qui sera ensuite chargé en tant que File .
Voir aussi :
- StudioService:PromptImportFiles() , la même fonction mais pour charger une liste de fichiers au lieu d'un seul fichier
Paramètres
Une liste de types de fichiers que l'utilisateur peut selectionner. Les types de fichiers sont formatés sans virgule. Par exemple, «jpg», «png» ne permettraient que le fichier JPG ou PNG à être sélectionné. Si aucun filtre n'est fourni, le filtre est nul et permet à l'utilisateur de sélectionner n'importe quel type de fichier.
Retours
PromptImportFiles
Cette fonction demande au utilisateur actuel de Studio de sélectionner un ou plusieurs fichiers, ce qui sera ensuite chargé comme Files .
Lance une erreur si le filtre de type de fichier était une liste vide.
Voir aussi :
- StudioService:PromptImportFile() , la même fonction mais pour charger un seul fichier au lieu d'un ensemble de fichiers
Paramètres
Une liste de types de fichiers que l'utilisateur est autorisé à selectionner. Les types de fichiers sont formatés sans virgule. Par exemple, «jpg», «png» ne permettraient que les fichiers JPG et PNG à être sélectionnés. Si aucun filtre n'est fourni, le filtre est nul et permet à l'utilisateur de sélectionner n'importe quel type de fichier.
Retours
Le fichier Files importé. Renvoie une liste vide si aucun fichier n'a été sélectionné. Renvoie zéro si l'utilisateur a sélectionné un ou plusieurs fichiers trop grands (FileSize supérieur à 100 mégabytes).