2014-07-14 38 views
0

** HI其实我想扔射击子弹之类的游戏对象但它不起作用。它无需等待就会抛出无限制的游戏对象。这是我在ARCamera上的脚本。在Vuforia拍摄游戏对象

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

=========================================== =============================

我想抛出一些时间流逝之间gameObjects。**

回答

0
function Update() { Invoke("Shoot", 2.0f); } 
function Shoot() { yield WaitForSeconds(3); 

您在这里所做的只是在通话中放置5秒的延迟,但每次更新帧仍然会进行通话,因此您在第一次通话之前会得到5秒的延迟,但随后它们会变为每帧。

设置布尔值来控制何时发生拍摄。

var fire : bool = true; 
function Update() 
{ 
    if (fire) 
    { 
     Shoot(); 
     fire = false; 
    } 
} 
function Shoot() 
{ 
    yield WaitForSeconds(3); 
    //do you projectile stuff 
    fire = true; 
}