NullReferenceException: Object reference not set to an instance of an object HurtEnemy.OnTriggerEnter2D (UnityEngine.Collider2D other) (at Assets/Scripts/HurtEnemy.cs:39)
źródło:
public class HurtEnemy : MonoBehaviour { public int damageToGive; public GameObject DamageBurst; public Transform HitPoint; // Use this for initialization void Start () { } // Update is called once per frame void Update () { } void OnTriggerEnter2D(Collider2D other) { if (other.gameObject.tag == "Enemy") {
//Destroy(other.gameObject);
other.gameObject.GetComponent().HurtEnemy(damageToGive); // TUTAJ PROBLEM
@mattpoz: Skąd masz pewność, że obiekt other.gameObject zawsze będzie posiadał komponent "EnemyHealthManager"? Czy w tej grze nie może się wydarzyć coś takiego, że nastąpi kolizja z elementem który nie ma tego komponentu? Na Twoim miejscu sprawdzałbym to w mniej więcej taki sposób: var enemyHealthManager = other.GameObject.GetComponent(); if(enemyHealthManager != null){ enemyHealthManager.HurtEnemy(damageToGive); }
Chociaż ogólnie mam wrażenie że coś jest tutaj nie tak z tym samym komponentem...
NullReferenceException: Object reference not set to an instance of an object HurtEnemy.OnTriggerEnter2D (UnityEngine.Collider2D other) (at Assets/Scripts/HurtEnemy.cs:39)
źródło:
public class HurtEnemy : MonoBehaviour { public int damageToGive;
public GameObject DamageBurst;
public Transform HitPoint;
// Use this for initialization
void Start () { }
// Update is called once per frame
void Update () { }
void OnTriggerEnter2D(Collider2D other)
{
if (other.gameObject.tag == "Enemy") {
//Destroy(other.gameObject);
other.gameObject.GetComponent().HurtEnemy(damageToGive); // TUTAJ PROBLEM
Instantiate(DamageBurst, HitPoint.position, HitPoint.rotation); } } }
#gamedev (mam nadzieję, że nie będzie linczu)
Na Twoim miejscu sprawdzałbym to w mniej więcej taki sposób:
var enemyHealthManager = other.GameObject.GetComponent();
if(enemyHealthManager != null){
enemyHealthManager.HurtEnemy(damageToGive);
}
Chociaż ogólnie mam wrażenie że coś jest tutaj nie tak z tym samym komponentem...
Dzięki!
@NULLZILLA: mea culpa ( ͡° ʖ̯ ͡°)