Unity
Beğen (0)

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.

Okunma Sayısı: 1

Etiketler
unity oyun c# animasyon 

Yorumlar

Yorum Ekle
Kötü İyi
İlgili Makaleler
Unity Programında Button Yardımıyla Sahneler Arasında Geçiş Yapma İşlemleri
Unity Programında İlk Script Dosyasını Oluşturma
Unity Programında Detaylı Terrain Özellikleri
Unity Programında Colliderler
Terrain Nedir? Ne İşe Yarar?
Unity Programında Puzzle Oyunu Nasıl Yapılır
Unity Programında Derlenen WebGL Projesini Local Tarayıcıda Çalıştırma
Unity Programında Topu Hareket Ettirme Oyunu Ontriggerenter İle Nesneleri Topluyoruz
Unity Programında Button Elemanı
Unity Programında Tuğla Kırma Oyunu Puan Kazandıkça Yeni Haklar Veriyoruz
Unity Programında Bir Nesneyi Kodlarla Döndürme İşlemi
Unity Programında Bir Scriptten Diğer Scripte Ulaşmak
Unity Programında Loading Tasarımını Yapma
Unity Programında Login Girişinde Kullanıcıyı Bilgilendiren Mesaj Kutusu Oluşturma
Bilgisayarlı Tasarım Uygulamaları Dersi İkinci Dönem Birinci Yazılı Çalışma Soruları
Unity Programında Level Oluşturma
Unity Programında Nesnenin Boyutunu, Rengini, Hareketi Kodla Düzenleme
Unity Programında Çalışma Zamanında Resources Klasöründen Resim Dosyasını Yükleme
IIS İle Localhost Üzerinde Oluşturulan Bir Unity WEBGL Projesini Mamuel Olarak Başlatma ve Çalıştırma
Unity Programında Transform Translate Metodu