c# Desktop

Tetris Oyununu c# Dilini Kullanarak Form Sayfasında Kodlama15

Tetris oyunumuza biraz daha işlevsellik kazandıralım. Şekiller hareket ettikçe hoparlörden ses gelmesini sağlayalım. Form sayfalarında wav uzantılı ses dosyalarını çok rahat kullanabilirsiniz. Ben şekil hareket ettikçe sesin çıkmasını, şekil zemine oturduğunda sesin çıkmasını, satırlar gizlendiğinde de sesin çıkmasını istiyorum.
 
Adım 1: Öncelikle ses dosyalarını buradan bilgisayarımıza indirelim. Siz isterseniz kendi oyununuza ait ses dosyalarını internetten araştırabilirsiniz.
 
Adım 2: Projeye Sounds isminde bir klasör ekleyelim. İndirdiğimiz ses dosyalarını bu klasörün içine kopyalayalım.
 
Adım 3: Bu ses dosyalarının ismini tutacağımız sesler isminde bir dizi tanımlayalım. Ayrıca sesi çalacağımız SoundPlayer tipinde ses değişkenini de tanımlayalım.
 
string[] sesler = { "hareket.wav", "zemin.wav", "doldurma.wav" };
SoundPlayer ses;
 
Adım 4: Sağa ve sola yön tuşlarıyla şekiller hareket ediyordu. Yer müsaitse şekil hareket ediyordu. Şekile ait hareket sesini buralarda kullanacağız.
 
      if (solaGit == true)
         {
           for (int i = 0; i < 4; i++)
            {
               kare[aktifSekil[i]].Visible = false;
               aktifSekil[i] = aktifSekil[i] - 1;
            }
 
             yol = Application.StartupPath.Replace("bin\\Debug", "Sounds\\");
             ses = new SoundPlayer(yol + sesler[0]);
             ses.Play();
          }
 
Projeyi çalıştıralım. Sol yön tuşuna bastığımızda sesin geldiğini görürsünüz.
 
Adım 5: Şimdi sagaGit değişkeninin değeri true olduğunda kullanılan kod bloğunu tekrar düzenleyelim.
 
     if (sagaGit == true)
         {
           for (int i = 3; i > -1; i--)
            {
               kare[aktifSekil[i]].Visible = false;
               aktifSekil[i] = aktifSekil[i] + 1;
            }
 
             yol = Application.StartupPath.Replace("bin\\Debug", "Sounds\\");
             ses = new SoundPlayer(yol + sesler[0]);
             ses.Play();
          }
 
Projeyi çalıştıralım. Sağ yön tuşuna bastığımızda sesin geldiğini görürsünüz.
 
Adım 6: Peki şeklin zemine geldiğini nerede kontrol ediyoruz? Timer olayında SekilSec() metodunu çağırdığımız satırın altına aşağıdaki kodları yazalım.
 
         yol = Application.StartupPath.Replace("bin\\Debug", "Sounds\\");
         ses = new SoundPlayer(yol + sesler[1]);
         ses.Play();
 
Adım 7: Satırın tamamı şekillerle doldurulduğunda doldurma.wav isimli ses dosyasını çalıştıralım. TetrisKontrol() fonksiyonunda satirSil değişkeninin
değerinin true olduğu komut satırının içine aşağıdaki kodları ekleyelim.
 
         int sleepTime = 1500;
         Thread.Sleep(sleepTime);
         yol = Application.StartupPath.Replace("bin\\Debug", "Sounds\\");
         ses = new SoundPlayer(yol + sesler[2]);
         ses.Play();
 
Adım 8: Şekil aşağıya doğru inerken sesin çalmasını sağlayalım. Bunun için devamet değişkeninin değeri true olduğunda tanımlanan kod satırlarına aşağıdaki satırları ekleyelim.
 
         yol = Application.StartupPath.Replace("bin\\Debug", "Sounds\\");
         ses = new SoundPlayer(yol + sesler[0]);
         ses.Play();
 
Projeyi çalıştırdığımızda ses dosyalarının düzgün bir şekilde çalıştığını görürsünüz. Bir sonraki makalede görüşmek üzere.

İlgili Makaleler
Basit Veri Bağlama (Simple Data Binding)
Veri Girişi Doğrulama (Input Validation)
Kompleks Veri Bağlama (Complex Data Binding)
TabControl Panelini Kullanarak Lokantalar İçin Müşteri Siparişi Alan c# Form Uygulaması
c# Programında Bigpara Sayfasından Borsa Verilerini Selenium Kütüphanesini Kullanarak Çekme
Veri Girişi Maskeleme (MaskedTextBox)
Yıkıcı Metotlar (Destructors)
Kaçan Buton Oyununu Yapan c# Uygulaması
Konsol Ekranında Kod Yazma ve Çalıştırma
2020 TYT Matematik Ortakatlı Kuralıyla İlgili Sorunun Çözümünü c# Diliyle Kodlama
Rastgele Seçilen Bir Sayıyı Basamaklarına Ayıran, Basamak Değerini ve Sayı Değerini Bulan c# Console Uygulaması
Form Sınıfına Ait Bazı Olayların ve Özelliklerin Kullanılmasına Ait Örnek Uygulama
Form Sınıfı
Verilen İki Matrisi Çarpan Programı c# Dilinde Form Ortamında Yapınız
Tombala Oyununu Yapan Uygulamayı c# Dilinde Kodlama1
Yazdırma İletişim Kutusu (PrintDialog)
Tetris Oyununu C# Dilini Kullanarak Form Sayfasında Kodlama1
Metodu Sonlandırma
GroupBox Paneliyle Gruplandırılan Bilgisayar Parçalarının Satışını Yapan c# Form Uygulaması
c# Console Uygulamalarında Ping Nasıl Kullanılır, Ping Atma

Yorum Ekle
   
Kötü
İyi