Labirent Oyunu (Flash-AS3)
Grafik ve Animasyon dersi modülünde yer alan labirent oyununa bir kaç ekleme yaptık. Oyunun işlem basamakları aşağıdaki gibidir. Oyunun amacı labirentin kırmızı duvarlarına dokunmadan Bitiş çizgisine ulaşmak. Eğer bu esnada duvarlara dokunursanız bir hakkınız azalıyor. Toplamda 3 hakkınız var. Hepsini kaybederseniz Oyun Bitti yazısı sizi karşınıza geliyor.
İşlem Basamakları :
- Yeni bir Flash AS3 belgesi açılır. (550x 400px)
- 500 x 250px boyutunda bir dikdörtgen çizilir. Bir labirent şekli oluşturacak biçimde seçim yapılarak sırayla silinir. Daha sonra oluşan bu şekil seçilir ve F8 tuşuna basılarak film klibi yapılır. Özellikler panelinden Örnek Adı “labirent” olarak belirlenir.
- Labirentin bittiği yere Bitiş yazısı eklenir. Kullanıcının kaç hakkının kaldığını görmesi için dinamik bir metin kutusu eklenerek örnek adı “kalanHak” olarak belirlenir.
- Oyunun bittiğini kullanıcıya haber versin diye ekranda “Oyun Bitti” şeklinde bir film klibi oluşturulur. Örnek adı “oyunbitti” olarak belirlenir.
- Tasarım kısmı tamamlanan oyunumuzun kodlarını yazmaya geçebiliriz. F9 ile eylemler penceresi açılır. Kodlar aşağıda verilmiştir. Her satırın yanında açıklama satırları o satırın ne işe yaradığını anlatmaktadır.
- Daha sonra film test edilir.
Kodlar :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
import flash.events.MouseEvent; labirent.addEventListener(MouseEvent.MOUSE_OVER, oyunnasilbisey); var say: uint = 0; // sayaç için bir değişken tanımlayıp sıfırlıyoruz. var hak: uint = 3; // hak için bir değişken tanımlıyoruz. kalanHak.text = String(hak); //Kalan Haklarınızı gösterir oyunbitti.visible = false; // Oyun bittiğinde en üstte gözükmesi için görünümünü function oyunnasilbisey(e: MouseEvent): void { say = say + 1; // say+=1; şeklinde de kullanılabilir. Sayacı bir arttırıyoruz. hak = hak - 1; // Hakkımızı bir azaltıyoruz. kalanHak.text = String(hak); // Kalan haklarımızı güncelliyoruz if (say == 3) { oyunbitti.visible = true; // Oyun bittiğinde en üstte gözükmesi için görünürlülüğünü true yapıyoruz labirent.removeEventListener(MouseEvent.MOUSE_OVER, oyunnasilbisey); // Olay dinleyicisini kaldırıyoruz } } |
gayet güzel
_*DENEDİM OLMUYOR NEDEN ?*_
Nerede hata aldığını yazarsan yardımcı olmaya çalışayım.
Bitişe gelince birşey olmuyor onu nasıl yapabiliriz ?
Çıktıyı aktifleştirip oyunu oynamaya çalıştığında tüm hakların bitince bir film klibi (oyunbitti örnek adında) çıkıyor. İşlem Basamakları 4. adımı tekrar gözden geçir. Sorun ortadan kalkacaktır.