ليلة البقاء
جزء من قسم إنشاء ألعاب حقيقية في رحلة Unity على Coddy. الدرس 59 من 60.
يقف أحد الناجين في حقل مظلم، وتأتي الخفافيش نحوه طوال الليل، خفاش جديد كل بضع ثوانٍ من إحدى زوايا الحقل الأربع. يطير كل خفاش مباشرةً نحو الناجي، وأول خفاش يصل إليه ينهي الليل. تحسب الساعة في الأعلى الثواني حتى الفجر: اصمد حتى ذلك الحين وستفوز. يجمّد زر الإيقاف المؤقت كل شيء، وعندما ينتهي الليل، يبدأ زر «العب» مجددًا ليلة جديدة.
كُتب البرنامج النصي Player، الذي يحرّك الناجي باستخدام إجراء Move. اكتب GameManager وBat.
التحدي
صعبابدأ ليلة البقاء.
GameManager: مفردInstance، وpublic enum State { Playing, Paused, Won, Lost }وpublic State state.- أثناء Playing، اعرض
Dawn in 12مع عدّ تنازلي لـnightLength(مع التقريب إلى الأعلى)، وأنشئ خفاشًا عند نقاط ظهور عشوائية كلspawnEveryثانية. تجعلLose()الحالة Lost. Bat: أثناء Playing، حلّق نحو اللاعب بسرعةspeedوعلى الارتفاع نفسه؛ وعندما تكون المسافة ضمنreach، استدعِLose().
اضغط «العب»: ستأتي الخفافيش. ثم اضغط «تحقق».
جرّب بنفسك
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using TMPro;
public class GameManager : MonoBehaviour
{
public float nightLength = 15f;
public float spawnEvery = 2f;
public GameObject batPrefab;
public Transform[] spawnPoints;
public TMP_Text dawnText;
public Button pauseButton;
public GameObject pausePanel;
public GameObject endPanel;
public TMP_Text endText;
public Button restartButton;
}
جميع دروس إنشاء ألعاب حقيقية
4المشاهد والمستويات
تحميل مشهدإعادة تشغيل المستوىالمستوى التاليالاحتفاظ بالبيانات بين المشاهدمراجعة: اختيار المستوى10مشروع: لعبة منصات ثلاثية الأبعاد
المسارمنصات متحركة2الأزرار والشاشات
الأزرار وonClickالتعبيرات Lambdaالربط في Inspectorتشغيل اللوحات وإيقافهاأشرطة الصحةمراجعة: متجر الترقيات5الحفظ باستخدام PlayerPrefs
حفظ رقمالتحميل بقيمة افتراضيةأعلى نتيجةحفظ الإعداداتمراجعة: العملات في البنك6مشروع: عدّاء لا نهاية له
ثلاثة مساراتعقبات أمامكتدرّب بنفسك: Playground لـ Unity