Kullanıcı Girdisini İşleme
Coddy'nin Lua Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 28 / 54.
Görev
Kolayio.read() kullanarak kullanıcı komutlarını okuyup görüntülemek için oyun döngüsünü genişletin.
Önceki görevden startingRoom, gardenRoom ve player değişkenleri size sağlanmıştır.
Oyun döngüsünü şu işlemleri yapacak şekilde değiştirin:
- Oyuncunun mevcut odasının açıklamasını yazdırın
- Yeni satır eklemeden
"> "istemini (boşlukla takip edilen büyüktür işareti) yazdırın:io.write()metnin sonuna yeni satır eklemeden çıktı verdiği içinprint()yerineio.write()kullanın - Kullanıcının komutunu
io.read()kullanarak okuyun "You entered: "metninin ardından kullanıcının yazdığı komutu yazdırın- Komutun
"quit"olup olmadığını kontrol edin - öyleyse döngüden çıkmak içingameRunningdeğerinifalseolarak ayarlayın
Kullanıcı "quit" yazana kadar döngü devam etmelidir.
Beklenen Çıktı Biçimi:
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: quitKendin dene
-- 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
endMantık ve Akış bölümündeki tüm dersler
1İleri Düzey Tablo Yineleme
pairs() ile Yinelemeipairs() ile Yinelemepairs() vs. ipairs()Özet - Karakter Sayfası2Daha Fazla Tablo Kütüphanesi Fonksiyonu
table.concat()Tablo Oluşturma ve unpack()table.sort()Fonksiyonlar ile Özel SıralamaÖzet - Yüksek Skor Tablosu5Proje: Metin Tabanlı Macera Motoru
Proje Kurulumu: OdaOdaları BağlamaKendi başına pratik yap: Online Lua derleyicisi