I am using unity to create a penalty shoot-out game. I also have a power bar in the scene. Now when I click to shoot the ball, the first time , two balls are going off simultaneously . I would like only one ball to be shot . Thanks , and here is my script;
#pragma strict
// maximum width of the powerbar
var fullWidth : float = 256;
//create a boolean flag we can use to stop and start the choosing of power
var choosing : boolean = false;
//create a private variable (not shown in inspector) to store the current set power
private var thePower : float;
//create a slot to assign my ball prefab to.
var ball : Rigidbody;
//create a slot to assign an empty game object as the point to spawn from
var spawnPos : Transform;
var staffingSpeed ;
// create a number to multiply the force by as the value of up to 256 may not be enough to
// effectively shoot a ball forward
var shotForce : float = 5;
function Update () {
// detect if key is released and then call the Shoot function, passing the current
// value of 'thePower' variable into it's 'power' argument
if(Input.GetButtonUp("Jump")){
Shoot(thePower);
}
if(!choosing){
//create a power variable and set it to ping pong function
//from current time to 1, and multiply that by a number (or variable holding a number)
thePower = Mathf.PingPong(Time.time, 1) * fullWidth;
//set the width of the GUI Texture equal to that power value
guiTexture.pixelInset.width = thePower;
}
}
// start the 'Shoot' custom function, establish a
// float variable to be fed with a number when function is called
function Shoot(power : float){
//create a ball, assign the newly created ball to a var called pFab
var pFab : Rigidbody = Instantiate(ball, spawnPos.position, spawnPos.rotation);
//find the forward direction of the object assigned to the spawnPos variable
var fwd : Vector3 = spawnPos.forward;
pFab.AddForce(fwd * power*shotForce);
//pause before resuming the power bar motion
yield WaitForSeconds(2);
}