Advertisement
vnevermore

trolololoi

Feb 3rd, 2015
291
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 6.41 KB | None | 0 0
  1. #include <iostream>
  2. #include <stdlib.h>
  3. #include <stdio.h>
  4. using namespace std;
  5.  
  6. // GLOBAL CONFIGS - START //
  7. int tries = 8; // tries that player will have to find the word -- changing this
  8. string words[] = {"ageladaris", "ageladaris", "ageladaris", "ageladaris",
  9.                   "ageladaris", "ageladaris", "ageladaris", "ageladaris",
  10.                   "ageladaris", "ageladaris", "ageladaris", "ageladaris", // words that programm will use
  11.                   "ageladaris", "ageladaris", "ageladaris", "ageladaris",
  12.                   "ageladaris", "ageladaris", "ageladaris", "ageladaris"
  13.                  };
  14. // GLOBAL CONFIGS - END //
  15.  
  16. // CODE CONFIGS - START //
  17. char letter;
  18. string temp = "__________";
  19. int word_selection = rand() % 20 + 0; // ramdon selection of the word
  20. // CODE CONFIGS - END //
  21.  
  22. void printIcon(int tries)
  23. {
  24.     switch(tries)
  25.     {
  26.     case 8:
  27.         cout<<"                                    +-----+"<<endl;cout<<"                                    |"<<endl;cout<<"                                    |"<<endl;cout<<"                                    |"<<endl;cout<<"                                    |"<<endl;cout<<"                                    |"<<endl;cout<<endl;
  28.         break;
  29.     case 7:
  30.         cout<<"                                    +-----+"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |"<<endl;cout<<"                                    |"<<endl;cout<<"                                    |"<<endl;cout<<endl;
  31.         break;
  32.     case 6:
  33.         cout<<"                                    +-----+"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     O"<<endl;cout<<"                                    |"<<endl;cout<<"                                    |"<<endl;cout<<endl;
  34.         break;
  35.     case 5:
  36.         cout<<"                                    +-----+"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     O"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |"<<endl;cout<<endl;
  37.         break;
  38.     case 4:
  39.         cout<<"                                    +-----+"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     O"<<endl;cout<<"                                    |    /|"<<endl;cout<<"                                    |    "<<endl;cout<<endl;
  40.         break;
  41.     case 3:
  42.         cout<<"                                    +-----+"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     O"<<endl;cout<<"                                    |    /|\\"<<endl;cout<<"                                    |    "<<endl;cout<<endl;
  43.         break;
  44.     case 2:
  45.         cout<<"                                    +-----+"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     O"<<endl;cout<<"                                    |    /|\\"<<endl;cout<<"                                    |    / "<<endl;cout<<endl;
  46.         break;
  47.     case 1:
  48.         cout<<"                                    +-----+"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     |"<<endl;cout<<"                                    |     O"<<endl;cout<<"                                    |    /|\\"<<endl;cout<<"                                    |    / \\"<<endl;cout<<endl;
  49.         break;
  50.     }
  51. }
  52.  
  53. void printWord(int tries)
  54. {
  55.     cout<<"================================================================================"<<endl;
  56.     cout<<"                             Exeis "<<tries<<" prospathies                               "<<endl;
  57.     cout<<endl<<"                     H leksi pou psaxneis : ";
  58.     for (int i=0; i<10; ++i) //print letter , letter
  59.         cout<<temp.at(i)<<" ";
  60.     cout<<endl<<endl<<"================================================================================"<<endl;
  61.  
  62. }
  63.  
  64. void addLetter()
  65. {
  66.     int counter=0;
  67.     for (int i=0; i<10; ++i)
  68.         if(words[word_selection].at(i) == letter) // checking one by one the letters
  69.         {
  70.             temp[i] = letter;
  71.             if(counter==0) //in case there are many same letters on the word
  72.                 tries++; // since player found the right letter we give do not reduce the tries
  73.             counter++;
  74.         }
  75. }
  76.  
  77. bool isCharLegal(char letter)
  78. {
  79.     if(letter == 'a' || letter == 'b' || letter == 'g' || letter == 'd' || letter == 'e' || letter == 'z' || letter == 'h' || letter == '8' || letter == 'i' || letter == 'k' || letter == 'l' || letter == 'm' || letter == 'n' || letter == '3' || letter == 'o' || letter == 'p' || letter == 'r' || letter == 's' || letter == 't' || letter == 'y' || letter == 'f' || letter == 'x' || letter == 'w')
  80.         return true;
  81.     else
  82.         return false;
  83. }
  84.  
  85. // local vars for isCharUsed function only
  86. string given_letters = "__________";
  87. int times_called=0;
  88.  
  89. bool isCharUsed(char letter)
  90. {
  91.     int counter=0;
  92.     bool to_return=false;
  93.  
  94.     given_letters[times_called] = letter;
  95.  
  96.     for(int i=0; i<10; i++)
  97.         if(given_letters[i] == letter)
  98.         {
  99.             counter ++;
  100.             if(counter==2)
  101.                 to_return = true;
  102.         }
  103.  
  104.     times_called ++;
  105.     return to_return;
  106. }
  107.  
  108. void readLetter()
  109. {
  110.     do
  111.     {
  112.         cout<<endl<<"Dwse gramma-> ";
  113.         cin>>letter;
  114.     }
  115.     while((!isCharLegal(letter)) || (isCharUsed(letter)));
  116.     addLetter();
  117. }
  118.  
  119. bool isWordFound()
  120. {
  121.     if(temp==words[word_selection])
  122.         return true;
  123.     else
  124.         return false;
  125. }
  126.  
  127. int main ()
  128. {
  129.     for(; tries>0; tries--) // tries
  130.     {
  131.         printIcon(tries);
  132.         printWord(tries);
  133.         readLetter();
  134.         if(isWordFound())
  135.             break;
  136.         system("cls");
  137.     }
  138.     if(isWordFound())
  139.         cout<<"Sigxaritiria kerdises.";
  140.     else
  141.         cout<<"Den vrikes tin leksi prospathise ksana.";
  142.     return 0;
  143. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement