Gestire l'input dell'utente
Fa parte della sezione Logica e flusso del percorso Lua di Coddy. Lezione 28 di 54.
Sfida
FacileEstendi il ciclo di gioco per leggere e visualizzare i comandi dell'utente usando io.read().
Ti vengono fornite le variabili startingRoom, gardenRoom e player della sfida precedente.
Modifica il ciclo di gioco per:
- Stampare la descrizione della stanza attuale del giocatore
- Stampare il prompt
"> "(segno di maggiore seguito da uno spazio) senza un'interruzione di riga: usaio.write()invece diprint(), poichéio.write()visualizza il testo senza aggiungere un'interruzione di riga alla fine - Leggere il comando dell'utente usando
io.read() - Stampare
"You entered: "seguito dal comando digitato dall'utente - Controllare se il comando è
"quit"- in tal caso, impostaregameRunningsufalseper uscire dal ciclo
Il ciclo dovrebbe continuare finché l'utente non digita "quit".
Formato dell'output previsto:
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: quitProvalo tu
-- Room definitions
local startingRoom = {
description = "You find yourself in a dusty library filled with ancient books and scrolls."
}
local gardenRoom = {
description = "You are in a beautiful garden with blooming flowers and a fountain."
}
-- Player definition
local player = {
currentRoom = startingRoom
}
-- Create game loop
local gameRunning = true
while gameRunning do
print(player.currentRoom.description)
gameRunning = false
endTutte le lezioni di Logica e flusso
1Iterazione avanzata delle tabelle
Iterare con pairs()Iterare con ipairs()pairs() vs. ipairs()Riepilogo - Scheda del personaggio2Altre funzioni della libreria table
table.concat()Costruzione di tabelle e unpack()table.sort()Ordinamento personalizzato con funzioniRiepilogo - Tabellone dei punteggi più alti5Progetto: Motore per avventure testuali
Configurazione del progetto: la stanzaCollegare le stanzeEsercitati da solo: Compilatore Lua online