Unity 如何計算場上的所有怪物數量(Static 參數特性)
有時我們會需要計算場上的所有物件數量,如 : 怪物剩餘數量好判斷關卡完成進度之類的
有很多方法可以達成這個目標,但目前感覺最簡單得應該是利用Static的特性來完成。
Static 參數具備有伴隨類的全域性性值,所以在使用時,只需要在怪物腳本上面放一個值就可以計算總數
如 :
public class MonsterCube : MonoBehaviour
{
public static int MonsterCount; //創建一個靜態參數用於計算鎖有的怪物數量
public int HP = 1; //HP不解釋
void Start()
{
MonsterCount += 1; //有掛腳本的怪物一出生就會在MonsterConunt上 +1
}
void Update()
{
if (HP <= 0) //怪掛了就呼叫靜態參數-1
{
MonsterCount -= 1;
Destroy(this.gameObject);
}
}
}
這樣在怪生出來的時候就會自動計算總數量了
有很多方法可以達成這個目標,但目前感覺最簡單得應該是利用Static的特性來完成。
Static 參數具備有伴隨類的全域性性值,所以在使用時,只需要在怪物腳本上面放一個值就可以計算總數
如 :
public class MonsterCube : MonoBehaviour
{
public static int MonsterCount; //創建一個靜態參數用於計算鎖有的怪物數量
public int HP = 1; //HP不解釋
void Start()
{
MonsterCount += 1; //有掛腳本的怪物一出生就會在MonsterConunt上 +1
}
void Update()
{
if (HP <= 0) //怪掛了就呼叫靜態參數-1
{
MonsterCount -= 1;
Destroy(this.gameObject);
}
}
}
這樣在怪生出來的時候就會自動計算總數量了
留言
張貼留言