Défis LUA

Voici une liste de défis te permettant de découvrir la programmation textuelle avec LUA. Tu pourras voir comment construire ton code et les différentes notions essentielles qui vont te servir pour tes futures programmation !

Sur cette page tu trouveras  : 

Défis pour débuter

La fonction print()

La fonction print() sert à afficher un message à l’écran. Cela peut être un texte, un nombre, le résultat d’un calcul… 

Défi 1 – Affiche du texte
  • Une fonction s’écrit toujours avec des parenthèses, et on insère à l’intérieur la valeur que l’on veut lui donner.
  • Pour afficher du texte, mets ton mot ou ta phrase entre guillemets.

=> Affiche le pseudo de ton personnage !

Défi 2 – Afficher un nombre
  • Pour afficher un nombre, tu pourrais utiliser la même méthode que pour du texte.
  • Mais tu peux faire comprendre à ton programme qu’il s’agit d’un nombre en enlevant les guillemets

=> Affiche le niveau de ton personnage !

Défi 3 – Afficher le résultat d’un calcul
Pour pouvoir afficher le résultat d’un calcul, tu dois bien dire à ton programme que ce sont des nombres, comme dans le défi 2, sinon il ne saura pas afficher le résultat.
  • Cela fonctionne avec les additions, les soustractions, multiplications et divisions
  • Lorsque tu exécutes ton code, tu dois voir le résultat : 54

=> Affiche le résultat du calcul suivant : 42 + 12

Les variables

Une variable est comme une boîte où tu peux stocker une valeur (comme un nombre ou un mot) pour l’utiliser plus tard dans ton programme. Tu pourras aussi manipuler cette valeur pour la changer selon tes besoins !

Défi 4 – Déclarer une variable et l’afficher
  • Déclare la variable age 
  • Utilise la fonction print() pour afficher la valeur stockée dans la variable

=> Affiche ton âge que tu auras stocké dans une variable « age »

Défi 4 BIS – Affiche la phrase « J’ai xx ans »

A l’aide de print(), on peut mélanger l’affichage d’un texte avec une variable. Pour cela on utilise la syntaxe .. qui permet d’additionner plusieurs éléments différents dans une même phrase. 

On appelle ça « concaténer »

Imagine la syntaxe .. comme si cela additionnait un nouvel élément :  « texte » + variable + « texte »

N’oublie pas que les textes sont entourés de guillemets, alors que la variable ne l’est pas.

=> Affiche la phrase « J’ai xx ans »

Défi 5 – Ajoute un à ton âge et affiche « l’année prochaine, j’aurais xx ans. »

Il est possible de changer la valeur stockée dans une variable, c’est ce qui la rend intéressante ! Imagine que tu veux donner l’âge que tu auras l’année prochaine, tu vas pouvoir le faire directement dans ta variable.

On appelle ça « incrémenter »

La variable age étant égal à un nombre, tu peux directement dire que la valeur de ta variable est égal à : ta variable + 1

Tu peux maintenant afficher la phrase « L’année prochaine, j’aurais xx ans » de la même façon que dans le défi 4BIS.

=> Ajoute 1 à la valeur stockée dans la variable âge

=> Affiche « L’année prochaine j’aurais xx ans. »

Défi 5 bis – Ajoute un nombre aléatoire à ta variable

Il est possible de generer des nombres aléatoire dans Roblox, en utilisant le code approprié puis de les utiliser comme on veut.

Crée une variable puis ajoute lui un nombre aléatoire:

local chiffreAuPif = math.random(0, 1000)
Défi 6 – Demander à l’utilisateur son nom

Avec LUA tu peux interagir avec l’utilisateur grâce à la fonction io.read(). Elle permet à l’utilisateur de saisir une réponse dans un input.

  • Affiche ta question dans un print()
  • Et déclare que la variable nom sera = à io.read() -> c’est à dire à ce que l’utilisateur va répondre.
Défi 6BIS – Affiche une phrase avec le nom de l’utilisateur

Tu peux afficher cette phrase de la même façon qu’apprise dans les défis au dessus. Il te suffit de « concaténer » ton texte et ta variable nom !

Les conditions

Allons un peu plus loin : On peut afficher des conditions dans notre programme, pour faire agir le comportement de notre code différemment suivant les situations.

Défi 7 – Créer une condition

Créé une condition te permettant de voir si tu peux acheter une potion à 50 pièces. Voici les étapes :

Créé une variable ‘pieces » dans laquelle tu vas stocker le nombre de pièces en ta possession. Ici, 100.

Puis créé une condition permettant grâce à :

  • if … then  (si… alors)
  • elseif (sinon si)
  • else (sinon)
  • end (fin de la condition)

Les boucles

On peut demander au code de répéter une action tant qu’une action définie n’est pas terminée. C’est ce qu’on appelle une boucle.

Défi 8 – Créer une boucle

Créé une boucle capable d’afficher la liste des nombres de 1 à 5. Pour cela tu vas utiliser la boucle for.

Créer une variable compteur et boucle là grâce à :

  • for … do (pour … faire)
  • end (fin de la boucle)
Défi 9 – Explorer une liste

Si on a une liste de plusieurs élements on peut faire du code pour chaque élement individuellement avec une boucle qui parcoure la liste.

Créer une variable de liste et remplie la avec des chiffre, puis fais une boucle pour ajouter 1 à chaque chiffre

  • for … do (pour … faire)
  • end (fin de la boucle)
local liste = {12,27,45,13,7,5,18,882}

for index, valeure in pairs(liste) do
    liste[index] = valeure + 1
end

print(liste)

Les Fonctions

On peut demander au code de répéter plusieurs actions qui s’enchaine en utilisant une fonction. L’avantage c’est qu’on peut ré-utiliser cette fonction avec plusieurs variables différente mais ça appliquera quand même toujours les mêmes opérations

Défi 10 – Créer une fonction

Créer une fonction qui utilise un paramètre pour afficher dans les log une phrase.

  • function … (…) (fonction … (paramètre)) 
  • end (fin de la fonction)
  • NomdeFonction(Paramètre) (Lancer la fonction)
local function FaireUnTruc(parametre)
    if parametre > 10 then
        print("Score haut!")
    elseif parametre == 10 then
        print("la moyenne")    
    else
        print("Score bas")      
    end
end

FaireUnTruc(15)
Retour en haut