تسجيل النقاط وآليات اللعب
- تتبع نتيجة اللاعب بشكل منهجي باستخدام المتغيرات.
- إظهار المتغيرات بوضوح على المنصة كعنصر من عناصر واجهة المستخدم (HUD).
- زيادة أو إنقاص النتيجة عند تحقق شروط معينة (مثل التقاط عنصر أو الاصطدام بعقبة).
- برمجة شروط الفوز (أنت فزت) أو الخسارة (انتهت اللعبة) عند وصول النتيجة إلى حد معين.
1. التتبع المنهجي لنتائج اللاعب
نظام تسجيل النقاط يُحفز اللاعبين ويتتبع مدى تقدمهم. من خلال إنشاء متغير مخصص (مثل "النتيجة" أو "Score")، يمكن للبرنامج تسجيل إنجازات اللاعب بشكل منهجي. يتم تحديث هذا المتغير في الوقت الفعلي بناءً على أداء اللاعب، ليعمل كمقياس أساسي للتقدم داخل اللعبة.
يمكن لمتغيرات النتيجة تتبع عدة أشياء؛ مثل النقاط المكتسبة، العناصر المجمعة، المستويات المكتملة، أو حتى الوقت المنقضي. إنها تجعل بيانات أداء اللاعب مركزية، مما يتيح لك بناء مقاييس تقدم فعّالة وممتعة.
2. عرض المتغيرات كواجهة مستخدم (HUD)
في مجال تصميم الألعاب، تُعرض المعلومات الحيوية على الشاشة من خلال ما يُسمى بـ واجهة المستخدم العلوية (HUD). في سكراتش، عند تحديد مربع الاختيار المجاور لاسم المتغير في لوحة اللبنات، سيظهر هذا المتغير كشاشة قراءة مرئية على المنصة.
يتيح لك النقر بزر الفأرة الأيمن على هذه الشاشة تغيير نمط عرضها: "القراءة العادية" (Normal readout)، "القراءة الكبيرة" (Large readout - لمظهر أنظف يركز على الرقم فقط)، أو "شريط التمرير" (Slider - يسمح للاعب بتعديل القيمة يدوياً). تحديد إحداثيات ومواقع هذه الشاشات يُبقي واجهة اللعبة مرتبة؛ حيث توضع قراءات النتيجة عادةً في الزاوية العلوية اليسرى، ومستويات الصحة في الزاوية العلوية اليمنى.
3. زيادة ونقصان النقاط بناءً على الشروط
يتم تحديث النقاط باستمرار عند استيفاء شروط محددة أثناء اللعب. إذا لامس اللاعب عنصراً
قابلاً للجمع (مثل عملة ذهبية)، يقوم المقطع البرمجي بزيادة النتيجة باستخدام لبنة
غيّر [النتيجة] بمقدار 10. وعلى العكس من ذلك، فإن الاصطدام بالعقبات يمكن أن
يقلل النتيجة باستخدام لبنة غيّر [النتيجة] بمقدار -5. يُعلّم هذا الأسلوب
كيفية ربط التغيرات الرقمية بقواعد اللعب.
إضافة قيم مختلفة بناءً على مستوى الصعوبة يوازن اللعبة ويجعلها أكثر متعة. فمثلاً، يمكن أن تمنح العناصر التي يصعب الوصول إليها 50 نقطة، بينما تمنح العملات السهلة 10 نقاط فقط. الخصم السلبي عند لمس المخاطر يعلم اللاعبين مهارة إدارة المخاطر وتجنب العقبات.
4. تفعيل حالات الفوز/الخسارة بناءً على حد معين (Threshold)
تحتاج كل لعبة إلى شروط واضحة للفوز والخسارة. من خلال وضع شرط (If-statement) داخل الحلقة
التكرارية للعبة (Game Loop)، يمكنك مراقبة ما إذا كان المتغير قد وصل إلى القيمة
المستهدفة. على سبيل المثال، التحقق مما يلي:
إذا كانت <(النتيجة) > 99> إذن [بث (فوز)] لتشغيل مشهد النصر، بينما
التحقق من إذا كانت <(نقاط_الصحة) < 1> إذن [بث (انتهت اللعبة)] يُنظم
مشهد الخسارة وتدفق المشروع بشكل عام.
عند تحقق هذا الحد (Threshold)، تقوم بتشغيل أوامر الإغلاق: إيقاف حركة اللاعب، إخفاء
الكائنات غير الضرورية، تشغيل أصوات الانتصار، وإظهار لوحة ملخص النتيجة النهائية قبل إيقاف
باقي المقاطع البرمجية باستخدام لبنة أوقف [الكل].
تطبيق عملي: لعبة جمع العملات المعدنية
- أضف كائن القط (اللاعب) في الجزء السفلي من المنصة، وقم ببرمجته ليتحرك أفقياً باستخدام السهمين الأيمن والأيسر. أضف كائناً ليمثل "العملة" (Coin) في الجزء العلوي من المنصة.
- أنشئ متغيراً باسم "النتيجة" (Score) واجعله ظاهراً على المنصة. قم بتهيئة "النتيجة" إلى 0 عند النقر على العلم الأخضر.
- قم ببرمجة العملة لتسقط من أعلى الشاشة بشكل مستمر باستخدام حلقة "كرِّر باستمرار": أضف
غيّر الموضع ص بمقدار -6. وأضف شرطاً:إذا <(الموضع ص) < -170> إذن، أعد تعيين موضعها إلى أعلى المنصة باستخداماذهب إلى الموضع س: (عدد عشوائي بين -200 و 200) ص: 170. - أضف شرط استشعار التصادم داخل العملة:
إذا <ملامس لـ (Cat)؟> إذن، شغّل صوت "Coin"، وغيّر "النتيجة" بمقدار 1، ثم أعد تعيين موضع العملة إلى الأعلى مجدداً باستخدام نفس الأمر العشوائي السابق. - أضف شرط التحقق من الفوز داخل المقطع البرمجي للاعب أو المنصة:
إذا <(النتيجة) > 9> إذن،قل [لقد فزت!] لمدة 2 ثانية، ثمأوقف [الكل].
شرح المقطع البرمجي النموذجي
- تهيئة المتغيرات عند البدء: [عند النقر على العلم الأخضر] -> [اجعل (النتيجة) مساوياً (0)].
- برمجة حركة السقوط المستمر للعملة: [كرِّر باستمرار] -> [غيّر الموضع ص بمقدار (-6)] -> [إذا <(الموضع ص) < (-170)> إذن] -> [اذهب إلى الموضع س: (عدد عشوائي بين -200 و 200) ص: (170)].
- معالجة التصادم وتحديث النتيجة: بداخل نفس حلقة العملة، أضف شرطاً جديداً -> [إذا <ملامس لـ (Cat)؟> إذن] -> [شغّل الصوت (Collect)] -> [غيّر (النتيجة) بمقدار (1)] -> [اذهب إلى الموضع س: (عدد عشوائي بين -200 و 200) ص: (170)].
- التحقق المستمر من الفوز: في مقطع موازٍ -> [كرِّر باستمرار] -> [إذا <(النتيجة) > (9)> إذن] -> [قل (لقد فزت!) لمدة (2) ثانية] -> [أوقف (الكل)].
- اختبر اللعبة! تحرك يميناً ويساراً لجمع 10 عملات معدنية للوصول إلى حد الفوز وتفعيل شاشة النصر.