Proje: TOP ATMA OYUNU - Kocaeli Üniversitesi Bilgisayar

Transkript

Proje: TOP ATMA OYUNU - Kocaeli Üniversitesi Bilgisayar
KOCAELİ ÜNİVERSİTESİ
BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
PROGRAMLAMA LABORATUVARI I DERSİ 1. PROJE
Proje: TOP ATMA OYUNU
- Proje kaynak kodları (source code) CD içerisinde raporla beraber teslim edilecektir. Proje
teslimi sırasında raporunuzun çıktısı ve 2 adet cd teslim etmeniz gerekmektedir.
- Projenin C dili kullanılarak geliştirilmesi gerekmektedir.
İNTİHAL: İnternetten alınan kod parçacıkları mutlaka kod içerisinde belirtilecek ve
açıklama satırı ile kaynak gösterilecektir. Aksi durumda kopya olarak
değerlendirilecektir. Kopya çektiği ya da kopya verdiği tespit edilen öğrenciler
SUNUMA ALINMAYACAKTIR.
ÖNEMLİ: 3 PROJEDEN 2 PROJENİN RAPORUNU TESLİM ETTİĞİ HALDE SUNUMA
GELMEYEN ÖĞRENCİLER DEVAMSIZLIKTAN KALACAKTIR.
Proje Tanımı ve Yapmanız Gerekenler:
Projede temel olarak binaların bulunduğu bir ara yüz hazırlamanız ve bu binalardan herhangi
ikisi üzerine yerleştirdiğiniz oyuncular ile top atma oyununu tasarlamanız istenmektedir.
Yani;
1) Oyunun oynandığı ara yüzde farklı yükseklik ve genişliklerde binalar bulunacaktır.
(Binaların şekli tamamen sizin hayal gücünüze bırakılmıştır.)
2) Oyun yeniden her başlatıldığında binaların sayısı yükseklik ve en boy değerleri
rastgele olarak değiştirilmelidir. Yani her seferinde kullanıcı yeni bir ara yüz ile
karşılaşmalıdır.
3) Binaların üzerinde biri sağda ve diğeri solda olmak üzere iki oyuncu yer alacaktır.
(Oyuncuları nasıl çizeceğinizde sizin hayal gücünüze bırakılmıştır.) Oyuncuların yeri
biri sağda biri solda olacak şekilde belirlenecektir ancak oyuncularda her seferinde
aynı binanın zerinde (aynı koordinatta) bulunmayacaktır. Oyuncuların yerinin de
rastgele olarak belirlenmesi gerekmektedir.
4) Oyunculara sırayla bir top ile birbirlerini vurmaya çalışacaklardır.
5) Top atışı bir eğik atış hareketi şeklinde yaptırılacaktır.
6) Eğik atış hareketinin yaptırılabilmesi için topun hızının ve yönünün ayarlanması
gerekmektedir. (eğik atış için topun yönü ve topun hızı dışında rüzgârın hızının da
dikkate alınması gerekmektedir. Rüzgâr hızını istediğiniz şekilde belirleyebilirsiniz.
Sabit bir sayı da olabilir, rastgele değişen değerlerde olabilir. )
7) Oyunu oynayan kullanıcıya hız ve yön değerlerini belirlemesi için oyuncunun
bulunduğu tarafın üstünde bir alan hazırlanmalıdır. Ve burada yön tuşları ile hem hızın
hem de atış yönünün belirlenmesi sağlanmalıdır.
8) Daha sonra belirlenen bu değerlerle atış yapılacaktır ve karşıdaki oyuncu vurulmaya
çalışılacaktır.
9) Her oyuncunun toplamda üç hakkı bulunacaktır. Sağdaki oyuncu birinci atışını
yaptıktan sonra sıra soldaki oyuncuya geçecektir.
10) Her oyuncunun atış sırasında da bir süre sınırlaması olmalıdır. Örneğin her atış için bir
dk. verilebilir. Belirtilen süre içerisinde atış yapılmazsa oyuncu hakkını kaybedecektir
ve sıra diğer oyuncuya geçecektir.
11) Karşıdaki oyuncuyu vurma durumuna ve atış sürelerine göre puan hesabı yapılacaktır.
Puan hesabının nasıl yapılacağı size bırakılmıştır ancak hesap sırasında mutlaka
oyuncuyu vurma ve süre kriterleri dikkate alınmalıdır.
12) Oyuncunun herhangi bir yerine temas eden top oyuncunun vurulduğu anlamına gelir.
13) Topun binalara gelmesi durumunda ise topun değdiği noktalar yıkılacaktır.
Aşağıda projeyi daha net anlayabilmeniz size örnek bir ara yüz sunulmuştur. Ara
yüzün amacı proje hakkında bilgi vermektir. Birebir aynı ekranı tasarlamanız
beklenmemektedir. Herkes kendi hayal gücüne göre bir tasarım yapacaktır.
Örnek Ara yüz;
Top atma oyununa ait örnek ara yüz yukarıda gösterilmiştir.






Oyunun açılış ekranında grafik kütüphaneleri ile hazırlanmış bir menü ekranı
olmalıdır.
Daha sonra oyuna başla butonu ile yukarıdaki ekrana geçilmelidir.
Yukarıda da belirtildiği gibi her oyuncunun üç atış hakkı bulunacaktır.
Ve oyun sonunda hangi oyuncunun kazandığı ekranda gösterilmelidir.
Ayrıca oyunda en yüksek üç skorun da tutulması gerekmektedir. Açılışta gelecek
menüden bu skorlar görüntülenebilmelidir. Mevcut skorlardan daha yüksek bir skor
yapıldığında en yüksek skor bilgileri güncellenmelidir.
Ana menüde yer alacak bir çıkış seçeneği ile oyundan çıkılacaktır. Kullanıcı çıkışı
seçmediği sürece oyunu istediği kadar oynayabilmelidir.
BONUS: Kullanıcılar için renk seçimi sunulması, oyuna müzik, farklı ses ve görüntü
efektlerinin eklenmesi (topun çarpma anında çarpma sesi çıkarılması tuğlalar kırılırken farklı
bir görüntü efektinin kullanılması gibi) ve oyun sırasında pause yani oyunu bekletme
seçeneğinin olması size ek puan getirecektir. Yapılması zorunlu değildir.
UYARI: DEMO GÜNÜ PROJEYİ BİR KAÇ KEZ ÇALIŞTIRMANIZ
GEREKEBİLİR. PROJE HER ÇALIŞTIRILDIĞINDA EK İŞLEME GEREK
OLMADAN
ÇALIŞTIRILABİLMELİDİR.
PROYE
ELLE
MÜDAHELE
EDİLMESİNE İZİN VERİLMEYECEKTİR. PROJENİZİ KODLARKEN BU
UYARIYI MUTLAKA DİKKATE ALMALISINIZ!
Demo Günü Teslim Etmeniz Gerekenler :
Kodlama ve uygulamayı yaptığınız ortam (IDE) hakkında sorulacak olan sorulara
hazırlıklı olmanız beklenmektedir.
Demo günü teslim edilecekler:
2 adet Cd, raporunuzun çıktısı (hard-copy).
CD içinde olması gereken dökümanlar:
-Projenizin kaynak kodları
- Proje'nin rapor çıktısı (soft-copy).
- CD içinde kodunuz, programınızın çalıştırabilmesi için gerekli olan instructionlar
(readme.txt) ve raporunuz.
- Proje raporunuzu rapor formatına uygun olarak hazırlamanız gerekmektedir.
Son Teslim tarihi: 26.12.2014 Cuma günüdür. Projeyi kime teslim edeceğiniz ve sunum
tarihleriniz daha sonra duyurulacaktır. Proje hakkındaki sorularınız için
[email protected] adresine mail atabilirsiniz.

Benzer belgeler