So i’m trying to make it so when my enemy ship is within a certain range of the Tag “Player” that it fires a projectile at the player tag, but at the moment it’s just firing at any range
var projectile:Rigidbody;
var TorpedoSpeed:float = 0.0;
var shotDelay:float = 3;
var lastshot:float = Time.time;
private var launchLocation:Vector3;
launchLocation = Vector3(transform.position.x,transform.position.y,transform.position.z);
function Update()
{
if ((Time.time - lastshot) > shotDelay) {
TargetObj = GameObject.FindGameObjectWithTag("Player");
lastshot = Time.time;
var dist = Vector3.Distance(TargetObj.transform.position, TargetObj.transform.position) < 10;
GetLaunchLocation();
var instantiatedProjectile:Rigidbody = Instantiate(projectile,launchLocation,transform.rotation);
instantiatedProjectile.transform.Rotate(Vector3(0,0,0));
instantiatedProjectile.velocity = transform.forward * TorpedoSpeed;
Physics.IgnoreCollision(instantiatedProjectile.collider,transform.root.collider);
}
}
function GetLaunchLocation()
{
launchLocation = Vector3(transform.position.x,transform.position.y,transform.position.z);
}
Also this is my first time using Unity Answers so please forgive me if i formatted my code wrong.