Game Maker’da Windows Dialogs Extension’ı Nedir – Nasıl Kullanılır?

Posted: 28 Haziran 2012 by yasirkula in Diğer Dersler, Game Maker, Oyun Tasarımı
Etiketler:, , , , , , , , , , , , , , , , , , , , , , , ,

Herkese merhaba, bu derste Game Maker’ın kendi “show_message()” gibi fonksiyonlarından sıkılıp ona alternatif arayanlar için daha ilginç bir sistemi, Windows’un kendi uyarı pencerelerini kullanmayı göstereceğim. Bu derste anlatacaklarımı uygulamak için Game Maker’ın PRO sürümü gereklidir!

Başlamadan önce; derste anlatacaklarımı uygulamaya geçirdiğim bir örnek hazırladım, onu sizinle paylaşayım: https://www.box.com/s/667fec3d26f207f10f2e

Dersi görmek için yazının devamını okuyabilirsiniz…

Öncelikle birazdan yazacağımız kodlar başta Game Maker’da hazır bulunmadığı için onları Game Maker’a tanıtmalıyız. Bunu yapmaksa çok kolay. Game Maker’dayken CTRL+Shift+E kombinasyonunu tuşlayın ve gelen Extension Packages ekranından “GM Windows Dialogs”u seçip onu sola taşıyın. Artık hazırız.

NOT: Bu paketin hangi kodları beraberinde getirdiğini görmek için aynı ekranda aşağıdan Help’e tıklayın veya Game Maker’da “Scripts – Show Extension Functions” yolunu izleyin.

Bu paketle beraber gelen en önemli bulduğum fonksiyonları tanıtacağım ben, diğer bazı fonksiyonların nasıl çalıştığını da tam anlamadım zaten :S

— Öncelikle kullanıcıya basit bir ileti göstermek için “wd_message_simple(“İletiniz buraya”);” fonksiyonunu kullanabilirsiniz. Bu fonksiyonun kötü yanı başlığını düzenleyememeniz.. Örnek bir resim:

— Kullanıcıya gelişmiş bir hata-bildirim vb. mesajı göstermek için ise “wd_message_show()” fonksiyonunu kullanabilirsiniz. Burada birkaç ayar söz konusu:

Bu fonksiyonu kullanmadan önce “wd_message_set_text(“İleti buraya.”);” fonksiyonuyla bildirim ekranında gösterilecek mesajı belirtmelisiniz. Ardından “wd_message_show(tür,buton1,buton2,buton3)” fonksiyonunu kullanabilirsiniz. Peki buradaki bu 4 değer nedir?

Tür yerine girebileceğiniz değerler şunlardır:

  • wd_mk_none: Normal bir mesaj
  • wd_mk_warning: Uyarı mesajı
  • wd_mk_error: Hata mesajı
  • wd_mk_information: Bilgi mesajı
  • wd_mk_confirmation: Onay mesajı

Burada seçtiğiniz türe göre pencerenin şekli de değişmekte. Diğer 3 değer olan butonlar için ise şu değerleri girebilirsiniz:

  • wd_mb_none: Buton yok. 3’den az buton istiyorsanız bunu yazmalısınız.
  • wd_mb_ok: OK butonu
  • wd_mb_cancel: İptal butonu
  • wd_mb_yes: Evet butonu
  • wd_mb_no: Hayır butonu
  • wd_mb_abort: İptal butonu
  • wd_mb_retry: Yeniden Dene butonu
  • wd_mb_ignore: Yoksay butonu

Bu sistemin tek bir handikapı (ki o da önemli bir handikap) butonların Türkçe olmaması. Önemli bir bilgi; tuşları hangi sıraya göre yazdığınız önemli değil. Windows otomatik olarak butonları kendi sıraya koyuyor.

Aşağıda örnek bir Information penceresini görebilirsiniz.. (Bu ve diğer fonksiyonları nasıl etkin kullanabileceğinizi görmek için yazının başında verdiğim örneğe mutlaka bakın.)

— Bir başka fonksiyon ise “wd_input_box(“başlık”,”açıklama”,”varsayılan”)”. Bu fonksiyon ile kullanıcıdan veri alabilirsiniz.

Burada başlık ve açıklama yerine istediğiniz metinleri yazabilirsiniz. Varsayılan ise veri girme bölümündeki varsayılan metni, sayıyı ifade etmekte. Bu fonksiyondan da örnek bir resim:

— Bazen kullanıcıdan bir renk seçmesini isteyebilirsiniz. Bu gibi durumlarda “wd_color_dialog_show()” fonksiyonunu kullanabilirsiniz. Böylece kullanıcıya renk seçmesi için bir pencere gösterilir. Ardından eğer kullanıcı renk seçmişse, yani İPTAL’e basmamışsadegisken=wd_color_dialog_get_color()” fonksiyonu ile bu rengi bir değişkene atayabilirsiniz.

Bu fonksiyondan örnek bir resim:

— Ve de son olarak bir başka güzel fonksiyon: Eğer kullanıcıdan bir dosya seçmesini isterseniz “wd_open_dialog_show()” fonksiyonunu kullanabilirsiniz. Eğer kullanıcı bir dosya seçmişse, yani İPTAL’e basmamışsadegisken=wd_open_dialog_get_file()” fonksiyonu ile o dosyaya ulaşmak için gerekli konumu bir değişkene atayabilirsiniz.

Bu fonksiyon oldukça kapsamlıdır ve bu yüzden pek çok alt fonksiyonu bulunur. Burada bunlardan önemli bulduklarımı paylaşacağım:

|– wd_open_dialog_set_caption(“Başlık”) ile dosya seçme penceresine bir başlık verebilirsiniz.

|– wd_open_dialog_set_filter(“Uzantı”) ile seçilecek dosya uzantılarını belirleyebilirsiniz. Çok önemli bir fonksiyon kendisi ve örnek bir kullanımı ise şöyle: “wd_open_dialog_set_filter(“txt Dosyası|*.txt|rtf Dosyası|*.rtf|Word Dosyası|*.doc|Tüm Dosyalar|*.*

|– wd_open_dialog_set_option(özellik,değer) fonksiyonu ile dosya seçme penceresinin bazı özelliklerini değiştirebilirsiniz. Bunlar:

  • wd_fo_filemustexist: Seçilecek dosyanın varolmasını gerektirmeyi sağlar.
  • wd_fo_pathmustexist: Seçilecek dosyaya giden yolun varolmasını gerektirmeyi sağlar.
  • wd_fo_oldstyledialog: Nostalji yapmanızı sağlar. Bu özellik ile dosya seçme penceresinin gayet eski bir versiyonuyla karşılaşırsınız. 🙂
  • wd_fo_forceshowhidden: Gizli dosyaları da görmenizi sağlar.

Bu özelliklerden birini girdikten sonra değerini “true” ya da “false” yapmanız lazım.

Bu fonksiyon gibi olan, ancak bu sefer resim dosyası seçmeye yarayan bir fonksiyon da mevcut: “wd_open_picture_show()” ile resmi seçtikten sonra “degisken=wd_open_picture_get_file()” ile o resme giden yolu bir değişkene atayabilirsiniz.

Eğer resim seçme penceresiyle çalışacaksanız dosya seçme penceresindeki alt fonksiyonlar bu sefer işe yaramaz, yerine sırayla şu fonksiyonlar işe yarar (Açıklamalarını yapmıyorum, üsttekilerle tamamen aynı işe yarıyorlar, sadece isimleri farklı):

|– wd_open_picture_set_caption(“Başlık”)

|– wd_open_picture_set_filter(“Uzantı”)

|– wd_open_picture_set_option(özellik,değer)

Burada yine üsttekilerle aynı özellik isimlerini kullanabilirsiniz. Değer olarak da yine “true” ya da “false” kullanmalısınız.

Bu 2 önemli fonksiyondan da birer resim:

Ve böylelikle bir dersin daha sonuna geldik. Umarım yardımcı olabilmişimdir, yorumlarınızı bekliyorum. Hepinize kolay gelsin!!

NOT: Bu ders Game Maker’daki son dersim olabilir. Bundan sonraki derslerimde Unity’e yoğunlaşmayı düşünüyorum..

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s