Scripting

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

Gli script sono file di testo semplici che ti consentono di aggiungere comportamenti personalizzati e dinamici ai tuoi giochi. Puoi utilizzare gli script per attivare eventi di gioco, rispondere all'input dei giocatori, salvare i dati dei giocatori, creare classifiche, generare nemici, controllare il comportamento degli NPC e molto, molto di più.

Luau

Gli script di Roblox utilizzano il linguaggio di programmazione Luau, che è derivato da Lua 5.1.

  • Rispetto a Lua 5.1, Luau aggiunge miglioramenti delle prestazioni e molte funzionalità utili, tra cui un sistema di tipizzazione opzionale, interpolazione delle stringhe e iterazione generalizzata per le tabelle.
  • Tutto il codice Lua 5.1 valido è codice Luau valido, ma il contrario non è vero.

La maggior parte dei libri e delle risorse online per Lua sono ancora ampiamente applicabili a Luau. Per un riepilogo dettagliato delle differenze, consulta Compatibilità nella documentazione di Luau. Per la sintassi del linguaggio, consulta il riferimento Luau.

Nozioni di base su Luau

Luau è tipizzato in modo graduale, quindi non è necessario specificare un tipo quando crei una variabile. Puoi utilizzare type() per controllare il tipo di oggetto:


logMessage = "L'utente ha più di 10 oggetti!"
print(logMessage) --> L'utente ha più di 10 oggetti!
print(type(logMessage)) --> string

Luau ha ambiti globali e locali, ma è quasi sempre meglio dichiarare variabili e funzioni localmente con la parola chiave local:


local logMessage = "L'utente ha più di 10 oggetti!"
local function printMessage()
print(logMessage)
end
printMessage() --> L'utente ha più di 10 oggetti!

Luau utilizza nil per rappresentare l'inesistenza o la nullità, che viene valutata come false nelle istruzioni condizionali:


local messageToUser
print(messageToUser) --> nil
print(type(messageToUser)) --> nil
if messageToUser then
-- l'istruzione è valutata come falsa
end

Come potresti aver notato, -- inizia un commento su una sola riga. --[[]] crea un commento a blocchi:


--[[
Spegne immediatamente il raggio cosmico della luna.
Dovrebbe essere chiamato solo entro 15 minuti dalla mezzanotte del Mountain Standard
Time per evitare danni al raggio cosmico della luna.
]]
local function stopCosmicMoonRay()
-- aggiungi questo in seguito, potrebbe rivelarsi importante
end

Le tabelle sono il termine generico per array e dizionari. Gli array sono indicizzati a base uno piuttosto che a base zero, quindi il primo elemento è [1]. Dichiarare array e dizionari con un solo set di parentesi graffe:


local myArray = {"patatine", "acqua frizzante", "salsa"}
local myDictionary = {
spuntino = "patatine",
bevanda = "acqua frizzante",
salsa = "salsa"
}
print(myArray[1]) --> patatine
print(myDictionary.salsa) --> salsa

Puoi iterare sulle tabelle utilizzando i cicli for con la funzione ipairs() per gli array e la funzione pairs() per i dizionari, ma Luau ti consente anche di omettere queste funzioni per una sintassi più pulita:


for index, value in ipairs(myArray) do -- Lua standard
print(index, value)
end
for key, value in pairs(myDictionary) do -- Lua standard
print(key, value)
end
for key, value in myDictionary do -- iterazione generalizzata di Luau
print(key, value)
end

Il tuo primo script

  1. In Roblox Studio, passa sopra ServerScriptService nella finestra Explorer e fai clic su +.

  2. Seleziona Script per aggiungere un nuovo script.

  3. Fai clic con il tasto destro sullo script e rinominalo in HelloScript.

  4. Fai doppio clic sullo script per aprirlo nell'Editor di Script.

  5. Aggiungi il seguente codice al file:


    local helloArray = {"h", "e", "l", "l", "o"}
    local worldArray = {"w", "o", "r", "l", "d"}
    for index, value in helloArray do
    print(value)
    end
    print(table.concat(worldArray))
  6. Assicurati che la finestra Output sia aperta.

  7. Esegui il tuo gioco e annota l'output:


    h
    e
    l (x2)
    o
    world

Fai pratica

Una parte importante dell'adattamento a un nuovo ambiente di sviluppo è configurarlo per soddisfare le tue esigenze e comprendere gli strumenti a tua disposizione:

  • La sezione Editor di Script delle Impostazioni Studio ti consente di regolare funzionalità che migliorano l'esperienza, come font, colori, indentazione, completamento automatico, parentesi e suggerimenti. Potresti anche voler abilitare la modalità scura nella sezione Studio.
  • Tenendo premuto Ctrl o Command e facendo clic su una funzione o una variabile, verrai portato alla sua dichiarazione nel tuo codice (o alla sua documentazione online). Utilizzare Cerca e Trova Tutto può aiutarti a navigare in progetti più grandi.
  • La finestra Output è lo strumento più fondamentale per comprendere il comportamento dei tuoi script. Usa il menu per abilitare Mostra contesto e Mostra sorgente.
  • La finestra Analisi Script mostra un riepilogo di errori e avvisi, ma potresti trovare la sua utilità limitata; l'Editor di Script evidenzia già questi problemi mentre scrivi.
  • Le capacità di registrazione sono minime, senza un concetto di livelli di log come DEBUG o FATAL. Usa print() e warn().

Per ulteriori informazioni sulla configurazione di Studio per la programmazione, consulta Editor di Script.

Il tuo secondo script

  1. In Roblox Studio, aggiungi uno script a ReplicatedStorage nella finestra Explorer e rinominalo in OhNo.

  2. Aggiungi il seguente codice al file:


    print("Ciao script tipi e posizioni!")
  3. Nota come l'output non è diverso da quando hai eseguito il tuo primo script.

Per capire perché lo script non si è eseguito, consulta Tipi e posizioni degli script.

© 2026 Roblox Corporation. Roblox, il logo Roblox e Powering Imagination sono tra i nostri marchi registrati e non registrati negli Stati Uniti. e altri paesi.