Flash Ortamında ActionScript Programlamaya Giriş
Gökhan Ceylan Tarih: 1/05/2007 Yorum: 1 adet
Okunma : 789 Tutanlar: Bu yazıyı 0 kişi tuttu.
Flash ve ActionScript ortamında oyun yazarken ya da animasyon yaparken en çok kullandığımız kodları bir uygulama ile kullanmaya çalışalım.
İlk olarak bir movieClip oluşturalım…movieClip mizin instance name ine mcResim adını verelim ve movieClip içine girelim.(movieClip üstüne 2 defa tıklayarak)

MovieClip içinde ilk frame de bir tane resim ekleyelim ve 10. frame ve 20. frame e keyframe (f6) ekleyelim, 20. keyframe de resmimizi free transform ile biraz küçültelim.
10. frame ile 20. frame arasına shape tween verelim. 21. frame e bir keyframe daha ekleyelim ve yeni bir resim ekleyelim daha önceki resmi silelim.
30. ve 40. frame keyframe ekleyelim, 40. keyframe de resmimizi free transform ile biraz küçültelim. 30.frame ile 40. frame arasına shape tween verelim. 41. frame e bir keyframe daha ekleyelim ve yeni bir resim ekleyelim daha önceki resmi silelim. 50. ve 60. frame keyframe ekleyelim, 60. keyframe de resmimizi free transform ile biraz küçültelim.
50. frame ile 60. frame arasına shape tween verelim. İstediğimiz kadar resim sayısını artırabiliriz ancak dikkat etmemiz gereken husus framelerin numaraları 20 şer 20 şer artmakta. MovieClip ile son işimiz ilf frame ine gelip action script yazıyoruz, action script panelini açarak (f9) stop(); komutunu yazıyoruz. Bu komut bizim movieClip tetiklenmediği sürece yani play edilmediği sürece çalışmaya başlamayacak.
MovieClip imizi kontrol edelim (başlat,durdur,ileri,geri) butonları ile… ilk olarak kontrol amacıyla kullanacağımız şekillerimizi çizelim. Aşağıdakine benzer birşey olabilir.
ileri geri play stop
Çizdiğimiz şekilleri tek tek buton yapalım. Buton yapmak için buton özelliği atamak istediğimiz şekli seçiyoruz ve modify>convert to symbol (f8) buton diyoruz. 4 şeklimiz içinde bunu uyguluyoruz. Son olarak da butonlarımıza instance name veriyoruz.
Butonu seçtikten sonra aşağıda properties den instance name kısımlarına sırası ile (btnGeri,btnPlay,btnStop,btnIleri) isimlerini veriyoruz. ActionScriptin Küçük ve büyük harfe duyarlı olduğunu unutmayalım. (case sensitive) buton isimleri her buton için ayrı ayrı verdiğimizi unutmayalım.
Ve bunun üstüne dinamik text oluşturalım ve instance name ine txtDurum diyelim. Burada yaptığımız işlemleri yazdıracağız.
Şimdi action script ile komutlarımız ile butonlara işlevsellik kazandıralım. Sahnemizin ilk frame ine gelerek action script panelini açalım (f9) ve şu komutları yazalım.
Kod:
/*play butonu kök dizin içindeki mcResim movieClip ini başlatacak*/
btnPlay.onPress = function() { _root.txtDurum.text = "Başlatıldı";
//dinamik textimizi başlatıldı olarak değiştirecek ve bize hangi işlemi yaptığımız söyleyecek.
_root.mcResim.play();
//mcResimi başlatacak };
/*stop butonu kök dizin içindeki mcResim movieClip ini ilk frame ine gidecek ve durduracak*/
btnStop.onPress = function() { _root.txtDurum.text = "Durduruldu";
//dinamik textimizi Durduruldu olarak değiştirecek ve bize hangi işlemi yaptığımız söyleyecek.
_root.mcResim.gotoAndStop(1);
// ilk frame gidecek ve duracak };
Şimdi işin biraz gıcık tarafına gelelim. İleri ve geri alma işlemleri.
/* ileri butonu kök dizin içindeki mcResim movieClip ini 20 şer 20 şer artırarak ileri devam edecek ve tekrardan başa dönerek sonsuz bir döngü sağlayacak */
a = 1;
//a değişkenine 1 değerini vererek ilk başlayacağı yeri söylüyoruz
btnIleri.onPress = function() { _root.txtDurum.text = "İleri";
// dinamik textimizi ileri olarak değiştirecek ve bize hangi işlemi yaptığımız söyleyecek
// buraya koşul koyarak değerimiz son frame i geçmiş ise yani son resmimizi başa dönecek
if (a>40) { _root.mcResim.gotoAndStop(1);
//ilk frame e geri dönüyor.
a = 1; } else { a += 20;
// değişkenimizi de 1 e eşitliyoruz başa döndüğümüz için
// a ya atama işlemi ile 20 artırıyoruz bu a=a+20 de olabilir. Unutmuyoruz ki resimler 20 şer 20 şer artıyor frameleri
_root.mcResim.gotoAndStop(a);
//20 şer 20şer artan frameler her seferinde yeni bir resme gidiyor ve duruyor.
} };
/*Geri butonu kök dizin içindeki mcResim movieClip ini 20 şer 20 şer azaltarak geri gelecek ve tekrardan en sona dönerek sonsuz bir döngü sağlayacak */
a = 41;
// a değişkenine 41 değerini vererek ilk başlayacağı yeri söylüyoruz
btnGeri.onPress = function() {
_root.txtDurum.text = "Geri";
// dinamik textimizi geri olarak değiştirecek ve bize hangi işlemi yaptığımız söyleyecek
// buraya koşul koyarak değerimiz ilk frame i geçmiş ise yani ilk resmimizi sona dönecek
if (a<1) { _root.mcResim.gotoAndStop(41);
//son frame e geri dönüyor.
a = 41;
// değişkenimizi de 41 e eşitliyoruz sona döndüğümüz için
} else { a -= 20;
// a ya atama işlemi ile 20 azaltıyoruz bu a=a-20 de olabilir. Unutmuyoruz ki resimler 20 şer 20 şer azalıyor frameleri
_root.mcResim.gotoAndStop(a); );
//20 şer 20şer azalan frameler her seferinde yeni bir resme gidiyor ve duruyor.
} };
Not : Uygulama örnekleri ileriki yazıda verilecektir. Ayrıca 4 Mayıs 2007 tarihinde gerçekletireceğim Adobe Connect sunumumda, burada sizinle paylaştığım örnek çalışmaları pekiştirecek çalışmalar yapacağız.
Haber
İlişkili haber bulunamadı.
Ders
İlişkili ders bulunamadı.
MMIstanbul Adobe UG
ColdFusion, Flex, AIR, Flash, PDF, Dreamweaver, Fireworks, Photoshop, Illustrator, iNdesign, Premiere, Soundbooth, Lightroom, InCopy, JRun, LiveCycle, Acrobat, AfterEffects, Resmi Adobe Kullanıcı Grubu.
Etkinlikler
Fuar
CeBIT 2008 Bilişim Eurasia 7 - 12 Ekim 2008' de
CeBIT 2008 Bilişim Eurasia 7 - 12 Ekim 2008' de
CeBIT Bilişim Eurasia bu yıl 7 – 12 Ekim tarihlerinde düzenleniyor
Adını dünyanın en büyük on fuarı arasına yazdırarak, İstanbul’u Avrasy...
Kategori: Fuar
Kimler Burada? 
Son 1 dakika içinde MMIstanbul' da 242 (0 kayıtlı, 242 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:
MMIstanbul Blog'undan
Neler Yapılabilir?
Yeni bir portal, 30 civarında online / offline etkinlik, seminer vb rağmen MMIstanbul sanıyoruz ki halen hakettiği ilgiyi göremedi. " ...
500 Hatası Hakkında!
Reklam, MMIstanbul ve Yeni Projeler (Durumumuz Bu Tarzında)
Ne Nedir Kampanyası Başlıyor!
Çok Merak Edenler için; MMIstanbul Geliştirme Ekibi ve Çalışma Ortamımız





anlatılanları denedim ama hata iletileri alıyorum nerde yanlış yapıyorum anlamadım? sanırım butonlar ve txtDurum movie clip içinde değil ana sahnede oluşturuluyor, gerçi clip içinde de denedim ama kodları girince hep hata iletisi alıyorum;
sanırım bu senaryo action script 2,0 için geçerli