Şimdi Ara

C# Tetris Yardım (Sadece Öneri Olarak)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
2.294
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar C# ile tetris projem var ancak kimse yanlış anlamasın bana yapacak yada yapılısını bulacak birilerini falan aramıyorum.
    Sadece yöntem olarak önerileri olan varmı kullanabileceğim kısayollar falan. Ben Döngülerle yapmaya kalktım ve bu şekilde olacak gibi
    değil iç içe 100 lerce döngü oldu içinden çıkamadım önerisi olan birileri yardımcı olursa çok sevinirim.

    Not:Beleşçi değilim amacım öğrenmek şimdiden teşekkürler



  • 100'lerce döngü neden kaynaklandı ki? Oyunu sürdüren tek bir döngü yeterli olur. Oyuna başlandığı anda bu döngüyü başlatırsın ve oyun bitene kadar dönmeye devam eder. Bir de belki taşın aşağı düşüşünü yapmak için ikinci bir döngüye ihtiyacın olabilir.

     
    do{
    //sıradaki taşı seç
    //sıradaki taşı ekranın üstüne yerleştir
    do{
    //Levelin süresi kadar bekle (mesela 1. levelde 1 saniye, 2. levelde 900 milisaniye, 3. levelde 800ms ...)
    if(taş oturduysa){ //yani taşın altı doluysa
    if(taşın oturduğu pozisyonda satır tamamlandıysa){
    //satırı sil
    //puan arttır
    //içteki döngüden çık
    }
    else if(taş daha önce aşağı doğru hareket etmedi ise){
    //oyun bitti!
    //iki döngüden de çık
    }
    }
    else{
    //taşı bir birim aşağı hareket ettir.
    }
    }while(true) //sonsuz döngü... Çıkma şartı döngü içindeki if ile sağlanıyor.
    }while(!OyunSonu)



    < Bu mesaj bu kişi tarafından değiştirildi un.real -- 18 Ekim 2011; 22:58:49 >




  • çok teşekkür ederim deniycem
    bu arada ben taşları butonlarla yapıyorum döngülerin çoğunuda taşların hareketinde kullanıyorum taşlar genellikle 3-4 butondan oluşuyor bu butonları
    tek bir parça gibi çalıştırmam için bir öneriniz varmı ?
  • Bitmap blokları mesela 30 a 30 luk bitmap tasarımı ile bir blok oluşturulur. Daha sonra Bitmap dizisi kullanılarak yeni bloklar oluşturulur.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.