Benutzereingaben verarbeiten
Teil des Abschnitts Logik & Programmablauf der Lua-Journey von Coddy. Lektion 28 von 54.
Aufgabe
EinfachErweitere die Spielschleife, sodass sie mithilfe von io.read() Benutzereingaben liest und anzeigt.
Die Variablen startingRoom, gardenRoom und player aus der vorherigen Aufgabe werden dir bereitgestellt.
Ändere die Spielschleife so, dass sie:
- Die Beschreibung des aktuellen Raums des Spielers ausgibt
- Die Eingabeaufforderung
"> "(Größer-als-Zeichen gefolgt von einem Leerzeichen) ohne Zeilenumbruch ausgibt: Verwendeio.write()stattprint(), daio.write()Text ausgibt, ohne am Ende einen Zeilenumbruch hinzuzufügen - Den Befehl des Benutzers mithilfe von
io.read()liest "You entered: "gefolgt von dem vom Benutzer eingegebenen Befehl ausgibt- Prüft, ob der Befehl
"quit"lautet – falls ja, setzegameRunningauffalse, um die Schleife zu beenden
Die Schleife sollte 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
-- 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
endAlle Lektionen in Logik & 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