Los scripts son archivos de texto plano que te permiten agregar comportamiento dinámico y personalizado a tus experiencias.Puedes usar scripts para activar eventos en el juego, responder a la entrada del jugador, guardar datos del jugador, crear tablas de clasificación, generar enemigos, controlar el comportamiento de los NPC y mucho, mucho más.
Luau
Los scripts de Roblox usan el lenguaje de programación Luau, que se deriva de Lua 5.1.
- En comparación con Lua 5.1, Luau agrega mejoras de rendimiento y muchas características útiles, incluidos un sistema de tipificación opcional, la interpolación de cadenas y una iteración generalizada para tablas.
- Todo el código válido de Lua 5.1 es válido código Luau, pero lo contrario no es cierto.
La mayoría de los libros y recursos en línea para Lua siguen siendo ampliamente aplicables a Luau.Para un resumen detallado de las diferencias, vea Compatibilidad en la documentación de Luau.Para la sintaxis del lenguaje, vea la referencia de Luau.
Luau básicos
Luau se escribe gradualmente, por lo que no necesitas especificar un tipo cuando creas una variable. Puedes usar type() para verificar el introducirobjeto:
logMessage = "User has more than 10 items!"print(logMessage) --> ¡El usuario tiene más de 10 artículos!print(type(logMessage)) --> string
Luau tiene alcances globales y locales , pero casi siempre es mejor declarar variables y funciones localmente con la palabra clave :
local logMessage = "User has more than 10 items!"
local function printMessage()
print(logMessage)
end
printMessage() --> User has more than 10 items!
Luau usa nil para representar la inexistencia o la nada, que se evalúa como false en declaraciones condicionales:
local messageToUserprint(messageToUser) --> ceroprint(type(message)) --> ceroif messageToUser then-- la declaración se evalúa como falsaend
Como quizás haya notado, -- comienza un hacer un comentariode una línea. --[[]] crea un hacer un comentariode bloque:
--[[
Shuts off the cosmic moon ray immediately.
Should only be called within 15 minutes of midnight Mountain Standard
Time to avoid damage to the cosmic moon ray.
]]
local function stopCosmicMoonRay()
-- añade esto más tarde, podría ser importante
end
Tablas son el término genérico para arrays y diccionarios.Los arrays son uno-basados en lugar de cero-basados, por lo que el primer elemento es [1] .Declaras arrays y diccionarios con un solo conjunto de curly braces:
local myArray = {"chips", "sparkling water", "salsa"}local myDictionary = {snack = "chips",drink = "sparkling water",dip = "salsa"}print(myArray[1]) --> chiposprint(myDictionary.dip) --> salsa
Puedes iterar sobre tablas usando for bucles con la función ipairs() para matices y la función pairs() para diccionarios, pero Luau también te permite omitir estas funciones para una sintaxis más limpia:
for index, value in ipairs(myArray) do -- Lua estándarprint(index, value)endfor key, value in pairs(myDictionary) do -- Lua estándarprint(key, value)endfor key, value in myDictionary do -- Luau iteración generalizadaprint(key, value)end
Tu primer script
En Roblox Studio, pasa el mouse sobre Servicio de script del servidor en la ventana Explorador y haz clic en + .
Seleccione Script para agregar un nuevo script.
Haga clic derecho en el script y renómbielo a HelloScript.
Haga doble clic en el script para abrirlo en el editor de scripts.
Añade el siguiente código al archivo:
local helloArray = {"h", "e", "l", "l", "o"}local worldArray = {"w", "o", "r", "l", "d"}for index, value in helloArray doprint(value)endprint(table.concat(worldArray))Asegúrese de que la ventana Salida esté abierta.
Haga clic en Jugar para ejecutar su experiencia.
Observe la Salida:
hel (x2)oworld
Hazte cómodo
Una gran parte de adaptarse a un nuevo entorno de desarrollo es configurarlo para satisfacer sus necesidades y comprender las herramientas a su disposición:
- La sección Editor de guiones de Configuración del estudio te permite ajustar funciones de calidad de vida como fuentes, colores, indentación, autocompletado, corchetes y consejos.También podría querer habilitar el modo oscuro en la sección Studio .
- Mantener Ctrl o Command y hacer clic en una función o variable te lleva a su declaración en tu base de código (o a su documentación en línea).El uso de Encontrar y encontrar todas puede ayudarlo a navegar por proyectos más grandes.
- La ventana Salida es la herramienta más básica para comprender el comportamiento de tus scripts.Usa el menú ⋯ para habilitar Mostrar contexto y Mostrar fuente .
- La ventana de análisis de scripts muestra un resumen de errores y advertencias, pero es posible que encuentres que su utilidad es limitada; el editor de scripts ya resalta estos problemas mientras introducir.
Para obtener más información sobre la configuración de Studio para la programación, vea Editor de guiones.Para obtener información sobre el uso de su editor de texto favorito y sistema de control de versiones, consulte Herramientas externas.
Tu segundo script
En Roblox Studio, agrega un script a ReplicatedStorage en la ventana Explorador y renombralo a OhNo .
Añade el siguiente código al archivo:
print("Hello script types and locations!")Haga clic en Jugar para ejecutar su experiencia.
Observe cómo la salida no es diferente a cuando ejecutó su primer script .
Para comprender por qué el script no se ejecutar, vea Tipos y ubicaciones de scripts.