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 permettono 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, far apparire nemici, controllare il comportamento degli NPC e molto, molto altro.

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 tipi 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.

Fondamenti di Luau

Luau è tipizzato in modo graduale, quindi non è necessario specificare un tipo quando si crea una variabile. Puoi utilizzare type() per controllare il tipo di un 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 il nulla, che viene valutato come false nelle istruzioni condizionali:

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

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

--[[
Spegne immediatamente il raggio cosmico della luna.
Dovrebbe essere chiamato solo entro 15 minuti dalla mezzanotte ora standard di montagna
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 partire da uno piuttosto che da zero, quindi il primo elemento è [1]. Dichiarare array e dizionari con un singolo set di parentesi graffe:

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

Puoi iterare sulle tabelle utilizzando 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 il mouse su 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

Sentiti a tuo agio

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 le funzionalità di qualità della vita 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 variabile, verrai portato alla sua dichiarazione nel tuo codice (o nella sua documentazione online). Utilizzare Trova e Trova Tutto può aiutarti a navigare in progetti più grandi.
  • La finestra Output è lo strumento più basilare 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 tipi e posizioni degli script!")
  3. Nota come l'output non è diverso da quando hai eseguito il tuo primo script.

Per capire perché lo script non è stato 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.