Flash AS3 – Dışarıdan Swf Çağırma

actionscript dışarıdan swf çağırma (not: dosyalar aynı klasörde olursa yolun yazılmasına gerek yok)
yol= c:\deneme\dosyalar\
dosya=hareket.swf

var myLoader:Loader = new Loader();
addChild(myLoader);
var url:URLRequest = new URLRequest(“c:\deneme\dosyalar\hareket.swf”);
dugme_mc.addEventListener(MouseEvent.MOUSE_DOWN, tikla);
function tikla(e:MouseEvent) //sürükle fonksiyonumuz
{
myLoader.load(url);
}

——————————————–
1den fazla dosya çağırma

var myLoader:Loader = new Loader();
addChild(myLoader);
var url:URLRequest = new URLRequest(“üçlü.swf”);

var myLoader2:Loader = new Loader();
addChild(myLoader2);
var url2:URLRequest = new URLRequest(“burun.swf”);

dugme_mc.addEventListener(MouseEvent.MOUSE_DOWN, tikla);
function tikla(e:MouseEvent) //sürükle fonksiyonumuz
{
myLoader.load(url);
}

dugme2_mc.addEventListener(MouseEvent.MOUSE_DOWN, tikla2);
function tikla2(e:MouseEvent) //sürükle fonksiyonumuz
{
myLoader2.load(url2);
}

Adobe Flash Actionscript 3 drag drop doğru yanlış nesne

http://www.flashvideodersler.com/actionscript-3-0-dersleri/gelismis-surukle-birak-ve-hittestobject-ornegi-1.html
Onemli: Baslangica Flash Actionscript 3 dosyası yarat secilmeli
3 daire 3 kare yap (daierler sürüklenecek olanlar kareler cevap kutuları)
6 nesneyi tek tek sağ tıkla ve convert to symbol e bas movie clip seçili olması gerekir ve isimlerinide örneğin

daire1
daire2
daire3
kare1
kare2
kare3
yap.

sonra nesnelere tek tek bir tıkla sol aşağıda
instance namelerini(örnek isimleri)
daire1_mc
daire2_mc
daire3_mc
kare1_mc
kare2_mc
kare3_mc
yap

Daha sonra yeni bir layer oluştur ismini Kodumuz yaz ve ilk framine sağ tıkla  ve actionsa tıkla

Çıkan ekrana ve aşağıdaki kodları yaz

//Action Script 3 olmasi gerek

//sürüklenecek objelerin en üstte olmasına dikkat etki kareye sürüklendiğinde arkasına geçmesin

daire1_mc.addEventListener(MouseEvent.MOUSE_DOWN, surukle);

daire2_mc.addEventListener(MouseEvent.MOUSE_DOWN, surukle);

daire3_mc.addEventListener(MouseEvent.MOUSE_DOWN, surukle);

//aşağıda dairelerin gidecegi doğru cevaplar yani kareler taınmlanır

daire1_mc.yer=kare1_mc;

daire2_mc.yer=kare2_mc;

daire3_mc.yer=kare3_mc;

//aşağıda dairelerin ilk yerleri tanımlanır çunku cevap yanlışsa geri oraya gidecek

daire1_mc.ilkyerx=daire1_mc.x;

daire2_mc.ilkyerx=daire2_mc.x;

daire3_mc.ilkyerx=daire3_mc.x;

daire1_mc.ilkyery=daire1_mc.y;

daire2_mc.ilkyery=daire2_mc.y;

daire3_mc.ilkyery=daire3_mc.y;

//bir üstteki kodun aynısı ama daha kısa yani yanlış cevaba surukleynce daireyi geri ilk pozisyonuna götürecek (x=dikey pozisyon, y yatay pozisyon)

var xyeri:Number;

var yyeri:Number;

function surukle(e:MouseEvent)

{

xyeri=e.target.x;

yyeri=e.target.y;

e.target.startDrag();

}

daire1_mc.addEventListener(MouseEvent.MOUSE_UP, birak);

daire2_mc.addEventListener(MouseEvent.MOUSE_UP, birak);

daire3_mc.addEventListener(MouseEvent.MOUSE_UP, birak);

function birak(e:MouseEvent)

{

e.target.stopDrag();

if (e.target.hitTestObject(e.target.yer))

{

e.target.mouseEnabled=false;//cevap doğruysa dairenin hareket etmesini engeller 

e.target.x=e.target.yer.x; //cevap yanlışsa daireyi sürüklemeye başladığın yere atar 

e.target.y=e.target.yer.y;

else 

{

e.target.x=xyeri; //cevap yanlışsa daireyi sürüklemeye başladığın yere atar 

e.target.y=yyeri;

}

}

Adobe flash kim 500 milyar ister basit oyun yapimi

 Videolu Anlatım:

Önce internette arkaplana koymak için kim 500 milyar isderin fotoğrafını bulup koyalım.

1icni frame başla yazısı ekleyip buttona çeviriyoruz (buton adı basla , örnek adı basla_mc)

 Ve yine 1inci framee sag tıklayıp actionsa tıklarız

stop();//buraya stop yazmassak durmayacak
basla_mc.addEventListener(MouseEvent.MOUSE_DOWN,baslaa);//başla tuşu
function baslaa(e:MouseEvent) //başlaya basınca olacak olanlar
{
gotoAndStop(2); //başla tuşuna basıncı ikinci framee geçecek
}
daha sonra ikinci frame sag tıklayıp insert keyframee tıklarız
 şıklarımızı ekleriz ve buttona çeviririz. Buto n ismi soru1cevapa , örnek isim soru1cevapa_mc

Ve bütün şıkların isimlerinide tanımladıktan sonra ikinci framee sağ tıklayıp actionsa tıklarız aşağıdaki kodları yazarız.
//tıklanacak şıkların tanımlanması
soru1cevapa_mc.addEventListener(MouseEvent.MOUSE_DOWN,soru1d);//doğru
soru1cevapb_mc.addEventListener(MouseEvent.MOUSE_DOWN,soru1y);//yanlş
soru1cevapc_mc.addEventListener(MouseEvent.MOUSE_DOWN,soru1y);//yanlş
soru1cevapd_mc.addEventListener(MouseEvent.MOUSE_DOWN,soru1y);//yanlş
function soru1d(e:MouseEvent) //doğru cevapda yapılacak olan
{
gotoAndStop(3);//doğru cevapda bir sonraki soruya yani frame geçiş
}
function soru1y(e:MouseEvent)  //yanlış cevapda yapılacak olan
{
gotoAndStop(25);//kaybettiğimizde gidilecek olan frame(anahtar kare)
}
Aynı şekilde 3üncü frame sağ tıklayıp insert keyframe basarız ve  soru ve şıklarımızı gireriz.
//tıklanacak şıkların tanımlanması
soru2cevapa_mc.addEventListener(MouseEvent.MOUSE_DOWN,soru2y);//yanlş
soru2cevapb_mc.addEventListener(MouseEvent.MOUSE_DOWN,soru2d);//doğru
soru2cevapc_mc.addEventListener(MouseEvent.MOUSE_DOWN,soru2y);//yanlş
soru2cevapd_mc.addEventListener(MouseEvent.MOUSE_DOWN,soru2y);//yanlş
function soru2d(e:MouseEvent) //doğru cevapda yapılacak olan
{
gotoAndStop(4);//doğru cevapda bir sonraki soruya yani frame geçiş
}
function soru2y(e:MouseEvent)  //yanlış cevapda yapılacak olan
{
gotoAndStop(15);//kaybettiğimizde gidilecek olan frame(anahtar kare)
//15icni framede yanlış cevapda gösterilecek olanı yazacaz birazdan

}

Aynı şekilde diğer sorularımızıda yaparız. Yanlış cevapda gösterilecek 15inci keyframe sağ tıklarız ve insert keyframe basarız

Adobe flash bir soru iki cevaba süreklensin

kare1_mc.addEventListener(MouseEvent.MOUSE_DOWN, surukle);
//yanlış cebapta gidecek olan yer yani ilk yer aşağısı
kare1_mc.ilkyerx=kare1_mc.x;
kare1_mc.ilkyerx=kare1_mc.y;
var xyeri:Number;
var yyeri:Number;
function surukle(e:MouseEvent) //sürükle fonksiyonumuz
xyeri=e.target.x;//sürüklemeye başlar başlamaz objemizin yerini alır
yyeri=e.target.y;//cünkü yanlış cevaba giderse geri yerine dönecek
kare1_mc.startDrag();//sürüklemeye başlatma komutu
}
//birakma kodları bölümü aşağısı
kare1_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
function birak(e:MouseEvent)//birak fonksiyonumuz
{
if(kare1_mc.hitTestObject(daire1_mc))//eğer kare1 daire1e denk
{                                    //gelirse bunları yap
kare1_mc.x=daire1_mc.x;//sürükleyince ortalasın cevaba
kare1_mc.y=daire1_mc.y;//sürükleyince ortalasın cevaba
kare1_mc.stopDrag();//birak
}
else if (kare1_mc.hitTestObject(daire2_mc))//kare1 daire2ye denk gelirse
{
kare1_mc.x=daire2_mc.x;
kare1_mc.y=daire2_mc.y;
kare1_mc.stopDrag();
}
else //eğer kare1 daire1 ve daire2ye denk  gelmessede bunları yap
{
 kare1_mc.x=xyeri; //cevap yanlışsa daireyi sürüklemeye başladığın yere atar 
 kare1_mc.y=yyeri; //cevap yanlışsa daireyi sürüklemeye başladığın yere atar 
 kare1_mc.stopDrag();
}

 }

Flash CS3 play button

Once karemizi ekleyip üstüne sağ tıklayıp sembole dönüştür düğme ve ok

daha sonra düğmeye çift tıklayıp üstündeyken basarken gibi aylarını aylarıyoruz 
daha sonra katman ekliyoruz oynanacak videomuz için ve karelerini oluşturruyoruz.
ve düğmenin keyframine sağ tıklıyoruz
ve oraya stop();
yazıyoruz.
ve daha sonra düğmemize sağ tıklayıp eylemlere giriyoruz
orayada : 
on (release){
gotoAndPlay(2);
}

Flash objemizi baslangıc pozisyonuna alma

kare1_mc.addEventListener(MouseEvent.MOUSE_DOWN, surukle);
var ybaspos:Number;//başlangıç pozisyonunun tanımı
function surukle(e:MouseEvent) //sürükle fonksiyonumuz
{
var ypos:Number = e.currentTarget.y;
var xpos:Number = e.currentTarget.x;
ybaspos=e.target.y;
kare1_mc.startDrag(false,new Rectangle(xpos,ypos,0,100));
}

kare1_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
function birak(e:MouseEvent) //sürükle fonksiyonumuz
{
kare1_mc.y=ybaspos;
kare1_mc.stopDrag();
kare1_mc.y=ybaspos;
}

Flash action script 3 oynat durdur ve ses çalma

——————————–


Daha sonra animasyonumuzu yapıp yeni bir katman oluştururuz ismini dugmeler koyalım. ve düğmelerimizi sembole donusturup isimlerini verelim (oynat,durdur) ve örnek isimlerinide vermeyi unutmayalım (oynat_mc, durdur_mc)
——————————————
Daha sonra yeni bir katman daha oluşturup adını kodlar yapalım, ilk framine sağ tıklayıp actionsa tıklayalım ve aşağıdaki kodlarıyapıştıralım.

//oynatilacak ses dosyamiz icin kodlarımız

var my_sound:Sound = new Sound();
var my_channel:SoundChannel = new SoundChannel();
my_sound.load(new URLRequest(“E:/media/mzk/a.mp3”));
//dugme olacak nesnelerimiz
oynat_mc.addEventListener(MouseEvent.MOUSE_DOWN, oynatfonkstion);
durdur_mc.addEventListener(MouseEvent.MOUSE_DOWN, durdurfonksiyon);
function oynatfonkstion(e:MouseEvent)
{
 play();
 my_channel = my_sound.play(); //ses dosyamızı calistiran komut
}
function durdurfonksiyon(e:MouseEvent)
{
 stop();
}

FLASH Tek sayfada -> SURUKLE BIRAK SES ÇAL

//Action Script 3 olmasi gerek
//sürüklenecek objelerin en üstte olmasına dikkat etki kareye sürüklendiğinde arkasına geçmesin
var dogrucevap_sound:Sound = new Sound();
var yanliscevap_sound:Sound = new Sound();
var my_channel:SoundChannel = new SoundChannel();
dogrucevap_sound.load(new URLRequest(“C:/Users/Public/Documents/Activ Software/Inspire/Sesler/Efektler/sihir 01.mp3”));
yanliscevap_sound.load(new URLRequest(“C:/Users/Public/Documents/Activ Software/Inspire/Sesler/Efektler/patlama 02.mp3”));


cevap1_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
cevap2_mc.addEventListener(MouseEvent.MOUSE_DOWN, surukle);
cevap3_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
cevap4_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
cevap5_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
cevap6_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
cevap7_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
cevap8_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
cevap9_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
cevap10_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
cevap11_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
cevap12_mc.addEventListener(MouseEvent.MOUSE_DOWN,surukle);

//aşağıda dairelerin gidecegi doğru cevaplar yani kareler taınmlanır
cevap1_mc.yer=soru1_mc;
cevap2_mc.yer=soru1_mc;
cevap3_mc.yer=soru4_mc;
cevap4_mc.yer=soru2_mc;
cevap5_mc.yer=soru3_mc;
cevap6_mc.yer=soru3_mc;
cevap7_mc.yer=soru4_mc;
cevap8_mc.yer=soru3_mc;
cevap9_mc.yer=soru1_mc;
cevap10_mc.yer=soru2_mc;
cevap11_mc.yer=soru1_mc;
cevap12_mc.yer=soru4_mc;

//aşağıda dairelerin ilk yerleri tanımlanır çunku cevap yanlışsa geri oraya gidecek
//armut_mc.ilkyerx=armut_mc.x;
//elma_mc.ilkyerx=elma_mc.x;
//muz_mc.ilkyerx=muz_mc.x;
//ananas_mc.ilkyerx=ananas_mc.x;
//armut_mc.ilkyery=armut_mc.y;
//elma_mc.ilkyery=elma_mc.y;
//muz_mc.ilkyery=muz_mc.y;
//ananas_mc.ilkyery=ananas_mc.y;


//bir üstteki kodun aynısı ama daha kısa yani yanlış cevaba surukleynce daireyi geri ilk pozisyonuna götürecek (x=dikey pozisyon, y yatay pozisyon)
var xyeri:Number;
var yyeri:Number;

function surukle(e:MouseEvent)
{
 xyeri=e.target.x;//suruklemeye basladıgındaki x poz
 yyeri=e.target.y;//suruklemeye basladıgındaki y poz
 e.target.startDrag();
}
cevap1_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap2_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap3_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap4_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap5_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap6_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap7_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap8_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap9_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap10_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap11_mc.addEventListener(MouseEvent.MOUSE_UP, birak);
cevap12_mc.addEventListener(MouseEvent.MOUSE_UP, birak);

function birak(e:MouseEvent)
{
 e.target.stopDrag();
 if (e.target.hitTestObject(e.target.yer))
 {
  e.target.mouseEnabled=false;//cevap doğruysa dairenin hareket etmesini engeller
 my_channel = dogrucevap_sound.play(); //ses dosyamızı calistiran komut

  // e.target.x=e.target.yer.x; //cevap dogruysa ortasına alır bunlar açık olursa
 //e.target.y=e.target.yer.y;
 }
 else
{
 my_channel = yanliscevap_sound.play(); //ses dosyamızı calistiran komut

  e.target.x=xyeri; //cevap yanlışsa daireyi sürüklemeye başladığın yere atar
  e.target.y=yyeri; 
 }
}