** HI实际上我想抛出像射击子弹这样的游戏对象,但它不起作用。它无需等待即可抛出无限的游戏对象。这是我在ARCamera上的脚本。
//Script starts
var prefabBullet : Transform;
var speed : float;
var gameObjects : GameObject[];
function Update () { Invoke("Shoot", 2.0f); }
function Shoot () { yield WaitForSeconds(3);
var instanceBullet=Instantiate(prefabBullet,transform.position,Quaternion.identity);
instanceBullet.rigidbody.AddForce(transform.forward*speed) ;
SomeFunction();
}
function SomeFunction() {
gameObjects = GameObject.FindGameObjectsWithTag ("Player");
for(var i = 0 ; i < gameObjects.length ; i ++)
Destroy(gameObjects[i]);
}
=============================================== =========================
我想在一段时间内抛出游戏对象。**
答案 0 :(得分:0)
function Update () { Invoke("Shoot", 2.0f); }
function Shoot () { yield WaitForSeconds(3);
你在这里所做的就是在通话时加上5秒的延迟,但是每次更新帧都会进行通话,所以你在第一次通话之前得到5秒的延迟,但那时它们将是每一帧。 / p>
设置一个布尔值来控制拍摄时间。
var fire : bool = true;
function Update()
{
if (fire)
{
Shoot();
fire = false;
}
}
function Shoot()
{
yield WaitForSeconds(3);
//do you projectile stuff
fire = true;
}