Plugin

Un Plugin è un estensione che aggiunge ulteriori Proprietà o una funzionalità a Studio. Puoi trovare, installare e gestire i plugin creati dalla comunità dal Creatore Marketplace oppure puoi creare e pubblicare i tuoi plugin nella casella degli strumenti, al fine di utilizzarli nelle tue esperienze. Se scegli di pubblicare i tuoi plugin per il Creatore Marketplace, i creatori potranno utilizzarli all'interno dei loro processi di sviluppo. Puoi offrirli gratis o venderli per conto di Robux.

Creazione di nuovi plugin

Puoi creare i tuoi plugin per migliorare il tuo flusso di lavoro in Studio. Il seguente codice campione è un plugin chiamato EmptyScriptAdder che inserisce uno script vuoto come figlio di un oggetto o in ServerScriptService. Le seguenti sezioni spiegano come creare la maggior parte di questi plugin.

EmptyScriptAdder Plugin

local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
-- Create a new toolbar section titled "Custom Script Tools"
local toolbar = plugin:CreateToolbar("Custom Script Tools")
-- Add a toolbar button named "Create Empty Script"
local newScriptButton = toolbar:CreateButton("Create Empty Script", "Create an empty script", "rbxassetid://4458901886")
-- Make button clickable even if 3D viewport is hidden
newScriptButton.ClickableWhenViewportHidden = true
local function onNewScriptButtonClicked()
local selectedObjects = Selection:Get()
local parent = game:GetService("ServerScriptService")
if #selectedObjects > 0 then
parent = selectedObjects[1]
end
local newScript = Instance.new("Script")
newScript.Source = ""
newScript.Parent = parent
ChangeHistoryService:SetWaypoint("Added new empty script")
end
newScriptButton.Click:Connect(onNewScriptButtonClicked)

Salvare uno script di plugin

I plugin nascono dagli script. Per creare un plugin, crea un Script e salvalo come plugin utilizzando Explorer. Per esempio, per creare il plugin EmptyScriptAdder:

  1. Inserisci un nuovo Scriptall'interno del ServerStorage e rinominalo in EmptyScriptAdder.

  2. Copia e incolla il codice di Plugin EmptyScriptAdder all'interno del nuovo script.

  3. Fai clic destro su Explorer e seleziona Salva come plugin locale.

  4. Nella finestra Pop-up, fai clic su Salva per inserire lo Script di plugin nella tua cartella Plugin dell'installazione Studio locale. La finestra di output indica che il plugin è stato salvato con successo e che il plugin viene eseguito per la prima volta una volta effettuato il salvataggio.

Aggiungere un pulsante nella barra degli strumenti

Per aggiungere o inserire un pulsante per il tuo plugin nella scheda Plugin della barra degli strumenti Studio, utilizza i metodi PluginToolbar:CreateButton() e Plugin:CreateToolbar(). Nel codice per EmptyScriptAdder, la riga 5 crea una nuova sezione nella barra degli strumenti, chiamata Personalizza strumenti di Script, e la riga 8 crea un pulsante chiamato Crea script vuoti.

Codice di esecuzione su clic

Per fare in modo che il plugin esegua un codice quando un utente clicca sul pulsante della barra degli strumenti, connetti una funzione all'evento del pulsantePluginToolbarButton.Click. Nel codice per EmptyScriptAdder, la funzione di collegamento è onNewScriptButtonClicked.

Verifica della selezione dell'utente

Per modificare il comportamento di un plugin in base a ciò che l'utente ha selezionato, utilizza il servizio Selection. La funzione onNewScriptButtonClicked controlla se l'utente ha selezionato qualcosa e crea un nuovo script come figlio invece che crearlo all'ServerScriptServiceinterno. Se l'utente non ha selezionato nulla, crea il nuovo script in ServerScriptService.

Supportare l'annullamento e la ripetizione

Usa ChangeHistoryService per consentire agli utenti di annullare e rifare le modifiche apportate da un plugin all'interno di un'esperienza. Nel proprio script, impostare il plugin per chiamare ChangeHistoryService:TryBeginRecording() e memorizzare l'identificatore assegnato alla chiamata API prima di apportare modifiche. Quindi impostare il plugin per chiamare la classe . hangeHistoryService:FinishRecording() dopo aver apportato le modifiche, in modo da acquisire tutte le modifiche apportate durante la sessione di registrazione per annullare e ripetere.

Il seguente esempio di codice crea un plugin di esempio che può applicare il materiale al neon alle parti selezionate. Utilizza ChangeHistoryService per registrare e gestire le modifiche apportate dal plugin:

Example Material Plugin with Recordings for Undo and Redo

local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
-- Create an example plugin
local toolbar = plugin:CreateToolbar("Example Plugin")
local button = toolbar:CreateButton("Neon it up", "", "")
-- Collega una funzione al pulsante clic evento. lick:Connect(function()
parti locali = {}
for _, part in pairs(Selection:Get()) do
if part:IsA("BasePart") then
parts[#parts + 1] = part
end
end
if #parts < 1 then
-- Niente da fare.
return
end
-- Prova a iniziare una registrazione con un identificatore specifico
registrazione locale = ChangeHistoryService:TryBeginRecording("Imposta selezione al neon")
-- Controlla se la registrazione è stata avviata con successo
se non la registrazione poi
-- Gestisci l'errore qui. Questo indica che il tuo plug-in ha iniziato un precedente
-- registrando e non completando. Puoi avere solo una registrazione
-- per ogni plugin attivo alla volta.
return
end
-- Iterate attraverso le parti selezionate
per _, parte in paia (parti) fare parte. ateriale = Enum.Materiale. eon -- Imposta il materiale della parte su Neon
end
-- Termina la registrazione, committing the changes to the history
ChangeHistoryService:FinishRecording(recording, Enum. inishRecordingOperation.Commit)
fine)

Pubblicazione di plugin

Come per modelli, mesh, immagini e animazioni, puoi pubblicare i plugin in Roblox per renderli facili da riutilizzare dalla cassetta degli strumenti. Inoltre, puoi dare ad altri creatori la possibilità acquistare e/o installare i tuoi plugin pubblicandoli nel Creatore Marketplace con miniature aggiuntive che forniscono informazioni visive sulla funzionalità del plugin. L'importo minimo di plugin che puoi vendere è 100 Robux

Per gestire un plugin dopo averlo installato:

  1. Nella finestra Explorer, fai clic destro sullo script del plugin che vuoi pubblicare in Roblox. Viene visualizzato un menu contestuale.

  2. Seleziona Pubblica come Plugin. Si aprirà la finestra Configurazione di risorse.

  3. (Opzionale) Nell'angolo in alto a sinistra della finestra, fai clic sull'immagine per caricare un'immagine 512×512.

  4. Compila i seguenti campi:

    • Nome: un titolo per il tuo plugin.
    • Descrizione: Una descrizione che descrive ciò che un potenziale utente dovrebbe aspettarsi che il plugin faccia.
    • Creatore: il creatore che desideri attribuire come creatore del plugin. Se stai usando il Creatore di team, appariranno tutti i creatori, altrimenti "Me" sarà l'unica opzione.
  5. (Opzionale) Se l'ID o il telefono sono stati verificati, fai clic sul pulsante + per inserire fino a 5 miniature aggiuntive per il tuo plugin.

  6. (Opzionale) Abilita il comando Distribuire su Marketplace per pubblicare il tuo plugin sul Creatore Marketplace. Se hai già verificato il tuo conto, il campo Prezzo diventerà disponibile.

  7. (Opzionale) Nel campo Prezzo, inserisci la quantità Robux che vuoi addebitare per il plugin. Se mantieni il valore predefinito di 0, il plugin è gratuito per tutti i creatori.

  8. Fai clic sul pulsante Invia. Il tuo plugin è ora disponibile nella cassetta degli strumenti.

Gestione dei plugin

Per pubblicare un plugin:

  1. Fai clic sul pulsante Gestisci i plugin nella scheda Plugin per aprire la finestra di Gestione dei plugin.

  2. Per il plugin che desideri gestire, utilizza le seguenti opzioni.

    1. Aggiornamento - Aggiorna il plugin alla sua ultima versione pubblicata. Se questo pulsante non è visibile, il plugin è aggiornato.
    2. Attivo – per selezionare se il plugin è attivo o meno.
    3. Dettagli / Disinstalla – Apre un menu per visualizzare i dettagli del plugin o per disinstallarlo.