<!-- css 字體設定 -->
<style>
.reveal {
font-size: 24px;
}
</style>
# 虛擬實境4-4
<!--放入主題照片 統一 =480x320 -->

[原始課程 link](https://learn.unity.com/tutorial/lesson-4-4-for-loops-for-waves?uv=2019.3&projectId=5cf96846edbc2a2bcde6d0fc#5d1a6a2eedbc2a00247828ea)
###### tags: `虛擬實境AA`
----
## 課程目標
- 學習利用其他常見的函式
- 學習使用多樣的Unity腳本
----
## 學習使用`for-loop`函式 製作多個回合
----

在`SpawnManager.cs`中修改製作多個敵人
```csharp
//void Start()中加上一個函式名稱
SpawnEnemyWave();
//在外面建立一個該名稱的函式
void SpawnEnemyWave(){
for (int i = 0; i < 3; i++){
Instantiate(enemyPrefab, GenerateSpawnPosition(), enemyPrefab.transform.rotation);
}
}
```
----
## 在函式中修改能增加的敵人數
----

打開`SpawnManager.cs`
```csharp
//void Start()中的SpwanEnemyWave()修改為
SpawnEnemyWave(3);
//void SpawnEnemyWave()修改為
void SpawnEnemyWave(int enemiesToSpawn){
for (int i = 0; i < enemiesToSpawn; i++){
Instantiate(enemyPrefab, GenerateSpawnPosition(), enemyPrefab.transform.rotation);
}
}
```
----
## 消滅敵人如果敵人掉下場景
----

打開`Enemy.cs`
```csharp
//void Update中加上if-state
if(transform.position.y < -10) {
Destroy(gameObject);
}
```
----
## 在最後一個敵人被消滅後 生成一個新的回合
----

打開`SpawnManager.cs`
```csharp
//命名一個變數 "敵人數量"
public int enemyCount;
//void Update()中加上
enemyCount = FindObjectsOfType<Enemy>().Length;
if (enemyCount == 0){
SpawnEnemyWave(1);
}
```
----
## 控制每個新的回合增加一個敵人
----

打開`SpawnManager.cs`
```csharp
//命名一個變數 "回合數"
public int waveNumber = 1;
//在void Start()修改為
SpawnEnemyWave(waveNumber);
//在void Update()修改為
enemyCount = FindObjectsOfType<Enemy>().Length;
if (enemyCount == 0){
waveNumber++;
SpawnEnemyWave(waveNumber);
}
```
----
## 在新的回合開始時在場景生成一個效果
----

打開`SpawnManager.cs`
```csharp
//命名一個新的變數
public GameObject powerupPrefab;
```
----

之後將之前存在`prefab`裡的效果移動入`Inspector`中的`powerup Prefab`
----

將場景中的`Powerup`刪除
----

打開`SpawnManager.cs`
```csharp
//在void Start()加上
Instantiate(powerupPrefab, GenerateSpawnPosition(), powerupPrefab.transform.rotation);
//在void Update()的if(enemyCount == 0)裡加上
Instantiate(powerupPrefab, GenerateSpawnPosition(), powerupPrefab.transform.rotation);
```
----
{"metaMigratedAt":"2023-06-15T17:33:02.481Z","metaMigratedFrom":"YAML","title":"虛擬實境4-4","breaks":true,"contributors":"[{\"id\":\"06326c0f-824e-4964-b604-fd9b52334bb2\",\"add\":2709,\"del\":133}]"}