Projelere dön

Terminal Tetris Oyunu

Terminalde oynanabilen bir tetris oyunu.

Kaynak Kodu
Terminal Tetris Oyunu

C++ ile nesne yönelimli programlama (Object-Oriented Programming) ve kalıtım konularını öğrendikten sonra, bu bilgileri pekiştirmek amacıyla geliştirdiğim bir projedir. Projede her şekil, ortak özellikleri barındıran bir base class’tan kalıtım alır. Bu sayede tüm şekiller, polimorfizm sayesinde aynı arayüz üzerinden yönetilebilir ve tek bir fonksiyon tarafından parametre olarak alınabilir.

Şeklin türü belirlendikten sonra, ilgili sınıfa ait fonksiyonlar aracılığıyla oyuncudan gelen komutlara göre şeklin koordinatları güncellenir. Bu yapı, kod tekrarını azaltırken esnek ve sürdürülebilir bir mimari sağlar. Ayrıca yeni bir şekil eklemek, yalnızca base class’tan türeyen yeni bir sınıf tanımlamakla mümkün olduğundan, proje genişletilebilir bir yapıya sahiptir.

Projede klasik oyunda bulunan tüm temel şekiller (I, O, T, L, J, S, Z) desteklenmektedir. Her bir şekil kendi dönüş (rotation) ve konumlandırma (positioning) mantığına sahiptir. Bunun yanı sıra, çakışma kontrolü (collision detection) ve sınır kontrolü (boundary check) gibi mekanizmalar da eklenerek oyun akışı daha stabil ve hatasız hale getirilmiştir.

Terminal Tetris Oyunu | Emir Odabaş