État du joueur
Fait partie de la section Logic & Flow du Journey Lua de Coddy — leçon 26 sur 54.
Défi
FacileEn vous appuyant sur vos pièces liées, créez une table player pour suivre l'emplacement actuel du joueur dans le monde du jeu.
Les variables startingRoom et gardenRoom du défi précédent vous sont fournies.
Créez une table nommée player avec une seule clé :
currentRoom: Définissez ceci pour référencerstartingRoom
Affichez le nom de la pièce actuelle du joueur, puis affichez la description de la pièce actuelle du joueur sur des lignes distinctes.
Format de sortie attendu :
Ancient Library
You find yourself in a dusty library filled with ancient books and scrolls.Essayez vous-même
-- Create the starting room
local startingRoom = {
name = "Ancient Library",
description = "A dusty library filled with ancient tomes and scrolls.",
exits = {}
}
-- Create the garden room
local gardenRoom = {
name = "Secret Garden",
description = "A hidden garden with overgrown plants and a small fountain.",
exits = {}
}
-- Link the rooms together
startingRoom.exits["east"] = gardenRoom
gardenRoom.exits["west"] = startingRoom
-- Print the required output
print(startingRoom.name)
print(startingRoom.exits["east"].name)
print(startingRoom.exits["east"].exits["west"].name)Toutes les leçons de Logic & Flow
1Itération avancée des tables
Itérer avec pairs()Itérer avec ipairs()pairs() vs. ipairs()Récapitulatif - Fiche de personnage2Plus de fonctions de la bibliothèque table
table.concat()Construction de table & unpack()table.sort()Tri personnalisé avec des fonctionsRécapitulatif - Tableau des scores5Projet : Moteur de jeu d'aventure textuel
Configuration du projet : La pièceRelier les pièces3Concepts avancés sur les fonctions
Retourner plusieurs valeursFonctions variadiques (...)Les fonctions comme valeurs de première classeFonctions anonymesQu'est-ce qu'une closure ?Récapitulatif - Gestionnaire d'événements simple