2016-07-06 16 views
0

Ich versuche ein Spiel zu bauen. Ich habe eine gegnerische KI, die die Position des Spielers benutzt, um sie zu verfolgen und zu bewegen. Aber ich bekomme eine Null-Referenz-Ausnahme, wenn der Spieler stirbt. Kann jemand helfen? Ich habe ein Game-Controller-Skript und ein Skript für die Gesundheit des Spielers. Ich habe keine Probleme in diesen. Aber das Spiel gibt sofort eine Ausnahme von der Feind AI-Skript auch nach dem Versuch, ein Level zu laden.Ich verglich das Spielobjekt mit null sieht nicht so aus wie es funktioniert. Hier ist was ich verglichenNull Referenz Ausnahme in Unity5 wenn GameObject zerstört

if(object.Equals(Target, null)) // doesn't compare 
Application.LoadLevel("menu"); 

Irgendwelche Vorschläge bitte?

+0

Zerstören Sie Player-Objekt nach sterben? Wenn ja, wird nach Destroy (Spieler) dein GameObject entfernt und du kannst nicht darauf zugreifen. So erhalten Sie Null Reference Exception. – Naeim

+0

Ja. Ich zerstöre den Player im Code. Soll ich stattdessen den Player erneut spawnen? –

Antwort

0

Ich verglich die Gameobject mit null if (object.Equals (Target, null))

ich in der Lage war, dieses Problem zu replizieren. Ihr if(object.Equals(Target, null)) tut nicht, was Sie denken, dass es ist. Um zu überprüfen, ob das Objekt null ist, bevor Sie es verwenden, verwenden Sie einfach

if (Target != null) 
    //your code 
+1

Danke. :) Es ist jetzt perfekt –

+0

@SaranyaAnanthakrishnan Super. Bitte schön! – Programmer

+0

Auch die kurze Version ist praktisch, 'if (Target) \\ Ihr Code' – mgear

Verwandte Themen