نقاط الحفظ
جزء من قسم بناء ألعاب حقيقية في رحلة Unity على Coddy. الدرس 50 من 56.
التحدي
متوسطيجب ألا تكلّفك السقوط في الفراغ سوى القليل، لا الجولة بأكملها. احتفظ بكل شيء من الدروس السابقة. يوجد عمودان أحمران على المسار، Checkpoint1 وCheckpoint2، ولكل منهما مُشغِّل ونص برمجي Checkpoint.
في Player:
- حقل
fallYيضبطه Inspector (-5)، ونقطة إعادة ظهور تبدأ من موضع بدء اللاعب. - طريقة عامة
SetCheckpoint(Vector3 point)تجعلpointنقطة إعادة الظهور. - عندما يسقط اللاعب إلى ما دون
fallY، أعده إلى نقطة إعادة الظهور وامسحvelocity. لا يكفي تعيينtransform.positionوحده: إذ تبدأMoveالتالية لوحدة التحكم من الموضع الذي رآه فيه نظام الفيزياء آخر مرة، فتُلغي الحركة. عطّل وحدة التحكم (controller.enabled = false) أثناء تحريك اللاعب، ثم أعد تفعيلها بعد ذلك.
في Checkpoint:
- في المرة الأولى التي يدخل فيها اللاعب (كائن يحمل النص البرمجي
Player) إلى المُشغِّل، عيّن موضع نقطة التفتيش كنقطة إعادة ظهور للاعب، واجعل العمود أخضر (Color.green) وسجّلCheckpoint reached. - لا يحدث شيء عند دخوله مرة أخرى، كي لا تعيد نقطة تفتيش قديمة نقطة إعادة الظهور إلى موضع سابق.
اضغط Play، واصل إلى نقطة تفتيش واقفز في الفراغ، ثم اضغط Check.
جرّب بنفسك
using UnityEngine;
public class Checkpoint : MonoBehaviour
{
// سيُستكمل هذا في درس لاحق: راية تغيّر المكان الذي تعود إليه بعد السقوط.
}
جميع دروس بناء ألعاب حقيقية
4المشاهد والمستويات
تحميل مشهدإعادة تشغيل المستوىالمستوى التاليالاحتفاظ بالبيانات بين المشاهدمراجعة: اختيار المستوى10مشروع: لعبة منصات ثلاثية الأبعاد
المسارالمنصات المتحركة2الأزرار والشاشات
الأزرار وonClickالتعبيرات Lambdaالربط في Inspectorتشغيل اللوحات وإيقافهاأشرطة الصحةمراجعة: متجر الترقيات5الحفظ باستخدام PlayerPrefs
حفظ رقمالتحميل بقيمة افتراضيةأعلى نتيجةحفظ الإعداداتمراجعة: العملات في البنك6مشروع: عدّاء بلا نهاية
ثلاثة مساراتعوائق أمامك