www.gizliorman.net
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Bu site Secret-Forestin hayranları içindir.
 
AnasayfaGaleriLatest imagesAramaKayıt OlGiriş yap

 

 ActionScript 3.0 ile Zihin Gücü İle Çalışan Program Yazmak

Aşağa gitmek 
YazarMesaj
wantedteams




Erkek Mesaj Sayısı : 114
Yaş : 32
Nerden : Pardon Secretmelos.
Lakap : Ne diyorsun ya.
Kayıt tarihi : 09/02/09

ActionScript 3.0 ile Zihin Gücü İle Çalışan Program Yazmak Empty
MesajKonu: ActionScript 3.0 ile Zihin Gücü İle Çalışan Program Yazmak   ActionScript 3.0 ile Zihin Gücü İle Çalışan Program Yazmak Icon_minitimePerş. Şub. 12, 2009 11:19 am

Programların beyin gücü ile çalışma mantıklarını yazmıştım. Şu linkten ilgili makaleyi okuyabilirsiniz. http://mehmetoglu.org Gelelim programların nasıl yazıldığına.. Tüm programlar hemen hemen aynı mantıkla yazıldı. Birinde bir geldikçe kutu sağa kayıyorsa diğerinde 1 geldikçe ibre sağa dönüyordur.. Pek farkları yok. Ben sadece ”Aksiyön” programının yazımını anlatacağım.

Böyle bir uygulamayı “Flash CS3 ActionScript 3″ ile; yazmayı öğrenebileceğiniz bir biçimde anlatacağım. Temel bilginiz yoksa karmaşık gelebilir.

Herşeyden evvel belirtmem gereken önemli bir nokta var.. Tüm film klipleri (movie klipler) kendi içerinde en ve boy bakımından tam ortadalar… Yani merkez nokta tam orta olacak şekilde konumlandılar.. en ve boy bakımından şekli ortalamak için align panelini kullanabilirsiniz…
// Önce saati oluşturacağız. Bunun için 2 değişken tanımlamalıyız
// “saniye” değişkenini her seferinde gerçek zamanlı saniye cinsinden artıracağız.
// Dakika ise (her 60 saniyede bir), {1} artacak.
var saniye:Number = 0;

// “saniye” değişkeni “Numara” cinsinden “0″ ‘dır dedik.

var dakika:Number = 0;

// Turuncu kutum orta_mc adında durağan bir film klibi (movie clip).
// Onun başlangıç anındaki değerini alıp, değişken olarak bir kenarda tutuyoruz.

var orta_en:Number = orta_mc.x;

// Şimdi saatin çalışması için fonksiyon oluşturalım.
// “Timer” cinsinden “1000 / 1000 milisaniye yani 1 sn sürede bir” çalışan değişken oluşturalım

var zamanlayici:Timer = new Timer(1000);

// zamanlayıcı değişkenine bağlı bir dinleyici oluşturalım.
// her 1000 milisaniyede bir zamanlayici_calisiyor fonksiyonunu çalıştırsın

zamanlayici.addEventListener(TimerEvent.TIMER,zamanlayici_calisiyor);

// Zamanlayici foksiyonunu başlatalım

zamanlayici.start();

// Zamanlayici_calisiyor fonksiyonunu yazalım. Verdiğimiz görevleri uygulasın.
// (Timer Event) olayı olan zamanlayici_calisiyor fonksiyonu şunu yapacak diyelim “{” açalım.

function zamanlayici_calisiyor(TimerEvent) {

// Saniye değişkenine [her 1000 milisaniyede bir] [kendisi + bir ekle]

saniye = saniye + 1;

// Eğer saniye değişkeni 60 ‘a eşit olursa (eşitse)

if (saniye == 60) {

// dakika değişkenine bir ekle (++ ile bir ekleme yapabiliriz)

dakika ++;

// saniye değişkenini 0 yap

saniye = 0;
}

// Bu bütün değişkenleri kronometre_txt (instance name) isimli dynamic text kutusuna yazdıralım

// Aşağıdaki kodda kullandığımız ” karakterlerini flashta yeniden yapın. Buradan alınan kopya uyumsuz oluyor

kronometre_txt.text = (” ” + dakika + ” Dak. ” + saniye + ” San.”);
}
// yeni bir genel dinleyici ekliyoruz. Cinsi “ENTER FRAME” (Frameden frameye atlar. FPS ye göre hızı değişir) Çalıştırdığı fonksiyon ismi “hareket”

addEventListener(Event.ENTER_FRAME, hareket);

// hareket fonksiyonun görevini yazıyoruz. Fonksiyonunun ne olacağını..
// Bu bir fonksiyondur, ismi harekettir, oda bir (olay) ‘dır diyoruz.
// İçine yazacağımız herşey her ENTER FRAME ‘de yani her harekete girişte bir gerçekleşir.

function hareket(Event) {

// sayi adında bir değişken tanımlıyoruz.
// FPS yi ben 24 olarak ayarladığımdan saniyede 24 kez hareket eder. Bu da saniyede 24 kez sayı değişkeni üretir.
// Üretilen sayı değişkeni her seferinde 0 yada 1 olmalı.
// Bizde 2′ den küçük sayılar arasında rastgele üretim yapmasını ve bulduğu sayıyı sayi değişkenine atamasını isteyelim

var sayi:Number = Math.floor(Math.random() * 2);

// Eğer sayi değişkeni 1 ise (üretimden 1 sonucu elde edildiğinde bu böyle olur) [turuncu kutumu(orta_mc)] [turuncu kutumun son değerinden] 1 derece daha sağa kaydır
// Eğer sayi değişkeni 0 ise (üretimden 1 sonucu elde edildiğinde bu böyle olur) [turuncu kutumu(orta_mc)] [turuncu kutumun son değerinden] 1 derece daha sola kaydır

if (sayi == 1) {
orta_mc.x += 1;
}
if (sayi == 0) {
orta_mc.x -= 1;
}

// turuncu kutunun x eksenindeki konumu mavi kutununkinden büyük olursa (mavi kutunun sol sınırı 434 idi)
// Turuncu kutunun x eksenindeki konumunu (orta_mc.x) 435 yap. (her framede yeniden 435 olacağından sürekli burada kalacak.
// Ve zamanlayici fonksiyonunu durdur. Süre donsun.

if (orta_mc.x >= 434) {
orta_mc.x = 435;
zamanlayici.stop();
}

// Eğer orta_mc yeşil kutuya yaklaşırsa; bu olayların yeşil kutunun konumuna göre olan versiyonunu gerçekleştir.

if (orta_mc.x <= 295) {
orta_mc.x = 294;
zamanlayici.stop();
}
}

// Kullanıcı “sıfırla” instance name’li butonuna bastığında herşeyin tek tek başa dönmesini sağlayalım..
// sifirla_btn butonuna duyarlı bir dinleyici ekleyelim. Olay türü “Fare ve .TIKLAMA” olsun. sifirla fonksiyonunu çalıştırsın

sifirla_btn.addEventListener(MouseEvent.CLICK, sifirla);

// sifirla fonksiyonunu yazalım. Duyarlılığını “olay:Fare Olayı” şeklinde belirleyelim.

function sifirla(event:MouseEvent) {

// Herşeyin değerini sıfırlayalım.
saniye = 0;
dakika = 0;
orta_mc.x = orta_en;

// zamanlayici fonksiyonunu yeniden çalıştıralım. Bu anda süre yeniden başlamalı.

zamanlayici.start();
}
Sayfa başına dön Aşağa gitmek
 
ActionScript 3.0 ile Zihin Gücü İle Çalışan Program Yazmak
Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-
» ActionScript 3.0 ile for..in Kullanımı
» ActionScript 3.0: Özellikler
» ActionScript 3 ile Diziler
» ActionScript 3 Giriş
» ActionScript 3 Dersleri

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
www.gizliorman.net :: Flash Dersleri-
Buraya geçin: