Plugin

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

Un ugin è un'estensione che aggiunge funzionalità aggiuntive a Studio. Puoi installare plugin creati dalla comunità dal Creator Store, oppure puoi creare e 0>pubblicare0> i tuoi nella Toolbox per usarli in tutte le tue esperienze.

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

Creazione di 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. Ciò esporrà il PluginDebugService in Studio che fornisce il debug in tempo reale per il codice del tuo plugin e rende più facile ricaricare e salvare il tuo Collegare.

Plugin 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 clickabile 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)

Salvataggio di uno 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 EmptyScriptAdder Plugin codice 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.

Ricaricare e salvare le modifiche

Con il tuo Plugin all'interno di PluginDebugService , puoi facilmente aggiornare il plugin facendo clic con il pulsante destro su di esso e quindi selezionando Salva e ricarica il Collegare dal menu contestuale. Se vuoi semplicemente ricaricare il Collegare, ad esempio per passare attraverso una sezione di codice usando un punto di interruzione senza

Aggiungere un pulsante della barra degli strumenti

Per aggiungere un pulsante per il tuo plugin alla scheda Plugin della barra degli strumenti di Studio, usa i metodi Plugin:CreateToolbar() e PluginToolbar:CreateButton(). Nel codice per 1> EmptyScriptAdder1>, la linea 5 crea una nuova sezione nella bar

New plugin button added to toolbar in Studio

Esempi di codice per clic

Per fare in modo che il plugin esegua il codice 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() .

Controllo della 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() crea il nuovo script come suo figlio invece che all'interno di 2>Class.ServerScriptService2> . Se l'utente non ha selezionato nulla, crea il nuovo script in 5>Class.

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 mod

Il seguente codice di esempio crea un plugin di esempio che può applicare il materiale neon alle parti selezionate. Utilizza ChangeHistoryService per registrare e gestire le modifiche apportate 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", "", "")
-- Connetti 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 un'registrazione con un identificatore specifico
local recording = ChangeHistoryService:TryBeginRecording("Set selection to neon")
-- Controlla se il record è stato iniziato con successo
if not recording then
-- Handling error here. This indicates that your plugin began a previous
-- registrazione e non è mai stata completata. Potresti avere solo una registrazione
-- per plugin attivo al momento.
return
end
-- Iterate attraverso le parti selezionate
for _, part in parts do
part.Material = Enum.Material.Neon -- Imposta il materiale della parte su Neon
end
-- Termina la registrazione, inviando le modifiche alla cronologia
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)

Caricamento, Distribuzione e Monetizzazione dei Plug-in

Come con modelli, mesh, immagini, e 1>animazioni1>, puoi distribuire plugin su Roblox per renderli facili da riutilizzare dalla 4>Toolbox4>. Puoi scegliere di renderli pubblicamente disponibili a tutti gli altri creatori sul 7>Creat

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. (Facoltativo) In the upper-left corner of the asset configuration window, click the image to upload a 512×512 image.

  3. Compila i seguenti campi:

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

  5. Click the link to Creator Dashboard to Configurare la distribuzione .