Unity

Unity Programında Bir Scriptten Diğer Scripte Ulaşmak

Sahnede yer alan nesnelere atanmış olan scriptler arasında veri alışverişi yapabilirsiniz. Daha önceki derslerimizde componete ait değerlere ulaşmıştık. Script dosyalarda birer component olduğu için içindeki fonksiyon, değişken ya da classlara ulaşabilirsiniz. Bu işlemi yapmanın birden fazla yöntemi vardır. Biz bunlardan iki tanesini göstereceğiz.

Sahnemize gameManager ve testManager isminde iki tane nesne ekleyelim. Bu nesneleri referans alacak GameManager, TestManager isminde de iki tane script dosyası ekleyelim. GameManager script dosyasına aşağıdaki kodları yazalım.

public int deger = 20;
void Start()
{
    print(deger);
}

TestManager script dosyasına da aşağıdaki kodları yazalım.

public GameManager manage;
private void Start()
{
    manage.deger = 30;
}
Dikkat ettiyseniz testManager nesnesi bu kodları yazdıktan sonra bizden manage isminde bir GameManager istemektedir. Oluşturduğumuz GameManager dosyasını buraya kopyalayalım. Projeyi çalıştırdığımızda normalde 20 sayısı görüntülenmesi gerekirken TestManager da yaptığımız değişikle 30 sayısı görüntülenmektedir.
 
Şimdi diğer yönteme bakalım. Değişken yerine yaptığımız fonksiyona ulaşmaya çalışalım. GameManager dosyasını aşağıdaki gibi düzenleyelim.
public void mesaj()
{
    print("Ben GameManager fonksiyonuyum");
}

TestManager dosyasından bu fonksiyonu çalıştıralım. Burada GameManager oluşturmak yeriine GameManager componentinden bir örneklem alacağız. Aldığımız bu class sayesinde GameManager fonksiyonuna ulaşabileceğiz. Aşağıdaki kodları TestManager dosyasına yazalım.

GameManager gameManager;
private void Awake()
{
    gameManager = Object.FindAnyObjectByType<GameManager>();
}
private void Start()
{
    gameManager.mesaj();
}

Projeyi kaydedip çalıştıralım. Console ekranında mesajın listelendiğini görürsünüz.


Etiketler
unity oyun c# animasyon 
İlgili Makaleler
Bilgisayarlı Tasarım Uygulamaları Dersi İkinci Dönem Birinci Yazılı Çalışma Soruları
Unity Programında Button Yardımıyla Sahneler Arasında Geçiş Yapma İşlemleri
Unity Programında Mouse Hareketlerine Göre Kamera Açısını Ayarlama
Unity Programında Sprite İle 2D Animasyon Yapmak
Unity Programında Bir Nesneyi Kodlarla Döndürme İşlemi
Unity Programında Material Kullanımı
Unity Programında Puzzle Oyunu Nasıl Yapılır
Unity Programında Input Get Axis Komutu
Bilgisayarlı Tasarım Uygulamaları Dersi İkinci Dönem İkinci Yazılı Çalışma Soruları
Unity Programında Prefabs Nesnelerini Kodla Çoğaltma
Unity Programında Basit Login Yapımı
Unity Programında Kodlarla Sahneye Nesne Ekleme
Unity Projesinde Sql Server Veri Tabanına Bağlanma
Unity Programında Input GetKey Komutu
Unity Programında Topu Hareket Ettirme Oyunu Kamera Takibini Gerçekleştiriyoruz
İki Sayıyı Toplayan İşlemi Unity Programında Kodlayarak Yapınız
Unity Programında Script Editörünü Ayarlama
Terrain Nedir? Ne İşe Yarar?
Unity Programında Topu Hareket Ettirme Oyunu Oyuna Yeniden Başlama Butonunu Kodlayıp Bitiriyoruz
Unity Programında Tuğla Kırma Oyunu Yapıyoruz Materyalleri ve Projeyi Hazırlama

Yorum Ekle
   
Kötü İyi