بازی snake در c++
حتما با بازی معروف snake یا بازی مار آشنا هستید. در این آموزش بهتون یاد میدم که چطور بازی snake در سی پلاس پلاس رو پیاده سازی کنید.
مگه میشه با c++ بازی پیاده سازی کرد؟
منطق پیاده سازی بازی
برای اینکه بتونیم این بازی رو پیاده سازی کنیم اول باید منطق نوشتن بازی رو درک کنیم. همه فیلمها و انیمیشنهایی که ما میبینیم از کنار هم قرار گرفتن یه سری فریم درست شدن و وقتی فریمها پشت سر هم به نمایش در میاد چشم ما حرکت بازیگر یا کاراکتر فیلم رو میتونه ببینه. در بازی snake هم همینجوریه. خیلی ساده به قضیه نگاه کنیم. توی ذهنتون تصور کنید که مار ما در وسط صفحه قرار داره (مثلا x =10 و y=10) چیزی که الان تو ذهنتون تصور کردید میشه فریم 1. حالا تو فریم 2 مار رو به اندازه یه واحد بیارید سمت راست. تو فریم 3 مار رو یه واحد دیگه بیارید سمت راست….
من اگه بخوام پیاده سازی این بازی رو به صورت کامل بهتون آموزش بدم این پست خیلی طولانی میشه . پیشنهاد میکنم قسمت اول آموزش ساخت بازی snake در سی پلاس پلاس رو در ویدیوی یوتیوبم ببینید:
چه جوری بازیمون رو قشنگ تر کنیم؟
آخر آموزش جلسه سوم چند تا ایده بهتون دادم که برای قشنگ شدن بازی میتونید استفاده کنید:
1- به بازیتون صدا اضافه کنید.
توی محیط کنسول سی پلاس پلاس نمیتونید آهنگی یا صدایی که دوست دارید پخش کنید ولی میشه کدی بنویسید که کامپیوترتون صدای Beep بده! تو گوگل سرچ کنید Beep in C plus plus
2- به بازیتون Timer اضافه کنید
بازی بدون تایمر یه چیزیش کمه! برای اینکه بتونید تایمر به بازیتون اضافه کنید به تابع main دقت کنید. یه ساختار تکرار دارید که و یه Sleep داره. بیایید یه متغیر تعریف کنید تو ساختار تکرار هر بار یکی بهش اضافه میشه. اگه این متغیر رو بخواهید تو خروجی چاپ کنید (زیر score) میبینید که خیلی سریع داره اضافه میشه و زمان به ثانیه نمایش نمیده. چیکار باید کنید که درست نشون بده؟ بهش فکر کنید 😉
ایده تایمر برعکس هم پیاده کنید. جالبه. مثلا 60 ثانیه وقت داره که امتیاز جمع کنه.
3- حل مشکل cursor
تو آموزش گفتم که ممکنه cursor تو صفحتون نمایش بده که اصلا جالب نیست. دلیلش هم واضحه هر بار که میخواد صفحه draw بشه این cursor چشمک زن تو صفحه حرکت میکنه. برای حل این مشکل باید cursor رو غیر فعال کنید. تو گوگل اینو سرچ کنید:
Google: set curser disable c++
4- دیگه چطور میتونیم بازی رو جذاب تر کنیم؟
شما بگید که با چه ایده ای میشه بازی رو قشنگ تر و جذاب تر کرد؟ اگه ایده ای دارید حتما تو کامنتها بگید و مطمئن باشید سرعت رشد شما در یادگیری برنامه نویسی با پروژه هایی که شما خودتون برای خودتون تعریف میکنید بیشتر میشه.
کد این بازی رو میخوام!
یه دوره کامل براتون آماده کردم که هم بهتون سی پلاس پلاس یاد میدم، هم هنر حل مساله و فکر کردن یاد میدم و هم به همه کدها، تمرینها و پروژه های جذاب سی پلاس پلاس دسترسی پیدا میکنید. این دوره رو با یه قیمت خیلی مناسب میتونید تهیه کنید.پیشنهاد میکنم این دوره رو بررسی کنید و جلسات دوره رو ببینید
این آموزش براتون مفید بود؟ میتونید بقیه آموزشهای من رو هم اینجا ببینید
کلی سوال برنامه نویسی!
اگه دوست دارید برنامه نویس خوبی بشید باید زیاد کدنویسی کنید و برای اینکار به مساله نیاز دارید. اینجا براتون کلی سوال برنامه نویسی آماده کردم که میتونید این سوالات رو ببینی
ممنون که تا اینجا همراه من بودید. اگر از آموزش این پست خوشتون اومد و یا سوالی داشتید حتما در قسمت نظرات با من درمیون بذارید. اگر هم به یوتیوب و یا اینستاگرام دسترسی دارید من رو در این دو پلتفرم دنبال کنید و با لایک ها و کامنتاتون به من انرژی بدید. در کانال تلگرام هم میتونید بیشتر با من در ارتباط باشید
ببخشید دورتون رو خریداری کردم تا به کد مار بازی دسترسی داشته باشم میشه بگین چجوری حالا میتونم کد کامل داشته باشم
سلام، اگه دوره یوتیوب پلاس سی پلاس پلاس رو خریدید وارد این لینک بشید:
https://jahangirics.ir/product/cpp/
از تب جلسات دوره در فصل 10 میتونید کد مار رو دانلود کنید.
اگر مشکلی داشتید در واتس اپ، تلگرام و یا ایتا به این شماره پیام بدید:
09396842317