之前Boss生產小兵有個小問題,如果你場景做很大,Boss會在後面一直生產小兵,可能你到Boss時,就有一整大隊的小兵等著你,所以來修改一下BossAI的程式
//改這段就好,如果30%機率生產小兵
else if (GetRandom(100))
{
//創造(小兵,自己的位置,自己的角度,產生在自己身上成為自己的子//物件
Instantiate(enemy, transform.position, Quaternion.identity,transform);
//刪除(自己的第一個子物件,五秒後)時間可以自己更改
Destroy(transform.GetChild(0).gameObject, 5f);
}
這樣Boss放出小兵後,5秒小兵就消失囉~來簡單製作一個炸彈功能好囉~先把炸彈從圖庫拖曳出來,放一下碰撞器(記得勾isTrigger),改一下圖層,來修改一下動畫
炸彈一開始應該還沒爆炸,放上基本子彈大小,用錄影模式調整碰撞器大小
記得也要調整變大的前一幀,Loop time記得也要關閉
來畫布右鍵新增一個按鈕,此按鈕不需要文字直接刪除,調整一下位置大小,放一下圖片
來寫boom程式跟Player程式
先開boom跟子彈幾乎一樣
public class Boom : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{
//按照你動畫決定刪除時間
Destroy(gameObject, 2);
}
void Update()
{
//往上前進(4)看你炸彈速度要多快
transform.Translate(Vector3.up * 4 * Time.deltaTime, Space.World);
}
}
炸彈寫完記得製作成預置物
開啟player的程式
//開一個炸彈的物件(記得在unity放上炸彈的預置物Ps.預置物不要拿場景//上的拿資料夾裡的)
[SerializeField] GameObject boom = null;
//等等把這程式放在按鈕上
public void Boom()
{
//創造(炸彈)
Instantiate(boom, transform.position, Quaternion.identity);
}
最後記得把炸彈放在Player的程式,把按鈕安裝程式