- Home /
Projectile Script Works Until Destroying Projectile
So I have a script that launches a projectile from a position on a button press, it works fine, the projectiles start firing and stacking up. So naturally I want to make sure they get destroyed after a short while to save memory etc.
But when I add the destruction line I get a NullReferenceException : Object reference not set to an instance. The code so far is below. Any ideas how I would remedy this? Thanks.
var projectile : Rigidbody;
var speed = 50;
var fireRate = 0.11;
private var lastShot = -10.0;
function Update () {
if(Input.GetButton("Fire1")){
if(Time.time > fireRate+lastShot){
clone = Instantiate(projectile, transform.position, transform.rotation);
projectile.tag = "Fireball";
clone.velocity = transform.TransformDirection( Vector3 (0, 0, speed));
lastShot = Time.time;
}
Destroy(clone.gameObject, 3);
}
}
Which line do you get the NullPointerException on ? (if you click on the error in the console, it should open the script editor with the cursor at the line which is causing the Exception)
Also have you tried doing
Destroy(clone, 3);
ins$$anonymous$$d ? I don't see how only destroying the attached gameObject would free up memory if you'd leave everything else intact.. (or perhaps I'm just wrong about that)
Btw, all this instantiating and destroying is going to make a huge impact on performance, if I were you I'd look into object pooling.
The error happens on line 16 as in
Destroy(clone.gameObject, 3);
The desired effect is that the projectile disappears a second after launching. This script is attached to an empty object, pressing "Fire1" fires the projectile but it crashes the instant the projectile should be deleted and gives me the error.
Removing the word gameObject stops the crash, but doesn't delete the projectile.
Appreciate the help so far!
Update: Ah thankyou ShadoX moving the line worked!
However I'm curious robertbu, why will it impact performance? The projectiles are destroyed after 3 seconds, do they remain in the memory even after destruction?
Your answer
Follow this Question
Related Questions
Projectile Firing From Floor, I Need Some Help 1 Answer
Instantiate prefabs before it comes into view 0 Answers
spell hit rigidbody 1 Answer
Gun Firing help? 2 Answers