الدرس السادس: الاستشعار (٣)
في السؤال العاشر، صل كل لبنة برمجية بوظيفتها. فكر في كيفية انتقال الرسائل بين الكائنات: هل ننتظر انتهاء الرسالة أم نرسلها ونكمل العمل فوراً؟ في السؤال الحادي عشر، تحتاج لإكمال الفراغات في المقطع البرمجي لتعريف مفتاح البداية، وتحديد الشرط اللازم للمس الكرة لتغيير المظهر. تأمل حركة الكائنات في الصورة لتستنتج الإجابات الصحيحة وتطبقها في برنامجك.
الاستشعار في البرمجة هو قدرة الكائن على إدراك ما حوله والتفاعل معه، مثل ملامسة كائن آخر أو ضغط مفتاح في لوحة المفاتيح. نستخدم لبنات الاستشعار لنجعل البرنامج يستجيب لأحداث معينة، فإذا حدث الشيء المطلوب (مثل تلامس الكرة مع القفاز)، يتخذ البرنامج إجراءً معيناً (مثل تغيير المظهر). هذا يجعل الألعاب تفاعلية وممتعة؛ لأن البرنامج لا يعمل بشكل ثابت فقط، بل يستجيب لمدخلات اللاعب أثناء التشغيل.
الفكرة الأساسية
الاستشعار يعني جعل الكائن البرمجي يدرك ما يحدث حوله في شاشة اللعبة ويتفاعل معه فوراً.
الشرح
بدلاً من أن يتحرك الكائن بطريقة ثابتة، تجعله لبنات الاستشعار يشعر بملامسة كائنات أخرى أو ضغط أزرار لوحة المفاتيح. عندما يلمس كائن كائناً آخر، يرسل البرنامج إشارة لتنفيذ أمر معين. مثلاً، في لعبة البيسبول، نستخدم لبنة (ملامس لـ) لنتحقق هل لمست الكرة القفاز؟ إذا كانت الإجابة نعم، نغير مظهر الكرة أو نكسب نقطة.
مثال محلول خطوة بخطوة
لتغيير مظهر الكرة عند ملامسة القفاز:
- اسحب لبنة (عند ضغط مفتاح) واختر (Space bar).
- ضع تحتها لبنة (تحرك 200 خطوة).
- أضف لبنة (إذا) وداخلها لبنة (ملامس لـ القفاز).
- ضع داخل (إذا) لبنة (غير المظهر إلى).
أخطاء شائعة
- نسيان وضع أمر (ملامس لـ) داخل لبنة (إذا) الشرطية.
- اختيار كائن خاطئ في قائمة (ملامس لـ).
سؤالان للتدريب مع الإجابة
س1: ما وظيفة لبنة (ملامس لـ)؟ ج: تستخدم للتحقق من ملامسة كائن لكائن آخر لتنفيذ إجراء معين. س2: كيف نجعل الكائن يستجيب لضغط مفتاح في لوحة المفاتيح؟ ج: نستخدم لبنة (عند ضغط مفتاح) ونحدد المفتاح المطلوب من القائمة.