Plugin

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Un plugin plugin è un'estensione che aggiunge funzionalità o funzionalità aggiuntive a Studio.Puoi installare plugin creati dalla comunità dal Creator Store, o puoi creare e pubblicare i tuoi propri nella Toolbox per usarli nelle tue esperienze.

Se scegli di distribuire anche i tuoi plugin al Creator Store, puoi offrirli gratuitamente o venderli per dollari degli Stati Uniti (il prezzo minimo è $4.99).Roblox offre una quota di entrate di mercato leader per queste vendite, poiché vengono dedotti solo le tasse e le spese di elaborazione dei pagamenti.Per ulteriori informazioni sulla vendita di plugin, vedi Vendere sul Creator Store.

Crea nuovi plugin

Puoi creare i tuoi plugin per migliorare il tuo flusso di lavoro in Studio.Il seguente esempio di codice è un plugin chiamato EmptyScriptAdder che inserisce uno script vuoto come figlio di un oggetto o in ServerScriptService .Le seguenti sezioni spiegano le parti principali per creare questo Collegare.

Per iniziare, dovresti abilitare Debug del plugin abilitato nella sezione Studio delle impostazioni di Studio.Questo esporrà il PluginDebugService in Studio che fornisce il debugging in tempo reale per il codice del tuo plugin e rende più facile ricaricare e salvare il tuo Collegare.

Plugin di EmptyScriptAdder

local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
-- Crea una nuova sezione della barra degli strumenti intitolata "Strumenti di script personalizzati"
local toolbar = plugin:CreateToolbar("Custom Script Tools")
-- Aggiungi un pulsante della barra degli strumenti chiamato "Crea script vuoto"
local newScriptButton = toolbar:CreateButton("Create Empty Script", "Create an empty script", "rbxassetid://14978048121")
-- Rendi il pulsante cliccabile anche se la vista 3D è nascosta
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)

Salva gli script del plugin

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

  1. Inserisci un nuovo Script dentro ServerStorage e rinominalo in EmptyScriptAdder .

  2. Copia e pasta il codice EmptyScriptAdder Plugin nel nuovo script.

  3. Nella finestra Explorer , fai clic con il pulsante destro del mouse sullo script e seleziona Salva come plugin locale .

  4. Nella finestra popup, fai clic su Salva per inserire lo script del plugin nella tua cartella locale Plugin dell'installazione di Studio.

  5. Il plugin dovrebbe apparire in PluginDebugService e iniziare a funzionare.

Ricarica e salva le modifiche

Con il tuo Plugin dentro PluginDebugService, puoi facilmente aggiornare il plugin facendo clic destro su di esso e quindi selezionando Salva e ricarica il plugin dal menu contestuale.Se vuoi semplicemente ricaricare il Collegare, ad esempio per passare attraverso una sezione di codice utilizzando un punto di interruzione senza salvare il Collegare, puoi alternativamente selezionare Ricarica plugin .

Aggiungi pulsanti della barra degli strumenti

Per aggiungere un pulsante per il tuo plugin alla scheda Plugins della barra degli strumenti di Studio, usa i metodi Plugin:CreateToolbar() e PluginToolbar:CreateButton().Nel codice per EmptyScriptAdder , la linea 5 crea una nuova sezione nella barra degli strumenti chiamata Strumenti di script personalizzati e la linea 8 crea un pulsante chiamato Crea script vuoto .

New plugin button added to toolbar in Studio

Esegui codice al clic

Per far eseguire il codice del plugin quando un utente fa clic sul pulsante della barra degli strumenti, connect a function to the button's PluginToolbarButton.Click event.Nel codice per EmptyScriptAdder , la funzione di connessione è onNewScriptButtonClicked().

Controlla la selezione dell'utente

Per modificare il comportamento di un Collegarein base a ciò che l'utente ha selezionato, usa il servizio Selection .La funzione onNewScriptButtonClicked() controlla se l'utente ha qualcosa selezionato e crea il nuovo script come suo figlio invece di dentro ServerScriptService .Se l'utente non ha nulla selezionato, crea il nuovo script in ServerScriptService .

Supporto undo e redo

Usa ChangeHistoryService per consentire agli utenti di annullare e ripetere le modifiche apportate da un plugin all'interno di un'esperienza.Nel tuo script, imposta il plugin per chiamare ChangeHistoryService:TryBeginRecording() e memorizza l'identificatore assegnato alla chiamata API prima di apportare modifiche.Quindi imposta il plugin per chiamare ChangeHistoryService:FinishRecording() dopo aver apportato modifiche, in modo che catturi qualsiasi modifica effettuata 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.Usa ChangeHistoryService per registrare e gestire i cambiamenti apportati dal Collegare:

Plugin materiale di esempio con registrazioni per annullare e ripetere

local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
-- Crea un Collegaredi esempio
local toolbar = plugin:CreateToolbar("Example Plugin")
local button = toolbar:CreateButton("Neon it up", "", "")
-- Collega una funzione all'evento di clic
button.Click:Connect(function()
local parts = {}
for _, part in 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
local recording = ChangeHistoryService:TryBeginRecording("Set selection to neon")
-- Verifica se la registrazione è stata avviata con successo
if not recording then
-- Maneggiare l'errore qui. Ciò indica che il tuo plugin ha iniziato un precedente
-- registrazione e non l'hai mai completata. Puoi avere solo una registrazione
-- per plugin attivo a un momento.
return
end
-- Iterare attraverso le parti selezionate
for _, part in parts do
part.Material = Enum.Material.Neon -- Imposta il materiale della parte a Neon
end
-- Termina la registrazione, confermando le modifiche alla storia
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)

Carica, distribuisci e monetizza i plugin

Come con modelli, mesh, immagini e animazioni, puoi distribuire plugin a Roblox per renderli facili da riutilizzare dalla Toolbox.Puoi scegliere di renderli pubblicamente disponibili a tutti gli altri creatori sul Creator Store, o distribuirli privatamente per il tuo uso.Se scegli di distribuire il tuo plugin pubblicamente, puoi impostare un prezzo al quale venderlo ad altri creatori.

Per distribuire un Collegare:

  1. Nella finestra Explorer , fai clic con il pulsante destro del mouse su uno script del plugin, quindi seleziona Pubblica come plugin dal menu contestuale.

  2. (Opzionale) Nell'angolo superiore sinistro della finestra di configurazione delle risorse, fai clic sull'immagine per caricare un'immagine 512×512.

  3. Compila i seguenti campi:

    • Nome : Un titolo per il tuo Collegare.
    • Descrizione : Una descrizione che descrive ciò che un potenziale utente dovrebbe aspettarsi che il plugin faccia.
    • Creatore : Il creatore che vorresti attribuire come creatore del Collegare.
  4. Fai clic sul pulsante Invia .Il tuo plugin è ora disponibile nel Inventario e Creazioni tab della Toolbox.

  5. Fai clic sul link alla dashboard di Creator per configurare la distribuzione.