Flash film kliplerinin görünümünü ve davranışlarını
kontrol etmemize izin verir. Bu bölümde film klibinin konum, ölçek,
saydamlık, rotasyon, renk özelliklerini değiştirmeyi, bir film
klibini sahnede nasıl sürükleyeceğinizi göreceksiniz.
Flash-MX veriyonundan itibaren bir film
klibine butonlara atanan komutları da yazmak mümkündür.
Bu çok etkili bir özelliktir. Bu sayede animasyon içeren buton
hazırlamak sorun olmaktan çıkmıştır. Yerinde kulla nıldığında
çok yararlı olan bir özelliktir.
Bu dersimizde Swapdepths komutuyla
sürükleme sırasında üstüste gelen filmlerin takas edilmesi, dropTarget
komutuyla sürüklenen bir film klibinin bırakıldığı anı
algılaması, hitTest komutuyla hareket eden veya
sürüklenen bir film klibinin diğer bir film klibine dokunduğunu
kavrayıp gerekli reaksiyonu vermesinin nasıl olacağını inceleyeceksiniz.
Bu özellikleri öğrenerek gerçekten olağanüstü
etkileşimler oluşturabilirsiniz. Bu konuda tanımlanan yöntemler
oyunların hazırlanmasında uygulanan temel konulardır. Daha fazlasını
yapmak sadece sizin hayal gücünüze bağlıdır ve hayal edip uğraştığınızda
flash`la yapılamayacak efekt yoktur.
Konu başlıklarını şöyle özetleyebiliriz:
1- Film kliplerinin sürüklenmesi
ve durdurulması(startDrag, stopDrag)
2- Film kliplerinin renk özelliklerinin
değiştirilmesi(setProperty)
3- Üstüste binen film kliplerinin
takas edilmesi(swapdepths)
4- Bırakılmış film kliplerinin
algılanması( dropTarget)
5- Film kliplerinin çakışmalarının
algılanması(hitTest)
Setpropery komutu birden fazla
parametre içerdiğinden örneklere geçmeden bu parametreler hakkında
bilgi vermekte yarar vardır. Aşağıdaki listede bir film klibinin
değiştirilebilen özelliklerini görüyorsunuz:
_alpha: Saydamlığı belirler, 0-100 arası değer
verilir.<
_visible: Bir klibin görülüp görülemiyeceğini
ayarlar, True-False değerleri içerir.
_name: Film klibine yeni bir örnek isim belirler.
_rotation: Artı değerler saat yönünde döndürmeyi
sağlar.
_height: Dikey boyutu belirler-piksel cinsinden
bir sayı-
_widht: Yatay boyutu belirler
_x: Film klibinin yatay pozisyonunu düzenler-piksel
cinsinden bir sayı->
_y: Film klibinin dikey pozisyonunu düzenler
_xscale: Film klibinin yatay boyutunun yüzdesini
belirler.
_yscale: Film klibinin dikey boyutunun yüzdesini
belirler.
_highquality: 0, 1, 2 değerleri vardır. 0 en
düşük değerdir.
_quality: Üstteki komuttan pek farklı değildir
.Low, medium, high ve best
seçenekleri mevcuttur.
_soundbuftime: Filmin sesi başlatmadan önceki
saniye sayısını belirler. Varsayılan değer 5sn.`dir.
İpucu: x ve y pozisyonlarında
koordinatlar biraz farklıdır. Ana sahnede x ve y pozisyonlarını
sıfır değeri sol üst köşedir. Yani x=0 ve y=0 koordinatı sahnenin
sol üst köşesidir. Artı işaretli x değeri tesbit noktasının sağına
doğru artar sola doğru negatif değerlerle azalır. y değeri aşağıya
doğru artar, üste doğru negatif değerler alarak azalır.
setRGB yöntemiyle film kliplerinin renklerini
değiştirmeyi öğreneceğiz. Bu tür renk dönüşümünü daha
ileri düzeyde uygulamak isterseniz setTransform yöntemini
kullanmalısınız. Bu yöntemden örnek4`de bahsedilecektir.
setTransform yöntemi daha detaylı renk
ayarlaması yapmanızı sağlar. 8 parametresi vardır: ra
, rb, ga , gb , ba , bb , aa , ab. Detaylar için açıklamalar
bölümüne bakınız
İki film klibini sürükleyerek üstüste
bindirdiğinizde yığılma sıralarını koruduğunu görürsünüz.
Üst seviyedeki bir klip alt seviyedeki bir klibin daima
üzerinde kalır. Sahnede tuttuğunuz bir klibin bu yığın
sırasını aşarak en üst kısma gelmesini istiyorsanız swapDepths
komutunu kullanmalısınız. Bu yöntemle alt katmandaki bir
klip bile en üst katmandaki klip ile yer değiştirebilir.
Film kliplerinin çakışmayı algılamasını
öğrendik. Sürüklenen bir film klibinin bırakıldığı alanı
algılamasını da sağlamak mümkündür. Bunun için kullanılan
komut _dropTarget`tır. Bir puzzle oyununda parçalardan
birini uygun yere yaklaştığınızda kenetlenmesi, hatalı
bir yerdeyken film bırakıldığında bir geri kaçma efekti
oluşturma sık kullanılan bir animasyondur. Burada kullanılan
komutlar _dropTarget, setProperty, if, else,stopDrag ve
startDrag komut kombinasyonudur.