Flash Actionscript
Posted by : TheCaporTa
on 02:30
Ders 1 : Flash ta Mouse İmlecini Degistirmek
Oncelikle mouse olarak kullanmak istedigimiz movieclip nesnesini olusturuyoruz.Daha sonra sahnemizde movieclip nesnemizi secerek actions panelini acıyoruz ve alttaki kodları yazıyoruz . . .
onClipEvent(load) {
Mouse.hide();
startDrag(this,true);
}
Ders 2 : Flash ta bir buttona tıklakotu soz bir .swf dosyasını cagırmak
Bir cok oyunda gormussunuzdur.Bazen oyunun tekrar baslatılması icin bu yontem kullanılır.Simdi bunun kodları sunlardır :
on(release) {
loadMovieNum(".deneme.swf",0);
}
Ders 3 : Flash ta aaaascreen (tam ekran) yapmak icin ActionScript Kodları
aaaascreen ekran yapmak icin once birinci layer (sayfayı) actions modunda acıp su kodları yazıyoruz :::
stop();
fscommand("aaaascreen","true");
Ders 4 : Flash ta bir buttona tıklakotu soz bir movieclip nesnesini boyamak
İlk once bir dikdortgen ciziyoruz.Daha sonra klavyedeki F8 tusuna basarak movieclip nesnesi olarak kaydediyoruz.Daha sonra altaki paneldeki instance name yazan yere gelip, " dik " ismini veriyoruz.Daha sonra bir button olusturup onun actionscriptine su kodları yazıyoruz . . .
on(release) {
myColor=newColor("dik")
myColor.setRGB(0x0000FF)
}
yazmaktan ibarettir.
Eger farklı bir renkte boyamak istiyorsanız setRGB yazan yerin yanındaki yeri degistirebilirsiniz . .
Ders 5 : Flash ta bir buttona tıklakotu soz calısan .swf dosyasını kapatmak
Once bir nesne cizip sectikten sonra F8 e basıp button olarak ayarlayalım.Sonra buttonun actionscriptini acıp su kodları yazalım :
on(release) {
fscommand("quit")
}
Ders 6 : Flash ta text dosyasını gostermek
Bu olay object komutu kullanarak yapılabilir.Oncelikle sayfaya bir dinamic text olusurup instance namesine textalan yazıyoruz.Sonra bos bir layere
objekt = new LoadVars();
objekt.onLoad = function ()
{
textalan.html = true;
textalan.htmlText = this.baslik;
};
objekt.load("deneme.txt"); //buraya txt dosyanın ismi gelecek
bu kodları yazıyoruz.Bu sayede flasha .txt dosyası ekrana gelecektir.Siz txt dosyasını degistirdiginiz zaman bile bu flash dosyasına yansıyacaktır . . .
Ders 7 : Flash ta preloading yapımı
Bağlantı hızının oldukça düşük olduğu ülkemizde Flash animasyonlarını download ile eş zamanlı olarak seyretmek oldukça güç oluyor. Animasyonun ara ara takılması, tüm çalışmamızı alt üst ediyor.
Buna çözüm olarak animasyonunuzun başına bir Yükleniyor ibaresi koyabilir, asıl animasyon tam olarak yüklendiği anda animasyonu başlatabilirsiniz.
Çok değişik yollara başvurarak bu işlemi gerçekleştirebilirsiniz. Anlatacağım yöntemi ilk Flash kullandığım zamanlarda kendim bulmuştum. Hala daha ufak geliştirmeler yaparak aynı tekniği kullanmaktayım.
Yeni bir Scene yaratın. Bu Sceneyi Başlangıç Scene’si olarak ayarlamayı unutmayın. Bunun için Window * Inspectors * Scene menüsünü kullanın.
10. Frame e bir aaa Frame ekleyin. ( F6 )
İlk frame ile 10. frame arasında kısa bir animasyon yaratın. Yanıp sönen bir "Yükleniyor" yazısı olablir mesela...
11. Frame’e bir aaa Frame ekleyin. ( F6 ). Timeline kısmında şöyle bir görüntü elde etmiş olmalısınız:
11. aaa Frame çift tıklayın yada sağ tıklakotu soz Properties i seçin. Açılan kutuda Actions sekmesine tıklayın. Üzerinde + yazan düğmeye tıklakotu soz Go To seçeneğini seçin. Sağ alt köşedeki Control : Goto and Play yazan kutuyu seçili hale getirin. Scene yazan açılır menüden de yüklenme animasyonu yaptığımız yani üzerinde çalıştığımız Sceneyi seçin. Benim çalışmamda Scene 1 olduğu için ben Scene1 i seçtim. Actions kutusunda şöyle bir görüntü elde etmiş olmalısınız :
Şimdi asıl animasyonun olduğu Scene ye gidin. ( Sağ üst taraftaki iki düğmeden solda olan düğme ile Sceneler arası gezebilirsiniz. ) Animasyonunuz Scene 2 de olduğunu ve 200. framde son bulduğunu varsayalım. 200. aaa Frame’e çift tıklakotu soz, Label sekmesine tıklayın ve bu aaaframe bir ad verin. ( Son Frame vb.)
Tekrar Yükleniyor animasyonunun olduğu Sceneye dönün. ( Biz Scene 1’e dönüyoruz.) 10. aaa Frame’e çift tıklayın yada sağ tıklakotu soz Properties’i seçin. Actions sekmesine tıklayın. + yazan düğmeye basarak If Frame is Loaded seçeneğini seçin. Sağ tarafta Scene menüsünden Scene 2 yi (Asıl animasyonun olduğu Scene yani..) seçin. Frame menüsünden Label’ı seçin ve açılır menüden Son Frame’i seçin. ( 6. aşamada verdiğiniz isim.)
Tekrar + tuşuna basarak Go To seçin. Sağ alt kısımın Go To and Play olarak seçilmiş olduğuna dikkat edin. Scene açılır menüsünden Scene 2 yi seçin. Şu görüntüyü elde etmiş olmalısınız:
İşte oldu ! Hata yapmadan bu aşamaya kadar geldiyseniz artık bir loading scene sine sahipsiniz. Denemek istiyorsanız eğer, dosyayı publish ettikten sonra Flash’te .SWF dosyasını açın. Control menüsünden Show Streaming i seçin. Daha sonra bağlantı hızını aynı menüden istediğiniz gibi ayarlayabilirsiniz.
Nasıl Çalışıyor ?
İlk Scenede 10. Frame’e geldiği zaman Scene 2 nin son Frame’i yüklenmiş mi diye kontrol ediyoruz. Eğer yüklenmemişse hiç bir şey yapmadan yolumuza devam ediyoruz. Karşımıza çıkan 11. Frame bizi 1.Frame e tekrar geri yollluyor. Bu şekilde sürekli 10. Frame de kontrol yapıyoruz. 10. Frame’e geldiğimizde eğer Son Frame de yüklenmişse direk olarak Scene2 nin ilk Frame ine atlıyoruz ve animasyonumuz başlıyor.
Eliniz alıştıkça daha değişik ve komplike yükleme dosyaları oluşturabilirsiniz. Mesela insanların yüklenme sırasında sıkılmasını istemiyorsanız, ara yüklemeler yaparak ufak animasyonlar
Ders 8 : Flash ta e-mail buttonu yapmak
E-Mail butonu yapimida tipki normal buton gibidir.Programimizi çalistirdiktan sonra buton yapmak istedigimi nesnemizi çizelim.Örnegin bir kareyi butonumuz yapalim.Bunu öncelikle çizdigimiz karemizin tamamini seçerek F8 butonuna basariz ve karsimiza çikan diyalog kutusundan Buton seçenegini seçeriz.
Daha sonra dügmemizin etkilesimli olmasini istiyorsak;Örnegin üzerine geldigimizde buton yapimi yaizmizin beyaz olmasi ve arka planinda mavi rengi yerine kirmizi olmasini istiyorsak yapmamiz gereken butonumuza çift tiklamak veya sag tiklayip edit,edit in place veya edit in new window seçeneklerinden birini seçeriz.Daha sonra karsimiza yeni bir timeline çikacaktir.
Bu Timelinede bulunan Up frame’I butonumuzun normal halidir.Over frame’I butonumuzun üzerine fare ile geldigimizde ne olacagi,Down frame’I faremiz ile üzerine gelip tikladigimizdaki tiklanmis hali en son olarak da Hit frame’I faremizin butonumuzu ne kadar alan içinde algilmasini istedigimizi ayarlariz.Son olarakda scene butonuna tiklariz ve butonumuza sag tiklar actions menüsünü seçeriz.Ve karsimiza çikan object actions menüsünden Get URL komutunu ekleriz butonumuza.yazdigimizda ve butonumuza tikladigimiza bundan sonra direk olarak makinemizde bulunan Outlook programini çalistiracaktir ve bu adresi direk olarak gidecek E-Mail bölümüne yazar.
Ders 9 : Flash ta cok basit bir oyun yapmak
ActionScript ile bir cok oyun tarzi gelistirmek mumkundur.Su an action Script kullanarak
yapilabilecek en basit oyunlardan biri olan sayi tahmini oyununu gelistirmeye calisalim.
1)Yeni bir flash dokumani olusturun ve text option paneline girin.
(Window>Panels>Text Option)
2)Text option panelinden acilir menuye gecin ve DYNAMIC TEXT ozelligini aktif hale
getirin.
3)Daha sonra Character Paneline gecin ve font buyuklugune 20-25 arasi bir deger verin.
(Istediginiz font´u kullanabilirsiniz.) (window>panels>Character)
4)Simdi sahneye donun ve sahnenin ust kismina,sahnenin enini kaplayacak sekilde bir
text kutusu olusturun.(tools Bolumundeki text aracini kullanmalisiniz.)
Kutunun boyu imlecin buyuklugune yakin olmalidir.
5)Tekrar Text Option paneline girin ve Variable bolumune " Mesaj " yazin.(Tiknak isaretlerini
kullanmayiniz.)
6)Ayni paneldeki selectable ozelligini kaldirin.Border/bg ozelligi secili durumda
ise kaldirin.Embed fonts butonlarindan aktif halde olani varsa iptal edin.
7)Su an sahnenin uzerinde sahnenin enlemesine olusturulmus bir text kutusu gormeniz,
text option bolumunde dynamic text,single line,Mesaj,yaziyor olmasi gerekir.
Sahne uzerine gelin ve tools bolumunde bulunan text araci ile tekrar bir text
kutusu olusturun.Bu kez ustte bulunan text kutusunun biraz altina,toplam iki karekter
sigabilecek kadar eni olan bir kutu olusturun.
9)Bu ikinci text kutusu secili durumda iken,(kenarlari mavi bir renkte iken)
textOptions Paneline girin ve secili durumda olan dynamic text ozelligini INPUT TEXT
olarak degistirin.Variable kismina " Tahmin " yazin.Border/bg ozelligini aktif hale
getirin.Max Chars kismina " 2 " yazin.Embed Fonts ozelliklerinden uzerinde " 123 " yazan
butonu aktif hale getirin.
10)Su an sahnenin uzerinde biri dynamic text,biri input text olmak uzere iki text
kutusu gormeniz gerekmektedir.Buyuk ihtimalle ikisininde font buyuklugu ayni.Simdi
sahnenin uzerine bir buton olusturun ya da varolan bir library´den surukleyin.
11)Simdi sahnede iki text kutusu birde buton olmalidir.Text kutularinin ve butonun
olusturuldugu frame´in action´una girin ve asagidaki kodlari yazin.
tutulanSayi=random(100);
mesaj = "Sayiyi tuttum tahmin etmeye baslayabilirsin";
denemeSayisi=0;
tahmin = " ";
stop();
12)Bu kodlari Frame´in action´una girdikten sonra sahne uzerindeki butona sag tiklayin
ve action Panelini acin.Asagidaki kodlari girin.
on(release){
denemeSayisi++;
if(tahmin==tutulanSayi){
gotoAndStop(2);
}
else if(tahmin <>
mesaj="Benim tuttugum sayi" + " " + tahmin + " " + "sayisindan buyuk!";
}
else{
mesaj = "Benim tuttugum sayi" + " " + tahmin + " " + "sayisindan kucuk!";
}
tahmin = " ";
}
13)Butonun kodlarini da girdikten sonra,text option paneline geri donun ve secili durumda
olan input text ozelligini STATIC TEXT olarak degistirin.Sonra sahneye geri donun ve
butonun altina text araci ile "Tahmin et" yazisi olusturun.
14)Sahnenin bir frame´den olusmasi,ve frame´de iki text kutusu, birde buton olmasi
gerekir.Bu bilgilerin dogrulunu kontrol edin.
15)Daha sonra klavye uzerindeki F6 tusu ile ikinci bir frame olusturun.Ikinci frame´de de
tum objelerin bu frame´e kopyalanmasi gerekir.
16)Simdi ikinci Frame´in action Paneline girin ve asagidaki kodlari yazin.
mesaj = "Tebrikler! Tuttugum sayiyi" + " " + denemeSayisi + " " + " denemede buldun!";
stop();
17)Daha sonra ikinci frame´de kopyalanmis butonun action paneline girin ve varolan komutlarin
hepsini silin.Asagidaki kodlari yazin.
on(release){
gotoAndStop(1);
}
18)Kodlari girdikten sonra bu kopyalanmis butonun altindaki "Tahmin et" yazisini silin
onun yerine "Tekrar" yazisi olusturun.
19)Oyun tamamlanmistir.Filminizi test edin,hatalar varsa nerelerde oldugunu tam
olarak belirleyin ve ilgili kademeye geri donerek gerekli duzeltmeleri yapin.
Kodlarin aciklamasi;
Ilk Frame´in action´unda;
tutulanSayi=random(100);
mesaj = "Sayiyi tuttum tahmin etmeye baslayabilirsin";
denemeSayisi=0;
tahmin = " ";
stop();
Komutlari bulunmaktadir."tutulanSayi" bir degiskendir ve random komutu ile
0-99 arasinda rasgele sayi belirlemektedir.Daha sonra "mesaj" degisken ismine sahip
text´e "Sayiyi tuttum tahmin etmeye baslayabilirsin" yazisini atamaktadir."denemeSayisi"
isimli degisken,butona kac kez basildigini yani kac kez tahmin girildigini kontrol
etmek icin atanmistir.Burada baslangic degeri " 0 " olarak verilmistir cunku daha butona
basilmamistir."tahmin" degisken ismine sahip text kutusu " "; ifadesi ile tum karekter
girdilerinden temizlenmektedir.Daha sonra timeline´in bu frame´de durmasi icin stop();
komutu uygulanmistir.
Ayni frame´deki butonun action´unda;
on(release){
denemeSayisi++;
if(tahmin==tutulanSayi){
gotoAndStop(2);
}
else if(tahmin <>
mesaj="Benim tuttugum sayi" + " " + tahmin + " " + "sayisindan buyuk!";
}
else{
mesaj = "Benim tuttugum sayi" + " " + tahmin + " " + "sayisindan kucuk!";
tahmin = " ";
Komutlari bulunmaktadir.Bu buton,girilen tahmini kendi belirledigi rakamla karsilastirma,
karsilastirdigi degerlerin sonucunu "mesaj" degisken ismine sahip text´e atama gorevini
yerine getirir."denemeSayisi++" komutu kac kez tahminde bulunuldugunu hesaplamak icindir.
Her butona basildiginda bu sayi artar.
Ilk kosul ifadesinde "tahmin" degiskeninin degeri ile "tutulanSayi" degiskeninin
degerleri kontrol edilmektedir.Eger iki degerde birbirine esit ise,timeline´in ikinci frame´ine
gitmesini emreder.Ikinci kosul ifadesi "tahmin" degiskeninin "tutulanSayi" degiskeninden
kucuk oldugu durumlari kontrol eder.Eger kosul saglanirsa "mesaj" adli text kutusuna,
"Benim tuttugum sayi" + " " + tahmin + " " + "sayisindan buyuk!" ifadesini atar.Burada iki
string ifadesi,birde degisken degeri atanmistir."tahmin" adli degiskenin degeri girilen
tahmin oldugu icin 50 rakamini tahmin olarak giren bir kullanici ekranda
"Benim tuttugum sayi 50 sayisindan buyuk!" ifadesini gorur." " ifadelerin arasinda bosluk
olmasini saglar.Diger kosullu ifade ise bu iki kosulun saglanmamasi durumunda calisir.
Bu yalniz "tahmin" degiskenin "tutulanSayi" degiskeninden buyuk oldugu degerler icin gecerlidir.
Ikinci kosul ifadesinde oldugu gibi yine "mesaj" adli text kutusuna belirtilen ifadeyi atar.
tahmin = " "; ifadesi,butona her basildiginda "tahmin" degisken ismine sahip text kutusunda
bulunan tum karekterleri siler.
Ikinci frame´in action´unda;
mesaj = "Tebrikler! Tuttugum sayiyi" + " " + denemeSayisi + " " + " denemede buldun!";
stop();
Komutlari bulunmaktadir.Bu,"tahmin" degerinin "tutulanSayi" degeri ile esit oldugu,yani
tahminin basarili oldugu durumlarda gecerli oldugundan "mesaj" adli text kutusuna
"Tebrikler! Tuttugum sayiyi" + " " + denemeSayisi + " " + " denemede buldun!" ifadesini
atar.Timeline´in bu frame´de durmasi icinse stop(); komutu kullanilmistir.
Ikinci Frame´de bulunan butonun action´unda;
on(release){
gotoAndStop(1);
Komutlari bulunmaktadir.Bu komutlar buton basildiginda timeline´in ilk frame´e gitmesini
emreder.Ve oyun yeniden baslar.
Ders 10 : Flash ta kayan yazı hazırlamak
Öncelikle yer degistirmesi istedigimiz yaziyi yazariz.Ve nereye kayacak oldugunu belirleriz kendi kafamizda.Daha sonra yazdigimiz yaziyi seçerek F8 butonuna tiklariz ve karsimiza çikan diyalog kutusundan graphic seçenegini seçeriz.
Daha sonra animasyonumuzun kaç kare sürecegini belirleriz. Ve örnegin 40 frame olarak belirledik ve 40. frame’ e gideriz ve F6 tusuna basarak oraya bir frame ekleriz. Ve bu frame’de yazimizin nereye kaymasini isityorsak o bölüme kaydiririz ve daha sonra animasyonumuzun ilk frame’ine gelerek sag tiklariz ve karsimiza çikan menüden Create Motion Tween seçenegini seçeriz.
Oncelikle mouse olarak kullanmak istedigimiz movieclip nesnesini olusturuyoruz.Daha sonra sahnemizde movieclip nesnemizi secerek actions panelini acıyoruz ve alttaki kodları yazıyoruz . . .
onClipEvent(load) {
Mouse.hide();
startDrag(this,true);
}
Ders 2 : Flash ta bir buttona tıklakotu soz bir .swf dosyasını cagırmak
Bir cok oyunda gormussunuzdur.Bazen oyunun tekrar baslatılması icin bu yontem kullanılır.Simdi bunun kodları sunlardır :
on(release) {
loadMovieNum(".deneme.swf",0);
}
Ders 3 : Flash ta aaaascreen (tam ekran) yapmak icin ActionScript Kodları
aaaascreen ekran yapmak icin once birinci layer (sayfayı) actions modunda acıp su kodları yazıyoruz :::
stop();
fscommand("aaaascreen","true");
Ders 4 : Flash ta bir buttona tıklakotu soz bir movieclip nesnesini boyamak
İlk once bir dikdortgen ciziyoruz.Daha sonra klavyedeki F8 tusuna basarak movieclip nesnesi olarak kaydediyoruz.Daha sonra altaki paneldeki instance name yazan yere gelip, " dik " ismini veriyoruz.Daha sonra bir button olusturup onun actionscriptine su kodları yazıyoruz . . .
on(release) {
myColor=newColor("dik")
myColor.setRGB(0x0000FF)
}
yazmaktan ibarettir.
Eger farklı bir renkte boyamak istiyorsanız setRGB yazan yerin yanındaki yeri degistirebilirsiniz . .
Ders 5 : Flash ta bir buttona tıklakotu soz calısan .swf dosyasını kapatmak
Once bir nesne cizip sectikten sonra F8 e basıp button olarak ayarlayalım.Sonra buttonun actionscriptini acıp su kodları yazalım :
on(release) {
fscommand("quit")
}
Ders 6 : Flash ta text dosyasını gostermek
Bu olay object komutu kullanarak yapılabilir.Oncelikle sayfaya bir dinamic text olusurup instance namesine textalan yazıyoruz.Sonra bos bir layere
objekt = new LoadVars();
objekt.onLoad = function ()
{
textalan.html = true;
textalan.htmlText = this.baslik;
};
objekt.load("deneme.txt"); //buraya txt dosyanın ismi gelecek
bu kodları yazıyoruz.Bu sayede flasha .txt dosyası ekrana gelecektir.Siz txt dosyasını degistirdiginiz zaman bile bu flash dosyasına yansıyacaktır . . .
Ders 7 : Flash ta preloading yapımı
Bağlantı hızının oldukça düşük olduğu ülkemizde Flash animasyonlarını download ile eş zamanlı olarak seyretmek oldukça güç oluyor. Animasyonun ara ara takılması, tüm çalışmamızı alt üst ediyor.
Buna çözüm olarak animasyonunuzun başına bir Yükleniyor ibaresi koyabilir, asıl animasyon tam olarak yüklendiği anda animasyonu başlatabilirsiniz.
Çok değişik yollara başvurarak bu işlemi gerçekleştirebilirsiniz. Anlatacağım yöntemi ilk Flash kullandığım zamanlarda kendim bulmuştum. Hala daha ufak geliştirmeler yaparak aynı tekniği kullanmaktayım.
Yeni bir Scene yaratın. Bu Sceneyi Başlangıç Scene’si olarak ayarlamayı unutmayın. Bunun için Window * Inspectors * Scene menüsünü kullanın.
10. Frame e bir aaa Frame ekleyin. ( F6 )
İlk frame ile 10. frame arasında kısa bir animasyon yaratın. Yanıp sönen bir "Yükleniyor" yazısı olablir mesela...
11. Frame’e bir aaa Frame ekleyin. ( F6 ). Timeline kısmında şöyle bir görüntü elde etmiş olmalısınız:
11. aaa Frame çift tıklayın yada sağ tıklakotu soz Properties i seçin. Açılan kutuda Actions sekmesine tıklayın. Üzerinde + yazan düğmeye tıklakotu soz Go To seçeneğini seçin. Sağ alt köşedeki Control : Goto and Play yazan kutuyu seçili hale getirin. Scene yazan açılır menüden de yüklenme animasyonu yaptığımız yani üzerinde çalıştığımız Sceneyi seçin. Benim çalışmamda Scene 1 olduğu için ben Scene1 i seçtim. Actions kutusunda şöyle bir görüntü elde etmiş olmalısınız :
Şimdi asıl animasyonun olduğu Scene ye gidin. ( Sağ üst taraftaki iki düğmeden solda olan düğme ile Sceneler arası gezebilirsiniz. ) Animasyonunuz Scene 2 de olduğunu ve 200. framde son bulduğunu varsayalım. 200. aaa Frame’e çift tıklakotu soz, Label sekmesine tıklayın ve bu aaaframe bir ad verin. ( Son Frame vb.)
Tekrar Yükleniyor animasyonunun olduğu Sceneye dönün. ( Biz Scene 1’e dönüyoruz.) 10. aaa Frame’e çift tıklayın yada sağ tıklakotu soz Properties’i seçin. Actions sekmesine tıklayın. + yazan düğmeye basarak If Frame is Loaded seçeneğini seçin. Sağ tarafta Scene menüsünden Scene 2 yi (Asıl animasyonun olduğu Scene yani..) seçin. Frame menüsünden Label’ı seçin ve açılır menüden Son Frame’i seçin. ( 6. aşamada verdiğiniz isim.)
Tekrar + tuşuna basarak Go To seçin. Sağ alt kısımın Go To and Play olarak seçilmiş olduğuna dikkat edin. Scene açılır menüsünden Scene 2 yi seçin. Şu görüntüyü elde etmiş olmalısınız:
İşte oldu ! Hata yapmadan bu aşamaya kadar geldiyseniz artık bir loading scene sine sahipsiniz. Denemek istiyorsanız eğer, dosyayı publish ettikten sonra Flash’te .SWF dosyasını açın. Control menüsünden Show Streaming i seçin. Daha sonra bağlantı hızını aynı menüden istediğiniz gibi ayarlayabilirsiniz.
Nasıl Çalışıyor ?
İlk Scenede 10. Frame’e geldiği zaman Scene 2 nin son Frame’i yüklenmiş mi diye kontrol ediyoruz. Eğer yüklenmemişse hiç bir şey yapmadan yolumuza devam ediyoruz. Karşımıza çıkan 11. Frame bizi 1.Frame e tekrar geri yollluyor. Bu şekilde sürekli 10. Frame de kontrol yapıyoruz. 10. Frame’e geldiğimizde eğer Son Frame de yüklenmişse direk olarak Scene2 nin ilk Frame ine atlıyoruz ve animasyonumuz başlıyor.
Eliniz alıştıkça daha değişik ve komplike yükleme dosyaları oluşturabilirsiniz. Mesela insanların yüklenme sırasında sıkılmasını istemiyorsanız, ara yüklemeler yaparak ufak animasyonlar
Ders 8 : Flash ta e-mail buttonu yapmak
E-Mail butonu yapimida tipki normal buton gibidir.Programimizi çalistirdiktan sonra buton yapmak istedigimi nesnemizi çizelim.Örnegin bir kareyi butonumuz yapalim.Bunu öncelikle çizdigimiz karemizin tamamini seçerek F8 butonuna basariz ve karsimiza çikan diyalog kutusundan Buton seçenegini seçeriz.
Daha sonra dügmemizin etkilesimli olmasini istiyorsak;Örnegin üzerine geldigimizde buton yapimi yaizmizin beyaz olmasi ve arka planinda mavi rengi yerine kirmizi olmasini istiyorsak yapmamiz gereken butonumuza çift tiklamak veya sag tiklayip edit,edit in place veya edit in new window seçeneklerinden birini seçeriz.Daha sonra karsimiza yeni bir timeline çikacaktir.
Bu Timelinede bulunan Up frame’I butonumuzun normal halidir.Over frame’I butonumuzun üzerine fare ile geldigimizde ne olacagi,Down frame’I faremiz ile üzerine gelip tikladigimizdaki tiklanmis hali en son olarak da Hit frame’I faremizin butonumuzu ne kadar alan içinde algilmasini istedigimizi ayarlariz.Son olarakda scene butonuna tiklariz ve butonumuza sag tiklar actions menüsünü seçeriz.Ve karsimiza çikan object actions menüsünden Get URL komutunu ekleriz butonumuza.yazdigimizda ve butonumuza tikladigimiza bundan sonra direk olarak makinemizde bulunan Outlook programini çalistiracaktir ve bu adresi direk olarak gidecek E-Mail bölümüne yazar.
Ders 9 : Flash ta cok basit bir oyun yapmak
ActionScript ile bir cok oyun tarzi gelistirmek mumkundur.Su an action Script kullanarak
yapilabilecek en basit oyunlardan biri olan sayi tahmini oyununu gelistirmeye calisalim.
1)Yeni bir flash dokumani olusturun ve text option paneline girin.
(Window>Panels>Text Option)
2)Text option panelinden acilir menuye gecin ve DYNAMIC TEXT ozelligini aktif hale
getirin.
3)Daha sonra Character Paneline gecin ve font buyuklugune 20-25 arasi bir deger verin.
(Istediginiz font´u kullanabilirsiniz.) (window>panels>Character)
4)Simdi sahneye donun ve sahnenin ust kismina,sahnenin enini kaplayacak sekilde bir
text kutusu olusturun.(tools Bolumundeki text aracini kullanmalisiniz.)
Kutunun boyu imlecin buyuklugune yakin olmalidir.
5)Tekrar Text Option paneline girin ve Variable bolumune " Mesaj " yazin.(Tiknak isaretlerini
kullanmayiniz.)
6)Ayni paneldeki selectable ozelligini kaldirin.Border/bg ozelligi secili durumda
ise kaldirin.Embed fonts butonlarindan aktif halde olani varsa iptal edin.
7)Su an sahnenin uzerinde sahnenin enlemesine olusturulmus bir text kutusu gormeniz,
text option bolumunde dynamic text,single line,Mesaj,yaziyor olmasi gerekir.
Sahne uzerine gelin ve tools bolumunde bulunan text araci ile tekrar bir text
kutusu olusturun.Bu kez ustte bulunan text kutusunun biraz altina,toplam iki karekter
sigabilecek kadar eni olan bir kutu olusturun.
9)Bu ikinci text kutusu secili durumda iken,(kenarlari mavi bir renkte iken)
textOptions Paneline girin ve secili durumda olan dynamic text ozelligini INPUT TEXT
olarak degistirin.Variable kismina " Tahmin " yazin.Border/bg ozelligini aktif hale
getirin.Max Chars kismina " 2 " yazin.Embed Fonts ozelliklerinden uzerinde " 123 " yazan
butonu aktif hale getirin.
10)Su an sahnenin uzerinde biri dynamic text,biri input text olmak uzere iki text
kutusu gormeniz gerekmektedir.Buyuk ihtimalle ikisininde font buyuklugu ayni.Simdi
sahnenin uzerine bir buton olusturun ya da varolan bir library´den surukleyin.
11)Simdi sahnede iki text kutusu birde buton olmalidir.Text kutularinin ve butonun
olusturuldugu frame´in action´una girin ve asagidaki kodlari yazin.
tutulanSayi=random(100);
mesaj = "Sayiyi tuttum tahmin etmeye baslayabilirsin";
denemeSayisi=0;
tahmin = " ";
stop();
12)Bu kodlari Frame´in action´una girdikten sonra sahne uzerindeki butona sag tiklayin
ve action Panelini acin.Asagidaki kodlari girin.
on(release){
denemeSayisi++;
if(tahmin==tutulanSayi){
gotoAndStop(2);
}
else if(tahmin <>
mesaj="Benim tuttugum sayi" + " " + tahmin + " " + "sayisindan buyuk!";
}
else{
mesaj = "Benim tuttugum sayi" + " " + tahmin + " " + "sayisindan kucuk!";
}
tahmin = " ";
}
13)Butonun kodlarini da girdikten sonra,text option paneline geri donun ve secili durumda
olan input text ozelligini STATIC TEXT olarak degistirin.Sonra sahneye geri donun ve
butonun altina text araci ile "Tahmin et" yazisi olusturun.
14)Sahnenin bir frame´den olusmasi,ve frame´de iki text kutusu, birde buton olmasi
gerekir.Bu bilgilerin dogrulunu kontrol edin.
15)Daha sonra klavye uzerindeki F6 tusu ile ikinci bir frame olusturun.Ikinci frame´de de
tum objelerin bu frame´e kopyalanmasi gerekir.
16)Simdi ikinci Frame´in action Paneline girin ve asagidaki kodlari yazin.
mesaj = "Tebrikler! Tuttugum sayiyi" + " " + denemeSayisi + " " + " denemede buldun!";
stop();
17)Daha sonra ikinci frame´de kopyalanmis butonun action paneline girin ve varolan komutlarin
hepsini silin.Asagidaki kodlari yazin.
on(release){
gotoAndStop(1);
}
18)Kodlari girdikten sonra bu kopyalanmis butonun altindaki "Tahmin et" yazisini silin
onun yerine "Tekrar" yazisi olusturun.
19)Oyun tamamlanmistir.Filminizi test edin,hatalar varsa nerelerde oldugunu tam
olarak belirleyin ve ilgili kademeye geri donerek gerekli duzeltmeleri yapin.
Kodlarin aciklamasi;
Ilk Frame´in action´unda;
tutulanSayi=random(100);
mesaj = "Sayiyi tuttum tahmin etmeye baslayabilirsin";
denemeSayisi=0;
tahmin = " ";
stop();
Komutlari bulunmaktadir."tutulanSayi" bir degiskendir ve random komutu ile
0-99 arasinda rasgele sayi belirlemektedir.Daha sonra "mesaj" degisken ismine sahip
text´e "Sayiyi tuttum tahmin etmeye baslayabilirsin" yazisini atamaktadir."denemeSayisi"
isimli degisken,butona kac kez basildigini yani kac kez tahmin girildigini kontrol
etmek icin atanmistir.Burada baslangic degeri " 0 " olarak verilmistir cunku daha butona
basilmamistir."tahmin" degisken ismine sahip text kutusu " "; ifadesi ile tum karekter
girdilerinden temizlenmektedir.Daha sonra timeline´in bu frame´de durmasi icin stop();
komutu uygulanmistir.
Ayni frame´deki butonun action´unda;
on(release){
denemeSayisi++;
if(tahmin==tutulanSayi){
gotoAndStop(2);
}
else if(tahmin <>
mesaj="Benim tuttugum sayi" + " " + tahmin + " " + "sayisindan buyuk!";
}
else{
mesaj = "Benim tuttugum sayi" + " " + tahmin + " " + "sayisindan kucuk!";
tahmin = " ";
Komutlari bulunmaktadir.Bu buton,girilen tahmini kendi belirledigi rakamla karsilastirma,
karsilastirdigi degerlerin sonucunu "mesaj" degisken ismine sahip text´e atama gorevini
yerine getirir."denemeSayisi++" komutu kac kez tahminde bulunuldugunu hesaplamak icindir.
Her butona basildiginda bu sayi artar.
Ilk kosul ifadesinde "tahmin" degiskeninin degeri ile "tutulanSayi" degiskeninin
degerleri kontrol edilmektedir.Eger iki degerde birbirine esit ise,timeline´in ikinci frame´ine
gitmesini emreder.Ikinci kosul ifadesi "tahmin" degiskeninin "tutulanSayi" degiskeninden
kucuk oldugu durumlari kontrol eder.Eger kosul saglanirsa "mesaj" adli text kutusuna,
"Benim tuttugum sayi" + " " + tahmin + " " + "sayisindan buyuk!" ifadesini atar.Burada iki
string ifadesi,birde degisken degeri atanmistir."tahmin" adli degiskenin degeri girilen
tahmin oldugu icin 50 rakamini tahmin olarak giren bir kullanici ekranda
"Benim tuttugum sayi 50 sayisindan buyuk!" ifadesini gorur." " ifadelerin arasinda bosluk
olmasini saglar.Diger kosullu ifade ise bu iki kosulun saglanmamasi durumunda calisir.
Bu yalniz "tahmin" degiskenin "tutulanSayi" degiskeninden buyuk oldugu degerler icin gecerlidir.
Ikinci kosul ifadesinde oldugu gibi yine "mesaj" adli text kutusuna belirtilen ifadeyi atar.
tahmin = " "; ifadesi,butona her basildiginda "tahmin" degisken ismine sahip text kutusunda
bulunan tum karekterleri siler.
Ikinci frame´in action´unda;
mesaj = "Tebrikler! Tuttugum sayiyi" + " " + denemeSayisi + " " + " denemede buldun!";
stop();
Komutlari bulunmaktadir.Bu,"tahmin" degerinin "tutulanSayi" degeri ile esit oldugu,yani
tahminin basarili oldugu durumlarda gecerli oldugundan "mesaj" adli text kutusuna
"Tebrikler! Tuttugum sayiyi" + " " + denemeSayisi + " " + " denemede buldun!" ifadesini
atar.Timeline´in bu frame´de durmasi icinse stop(); komutu kullanilmistir.
Ikinci Frame´de bulunan butonun action´unda;
on(release){
gotoAndStop(1);
Komutlari bulunmaktadir.Bu komutlar buton basildiginda timeline´in ilk frame´e gitmesini
emreder.Ve oyun yeniden baslar.
Ders 10 : Flash ta kayan yazı hazırlamak
Öncelikle yer degistirmesi istedigimiz yaziyi yazariz.Ve nereye kayacak oldugunu belirleriz kendi kafamizda.Daha sonra yazdigimiz yaziyi seçerek F8 butonuna tiklariz ve karsimiza çikan diyalog kutusundan graphic seçenegini seçeriz.
Daha sonra animasyonumuzun kaç kare sürecegini belirleriz. Ve örnegin 40 frame olarak belirledik ve 40. frame’ e gideriz ve F6 tusuna basarak oraya bir frame ekleriz. Ve bu frame’de yazimizin nereye kaymasini isityorsak o bölüme kaydiririz ve daha sonra animasyonumuzun ilk frame’ine gelerek sag tiklariz ve karsimiza çikan menüden Create Motion Tween seçenegini seçeriz.
Tell Target : "Instance Name" verilmiş bir Movie Clip’i çağırmak için kullanılır."Tell Target" ile daha önce "Instance Name" verdiğimiz bir Movie Clip’i, target alanına Movie Clip’in "Instance Name"ini yazmak şartıyla çağırabiliriz. Çağırıpta ne yapacağız Movie Clip’i, dertsiz başımıza dert almayalım demeyin. Çağırıdıktan sonra action kodlar ile bu Movie Clip’i kontrol edebiliriz.
Kod:tellTarget ("Hedef") {
Yapılacak İşler;
}bir örnek vermek gerekirse , "test" "Instance Name"ine sahip bir Movie Clip’i çağıralım ve 6.frame’ine gidelim.
Kod:tellTarget ("text") {
gotoAndPlay (6);
}Görüldüğü gibi "tellTarget" ifadesinden sonra paranaaa ve tırnak içinde hedef olarak verdiğimiz Movie Clip’in "Instance Name"ini ve süslü paranaaaler içinde de çağırdğımız Movie Clip için "Go To" action’ını kullandık. Süslü paranaaa, tırnak ve paranaaa gibi karakterlerin ne amlama geldiğine önümüzdeki ay değineceğiz.
If Frame Is Loaded : Bu action ile belirtilen Scene’deki belirtilen frame yüklendiğinde istenilen action’ların çalıştırılması sağlanır. Flash movie’niz için önyükleme bu action ile yapılır.
Secene : "curent scene" ile içinde bulunduğunuz scene seçilebilir ya da buraya tıkladığınızda açılan listeden kullandığınız scene’lerden birini seçebilirsiniz.
Type : Frame number ile, "Frame" alanına girilen değerin frame numarası oluduğu, Frame Label ile "Frame" alanına girilen değerin frame etiketi olduğu ve son olarak da "Expression" ile "Frame" alanının bir değişken ya da script ifadesi olduğu belirtilir.
Frame : Yukarıdaki seçilen seçeneğe göre buraya frame numarası , frame etiketi ,bir değişken adı veya script ifadesi girilir.
Trace: Trace Flash içindeki playerder’dan yani test movie(Ctrl+Enter) ile movie’mizi izlediğimiz ekrandan çıkış almamızı sağlayan bir action’dır.Bu çıkış output penceresinden yapılır.Trace alanına değişken ismini yazmak ve karşısındaki kutucuğu işaretleyerek bunun bir expression olduğunu belirttikten sonra playerdan değişkenin değerini alabiliriz.
Kod:x = 15;
trace(x);
İlk satırda x adında bir değişken tanımlayıp değerini 15 yaptık. İkinci satırda ise trace action’ı ile x değişkeninin değerinin output penceresinden gözükmesini sağladık. Tekrar hatırlatayım, trace ile almak istediğiniz çıkışları test movie(Ctrl+Enter) yaptıktan sonra Output penceresinden alabilirsiniz. Output penceresi bir çıkş olduğunda kendiliğinden açılacaktır. Output penceresini kendiniz açmak isterseniz Window menüsünden Output’a tıklayınız.
Kod:tellTarget ("Hedef") {
Yapılacak İşler;
}bir örnek vermek gerekirse , "test" "Instance Name"ine sahip bir Movie Clip’i çağıralım ve 6.frame’ine gidelim.
Kod:tellTarget ("text") {
gotoAndPlay (6);
}Görüldüğü gibi "tellTarget" ifadesinden sonra paranaaa ve tırnak içinde hedef olarak verdiğimiz Movie Clip’in "Instance Name"ini ve süslü paranaaaler içinde de çağırdğımız Movie Clip için "Go To" action’ını kullandık. Süslü paranaaa, tırnak ve paranaaa gibi karakterlerin ne amlama geldiğine önümüzdeki ay değineceğiz.
If Frame Is Loaded : Bu action ile belirtilen Scene’deki belirtilen frame yüklendiğinde istenilen action’ların çalıştırılması sağlanır. Flash movie’niz için önyükleme bu action ile yapılır.
Secene : "curent scene" ile içinde bulunduğunuz scene seçilebilir ya da buraya tıkladığınızda açılan listeden kullandığınız scene’lerden birini seçebilirsiniz.
Type : Frame number ile, "Frame" alanına girilen değerin frame numarası oluduğu, Frame Label ile "Frame" alanına girilen değerin frame etiketi olduğu ve son olarak da "Expression" ile "Frame" alanının bir değişken ya da script ifadesi olduğu belirtilir.
Frame : Yukarıdaki seçilen seçeneğe göre buraya frame numarası , frame etiketi ,bir değişken adı veya script ifadesi girilir.
Trace: Trace Flash içindeki playerder’dan yani test movie(Ctrl+Enter) ile movie’mizi izlediğimiz ekrandan çıkış almamızı sağlayan bir action’dır.Bu çıkış output penceresinden yapılır.Trace alanına değişken ismini yazmak ve karşısındaki kutucuğu işaretleyerek bunun bir expression olduğunu belirttikten sonra playerdan değişkenin değerini alabiliriz.
Kod:x = 15;
trace(x);
İlk satırda x adında bir değişken tanımlayıp değerini 15 yaptık. İkinci satırda ise trace action’ı ile x değişkeninin değerinin output penceresinden gözükmesini sağladık. Tekrar hatırlatayım, trace ile almak istediğiniz çıkışları test movie(Ctrl+Enter) yaptıktan sonra Output penceresinden alabilirsiniz. Output penceresi bir çıkş olduğunda kendiliğinden açılacaktır. Output penceresini kendiniz açmak isterseniz Window menüsünden Output’a tıklayınız.
Kaydol:
Kayıt Yorumları (Atom)
0 yorum:
Yorum Gönder