- Home /
OnColliderEnter - Turret Shoot Only once problem
Hello I using this script (thanks to tornado twins) I upgrade it with if (TurretDistance.ShootDistance == true ){ blah blah} but when i enter a collider it makes only one shoot and then only rotating on my position can anyone tell me why ? thanks
Code:
var LookAtTarget:Transform;
var damp = 2.0;
var bullitPrefab:Transform;
var savedTime=0;
function Update () {
if(LookAtTarget){
var rotate = Quaternion.LookRotation(LookAtTarget.position - transform.position);
transform.rotation = Quaternion.Slerp(transform.rotation, rotate, Time.deltaTime * damp);
//transform.LookAt(LookAtTarget);
var seconds : int = Time.time;
var oddeven = (seconds % 2);
if(oddeven)
{
Shoot(seconds);
}
}
}
function Shoot(seconds)
{
if (TurretDistance.ShootDistance == true ){
if(seconds!=savedTime){
var bullit = Instantiate(bullitPrefab ,transform.Find("spawnPoint").transform.position ,
Quaternion.identity);
bullit.gameObject.tag = "FireballEnemy";
bullit.rigidbody.AddForce(transform.forward * 10000);
savedTime=seconds;
}
}
Code:
static var ShootDistance = false;
function OnTriggerEnter (other : Collider) {
ShootDistance = true ;
}
function OnTriggerExit (other : Collider) {
ShootDistance = false ;
}
Comment
Answer by shinriyo_twitter · Jul 01, 2012 at 08:42 AM
You mistook
OnCollisionEnter is collect
On"Collision"Enter
hi problem was somewhere else problem was becasue bullet that was shoot reach collider and set shootdistance to false so i have to add that only gameobject tagged with tag named player can turn collider off
Your answer
![](https://koobas.hobune.stream/wayback/20220613065014im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Help With Turret 1 Answer
firing a shell from a tank turret 1 Answer
Mini Gun Turret 1 Answer
turret shoot if in range 1 Answer