ActionScript 3.0 ile Gelişmiş Ses Kontrolü-2

Yazan: Hakan Çamoğlu on Eylül 23rd, 2009

Gelişmiş Ses Kontrolü

Web sitelerinde kullandığınız seslerin sitenizi yavaşlatmasına izin vermeyin ve kullanıcıya gelişmiş kontrol imkanı vererek sitenizi gezerken keyif almasını sağlayın.

var ses:Sound = new Sound();
var adres:URLRequest = new URLRequest(”sound.mp3″);
var sesKontrol:SoundChannel = new SoundChannel();
var sesDuzeyi:SoundTransform = new SoundTransform();
ses.load(adres);

ses.addEventListener(Event.COMPLETE, baslat);
function baslat(event:Event) {
sesKontrol = ses.play(0,999);
ac_btn.visible = false;
}

kapat_btn.addEventListener(MouseEvent.CLICK, sesKapat);
function sesKapat(event:MouseEvent) {
sesKontrol.stop();
ac_btn.visible = true;
}

ac_btn.addEventListener(MouseEvent.CLICK, sesAc);
function sesAc(event:MouseEvent) {
sesKontrol = ses.play(0,999);
ac_btn.visible = false;
}

eksi_btn.addEventListener(MouseEvent.CLICK, sesAzalt);
function sesAzalt(event:MouseEvent) {
if (sesDuzeyi.volume > 0) {
sesDuzeyi.volume -= 0.1;
sesKontrol.soundTransform = sesDuzeyi;
maske_mc.x -= 6;
}
}

arti_btn.addEventListener(MouseEvent.CLICK, sesArttir);
function sesArttir(event:MouseEvent) {
if (sesDuzeyi.volume < 1) {
sesDuzeyi.volume += 0.1;
sesKontrol.soundTransform = sesDuzeyi;
maske_mc.x += 6;
}
}

maske_btn.addEventListener(MouseEvent.MOUSE_DOWN, surukle);
function surukle(event:MouseEvent){
maske_mc.startDrag(true, new Rectangle(-30,maske_mc.y,60,0));
}

stage.addEventListener(MouseEvent.MOUSE_MOVE, ayarla);
function ayarla(event:MouseEvent){
sesDuzeyi.volume = (maske_mc.x+30)/60;
sesKontrol.soundTransform = sesDuzeyi;
}

stage.addEventListener(MouseEvent.MOUSE_UP, birak);
function birak(event:MouseEvent){
maske_mc.stopDrag();
}

Örnek dosyayı buradan indirebilirsiniz.

ActionScript 3.0 ile Gelişmiş Ses Kontrolü

Yazan: Hakan Çamoğlu on Nisan 8th, 2009

Gelişmiş Ses Kontrolü

ActionScript ile yapılan uygulamalar arasında belki de en çok kullandığımız ses kontrolüdür. ActionScript 3.0 ile ses kontrolü yapmanın yolu SoundTransform, SoundChannel ve Sound sınıflarından geçmektedir. Temel anlamda 4 button ve bir maske kullanılarak yapılan bu uygulamanın kodu aşağıdaki gibidir.

var ses:Sound = new Sound();
var adres:URLRequest = new URLRequest(”sound.mp3″);
var sesKontrol:SoundChannel = new SoundChannel();
var sesDuzeyi:SoundTransform = new SoundTransform();
ses.load(adres);

ses.addEventListener(Event.COMPLETE, baslat);
function baslat(event:Event) {
 sesKontrol = ses.play(0,999);
}
kapat_btn.addEventListener(MouseEvent.CLICK, sesKapat);
function sesKapat(event:MouseEvent) {
 sesKontrol.stop();
 ac_btn.visible = true;
}
ac_btn.addEventListener(MouseEvent.CLICK, sesAc);
function sesAc(event:MouseEvent) {
 sesKontrol = ses.play(0,999);
 ac_btn.visible = false;
}
ac_btn.visible = false;

eksi_btn.addEventListener(MouseEvent.CLICK, sesAzalt);
function sesAzalt(event:MouseEvent) {
 if (sesDuzeyi.volume > 0) {
  sesDuzeyi.volume -= 0.1;
  sesKontrol.soundTransform = sesDuzeyi;
  maske_mc.scaleX -= 0.1;
 }
}
arti_btn.addEventListener(MouseEvent.CLICK, sesArttir);
function sesArttir(event:MouseEvent) {
 if (sesDuzeyi.volume < 1) {
  sesDuzeyi.volume += 0.1;
  sesKontrol.soundTransform = sesDuzeyi;
  maske_mc.scaleX += 0.1;
 }
}

Örnek dosyayı buradan indirebilirsiniz.

ActionScript 3.0 ile Yükleniyor (Preloader)

Yazan: Hakan Çamoğlu on Ocak 5th, 2009

ActionScript 3.0 Preloader

ActionScript 3.0 ile hazırladığınız projeye ön yükleme yapmak için ilk olarak tavsiyem projeniz ile ön yüklemeyi farklı sahnelerde yapmanız olacaktır. Bunun için aşağıdaki yolu kullanarak Scene panelini açın ve mevcut sahnenizin üzerine yeni bir sahne ekleyerek ön yükleme işlemi için yeni oluşturduğunuz sahneye geçin.

Window > Othet Panels > Scene ( Shift+F2 )

Scene Paneli

Yeni oluÅŸturduÄŸunuz sahnede ilk olarak bir dinamik metin alanı oluÅŸturarak ona ekran_txt ismini verin. Daha sonrasında önyükleme sırasında gözükmesini istediÄŸiniz animasyonu 100 frame olarak tasarlayın. Burada 100 frame olarak tasarlamanın esprisi ön yükleme ile animasyonu eÅŸ deÄŸer ÅŸekilde hareket ettirecek olmamızdır. Yani projenin %30′u yüklendiÄŸinde animasyonun 30. karesi gösterilecek.

Gerekli animasyon ve metin kutusunu oluşturduktan sonra aşağıdaki kod ile ön yüklemenizi tamamlayın.

stop();
var yuklenen:Number; //ondalık değerleri gösterir
var yuzde:int;   //ondalık değerleri göstermez

loaderInfo.addEventListener(ProgressEvent.PROGRESS, yukleniyor);
loaderInfo.addEventListener(Event.COMPLETE, yuklendi);

function yukleniyor(e:ProgressEvent){
  yuklenen = e.bytesLoaded / e.bytesTotal;
  yuzde = yuklenen * 100;

  ekran_txt.text = yuzde + “%”;
  gotoAndStop(yuzde);
}
function yuklendi(event:Event){
 nextScene();
}

Örnek dosyayı buradan indirebilirsiniz.

ActionScript 3.0 ile Klavye Kontrolü

Yazan: Hakan Çamoğlu on Ocak 2nd, 2009

Klavye Kontrolü

ActionScript 3.0 ile klavye kontrolü yapmak için KeyboardEvent kullanıyoruz. Hazırladığımız balon_mc sembolünü klavye ile kontrol edebilmek için kullanacağımız kod bloğu aşağıda yer almaktadır.

stage.addEventListener(KeyboardEvent.KEY_DOWN, tiklama);

function tiklama(event:KeyboardEvent)
{
 if(event.keyCode == 37){
  balon_mc.x -= 2;
 }else if(event.keyCode == 39){
  balon_mc.x += 2;
 }else if(event.keyCode == 38){
  balon_mc.y -= 2;
 }else if(event.keyCode == 40){
  balon_mc.y += 2;
 }
}

Örnek uygulamayu buradan indirebilirsiniz.

ActionScript 3.0 ile Kar Yağışı

Yazan: Hakan Çamoğlu on Aralık 30th, 2008

Kar Yağışı

Yeni yıl yaklaştığında birçok bannerda kar yağdığını görüyoruz. Kar yağdırma efektinin temelinde bir tane hareket eden kar tanesinin sürekli olarak kopyalanarak, her kopyanın ayrı bir boyut ve konumda olmasını sağlamak yer alıyor.

Bunun için gerekli olan kar tanesini bir sembolün içerisinde tasarladıktan sonra Library’den sembole saÄŸ tıklayıp Linkage seçeneÄŸinden Export for ActionScript seçeneÄŸini iÅŸaretleyip Class ismine Kar yazıyoruz.

Daha sonra aşağıdaki kod bloğu ile mevcut kar tanesinin kopyalarını oluşturup her bir kopyanın farklı konum ve boyutta olmasını sağlıyoruz.

stage.addEventListener(Event.ENTER_FRAME, karYagisi);

function karYagisi(event:Event){
 var karTanesi:Kar = new Kar();
 karTanesi.x = Math.random() * 800;
 karTanesi.scaleX = Math.random();
 karTanesi.scaleY = Math.random();
 addChild(karTanesi);
}

Uygulamanın çalışır halini http://www.actionscripttr.com/dosyalar/karYagisi.rar adresinden indirebilirsiniz.


Copyright © 2007 ActionScript Türkiye. All rights reserved.