最后一波后打开
本课属于 Coddy Unity 学习旅程的“物理与游戏玩法”单元。第 65 课,共 71 课。
这一步将完成 Arena Escape:为玩家添加力,为猎人设置速度,通过协程生成波次,通过 Health 脚本造成伤害,并从另一个脚本打开出口。
挑战
中等最后一波结束后打开出口。
- 在
Spawner中,添加[SerializeField] private Exit exit;。场景会将出口垫放入其中。 - 在
SendWaves()中,在for循环之后调用exit.Open();。
按下“开始”,撑过三波敌人,然后跑向绿色出口。接着点击“检查”。
亲手试试
using System.Collections;
using UnityEngine;
public class Spawner : MonoBehaviour
{
[SerializeField] private GameObject hunterPrefab;
[SerializeField] private Transform[] spawnPoints;
[SerializeField] private int waves = 3;
[SerializeField] private float waveDelay = 4f;
void Start()
{
StartCoroutine(SendWaves());
}
IEnumerator SendWaves()
{
for (int wave = 1; wave <= waves; wave++)
{
Debug.Log("Wave " + wave);
for (int i = 0; i < wave; i++)
{
Transform point = spawnPoints[i % spawnPoints.Length];
Instantiate(hunterPrefab, point.position, Quaternion.identity);
}
yield return new WaitForSeconds(waveDelay);
}
}
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
物理与游戏玩法中的所有课
自己练习: Unity 在线编辑器