Hello Unity Community i have an error everytime i destroy the enemy object within the game:
NullReferenceException: Object reference not set to an instance of an object
Gui track taret.Dead () (at Assets/Scripts/Gui track taret.js:17)
Gui track taret.Update () (at Assets/Scripts/Gui track taret.js:40)
i’v tried almost everything but it doesn’t seem to like calling a function in my quest script, Anyways heres the 2 script:
Gui track taret:
var Quest1 : Quest1;
var other : KillSys;
var HealthBar : Transform;
private var MaxHealth : float = 100;
private var MaxBar : float = 0.002;
var Health = 100;
var Enemy : GameObject;
//var DieAnimation : AnimationClip;
function Dead()
{
//animation.Play("DieAnimation");
other.KillCounter();
Destroy (Enemy);
Quest1.Kills();
}
function Update()
{
// --- Change Size Of Bar --- \\
transform.localScale.z = (MaxBar) * (Health/MaxHealth);
// --- Change Colour Of Bar --- \\
if(transform.localScale.z == 0.0001)
{
transform.renderer.material.color = Color.green;
}
if(transform.localScale.z <= 0.0003)
{
transform.renderer.material.color = Color.yellow;
}
if(transform.localScale.z <= 0.0005)
{
transform.renderer.material.color = Color.red;
}
if(Health <= 0)
{
Dead();
}
}
function ApplyDammage (TheDammage : int)
{
Health -= TheDammage;
}
and heres the Quest1 script:
var Killstxt = "Mines Killed: ";
var MaxKills = 5;
static var CurKills = 0;
function OnGUI () {
GUI.Box (Rect (Screen.width*0.9-51, 200, 150, 50), Killstxt + CurKills + " / " + MaxKills);
}
public function Kills(){
CurKills += 1;
}