Menu
CoddyTech

生存

本课属于 Coddy Unity 学习旅程的“Unity 游戏架构”单元。第 59 课,共 64 课。

challenge icon

挑战

中等

英雄倒下时结束这一局。

  1. Hero 关闭自身后,会触发新的 public event Action Died。
  2. GameManager.OnEnable 会统计 Enemy.Died 事件中的击杀数,并在 hero.Died 触发时调用游戏结束逻辑;OnDisable 会取消订阅。Start 会隐藏 gameOverPanel。
  3. 游戏结束时,将 Time.timeScale 设为 0 并显示面板,resultText 显示 Wave 2, 7 kills。点击 restartButton 会将其设为 1 并重新加载场景。

按下 “开始”,战斗直到你倒下。然后点击 “检查”。

亲手试试

using System.IO;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
using TMPro;

public class GameManager : MonoBehaviour
{
    [SerializeField] private Hero hero;
    [SerializeField] private WaveSpawner spawner;
    [SerializeField] private GameObject gameOverPanel;
    [SerializeField] private TMP_Text resultText;
    [SerializeField] private TMP_Text bestText;
    [SerializeField] private Button restartButton;

    // 后面的课会补全这部分:本次游戏的结束处理和最佳成绩。
}

Unity 游戏架构中的所有课

自己练习: Unity 在线编辑器