Muchas cosas en la ciencia de la computación o el desarrollo de juegos a menudo se repiten. Por instancia, una aplicación puede actualizar el contenido en un feed cada pocos segundos, o un juego puede recompensar a los jugadores con un premio cada día que estén conectados. Para lograr este comportamiento, los codificadores a menudo usan bucles .
En la ciencia de la computación, un loop es un patrón de codificación que repite una serie de instrucciones, a menudo hasta que se cumpla una condición específica. Para practicar esto, codificarás una parte que cambia de color indefinidamente. Las lecciones posteriores mostrarán cómo detener el looping.
Configurando la Parte y el Script
Usa cualquier proyecto de Roblox para este ejercicio. Cuando termines, esta parte se puede usar como una forma de decorar un entorno, ambiente.
Crea una nueva parte con un nombre descriptivo. Esta lección usa LoopingPart .
En Servicio de Script del Servidor , añade un nuevo script llamado LoopingScript.
En el script, elimina Hello World y escribe un comentario que declare el propósito de este script.
-- Changes the color of LoopingPart every few seconds
Usando variables para almacenar una parte
Las variables también pueden contener referencias a objetos además de las cadenas. Por ejemplo, cuando un script conoce la referencia a una parte, el script puede cambiarla.
En lugar de escribir workspace.NameOfYourPart una y otra vez, toda esa línea se puede almacenar dentro de una variable local. Las variables locales se crean escribiendo local y luego el nombre de la variable.
Por ejemplo: local nameOfVariable .
Bajo el hacer un comentario, cree una variable local escribiendo local loopingPart .
-- Cambia el color de LoopingPart cada pocos segundoslocal loopingPartEstablezca la variable a la parte que se repite al escribir = workspace.LoopingPart en la misma línea. Recuerda que el operador = establece el valor de una variable a lo que está a la derecha de ella.
-- Cambia el color de LoopingPart cada pocos segundoslocal loopingPart = workspace.LoopingPart
Mientras que Loops
Antes de crear el while loop para la parte que cambia de color, vale la pena explicar su sintaxis. Un while loop tiene tres componentes:
- La palabra clave while
- Una condición, siempre después de la palabra clave.
- Instrucciones, entre las palabras clave do y end.
En ciclos, las condiciones pueden ser una variedad de declaraciones lógicas. Algunos ejemplos podrían ser si dos números son los mismos. Un ciclo se ejecutará si su condición es cierta.
Nota en la muestra a continuación, la condición es cierta, lo que significa que este bucle se ejecutará para siempre. En lecciones posteriores, codificarás condiciones específicas que se detienen.
while true doprint("This loop is running")end
Código para un bucle mientras
A continuación, configurarás el bucle de tiempo para la parte que cambia de color.
En la siguiente línea, escribe while true do . Luego, presiona Ingrese para autocompletar y agregar la palabra end .
-- Cambia el color de loopingPart cada pocos segundoslocal loopingPart = workspace.LoopingPart-- Código de buclewhile true doend
Agregar Código en el Loop
Con el mientras ciclo creado, se pueden agregar instrucciones para cambiar el color de la parte con el tiempo. Dentro del ciclo, agrega una línea de código para cada color. Cada color usará valores RGB, una manera de almacenar colores como números en ciencia de la computación.
Entre while true do y end, establece la propiedad de Color de la parte en Color3.fromRGB() .
local loopingPart = workspace.LoopingPartwhile true doloopingPart.Color = Color3.fromRGB()endSe puede configurar el color usando un seleccionador de color en Studio. Para hacerlo, haz clic izquierdo dentro del () junto a fromRGB . Luego, haz clic en el icono del color. Una vez que tengas un color deseado, haz clic en el icono de la rueda de color. Una vez que tengas el valor de color deseado, haz clic en el botón de Añadir color en el código.
local loopingPart = workspace.LoopingPartwhile true doloopingPart.Color = Color3.fromRGB(82, 227, 255)end
Haciendo que el script espere
Si agrega una segunda línea de código de cambio de color ahora, cambiaría el color del ladrillo tan rápido que ni siquiera podrías ver el primer color que se fue. Para hacer que el script espere antes de ejecutar la siguiente línea de código, use una función task.wait() .
En la línea después de cambiar el color del ladrillo, escribe task.wait(3). El número que se coloca dentro del () es el número de segundos que el script esperará.
local loopingPart = workspace.LoopingPartwhile true doloopingPart.Color = Color3.fromRGB(82, 227, 255)task.wait(3)endBajo la función de espera, repita el mismo proceso de agregar un nuevo color. Termina con una función de espera adicional.
while true doloopingPart.Color = Color3.fromRGB(82, 227, 255)task.wait(3)loopingPart.Color = Color3.fromRGB(177, 52, 255)task.wait(3)endPruebe el código y vea si los colores cambian.
Solucionando Notas de Problemas En este punto, si la parte que cambia de color no funciona como se esperaba, intente uno de los siguientes pasos. Problema : Los colores se omiten
Asegúrese de tener una función de espera entre cada cambio de color, especialmente en la última línea.
Asegúrese de que todo el código de cambio de color y espere esté entre las secciones while true do y end. Problema : La parte todavía es gris o no cambia el color como se esperaba
Asegúrese de que todos los valores RGB tengan números de 0 a 255, sean números enteros o decimales y se separen con comas.
Los números dentro del () de una función de espera deben ser mayores que 1. Es posible que si la espera es demasiado corta, no veas ese color.
Completa el script de la parte de color de repetición
-- Cree una variable para almacenar la partelocal loopingPart = workspace.LoopingPart-- Código de buclewhile true do-- Cambia el color de lazo de la parteloopingPart.Color = Color3.fromRGB(82, 227, 255)-- Espere 3 segundos antes de la próxima instruccióntask.wait(3)loopingPart.Color = Color3.fromRGB(177, 52, 255)task.wait(3)end
Resumen
Las repeticiones son un elemento común en la mayoría de los lenguajes de computadora. Se utilizan para repetir instrucciones, a veces hasta que se cumplan condiciones específicas. En este artículo, la repetición de instrucciones se usa para repetir instrucciones para siempre. Para crear una repetición de instrucciones que se repite para siempre, use la sintaxis a continuación, asegurándose de incluir instrucciones entre las etiquetas do y end.
while true do-- Instruccionesend