- Home /
Simple enemy kill count
Hello, i need to create a simple enemy kill count,
public class EnemyCount : MonoBehaviour {
public int enemyKill = 0;
void Update ()
{
Debug.Log (enemyKill);
}
}
I don't know how change this variable to the destruction of another object, intuitively I thought this method
This is the script of the enemy:
public class randomDirection : MonoBehaviour { public GameObject partcSplit; private float speed = 1.0f; private Vector3 direction; public EnemyCount enemyCount;
void Start()
{
direction = (new Vector3(Random.Range(-1.0f,1.0f), Random.Range(-1.0f,1.0f),0.0f)).normalized;
transform.Rotate(direction);
InvokeRepeating ("speedUp",0,2.0f);
enemyCount = GetComponent<EnemyCount>();
}
void Update()
{
Vector3 newPos = transform.position + direction * speed * Time.deltaTime;
rigidbody.MovePosition (newPos);
if (!(GameObject.FindGameObjectWithTag("Player")))
Destroy (gameObject);
}
void OnCollisionStay (Collision col)
{
if (col.gameObject.tag == "Muri")
{
direction = col.contacts[0].normal;
direction = Quaternion.AngleAxis(Random.Range(-70.0f, 70.0f), Vector3.forward) * direction;
transform.rotation = Quaternion.LookRotation(direction);
}
else
{
Destroy (gameObject);
Instantiate (partcSplit, transform.position, Quaternion.Euler (-90,0,0));
}
}
void OnCollisionEnter (Collision col)
{
if (!(col.gameObject.tag == "Muri"))
{
Destroy (gameObject);
Instantiate (partcSplit, transform.position, Quaternion.Euler (-90,0,0));
enemyCount.enemyKill++;
}
}
void speedUp ()
{
if (speed < 15)
speed += 1;
}
}
but it is wrong, in fact I have an error : NullReferenceException: Object reference not set to an instance of an object.
how can i fix it?
Answer by matheusrma · May 30, 2014 at 10:10 PM
Hello Talyon,
From which line the error come from?
Assuming it is from the line 35:
Have you added the EnemyCount Script to the Enemy GameObject? Seems to me that in the line 6, the GetComponent() is returning null.
Hope it helps
randomDirection.OnCollisionEnter (UnityEngine.Collision col) (at Assets/Script/Enemy/randomDirection.cs:49)
Your answer
Follow this Question
Related Questions
Assigning current color to a variable for fade out (C#) 0 Answers
How would I go about enemy spawning? (C#) 1 Answer
How do you make loop sounds exclusive to distance in C#? 1 Answer
Make player not be seen by AI, when player in foilage and shadows. 1 Answer
Angry Birds Style Loader (Load the Birds to be fired) 0 Answers