Şimdi Ara

c++'ta yaptigim kucuk bir oyun

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
5
Cevap
0
Favori
308
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • 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;
    }
    }







  • 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.
  • 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 >
  • 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.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.