Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
3
Cevap
384
Tıklama
0
Öne Çıkarma
c++'ta yaptigim kucuk bir oyun
M
8 yıl
Onbaşı
Konu Sahibi

ortalama bi 45 dakikada yaptim cok basit bir oyun ama insan boyle kucuk seyler yapinca mutlu oluyor oncelikle kodu yazmadan once bu isin pirleri bana neler ogrenmem gerektigini soyleyebilir mi? yazdigim koddan anlayabilecegini dusunuyorum. Kodlama olarak suan bu yazdıgım C dili ile javayı aynı oranda biliyorum. Nesne tabanlı programlama ile daha kolay mi olurdu ? Baska kullanmam gereken kutuphaneler var miydi ? Simdiden tesekkur ediyorum. Ekstradan consol tabanlı kucuk bi oyun tabi.

quote:

#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <time.h>

using namespace std;

void oyunBaslat();
int rastgeleSayiAl(int secim,int canavarcani);
int rastgeleCanavarSaldirisi(int karaktercani);
void secimeGoreTepkiVer(int a);
int secimYap();

int main()
{
int karaktercani=100,canavarcani=100,secim;

oyunBaslat();

do{
cout << "\n\n1-Saldir\n2-Savun\n3-Ozel yetenek\n4-Kac\n\n";
secim = secimYap();
secimeGoreTepkiVer(secim);
canavarcani = rastgeleSayiAl(secim,canavarcani);
cout << "Canavarin cani : %" << canavarcani << endl;
karaktercani = rastgeleCanavarSaldirisi(karaktercani);
cout << "\nSaglik Durumun : %" << karaktercani << endl;


}while(canavarcani > 0 && karaktercani > 0);
{
if (canavarcani <= 0)
{
cout << "CANAVARİ HAKLADİN !";
}
else
{
cout << "OLDUN!";
}
}
}

void oyunBaslat()
{
cout << "Onune kocaman bir Yaratik Cikti! ";
}
int secimYap()
{
int secim;
cin >> secim;
while (secim < 1 || secim > 4)
{
cout << "Çok zeki degilsin galiba Savasci! yapabilecegin 4 hamle var!";
cin >> secim;
}
return secim;

}
void secimeGoreTepkiVer(int a)
{
if (a == 1)
{
cout << "SALDIRDIN !\n";
}
else if(a==2)
{
cout << "SAVUNMAYA CALİSTİN ! \n";
}
else if (a==3)
{
cout << "GERILDIN VE KILICINI BİR OK GIBI SAPLAMAYA CALISTIN!\n";
}
else
{
cout <<"KACMAYA CALISTIN !";
}
}

int rastgeleSayiAl(int secim,int canavarcani)
{
int randomsayi,ozelrandomsayi;

srand (time (NULL));
randomsayi = (rand()%4)+1;
ozelrandomsayi = (rand()%10)+1;
if (secim == 1)
{
if (randomsayi == 1)
{
int randomvurus;
randomvurus = (rand()%20)+5;
cout << "VURDUN !\n";
canavarcani = canavarcani-randomvurus;
return canavarcani;
}
else
{
cout << "VURAMADIN !\n";
return canavarcani;
}
}



if (secim == 2)
{
if (randomsayi == 1 || randomsayi == 2 || randomsayi == 3)
{
cout << "SAVUNDUN !\n";

return canavarcani-5;
}
else
{
cout << "SAVUNAMADIN ! !\n";
return canavarcani;
}
}

if (secim == 3)
{
if (ozelrandomsayi == 1 || ozelrandomsayi == 5)
{
cout << "COK SERT VURDUN !";
canavarcani = canavarcani - 20;
return canavarcani;
}
else
{
cout << "ISKALADIN !";
return canavarcani;
}
}

if (secim == 4)
{
if (ozelrandomsayi == 1)
{
cout << "KACTİN !";
return canavarcani;
}
else
{
cout << "KACAMADİN !";
return canavarcani;
}
}



}

int rastgeleCanavarSaldirisi(int karaktercani)
{
int randomsayi;
srand (time(NULL));

randomsayi = (rand()%6)+1;

if (randomsayi == 1)
{
cout <<"Canavar afalladi ve seni iskaladi !\n";
return karaktercani;
}
else if (randomsayi == 2)
{
cout << "Canavar sana beklenmedik sekilde kafana darbe vurdu.";
return karaktercani-6;
}
else if (randomsayi == 3)
{
cout << "Canavar o kadar çok bagirdi ki korkudan isler guclerdeki gibi fiti fiti yapip arkaya giderken tasa takildin ve kalcana zarar verdin";
return karaktercani-2;
}
else if (randomsayi == 4)
{
cout << "Canavarin agzindan toksik bi saldiri geldi ve vucudu yakti";
return karaktercani -8;
}
else if (randomsayi == 5)
{
cout << "Canavar cok hiddetli bir sekilde uzerine saldirdi!";
return karaktercani -6;
}
else
{
cout << "Canavar senin gozlerinin icine bakip butun acilarini gosterdi ve yasadigin aciyla aglarken elini bicak gibi yapip kalbine soktu!";
return karaktercani -15;
}
}

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



G
8 yıl
Teğmen

Kodlarda boşluklar yok mu buraya kopyalayınca mı kayboldu ?
Çok detaylı incelemedim gözüme bir tek if(randomsayi == 1 || randomsayi == 2 || randomsayi == 3) kısmı çarptı.
Burada if(randomsayi >=1 || randomsayi <=3) yazılabilir daha kısa ve 1 kontrol daha az olur.
Bu proje için çok gerekli değil ama büyük projelere geçerken kendinizi yorum satırı yazmaya alıştırın. Özellikle c gibi düşük seviyeli dillerde yorum satırlarının önemi çok fazladır.
Temel seviye için iyi program elinize sağlık.


Bu mesaja 1 cevap geldi.
M
8 yıl
Onbaşı
Konu Sahibi

quote:

Orijinalden alıntı: assembly_bilmeyenassembler

Kodlarda boşluklar yok mu buraya kopyalayınca mı kayboldu ?
Çok detaylı incelemedim gözüme bir tek if(randomsayi == 1 || randomsayi == 2 || randomsayi == 3) kısmı çarptı.
Burada if(randomsayi >=1 || randomsayi <=3) yazılabilir daha kısa ve 1 kontrol daha az olur.
Bu proje için çok gerekli değil ama büyük projelere geçerken kendinizi yorum satırı yazmaya alıştırın. Özellikle c gibi düşük seviyeli dillerde yorum satırlarının önemi çok fazladır.
Temel seviye için iyi program elinize sağlık.

Teşekkür ederim hocam evet <=3 yapsam daha kısa olabilirmiş fakat aradaki || yerine && koymam gerekirmiş . aslında boşluk vardı buraya kopyalayınca sanırım bir bozukluk yaşandı.





< Bu mesaj bu kişi tarafından değiştirildi mekatIronik -- 5 Nisan 2017; 5:9:31 >

G
8 yıl
Teğmen

Aynen && olması gerekli yanlış yazmışım.
Kodunuzu [code][/code] etiketlerinin arasına yazarsanız bu tür bozulmalar olmaz. Ama orada da kodun tamamı görünmüyor mesajda öyle bir sıkıntı var, scrollbar ekleniyor.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.