Bonjour tout le monde, j'obtiens l'erreur suivante, NullReferenceException: Object reference not set to an instance of an object. Je sais déjà que le code incriminé est le "&& gameObject.name != Parent.name" dans la ligne du if(col.game...), cette erreur devrait apparaître si je n'avais pas initialisé la variable Parent, or celle-ci l'est quelques lignes plus haut. Cela fait un bon bout de temps que je m'arrache les cheveux à trouver une solution, pouvez vous m'aider ?
NB: la définition "GetComponent().parent = null;" est ici pour empêcher le projectile de suivre les mouvements du parent, en d'autres termes, je me sers juste du parent de l'objet pour en créer une référence.
GameObject Parent;
void Start()
{
Parent = GetComponent<Transform>().parent.gameObject;
//On déclare le joueur "parent" du projectile
GetComponent<Transform>().parent = null;
}
void OnCollisionEnter2D(Collision2D col)
{
if (col.gameObject.tag == "Player" && gameObject.name != Parent.name)
{
GameObject[] Players = GameObject.FindGameObjectsWithTag("Player");
Debug.Log("Appel de la fonction d'inversion de position: " + Players[1].name + "" + Players[0].name);
Library.InversePos(Players[1], Players[0]);
Destroy(gameObject);
}
}
Are you watching closely?