hi, im making an bullet with a explosion but i only want players from a different team to get pushbacked. howwever im getting this error messeage:
“object reference not set to an instance of an object unity”
on this line:
if(this.gameObject.GetComponent<SpellData>().Team != hitObject.GetComponent<Team>().TeamNum && hitObject.rigidbody){
i cannot get the TeamNum variable from my hitObjects, anyone have a solution?
Thanks!
void OnTriggerEnter(Collider col){
Debug.Log("explode!");
DoExplode ();
}
void DoExplode()
{
Collider[] collider = Physics.OverlapSphere(transform.position, m_ExplosionRadius);
exploFab = Instantiate(m_RadiusFab,transform.position,transform.rotation) as GameObject;
foreach(Collider hitObject in collider)
{
if(this.gameObject.GetComponent<SpellData>().Team != hitObject.GetComponent<Team>().TeamNum && hitObject.rigidbody){
hitObject.gameObject.SendMessage("InflictDamage", m_ExplosionDamage,SendMessageOptions.DontRequireReceiver);
hitObject.gameObject.rigidbody.AddForce((hitObject.transform.position - transform.position).normalized *m_ExploPushback);
}
}
Destroy(gameObject);
}
}