Menu
CoddyTech

ليلة البقاء

جزء من قسم إنشاء ألعاب حقيقية في رحلة Unity على Coddy. الدرس 59 من 60.

يقف أحد الناجين في حقل مظلم، وتأتي الخفافيش نحوه طوال الليل، خفاش جديد كل بضع ثوانٍ من إحدى زوايا الحقل الأربع. يطير كل خفاش مباشرةً نحو الناجي، وأول خفاش يصل إليه ينهي الليل. تحسب الساعة في الأعلى الثواني حتى الفجر: اصمد حتى ذلك الحين وستفوز. يجمّد زر الإيقاف المؤقت كل شيء، وعندما ينتهي الليل، يبدأ زر «العب» مجددًا ليلة جديدة.

كُتب البرنامج النصي Player، الذي يحرّك الناجي باستخدام إجراء Move. اكتب GameManager وBat.

challenge icon

التحدي

صعب

ابدأ ليلة البقاء.

  1. GameManager: مفرد Instance، وpublic enum State { Playing, Paused, Won, Lost } وpublic State state.
  2. أثناء Playing، اعرض Dawn in 12 مع عدّ تنازلي لـnightLength (مع التقريب إلى الأعلى)، وأنشئ خفاشًا عند نقاط ظهور عشوائية كل spawnEvery ثانية. تجعل Lose() الحالة Lost.
  3. 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;
}

جميع دروس إنشاء ألعاب حقيقية

تدرّب بنفسك: Playground لـ Unity