معالجة مدخلات المستخدم
جزء من قسم المنطق وتسلسل التنفيذ في رحلة Lua على Coddy. الدرس 28 من 54.
التحدي
سهلوسّع حلقة اللعبة لقراءة أوامر المستخدم وعرضها باستخدام io.read().
تتوفّر لديك المتغيرات startingRoom وgardenRoom وplayer من التحدي السابق.
عدّل حلقة اللعبة لتقوم بما يلي:
- طباعة وصف الغرفة الحالية للاعب
- طباعة المحث
"> "(علامة أكبر من متبوعة بمسافة) دون سطر جديد: استخدمio.write()بدلًا منprint()، لأنio.write()يخرج النص دون إضافة سطر جديد في النهاية - قراءة أمر المستخدم باستخدام
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جرّب بنفسك
-- غرف اللعبة
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."
}
-- اللاعب
local player = {
currentRoom = startingRoom
}
-- حلقة اللعبة
local gameRunning = true
-- TODO: اكتب حلقة while هنا
جميع دروس المنطق وتسلسل التنفيذ
1التكرار المتقدم عبر الجداول
التكرار باستخدام pairs()التكرار باستخدام ipairs()pairs() مقابل ipairs()مراجعة - ورقة الشخصية2المزيد من دوال مكتبة Table
table.concat()إنشاء الجداول و unpack()table.sort()فرز مخصص باستخدام الدوالمراجعة - لوحة أعلى النتائج5مشروع: محرك مغامرة نصية
إعداد المشروع: الغرفةربط الغرفتدرّب بنفسك: مترجم Lua عبر الإنترنت