Benutzereingaben verarbeiten
Teil des Abschnitts Logik und Programmablauf der Lua-Journey von Coddy. Lektion 28 von 54.
Aufgabe
EinfachErweitere die Spielschleife, sodass sie Benutzerbefehle mit io.read() einliest und anzeigt.
Die Variablen startingRoom, gardenRoom und player aus der vorherigen Herausforderung stehen dir zur Verfügung.
Ändere die Spielschleife wie folgt:
- Gib die Beschreibung des aktuellen Raums des Spielers aus
- Gib die Eingabeaufforderung
"> "(Größer-als-Zeichen gefolgt von einem Leerzeichen) ohne Zeilenumbruch aus: Verwendeio.write()anstelle vonprint(), daio.write()Text ausgibt, ohne am Ende einen Zeilenumbruch hinzuzufügen - Lies den Befehl des Benutzers mit
io.read()ein - Gib
"You entered: "gefolgt von dem Befehl aus, den der Benutzer eingegeben hat - Prüfe, ob der Befehl
"quit"lautet – wenn ja, setzegameRunningauffalse, um die Schleife zu beenden
Die Schleife sollte so lange fortgesetzt werden, bis der Benutzer "quit" eingibt.
Erwartetes Ausgabeformat:
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: quitProbier es selbst
-- Spielräume
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."
}
-- Spieler
local player = {
currentRoom = startingRoom
}
-- Spielschleife
local gameRunning = true
-- TODO: Schreibe hier die while-Schleife
Alle Lektionen in Logik und Programmablauf
1Fortgeschrittene Tabelleniteration
Iterieren mit pairs()Iterieren mit ipairs()pairs() vs. ipairs()Zusammenfassung – Charakterbogen2Weitere Funktionen der Tabellenbibliothek
table.concat()Tabellenkonstruktion & unpack()table.sort()Eigene Sortierung mit FunktionenRückblick – Highscore-Tabelle5Projekt: Text-Adventure-Engine
Projektsetup: Der RaumRäume verknüpfenÜbe selbstständig: Online-Lua-Compiler