后面的题不再是出题顺序了,因为我忘了。
题目三:
提供一个延时函数
///<summy>
///延时执行函数
///</summy>
///<param name="pTime">延时时间ms</param>
///<param name="Action">执行函数</param>
Util.InvokeDeplay(int pTime,Action action)
需求:写出一个能够连续发射三颗子弹的函数,即每隔小段时间发射一颗,每三颗隔更多时间。提供Bullet.prefab,和子弹动画。无需写子弹飞行过程。
答:
void CreateBullet()
{
GameObject bullet = GameObject.Instantiate(Bullet.prefab,spawerPoint.transform.position,spawerPoint.transform.rotation);
Util.InvokeDeplay(10,Destory(bullet));
}
void SpawerThreeBullet(int pTime,GameObject spawerPoint)
{
Util.InvokeDeplay(pTime,CreateBullet());
Util.InvokeDeplay(pTime,CreateBullet());
Util.InvokeDeplay(pTime,CreateBullet());
}
其实我觉得不该这样写,我写这种延时的我是用协程做的
,yield return new WaitForSeconds(0.1f)
但是他既然提供了这样的方法给我用~~~
希望高手给我更好的答案