بينغ بونغ - كرة الطاولة

آمل ألا تكون هذه هي المرة الأولى التي ستسمع فيها عن "كرة الطاولة" إذا كنت تحب ألعاب الكرة.

يحاول لاعبان إعادة إرسال الكرة إلى المعسكر المقابل ، الذي يفشل يخسر المباراة.

لقد أنشأنا هذه اللعبة للاعبين على برنامج scratch 2.0 أو mBlock

إذا كنت مهتما ، يرجى مشاهدة هذا الدرس .

الأدوات

كمبيوتر عليه تطبيق scratch 2.0 أو تطبيق mBlock

Files

خطوة 1 : أضف الإعدادات

افتح برنامج scratch او برنامج mBlock بالنقر المزدوج على أيقونة البرنامج

قم بحذف الشخصيات الصغيرة بالضغط على الزر اليمين ثم حذف 

قم بتغيير الخلفية

خطوة 2 : إنشاء الشخصيات : مضربين وكرة

المضرب الأول:

لإنشاء شخصية صغيرة جديدة ، يجب النقر فوق الأداة  "Draw a new item" (رقم 1) كما هو موضح في الرسم التوضيحي

رسم مستطيل عمودي (رقم 2)

اختر لونك في اللوحة (رقم 4)

قم بتلوين المستطيل الخاص بك باستخدام أداة  "color a form"" (رقم 3)

حرك شخصيتك الصغيرة إلى منتصف النافذة باستخدام الماوس

تغيير اسم الشكل لتسهيل البرنامج (رقم 5)

المضرب الثاني:

لا تحتاج إلى إنشاء عنصر جديد

انقر بزر الماوس الأيمن على الأول واختر "Duplicate" (رقم 6)

اختار لونًا مختلفًا عن اللون الأول

لون مضربك (رقم 7)

تغيير اسم الشكل لتسهيل البرنامج (رقم 9)

الكرة:

انقر مرة أخرى على رسم عنصر جديد "Draw a new item" (رقم 10)

ارسم دائرة صغيرة في منتصف النافذة (رقم 11)

اختار لون مختلف عن مضربين (رقم 13)

تلوين الكرة (رقم 12)

غير اسم الشكل لتسهيل البرنامج (رقم 14)

خطوة 3 : برمجة حركة مضرب اللاعب الأول

تنشيط مضرب اللاعب الأول (أصفر)

ابدأ بالبرمجة باستخدام كتلة "when the green flag is clicked"

البحث باستخدام الماوس الخاص بك ، عن الإحداثيات التي يجب أن يذهب إليها المضرب في بداية كل برنامج وكتابته في المربع  "Go to x: .. y: .." في فئة الحركة.

الشرط  "if...so" يستخدم هنا لإطلاق حركات المضرب عند الضغط على زر (الصعود أو الأسفل)

من كتلة  "touche... pressé?" حدد الأزرار التي ستقوم بالضغط عليها لتحريك المضرب لأعلى أو لأسفل ( a للصعود ، و w للأسفل)

تحدد كتلة   "Add ... y" عدد حركات المضرب (5 للارتفاع ، و -5 للهبوط)

بعد ذلك ، ستسمح كتلة "Repeat indefinitely" بمتابعة الحركات في كل مرة تضغط فيها على الأزرار.

خطوة 4 : برمجة حركة مضرب اللاعب الثاني

برنامج المضرب الثاني  هو نفسه تقريبا برنامج المضرب الأول 

تنشيط مضرب اللاعب الأول (أصفر)

ابدأ بالبرمجة باستخدام كتلة "when the green flag is clicked"

البحث باستخدام الماوس الخاص بك ، عن الإحداثيات التي يجب أن يذهب إليها المضرب في بداية كل برنامج وكتابته في المربع  "Go to x: .. y: .." في فئة الحركة.

الشرط  "if...so" يستخدم هنا لإطلاق حركات المضرب عند الضغط على زر (الصعود أو الأسفل)

من كتلة  "touche... pressé?" حدد الأزرار التي ستقوم بالضغط عليها لتحريك المضرب لأعلى أو لأسفل ( up  للصعود ، و down  للأسفل)

تحدد كتلة   "Add ... y" عدد حركات المضرب (5 للارتفاع ، و -5 للهبوط)

بعد ذلك ، ستسمح كتلة "Repeat indefinitely" بمتابعة الحركات في كل مرة تضغط فيها على الأزرار.

خطوة 5 : برمجة حركة الكرة

انقر على الكرة لتنشيطها

بدء البرنامج باستخدام كتلة  "when the green flag is clicked" 

البحث عن إحداثيات البداية باستخدام الماوس ، حيث يجب أن تكون الكرة في بداية اللعبة (في منتصف المشهد) ، واكتبها في المربع "Go to w: .. y: .." في فئة الحركة

استخدم الكتلة "orient at ... degrees" في فئة الحركة لتحديد اتجاه الكرة في بداية كل مباراة

دع الكمبيوتر يختار قيمة اتجاه الزاوية (بين 1 و 360 درجة) باختيار الكتلة "Random number between ..... and .... degrees"  الموجود في فئة "operator

خطوة 6 : تحريك الكرة تلقائيًا

نبدأ برمجة حركة  الكرة بتوجيهها في بداية البرنامج . هنا ، سنحدد سرعتها وحركاتها في  الساحة.

أضف إلى البرنامج الذي كتبناه في البداية التعليمة  التالية: 

كرر إلى أجل غير مسمى عمل "تحريك للأمام ..." للكرة (هنا اخترنا سرعتها إلى 5)

إذا تم الوصول إلى حافة المشهد ، ترتد الكرة

خطوة 7 : عندما تلمس الكرة المضرب

ما زلنا في برنامج الكرة . سوف نتابع عندما تلمس الكرة أحد المضربين(هنا استخدمنا المصطلحين baton_1 و baton_2 للمضارب)

يتم استخدام الشرط  "If ... so" لتحديد زاوية الاتجاه بعد التلامس بين الكرة والمضرب والتي تكون 360 درجة ناقص اتجاهها.

ابحث عن الكتلة 360 درجة ... في فئة operator والاتجاه في فئة الحركة.

البحث عن لمس baton_1 / baton_2  في فئة المستشعر

ارجع إلى الحركة لأخذ الكتلة " orient to .. degrees"

يجب دمج كل هذه البرامج النصية في حلقة  "Repeat indefinitely" التي ذكرناها بالفعل في الخطوات قبل

خطوة 8 : تعديل الخلفية

لتعديل الخلفية ، سنرسم خطين أفقيين بألوان مختلفة على كل جانب من الخلفية ، كما هو موضح في الرسم التوضيحي.

سيسمح لنا هذان الخطان بمعرفة من سيكون الفائز والخاسر. سنرى ذلك في الخطوة التالية.

بمعنى آخر ، اللاعب الذي تمكن من لمس الخط خلف خصمه يفوز باللعبة.

سنمضي على النحو التالي :

اضغط على المشهد بجانب الشخصية الصغيرة (رقم 1)

انقر بعد ذلك على علامة التبويب  "backgrounds بجوار "instructions"(رقم 2)

ارسم الآن خطين مختلفين على الخلفية (الرقمان 3 و 4)

خطوة 9 : إنهاء برنامج الكرة

تم تعديل الخلفية ، لذلك دعونا نكمل وننهي برناج  الكرة . لا تغير النصوص ، سنتابع ما بدأناه 

انقر على الكرة لتنشيطها

ارجع إلى علامة تبويب التعليمات

ضع شرطًا  "if ... so" لتحديد ما إذا كانت الكرة تلامس اللون "الأسود" (استخدم لون الكتلة الذي تم لمسه؟) ، يفوز اللاعب الثاني.

ومع ذلك ، إذا لامست الكرة اللون "البنفسجي" (استخدم لون الكتلة الذي لمسته؟) ، يفوز اللاعب الأول.

العثور على كتلة"color touched?"في فئة المستشعر

لا تنس أن تضيف فقاعات المحادثات في فئة المظهر لعرض الفائز

أوقف البرنامج باستخدام كتلة "stop all" في نهاية اللعبة

كل هذه التعليمات يجب أن تكون في  "repeat indefinitely" الذي استخدمناه قبل