پروژه برگشت توپ هنگام برخورد با راکت در بازی پینگ پنگ اسکرچ
در این قسمت از مجموعه آموزشی اسکرچ به عنوان سومین بخش از بازی پینگ پنگ با نحوه ساخت پروژه برگشت توپ از راکت آشنا میشوید. قطعههای مورد استفاده در این پروژه عبارتند از قطعه “وقتی پرچم کلیک شد”، “برای همیشه“، “اگر … آنگاه”، “خوردی به …“، “بچرخ … درجه” و “منتظر بمان … ثانیه“.
این مطلب مبتنی بر مجموعه کارتهای کدنویسی اسکرچ (با اندکی تغییر) است. کارتهای اصلی این پروژه را میتوانید از طریق سایت اسکرچ دریافت کنید.
هدف پروژه
اگر بخش قبلی بازی پینگ پنگ اسکرچ را در قالب پروژه حرکت راکت با کمک ماوس تکمیل کرده باشید تا به اینجا با اجرای پروژه، توپ به حرکت درمیآید و هنگام برخورد با لبههای صحنه جهت حرکت آن تغییر میکند. به علاوه با حرکت ماوس، راکت نیز به صورت افقی جابجا میشود.
در این پروژه به عنوان سومین قسمت از بازی پینگ پنگ در ادامه قسمت قبل کاری میکنیم که هنگام برخورد توپ با راکت، مشابه با دنیای واقعی توپ به سمت مقابل برگردد.
مراحل ساخت پروژه برگشت توپ از راکت در بازی پینگ پنگ اسکرچ
از آنجایی که قرار است ساخت بازی پینگ پنگ را ادامه دهیم میتوانید به پروژه قبلی در حساب کاربری خود در اسکرچ مراجعه کنید و کار خود را روی همان پروژه ادامه دهید. اگر هم میخواهید تمرین بیشتری انجام دهید میتوانید یک پروژه جدید بسازید و مراحل پروژه قبل را تکرار کنید.
اضافه کردن قطعه های موردنیاز پروژه
از آنجایی که قرار است جهت حرکت توپ هنگام برخورد با راکت تغییر کند لازم است قطعات موردنیاز را به ناحیه کد شکلک توپ اضافه کنیم. بنابراین پیش از هرچیز مطمئن شوید شکلک توپ در بخش شکلکها انتخاب شده است. سپس قطعات زیر را به ترتیب در ناحیه کد شکلک قرار دهید.
قرار است در طول زمان اجرای پروژه، برخورد توپ به راکت تشخیص داده شود. پس ابتدا یک قطعه “وقتی پرچم کلیک شد” به ناحیه کد اضافه میکنیم. این قطعه را میتوانید به آسانی در دسته “رویدادها” پیدا کنید.
میخواهیم همیشه در طول اجرای پروژه، برخورد توپ و راکت تشخیص داده شود. بررسی این اتفاق را میتوانید داخل یک حلقه بی نهایت یا قطعه “برای همیشه” انجام دهید (این قطعه را میتوانید به سادگی در دسته “کنترل” پیدا کنید).
تشخیص برخورد توپ به راکت
برای تشخیص برخورد توپ به راکت از ترکیب دو قطعه کمک میگیریم. ابتدا یک قطعه شرطی از نوع “اگر … آنگاه” داخل حلقه قرار میدهیم. (این قطعه را میتوانید در دسته “کنترل” پیدا کنید). برای شرط این قطعه هم از یک قطعه “خوردی به …” استفاده میکنیم. این قطعه که در دسته “تشخیص” قرار دارد برخورد را شناسایی میکند. کافیست از لیست این قطعه نام شکلک راکت (یعنی Paddle) را انتخاب کنید تا برخورد شکلک فعلی (یعنی توپ) را با راکت تشخیص دهد.
در ادامه یک قطعه از نوع “بچرخ … درجه” داخل “اگر خوردی به Paddle آنگاه” قرار میدهیم. میزان چرخش شکلک را روی 180 درجه تنظیم میکنیم. به این ترتیب جهت توپ 180 درجه تغییر میکند و حرکت توپ در جهت جدید ادامه پیدا میکند. یک قطعه هم از نوع “منتظر بمان … ثانیه” (از دسته “کنترل“) با میزان انتظار 1 ثانیه به قطعه قبلی وصل میکنیم. اگر از این قطعه انتظار استفاده نکنیم ممکن است بلافاصله مجددا برخورد توپ و راکت تشخیص داده شود و جهت توپ باز هم تغییر کند. این درحالیست که با تأخیر 1 ثانیهای، توپ حرکت میکند و برخوردش با راکت برطرف میشود.
در تصویر زیر نمایی از ناحیه کد کامل این پروژه را مشاهده میکنید.
امتحان کنید!
روی دکمه پرچم سبز رنگ بالای ناحیه صحنه کلیک کنید. سپس با کمک ماوس، راکت را جابجا کنید و سعی کنید به وسیله راکت مانع از برخورد توپ با لبه پایینی صفحه شوید. در ویدئوی زیر هم میتوانید نمایی از نتیجه نهایی این پروژه را مشاهده کنید.