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
Konsol Ekranında Kod Yazma ve Çalıştırma
Yıkıcı Metotlar (Destructors)
Kredi Kartı Taksitlendirme İşlemini Yapan c# Uygulaması
Sayısal Loto Çekilişini Yapan c# Uygulaması
Tombala Oyununu Yapan Uygulamayı c# Dilinde Kodlama1
Kaçan Buton Oyununu Yapan c# Uygulaması
Rastgele Seçilen Bir Sayıyı Basamaklarına Ayıran, Basamak Değerini ve Sayı Değerini Bulan c# Console Uygulaması
Veri Girişi Maskeleme (MaskedTextBox)
Girilen Sayının Okunuşunu Yapan c# Uygulaması
2020 TYT Matematik Ortakatlı Kuralıyla İlgili Sorunun Çözümünü c# Diliyle Kodlama
Basit Veri Bağlama (Simple Data Binding)
c# Programında Bigpara Sayfasından Borsa Verilerini Selenium Kütüphanesini Kullanarak Çekme
TrendYol 2023 - 2024 Süper Lig Fikstür Kura Çekimini Yapan c# Console Uygulaması-4
Veri Girişi Doğrulama (Input Validation)
TabControl Panelini Kullanarak Lokantalar İçin Müşteri Siparişi Alan c# Form Uygulaması
Faktöriyel Hesabı Yapan c# Windows Form Uygulaması
Tetris Oyununu C# Dilini Kullanarak Form Sayfasında Kodlama1
C# Uygulamalarında HashMap Dizi Oluşturma
MenuStrip Nesnesiyle Form Sayfasına Menü Ekleyen c# Form Uygulaması
Girilen Ad Soyadı Form Sayfasında Dinamik Olarak Gösteren c# Form Uygulaması

Yorum Ekle
   
Kötü İyi