StudioService
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
StudioService fornisce l'accesso alla configurazione di Roblox Studio, consente l'importazione di file dal sistema file dell'utente e altre informazioni varie.È destinato ad essere utilizzato da Plugins per fornire un'esperienza utente coerente.
- Plugin che consentono all'utente di spostare oggetti possono trovare GridSize , RotateIncrement e UseLocalSpace utili.
- I plugin che richiedono all'utente di importare file dovrebbero utilizzare PromptImportFile o PromptImportFiles per ricevere oggetti File.
- I plugin che visualizzano le icone delle classi di istanza possono utilizzare GetClassIcon .
- I plugin che si preoccupano di quale script viene attualmente modificato (se qualcuno) possono leggere questo da ActiveScript .
Sommario
Proprietà
Riflette il LuaSourceContainer attualmente in corso di modifica (se qualcuno).
Determina la distanza in studs con cui gli strumenti di trascinamento e movimento di Studio spostano gli oggetti ad ogni tick.
Determina i gradi con cui lo strumento di rotazione di Studio farà ruotare gli oggetti selezionati ad ogni tick.
Il locale attualmente in uso da Studio, ad esempio en_US .
Determina se gli strumenti di Studio useranno lo spazio locale di un oggetto o lo Spazioglobale.
Metodi
Fornisce un dizionario che consente la visualizzazione di un'Iconadella finestra Explorer di una classe.
Restituisce l'ID utente di Studio se sono registrati, altrimenti restituisce 0.
Invita l'utente Studio attuale a selezionare un file da aggiungere come File .
Invita l'utente Studio attuale a selezionare i file da aggiungere come Files .
Proprietà
ActiveScript
ActiveScript si riferisce all'LuaSourceContainer attualmente in corso di modifica da parte dell'utente.Se l'utente non sta modificando uno script, questo sarà nil .Di seguito è un esempio che mostra come puoi utilizzare questa proprietà per misurare per quanto tempo uno script è stato attivo.
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
Dimensione griglia determina la distanza in studs con cui gli strumenti di trascinamento e movimento di Studio spostano gli oggetti ad ogni tick.Questo è impostato nella scheda Modello della barra degli strumenti dell'utente.
RotateIncrement
RotateIncrement determina l'angolo in gradi con cui lo strumento di rotazione di Studio farà ruotare gli oggetti selezionati ad ogni tick.Questo è impostato nella scheda Modello della barra degli strumenti dell'utente.
Secrets
ShowConstraintDetails
ShowWeldDetails
StudioLocaleId
La proprietà StudioLocaleId contiene il locale attualmente in uso da Studio, ad esempio en_US. È utile quando si localizza i plugin.
Di seguito è un esempio trivial di localizzazione basato sul valore restituito da questa funzione.
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 determina se gli strumenti di movimento/rotazione di Studio manipoleranno una parte di CFrame usando lo spazio locale di un oggetto o lo Spazioglobale.Per impostazione predefinita, questa impostazione viene attivata con CtrlL o ⌘L .I plugin possono leggere da questa proprietà se implementano i propri strumenti di movimento dell'oggetto.
Metodi
GetClassIcon
GetClassIcon fornisce un dizionario che consente la visualizzazione di un'Iconadella finestra Explorer di una classe, ad esempiochiamare questa funzione con "Part" restituisce i valori delle proprietà che visualizzano l'icona della parte dalla finestra Explorer.
Di seguito è una rappresentazione letterale di una tabella del valore restituito quando questa funzione viene chiamata con "Part" .
{Image = "rbxasset://textures/ClassImages.png",ImageRectOffset = Vector2.new(16, 0),ImageRectSize = Vector2.new(16, 16)}
La funzione di utilità seguente può rivelarsi utile quando si visualizzano le icone di 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 -- Imposta Proprietà
end
end
displayClassIcon(imageLabel, "Part")
Parametri
Restituzioni
GetUserId
Restituisce l'ID utente di Studio se sono registrati, altrimenti restituisce 0.
Restituzioni
Campioni di codice
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
Parametri
Restituzioni
PromptImportFile
Questa funzione richiede all'utente attuale di Studio di selezionare un file, che verrà quindi caricato come File .
Vedi anche:
- StudioService:PromptImportFiles() , la stessa funzione ma per il caricamento di una lista di file invece di un singolo file
Parametri
Un elenco di tipi di file che l'utente è autorizzato a Selezionare.I tipi di file sono formattati senza periodo.Ad esempio, "jpg", "png" consentirebbe di selezionare solo un file JPG o PNG.Se non viene fornito alcun filtro, il filtro è nil e consente all'utente di selezionare qualsiasi inserisci / scrividi file.
Restituzioni
PromptImportFiles
Questa funzione richiede all'utente attuale di Studio di selezionare uno o più file, che verranno quindi caricati come Files .
Lancia un'errore se il filtro fileType era una lista vuota.
Vedi anche:
- StudioService:PromptImportFile() , la stessa funzione ma per il caricamento di un singolo file invece di una lista di file
Parametri
Un elenco di tipi di file che l'utente è autorizzato a Selezionare.I tipi di file sono formattati senza periodo.Ad esempio, "jpg", "png" consentirebbe di selezionare solo file JPG e PNG.Se non viene fornito alcun filtro, il filtro è nil e consente all'utente di selezionare qualsiasi inserisci / scrividi file.
Restituzioni
L'importato Files .Restituisce un elenco vuoto se non sono stati selezionati file.Restituisce nil se l'utente ha selezionato uno o più file troppo grandi (FileSize maggiore di 100 megabyte).