پروژه ۴: منطق بازی مار
پروژه نهایی: منطق کامل بازی مار با جدول دوبعدی — آماده برای موتور بازی!
پروژه نهایی: منطق بازی مار
پروژه پایانی دوره! منطق کامل بازی مار (Snake) را پیاده میکنیم — بدون گرافیک، اما کاملاً آماده برای اتصال به موتور بازی مثل LÖVE!
ویژگیهای پروژه
- صفحه بازی (جدول دوبعدی)
- مار با طول قابل رشد
- حرکت در ۴ جهت
- غذا و امتیاز
- برخورد با دیوار و خود
- نمایش متنی صفحه
معماری
Game (کلاس)
├── board (جدول دوبعدی)
├── snake (آرایه مختصات)
├── direction (جهت فعلی)
├── food (مختصات غذا)
├── step() — یک حرکت
├── setDirection(dir)
├── spawnFood()
└── render() — نمایش متنی
مفاهیم تمرینشده
- جدول دوبعدی: صفحه بازی
- آرایه بهعنوان صف: بدن مار
- کلاس کامل: با همه اجزا
- منطق بازی: برخورد، رشد، امتیاز
از متن تا گرافیک
این منطق مستقل از نمایش است — برای ساخت بازی واقعی فقط کافی است render را با گرافیک موتور جایگزین کنید!
تمرینهای تکمیلی
- دیوارهای عبوری اضافه کنید (wrap around)
- مانعها (obstacles) اضافه کنید
- سطح دشواری با سرعت فزاینده
تبریک! با پایان این پروژه، دوره کامل لوا را به پایان رساندید! 🌙🎉
این مبحث بخشی از دوره آموزش کامل لوا است.