Şimdi Ara

Flash'da belirli bir frame de bekleme ve devam etme

Bu Konudaki Kullanıcılar:
1 Misafir - 1 Masaüstü
5 sn
3
Cevap
0
Favori
2.812
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • quote:

    mp3_dinle

    abi sen bilirsin ya bişi sorucam flashla ilgili forumda takip ediyorum cevaplarınızı neyse abi ben şimdi şunu yapmak istiyorum butona basınca mesala 10. frame gidecek ve 10sn bekliyecek sonra devam edicek.yani kodla olucam framede şu kod yazıcak 10 saniye dur sonra devam et.şimdiden teşekkürler abicim.



    1- Yeni bir sayfa açın ve sahnenin en soluna bir daire çizin. Çift tıklayarak dairenin tamamını seçip F8`e basın ve davranış olarak grafik seçeneğini işaretleyin. 80.kareye bir keyframe ekleyin ve fare ile grafiği sahnenin en sağına taşıyın. 1.kareye sağ klik yapıp create motion tween komutunu verin. Kesintisiz animasyonumuz hazır.

    2- Üst kısma yeni bir katman ekleyin. 40. kareyi seçin keyframe ekleyin ve sahneye burası 40. karedir gibi birşeyler yazın. 60. kareye bir keyframe ekleyip aynı işlemi uygulayın.

    3- Tekrar 40 ve 60. kareleri seçip şu kodu yazın:

    durmazamani=getTimer();

    Daha öncede anlatıldığı gibi bir flash filmi başladığı an görülmez bir kronometre çalışır. getTimer komutu ile animasyonun herhangibir karesinden başlama anından o ana kadar geçen süre hesaplanır. Yukarıdaki komutla 40 ve 60. karede geçen süreler durmazamani adlı değişkene atanır.

    4- İnsert-->New Symbol komutunu verin. Açılan panelden davranış olarak film klibini seçin. İşin tüm püf noktası bu kliptedir. Bu klibe sadece animasyonu duraklatma işlemini gerçekleştirecek scriptleri koyacağız. Yani boş bir klip olacak.

    Bu tür boş klibe yazılan scriptlerle animasyonu idare etme örneklerine sıkça rastlayacaksınız. Mouse efektleri genelde bu plan üzerinden çalışırlar.

    5- Boş film klibini açıp 1.kareye şu komutları yazın:

    anadurmazamani = _level0.durmazamani;
    ara = 5000;
    _level0.stop();
    if (getTimer() >= (ara + anadurmazamani)) {
    _level0.play();
    }

    Bu komutları az sonra açıklayacağız. Şimdi klibin 2. karesine bir frame ekleyin. Bu çok önemli bir noktadır. Şayet tek karede bırakırsanız komutlar bir kez okunacak ve _level0.stop kısmında takılıp kalacaktır. 2. kare eklenmesi bir döngü sağlayacak ve komut tekrarı oluşacaktır. Şimdi açıklamalar:

    anadurmazamani = _level0.durmazamani; Burada durmazamani değişkeninin aldığı değer anadurma zamani adlı başka bir değişkene atanıyor. Şayet bu durma işlemi animasyon boyunca 1 kez yapılacak olsa idi bu eklentiye gerek kalmayacaktı. _Level0 sahnedeki animasyonu gösterir. Bu alana _root` da yazılabilirdi.

    ara = 5000; Burada animasyonun duracağı süre belirlenir. getTimer milisaniye cinsinden sonuç verdiğinden bu değer 5 saniyeye eşit bir değerdir.

    _level0.stop(); Değişkenler belirlendikten sonra stop komutu ile animasyon durduruluyor.

    if (getTimer() >= (ara + anadurmazamani)) {
    _level0.play();
    }

    Şayet geçen zaman= 5sn + animasyonun durduğu andaki saniye toplamına eşit olursa animasyonu başlat anlamında kullanılmıştır.

    anadurmazamani, flash oynatma kafası her 40 ve 60. kareleri geçtiğinde belirlenen durmazamani değişkeninin değerini aldığından döngü devam ettikçe sorunsuz çalışacaktır. Başta da dediğim gibi bu değişkeni kullanmayıp sadece durmazamani komutunu kullansa idik animasyondaki duraklama sadece 1 kez gerçekleşecek idi. Bunu denemek için aşağıdaki komutları kopyalayıp boş film klibi 1.karesine yapıştırın.

    _level0.stop();
    ara = 5000;
    if (getTimer() >= (ara + durmazamani)) {
    _level0.play();
    }

    6- CTRL+Enter`a basıp filminizi test edin.







  • abi çok saol teşekkür ederim.
  • abi
    çok uzun bu ya. sadece boş frame de , bekle 10 snye şu frame git yazamazmıyız.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.