Beaucoup de choses dans la science des ordinateurs ou le développement des jeux répètent souvent. Par instance, une application peut mettre à jour le contenu dans un flux toutes les quelques secondes, ou un jeu peut récompenser les joueurs un prix chaque jour qu'ils se connectent. Pour accomplir ce comportement, les développeurs utilisent souvent boucles .
En informatique, un boucle est un modèle de code qui répète un ensemble d'instructions, souvent jusqu'à ce qu'une condition spécifique soit remplie. Pour pratiquer cela, vous coderez une partie qui change de couleur indéfiniment. Les leçons suivantes vous montreront comment arrêter le bouclage.
Configurer la partie et le script
Utilisez n'importe quel projet Roblox pour cet exercice. Une fois terminé, cette partie peut être utilisée comme une façon de décorer un environnement.
Créez une nouvelle partie avec un nom descriptif. Cette leçon utilise LoopingPart .
Dans ServerScriptService , ajoutez un nouveau script nommé LoopingScript.
Dans le script, supprimez Hello World et écrivez un commentaire indiquant le but de ce script.
-- Changes the color of LoopingPart every few seconds
Utiliser des variables pour stocker une partie
Les variables peuvent également contenir des références à des objets en plus des chaînes. Par exemple, lorsqu'un script connaît la référence à une partie, le script peut le modifier.
Au lieu d'écrire workspace.NameOfYourPart à plusieurs reprises, toute la ligne peut être stockée dans une variable locale. Les variables locales sont créées en tapant local et ensuite le nom de la variable.
Par exemple : local nameOfVariable .
Sous le commenter, créez une variable locale en tapant local loopingPart.
-- Change la couleur de LoopingPart toutes les quelques secondeslocal loopingPartDéfinissez la variable à la partie répétitive en tapant = workspace.LoopingPart sur la même ligne. N'oubliez pas que l'opérateur = définira la valeur d'une variable à n'importe quoi à droite d'elle.
-- Change la couleur de LoopingPart toutes les quelques secondeslocal loopingPart = workspace.LoopingPart
Pendant que boucles
Avant de créer la boucle while pour la partie color changeante, il vaut la peine d'expliquer sa syntaxe. Une boucle while a trois composantes :
- La while clé mot.
- Une condition, toujours après le mot-clé.
- Instructions, entre les mots-clés do et end.
En boucles, les conditions peuvent être une variété de déclarations logiques. Certains exemples peuvent être si deux numéros sont les mêmes. Un boucle s'exécute si sa condition est vraie.
Remarquez dans l'exemple ci-dessous, la condition est vraie, ce qui signifie que ce boucle se exécute pour toujours. Dans les leçons ultérieures, vous coderez des conditions spécifiques qui s'arrêtent.
while true doprint("This loop is running")end
Programmer un boucleWhile
Ensuite, vous configurerez le boucle de temps pour la partie changeant de couleur.
Sur la prochaine ligne, tapez while true do . Ensuite, appuyez sur Entrer pour autocompléter et ajouter le mot end .
-- Change la couleur de loopingPart toutes les quelques secondeslocal loopingPart = workspace.LoopingPart-- Code de bouclewhile true doend
Ajouter du code dans la boucle
Avec la boucle while créée, des instructions peuvent être ajoutées pour modifier la couleur de la partie au fil du temps. À l'intérieur de la boucle, ajoutez une ligne de code pour chaque couleur. Chaque couleur utilisera des valeurs RGB, une façon de stocker les couleurs en tant que numéros dans la science informatique.
Entre while true do et end, définissez la propriété Couleur de la partie à Color3.fromRGB() .
local loopingPart = workspace.LoopingPartwhile true doloopingPart.Color = Color3.fromRGB()endLe paramètre de couleur peut être défini à l'aide d'un sélecteur de couleur dans Studio. Pour ce faire, cliquez avec le bouton gauche à l'intérieur du () à côté de fromRGB. Ensuite, cliquez sur l'icône de roue de couleur. Une fois que vous avez la couleur souhaitée, appuyez sur OK pour ajouter automatiquement la valeur de couleur dans le code.
local loopingPart = workspace.LoopingPartwhile true doloopingPart.Color = Color3.fromRGB(82, 227, 255)end
Faire attendre le script
Si vous ajoutez une deuxième ligne de code de couleur changeante en ce moment, cela changerait la couleur du brique de manière si rapide que vous pourriez ne même pas voir la première couleur aller. Pour faire en sorte que le script s'exécute avant d'exécuter la prochaine ligne de code, utilisez une fonction task.wait().
Sur la ligne après avoir changé la couleur de la brique, tapez task.wait(3). Quel que soit le nombre placé à l'intérieur du (), c'est le nombre de secondes que le script attendra.
local loopingPart = workspace.LoopingPartwhile true doloopingPart.Color = Color3.fromRGB(82, 227, 255)task.wait(3)endSous la fonction d'attente, répétez le même processus d'ajout d'une nouvelle couleur. Terminez-le avec une fonction d'attente supplémentaire.
while true doloopingPart.Color = Color3.fromRGB(82, 227, 255)task.wait(3)loopingPart.Color = Color3.fromRGB(177, 52, 255)task.wait(3)endTestez le code et voyez si les couleurs changent.
Notes de débogage À ce stade, si la partie color changeant ne fonctionne pas comme prévu, essayez l'une des solutions suivantes. Problème : Les couleurs sont ignorées
Assurez-vous d'avoir une fonction d'attente entre chaque changement de couleur, surtout à la dernière ligne.
Vérifiez que tout le code de changement de couleur et d'attente est entre les while true do et end sections. Problème : La partie est toujours grise ou ne change pas de couleur comme prévu
Assurez-vous que tous les valeurs RGB ont des chiffres allant de 0 à 255, sont des nombres entiers ou des virgules et sont séparés par des points virgules.
Les chiffres à l'intérieur du () d'une fonction d'attente doivent être plus grands que 1. Il est possible que si une attente est trop courte, vous ne voyez pas cette couleur.
Compléter le script de partie de boucle de couleur
-- Créez une variable pour stocker la partielocal loopingPart = workspace.LoopingPart-- Code de bouclewhile true do-- Change la couleur de loopingPartloopingPart.Color = Color3.fromRGB(82, 227, 255)-- Attendez 3 secondes avant la prochaine instructiontask.wait(3)loopingPart.Color = Color3.fromRGB(177, 52, 255)task.wait(3)end
Résumé
Les boucles sont un élément commun dans la plupart des langues informatiques. Ils sont utilisés pour répéter les instructions, parfois jusqu'à ce que des conditions spécifiques soient remplies. Dans cet article, le while loop est utilisé pour répéter les instructions pour toujours. Pour créer un while loop qui se répète pour toujours, utilisez la syntaxe ci-dessous, en vous assurant que des instructions sont incluses entre les do et end钥匙.
while true do-- Instructionsend