Selamun Aleyküm, merhaba bu dersimde Flash Action Scrip 3.0 ile klavye yön tuşlarını kullanmayı anlatacağım. Yukarı tuşu, sağ tuşu, sol tuşu, aşağı tuşu, vs...
Bu uygulama ile çizdiğimiz bir şekli yön tuşlarıyla yukarı, aşağı, sağa ve sola hareket ettireceğiz.
Uygulamaya geçmeden önce klavye komutlarını tanıyalım:
KeyboardEvent.KEY_DOWN : Klavyeden herhangi bir tuşa basılma anıdır.
KeyboardEvent.KEY_UP : Klavyeden basılan herhangi bir tuşun bırakılma anıdır.
Keyboard.UP : Klavyedeki yukarı yön tuşudur. Diğer tuşlar da aynı mantıkla kullanılır.
Keyboard.DOWN : Klavyedeki aşağı yön tuşudur.
Keyboard.RIGHT : Klavyedeki sağ yön tuşudur.
Keyboard.LEFT : Klavyedeki sol yön tuşudur.
Keyboard.A : Klavyedeki A tuşudur. Diğer tuşlar da aynı mantıkla kullanılır.
Yukarıdaki ifadeleri kullanacağımız için önce tanıyalım dedim.
Harekete başlamadan sahnenin koordinatlarını bilmemiz gerekmektedir.
Yukarıdaki sahne resmi çizdim inceleyecek olursak; beyaz alan sahnemizdir. Kırmızı ile işaretli alan ise ekranın başlangıç noktasıdır. Yani x ve y koordinatının sıfır olduğu yerdir. Ekranın x koordinatı yatay düzlemidir. y koordinatı ise dikey düzlemdir.
Yukarıdaki bilgilere göre ekrandaki bir şekli; Kaynak: www.mustafakarsli.com
Sağa hareket ettirmek için x koordinatını arttırmamız gerekmektedir.
Sola hareket ettirmek için x koordinatını azaltmamız gerekmektedir.
Aşağı hareket ettirmek için y koordinatını arttırmamız gerekmektedir.
Yukarı hareket ettirmek için y koordinatını azaltmamız gerekmektedir.
Bu bilgiler ışığında geçelim uygulamayı yapmaya.
Flashı açalım ve sahneye bir kare çizelim, film klibi türünde sembole dönüştürelim ve örnek adını kare yapalım.
Zaman çizelgesinde 1.kareye tıklayalım ve eylemler penceresini açıp aşağıdaki kodları yazalım:
Yukarıdaki kodda kırmızı renkle yazılan yerleri kendimiz isimlendiriyoruz. Size kalmış istediğiniz isimleri verebilirsiniz.
1.satırda, Klavye olayları kütüphaneden ekleniyor.
2,3,20.satırda, hareket isimli fonksiyon tanımlıyoruz. Fonsiyonun içindeislem:KeyboardEvent ile islem adında klavye olayları tanımlıyoruz. islem adını ben verdim. Burada hangi adı verirseniz fonsiyon içinde klavye komutlarını kullanmak için burada verdiğiniz ismi kullanacaksınız.
4,5,6,7.satırda, if şart yapısı tanımlanıyor.
4.satırda, islem.keyCode ile klavyeden basılan tuş bilgisi alınıyor ve Keyboard.UP ile Yukarı yön tuşu mu karşılaştırılıyor. Basılan tuş yukarı yön tuşu ise 6.satırı yani parantez içini yapacak.
6.satırda, kare.y ile kare nesnemizin y koordinat bilgisi alınıyor. kare.y=kare.y-10; ile kare nesnesinin y koordinat değerini 10 piksel azaltıyoruz. Bu sayı size kalmış istediğini bir sayıyı yazabilirsiniz. Yani her yukarı tuşuna bastığımızda nesnenin y koordinatı 10 piksel azalıyor.
Diğer yön tuşları ile else if yapıları da aynı mantıkla yapılıyor.
8,9,10,11.satırda, 12,13,14,15.satırda, 16,17,18,19.satırda, else if şart yapıları tanımlanıyor. Yukarıdaki ile aynı mantık.
10.satırda, kare.y=kare.y+10; ile karenin y koordinatı 10 piksel arttırılıyor.
14.satırda,kare.x=kare.x-10; ile karenin x koordinatı 10 piksel azaltılıyor.
18.satırda, kare.x=kare.x+10; ile karenin x koordinatı 10 piksel arttırılıyor.
21.satırda,stage ifadesi çaışma alanımızı tanımlamaktadır. stage.addEventListener ifadesi ile Çalışma alanına olay ekliyoruz. Parantez içindeki KeyboardEvent.KEY_DOWN,hareket ifadesi ile klavyeden tuşa basılma anına hareket fonksiyonunu çalıştırmasını tanımlıyoruz. Yani klavyeden herhangi bir tuşa basıldığında hareket fonsiyonu çalışacaktır.
Yukarıdaki komutları yazıp Ctrl+Enter ile çalıştırabilirsiniz. Aşağıdanda uygulamayı deneyebilirsiniz.
DERSİN KAYDI:
Dersin videosunu aşağıdan izleyebilirsiniz.
Soru ve görüşlerinizi aşağıdaki yorum ekle bölümünden yazabilirsiniz. Yeni derslerde görüşmek üzere sağlıcakla kalınız.
Mustafa KARSLIKaynak: www.mustafakarsli.com
( 9843 ) kez okundu - 30.04.2015
Action Script 3 Klavye Yön Tuşları Kontrolü, as3, keyboardevent, keycode, keyboard.up, down, left, right, actionscript, flash, cs5, tuş kontrolü, yön tuşları, klavye kontrolü, klavye ile hareket ettirme, mustafa karslı
Ziyaretçi Yorumları
( 1 ) Yorum
esra - istanbul - 11.02.2016 14.46
Merhaba. Bir sorum olacaktı. En sağda bir nesne olsun solda da o kareden olsun kareyi yön tuşuyla sağ doğru hareket ettirip o nesneye çarptığında yani koordinatları aynı olduğunda çarptınız mesajını versin bunu nasıl yapabiliriz??