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);
        }
    }
}

這樣在怪生出來的時候就會自動計算總數量了

留言

熱門文章