Çözüldü Unity ''nullreferenceexception'' hatası veriyor

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

LastikUsman

Hectopat
Katılım
12 Haziran 2021
Mesajlar
664
Çözümler
2
Daha fazla  
Cinsiyet
Erkek
2 tane komut dosyam var, 1'ii kaynak iken diğeri esas kodlarımı yazdığım yer.
İlk iş olarak ana dosyamdan diğer dosyama atıf yaptım.

C#:
public Uelke_Hususiyetleri UeH_AtfI;

Sonra da bu kodu yazdım.

C#:
 public void MB_BasIldIghInda()
 {
 Menue_AtfI.SetActive(false); KamerayI_Ach(); // burada bir sorun yok.
 Debug.Log($"Oyuncu ülkesi: {UeH_AtfI.uelkeler[1]}"); // hatayı aldığım yer.
 }

Basitçe tuşa bastığımda listedeki 2. elemanı seçtiğimi bildirmek istiyorum kendime.
Her şeyi kuralı göre yaptığımı düşünüyorum, oyunu çalıştırmadan bir hata da almıyorum. Ama oyunu çalıştırıp tuşa bastığımda bu hatayı alıyorum "nullreferenceexception: Object reference not set to an instance of an object".
Uelke_hususiyetleri'ni de bir oyun cismine atadım ki içindeki kodlar oyun başladığı gibi çalışsın. Burada da onun kodları var:

C#:
public class Uelke_Hususiyetleri : MonoBehaviour.
{
 public List<string> uelkeler = new List<string>();

 void Start()
 {
 uelkeler.Add("Turuncu Ülke");
 uelkeler.Add("Mavi Ülke");
 uelkeler.Add("Yeşil Ülke");
 }

}

Şimdiden teşekkür ederim.

Meseleyi çözdüm, sebebi atıf yapmak için yazdığım kodu tanımlamamammış. Şöyle ki:
C#:
public Uelke_Hususiyetleri UeH_AtfI;
yazınca kodu yazdığımız komut dosyasını atadığımız oyun cisminde şöyle bir panel oluşuyor:
1741555327763.png

burada none yazan yere tıklayıp atfı yaptığımız ilk komut dosyasının ekli olduğu oyun cismini seçmemiz gerekiyor:
1741555392084.png

Ancak böyle yapınca atıf gerçekleşmiş oluyor.
 
Son düzenleme:

Technopat Haberler

Geri
Yukarı