Menu
Coddy logo textTech

Обработка пользовательского ввода

Часть раздела Logic & Flow путешествия по Lua на Coddy — урок 28 из 54.

challenge icon

Задание

Легко

Расширьте игровой цикл, чтобы считывать и отображать команды пользователя с помощью io.read().

Вам предоставлены переменные startingRoom, gardenRoom и player из предыдущего испытания.

Измените игровой цикл следующим образом:

  • Выведите описание текущей комнаты игрока
  • Выведите приглашение "> " (знак «больше», за которым следует пробел) без перехода на новую строку
  • Считайте команду пользователя с помощью io.read()
  • Выведите "You entered: ", а затем команду, которую ввел пользователь
  • Проверьте, является ли команда "quit" — если да, установите gameRunning в значение false, чтобы выйти из цикла

Цикл должен продолжаться до тех пор, пока пользователь не введет "quit".

Ожидаемый формат вывода:

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: quit

Попробуйте сами

-- 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
end

Все уроки раздела Logic & Flow