En programación, variables son palabras sustitutas para diferentes tipos de información en tu experiencia, como nombres de jugadores, la puntuación de un equipo o palabras para un juego de historia. En este capítulo, vamos a explorar cómo abrir el script principal para la jugabilidad central de la experiencia y agregar código para hacer preguntas a los jugadores y usar sus respuestas en tu historia.
Abrir script
Los creadores de Roblox escriben su código dentro de scripts que le dicen a Studio cómo y cuándo agregar comportamiento personalizado a las experiencias, como activar diferentes tipos de eventos, guardar información del jugador o hacer aparecer enemigos. Los scripts de Roblox utilizan el lenguaje de programación Luau, del cual podrás aprender más adelante en la serie de Fundamentos de programación.
La plantilla del juego de historia utiliza un único script llamado StoryManager para controlar la jugabilidad central de la experiencia. Este script ya contiene algo de código que es necesario para mostrar la historia completa al jugador, pero agregarás más para mostrar tu historia interactiva.
Para abrir el script StoryManager:
En la ventana de Explorer, haz clic en la flecha junto a StarterGui para ver todo lo que contiene. Se muestra GameGui.
Haz clic en la flecha junto a GameGui para ver todo lo que contiene. El script StoryManager aparece en la parte superior junto con algunas otras cosas que no son importantes para esta lección.

Haz doble clic en el script StoryManager. Se muestra el código del script.
-- VARIABLES GLOBALESlocal storyMaker = require(script:WaitForChild("StoryMaker"))-- Código que controla el juegolocal playing = truewhile playing dostoryMaker:Reset()-- Código de la historia entre los guiones-- =============================================-- =============================================-- Añade la variable de historia entre los paréntesis a continuaciónstoryMaker:Write()-- ¿Jugar de nuevo?playing = storyMaker:PlayAgain()end
Observa cómo una gran parte del código utiliza el símbolo --, que se llama un comentario. Los programadores utilizan comentarios para dejar notas, y no cambian la forma en que se ejecuta el script. Para esta lección, vas a crear tu código entre los comentarios de líneas punteadas para que puedas enfocarte en crear tu historia interactiva en un solo lugar.
Hacer preguntas a los jugadores
Como buena práctica, los programadores crean variables con nombres que describen el tipo de información que almacenan. Por ejemplo, si estuvieras trabajando en un juego donde los jugadores se dividen en equipos:
- La variable team almacena información sobre el equipo del jugador.
- La variable teamColor almacena información sobre el color del equipo del jugador.
- La variable teamScore almacena información para la puntuación del equipo del jugador.
Las variables pueden almacenar todo tipo de información, como números pequeños, respuestas verdaderas o falsas, y cadenas de texto. Las variables de tipo cadena son especiales porque pueden almacenar oraciones completas, incluidas las preguntas que deseas hacer a tus jugadores.
Usando tus palabras sustitutas del capítulo anterior, puedes crear variables de tipo cadena con los mismos nombres de marcador de posición que describen qué tipo de palabra vas a pedir al jugador mientras juega tu juego de historia.
Para crear variables para tus preguntas a los jugadores:
Haz clic debajo de los comentarios de líneas punteadas y crea una variable local para la primera palabra que deseas que los jugadores reemplacen con su propia respuesta. Por ejemplo:
-- =============================================local name1-- =============================================Establece la variable utilizando el símbolo = con el método storyMaker:GetInput() proporcionado que muestra tus preguntas en el gran libro. Debes escribir este método exactamente como está, con su capitalización específica para que el código funcione. Por ejemplo:
-- =============================================local name1 = storyMaker:GetInput()-- =============================================Crea una cadena entre los paréntesis con la pregunta que deseas hacer a tus jugadores. ¡Recuerda, las cadenas siempre están entre comillas!
-- =============================================local name1 = storyMaker:GetInput("¿Cuál es tu nombre favorito?")-- =============================================
Usar sus respuestas
Ahora que tienes una pregunta que los jugadores pueden responder, es hora de codificar tu historia y agregar comportamiento que reemplace tu palabra de marcador de posición con su respuesta.
Para crear variables para tu historia y usar las respuestas de los jugadores:
Debajo de tu pregunta, crea una nueva variable llamada historia. ¡Recuerda, las variables están en minúsculas!
-- =============================================local name1 = storyMaker:GetInput("¿Cuál es tu nombre favorito?")local story-- =============================================Establece tu variable de tipo cadena a la primera oración de tu historia antes de tu primer marcador de posición, dejando un espacio después de la última palabra y antes de la comilla. Si tu palabra de marcador de posición resulta estar en medio de una oración, puedes agregar el resto de la oración en un capítulo posterior del tutorial.
-- =============================================local name1 = storyMaker:GetInput("¿Cuál es tu nombre favorito?")local story = ("En un árbol en una colina vive el gran mago ")-- =============================================Combina la primera cadena de la historia con la respuesta del jugador utilizando ... Combinar cosas se llama concatenación.
- En la misma línea que la variable story, agrega dos puntos.
- Agrega un espacio, luego escribe el nombre de la variable que almacena la primera respuesta del jugador.
-- =============================================local name1 = storyMaker:GetInput("¿Cuál es tu nombre favorito?")local story = ("En un árbol en una colina vive el gran mago " .. name1)-- =============================================Muestra esta primera parte de la historia a los jugadores llamando a la variable de historia desde el método storyMaker:Write() proporcionado que escribe tu historia en el gran libro.
-- =============================================local name1 = storyMaker:GetInput("¿Cuál es tu nombre favorito?")local story = ("En un árbol en una colina vive el gran mago " .. name1)-- =============================================-- =============================================storyMaker:Write(story)
¡Es un buen momento para detenerse momentáneamente, probar la experiencia en el siguiente capítulo y asegurarte de que la historia esté funcionando!