بسم الله الرحمن الرحیم
سلام خدمت دوستان عزیز و همراهان سایت www.javapro.ir
قبل از این که به آموزش شیوه ساخت بازی سنگ کاغذ قیچی به زبان جاوا بپردازیم تصاویر اجرای برنامه بازی سنگ کاغذ قیچی به زبان جاوا در محیط نتبینز را در زیر مشاهده کنید:
تصاویر اجرای پروژه بازی سنگ کاغذ قیچی در محیط نتبینز:
آموزش ساخت بازی سنگ قیچی کاغذ:
در این پروزه قصد داریم بازی ساده و جالب سنگ – کاغذ –قیچی طراحی کنیم.ابتدا به بررسی قوانین و نحوه انجام این بازی میپردازیم.
( برگرفته از : از ویکیپدیا، دانشنامهٔ آزاد)
سنگ کاغذ قیچی یک بازی دونفره است که توسط دست بازیکنان انجام میگیرد. دو بازیکن هر دو با هم شروع به شمردن تا سه میکنند. این شمارش لزوماً با شمردن اعداد نیست بلکه معمولاً با گفتن سه واژهی سنگ و قیچی و کاغذ انجام میپذیرد. در انتهای شمارش دست خود را که به حالت مشت بالا نگه داشتهاند پایین آورده و به یکی از سه حالت مجاز درمیآورند. در نهایت بازیکن برنده بر اساس قوانینی که برتر هر یک از حالتها بر حالت دیگر را معلوم میکنند، مشخص میشود. در صورت همسان بودن حالتهای دست این عمل تا پیروزی یکی بر دیگری ادامه پیدا میکند.
قوانین پیروزی:
• سنگ قیچی را میشکند. (برنده سنگ)
• قیچی کاغذ را میبرد. (برنده قیچی)
• کاغذ سنگ را میپوشاند. (برنده کاغذ)
با توجه به توضیحات داده شده به طراحی و پیاده سازی این بازی میپردازیم.
ابتدا طراحی ظاهری برنامه:
تصاویر زیر را در نظر داشته باشید
همان طور که تصاویر (1)و(2) و(3) مشاهده میکنید ابتدا یک صفحه تحت عنوان splash screen که شامل یک progress bar و یک تصویر از بازی است با تکمیل شدن progress bar به صفحه بعد که در آن به انجام بازی میپردازد وارد میشویم. همان طور که در تصویر مربوط به انجام بازی مشاهده مینمایید صفحه ما از دو بخش تشکیل شده است، بخش بالایی (با رنگ سبز) مربوط به Robot و بخش پایین (با رنگ بنفش) مربوط به بازیکن است.
تصویر(4) ظاهر برنامه ما است:
در تصویر(5) با کلیک کردن بر روی یکی از انتخاب های بازیکن (در زیر بر روی قیچی کلیک شده است) تصویر مربوط به انتخاب در محل مربوطه(JLable) قرار میگیرد و Robot نیز به صورت تصادفی یک انتخاب میکند و تصویر مربوط به انتخاب خود در محل مربوطه(JLable) قرار میگیرد. حال با توجه به قوانین پیروزی در این بازی هر کسی که برنده شد یک امتیاز به خودش اختصاص میدهد.
تصاویر بالا نمای کلی از پروژه ی ما است. حال این مراحل را مرحله به مرحله پیاده سازی میکنیم.
مراحل طراحی و پیاده سازی:
ابتدا یک پروزه ایجاد مینماییم نام آن را RockandPaperandScissors قرار میدهیم. تصاویر زیر:
بعد از این کار باید یک فرمی برای طراحی صفحه splash خود در نظر بگیریم.
مانند تصاویر زیر:
تصاویر 8 تا 11 برای ساخت یک فرم برای splash است. که در تصویر (12) فرم ما آماده شده است.
حال درون این فرم(تصویر (12)) باید طراحی مربوط به صفحه splash screen که شامل یک عکس و یک progress bar است انجام دهیم.
مطابق تصاویر زیر انجام میدهیم:
یک panel انتخاب کردیم و در فرم خود قرار میدهیم(قسمت 1 و2 تصویر بالا)
حال این panel را میکشیم تا کل فرم را بگیرد مانند تصویر (14):
حال مانند تصاویر 15 تا 17 یک رنگ به عنوان background در نظر میگیریم( ما در اینجا رنگ آبی را در نظر گرفته ایم.)
حال درون این JPanel خود باید یک JLable برای نمایش عکس و یک progress bar قرار میدهیم. تصاویر زیر:
حال برای JLable از قسمت properties از بخش icon تصویر را انتخاب میکنیم.
همه کارهای بالا باعث میشود تا صفحه ما مانند تصویر (24) شود:
قدم بعدی این است که یک فرم دیگری برای محل انجام بازی در نظر بگیریم
دوباره مانند قبل یک فرم جدید تهیه میکنیم(در اینجا فقط فرم کامل شده قرار میدهیم انجام کار مانند قبل به عهده خودتان. مثل ساخت صفحه splash) و نام آن را MyGame قرار میدهیم.
تصویر (26) تکمیل شده فرم MyGame است:
طراحی ظاهر بازی تمام است حال باید به کدنویسی آن بپردازیم.
ابتدا درون کلاس اصلی (تصویر(27)) باید کاری کنیم که با پر شدن progress bar به صفحه بعد برویم.
کدهای تصویر (28) باعث میشود که با پر شدن progress bar از صفحه splash به صفحه MyGame برویم.
عدد درون sleep باعث روند پر شدن میشود که اگر هرچه کمتر باشد سرعت پر شدن progress bar بیشتر است و اگر هرچه بزرگتر باشد سرعت پر شدن progress bar کمتر است. ما بقی کد نیز مشخص است به محض اینکه شمارنده به 100 رسید فرم splash غیر فعال میشود و فرم MyGame فعال میشود.
حال وارد فرم MyGame میشویم .ابتدا متغیرهای مورد نیاز را تعریف میکنیم:تصویر(29)
دو متغیر اولی برای ذخیره امتیاز است.
آرایه رشته ای برای نگه داری لغات rock,paper,scissors است
آرایه بعدی برای نگه داری تصاویر مربوط به لغات است.
دو متغیر رشته ای برای این است که هرگاه ما یک از این لغات rock,paper,scissors
انتخاب کردیم درونش ذخیره شود روبات نیز به همین طریق.
حال این متغیرها را درون سازنده مقدار دهی میکنیم:تصویر(30)
حال متدهای مربوط به کلیک کردن بر روی هریک از دکمه های سنگ و کاغذ و قیچی را پیاده سازی میکنیم:
دکمه مربوط به سنگ:تصویر(31)
دکمه مربوط به کاغذ: تصویر(33)
دکمه مربوط به قیچی:تصویر(34)
انتخاب روبات:
طبق متد زیر روبات به صورت تصادفی انتخاب میکند:
بررسی متد مربوط به مقایسه کردن و اینکه چه کسی برنده است:
متد check دو رشته به عنوان ورودی میگیرد، رشته اول انتخاب کاربر و رشته دوم انتخاب روبات.
حال این دورشته را با یکدیگر مقایسه کرده و شرایط برنده شدن را روی این دو رشته بررسی میکنیم.
متد مربوط reset _Game:
همه چیز به حالت اولیه ر میگردد.
امیدوارم توضیحات قابل فهم بوده باشد.
سعید قلندری
این جلسه آموزشی را بصورت کامل و مرتب شده در لینک زیر دانلود کنید:(در صورت خرابی لینک گزارش دهید)
لینک دانلود کتاب آموزش ساخت پروژه بازی سنگ قیچی کاغذ به همراه سورس کد آن
نشر این مطلب با ذکر منبع (لینک سایت) بلامانع است.
بستن *نام و نام خانوادگی * پست الکترونیک * متن پیام |
دوره های آموزشی برنامه نویسی
انجام پروژه های برنامه نویسی
تدریس خصوصی برنامه نویسی
بیش از 7 سال از فعالیت جاواپرو میگذرد
جاواپرو دارای مجوز نشر دیجیتال از وزارت فرهنگ و ارشاد اسلامی است
جهت ارتباط مستقیم با جاواپرو در واتساپ و تلگرام :
09301904690
بستن دیگر باز نشو! |