Gérer les entrées utilisateur
Fait partie de la section Logique et déroulement du programme du Journey Lua de Coddy. Leçon 28 sur 54.
Défi
FacileÉtendez la boucle de jeu pour lire et afficher les commandes de l’utilisateur à l’aide de io.read().
Les variables startingRoom, gardenRoom et player de l’exercice précédent vous sont fournies.
Modifiez la boucle de jeu pour :
- Afficher la description de la pièce où se trouve le joueur
- Afficher l’invite
"> "(signe supérieur à suivi d’une espace) sans saut de ligne : utilisezio.write()au lieu deprint(), cario.write()affiche le texte sans ajouter de saut de ligne à la fin - Lire la commande de l’utilisateur à l’aide de
io.read() - Afficher
"You entered: "suivi de la commande saisie par l’utilisateur - Vérifier si la commande est
"quit"— si c’est le cas, définissezgameRunningsurfalsepour quitter la boucle
La boucle doit continuer jusqu’à ce que l’utilisateur saisisse "quit".
Format de sortie attendu :
You find yourself in a dusty library filled with ancient books and scrolls.
> You entered: look
You find yourself in a dusty library filled with ancient books and scrolls.
> You entered: east
You find yourself in a dusty library filled with ancient books and scrolls.
> You entered: quitEssayez vous-même
-- Salles du jeu
local startingRoom = {
description = "You find yourself in a dusty library filled with ancient books and scrolls."
}
local gardenRoom = {
description = "You step into a beautiful garden with blooming flowers and a gentle breeze."
}
-- Joueur
local player = {
currentRoom = startingRoom
}
-- Boucle de jeu
local gameRunning = true
-- TODO: Écrire la boucle while ici
Toutes les leçons de Logique et déroulement du programme
1Itération avancée des tables
Itérer avec pairs()Itérer avec ipairs()pairs() contre ipairs()Récapitulatif - Fiche de personnage2Fonctions supplémentaires de la bibliothèque table
table.concat()construction de tables et unpack()table.sort()Tri personnalisé avec des fonctionsRécapitulatif - Tableau des meilleurs scores5Projet : moteur d’aventure textuelle
Configuration du projet : la pièceRelier les pièces3Concepts avancés des fonctions
Retourner plusieurs valeursFonctions variadiques (...)Les fonctions comme valeurs de première classeFonctions anonymesQu’est-ce qu’une fermeture ?Récapitulatif - Gestionnaire d’événements simpleEntraînez-vous par vous-même : Compilateur Lua en ligne