לולאת המשחק
חלק מהיחידה לוגיקה וזרימת התוכנית במסלול ה-Lua של Coddy. שיעור 27 מתוך 54.
אתגר
קלממשו את לולאת המשחק הראשית, שמציגה שוב ושוב את תיאור החדר הנוכחי כל עוד המשחק פועל.
המשתנים startingRoom, gardenRoom ו־player מהאתגר הקודם זמינים לכם.
צרו משתנה בשם gameRunning והגדירו את ערכו ל־true.
כתבו לולאת while שנמשכת כל עוד הערך של gameRunning הוא true. בתוך הלולאה:
- הדפיסו את תיאור החדר הנוכחי של השחקן
- הגדירו את
gameRunningל־falseכדי לצאת מהלולאה (לעת עתה; נוסיף טיפול מתאים בקלט בשיעור הבא)
פורמט הפלט הצפוי:
You find yourself in a dusty library filled with ancient books and scrolls.נסו בעצמכם
-- Create the starting room
local startingRoom = {
name = "Ancient Library",
description = "You find yourself in a dusty library filled with ancient books and scrolls."
}
-- Create the garden room
local gardenRoom = {
name = "Secret Garden",
description = "A beautiful garden with exotic flowers and a mysterious fountain."
}
-- Link the rooms
startingRoom.nextRoom = gardenRoom
gardenRoom.previousRoom = startingRoom
-- Create the player table
local player = {
currentRoom = startingRoom
}
-- Print the player's current room name and description
print(player.currentRoom.name)
print(player.currentRoom.description)כל השיעורים ביחידה לוגיקה וזרימת התוכנית
1איטרציה מתקדמת בטבלאות
איטרציה באמצעות pairs()איטרציה באמצעות ipairs()pairs() לעומת ipairs()סיכום – גיליון דמות2פונקציות נוספות של ספריית הטבלאות
table.concat()בניית טבלה ו־unpack()table.sort()מיון מותאם אישית באמצעות פונקציותסיכום – לוח שיאים5פרויקט: מנוע להרפתקת טקסט
הגדרת הפרויקט: החדרקישור בין חדריםתרגלו בעצמכם: קומפיילר Lua אונליין