Menu
CoddyTech

معالجة مدخلات المستخدم

جزء من قسم المنطق وتسلسل التنفيذ في رحلة Lua على Coddy. الدرس 28 من 54.

challenge icon

التحدي

سهل

وسّع حلقة اللعبة لقراءة أوامر المستخدم وعرضها باستخدام 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 هنا

جميع دروس المنطق وتسلسل التنفيذ

تدرّب بنفسك: مترجم Lua عبر الإنترنت