Advertisement
Guest User

.cpp

a guest
Aug 30th, 2015
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 12.72 KB | None | 0 0
  1. #include <iostream>
  2. #include "headlines.h"
  3. #include <time.h>
  4. #include <cstdlib>
  5. #include <stdio.h>
  6. #include <windows.h>
  7. #include <conio.h>
  8.  
  9. using namespace std;
  10.  
  11. void Heroes::lvl_up(Player * obj)
  12. {
  13.     Menu_Game menu;
  14.  
  15.     static int counter = 1;
  16.     int *pointer_array_lvl = new int[counter];
  17.     pointer_array_lvl[0] = 50;
  18.  
  19.     if(counter-1 == 1)
  20.     {
  21.         for(int i = 1; i <= counter-1; i++)
  22.         {
  23.             pointer_array_lvl[i] = pointer_array_lvl[i-1]*2 + pointer_array_lvl[i-1];
  24.         }
  25.     }
  26.     else if(counter > 1)
  27.     {
  28.         for(int i = 2; i <= counter-1; i++)
  29.         {
  30.             pointer_array_lvl[i] = pointer_array_lvl[i-2]*2 + pointer_array_lvl[i-1]*2;
  31.         }
  32.     }
  33.  
  34.     for(int j = counter-1; j < counter; j++)
  35.     {
  36.         if(obj -> _experience >= pointer_array_lvl[j])
  37.         {
  38.             cout << endl << endl << "LVL UP!!!!!";
  39.             obj -> _lvl = (j+2);
  40.             obj -> _strength += 10;
  41.             obj -> _const_HP += 20;
  42.  
  43.             counter++;
  44.             break;
  45.         }
  46.     }
  47.  
  48.     menu.nr_index = counter;
  49.  
  50.     cout << "W funkcji: " << menu.nr_index;
  51.     getchar();getchar();
  52.  
  53.     delete pointer_array_lvl;
  54.  
  55. }
  56.  
  57. void Menu_Game::random_enemy()
  58. {
  59.     srand(time(NULL));
  60.     int random_number = rand()%3;
  61.  
  62.     if(random_number == 0)
  63.     {
  64.         Warrior war;
  65.  
  66.         name = war._name;
  67.         HP = war._HP;
  68.         strength = war._strength;
  69.         specialization = spec(war._specialization);
  70.         lvl = war._lvl;
  71.     }
  72.     else if(random_number == 1)
  73.     {
  74.         Wizard wiz;
  75.  
  76.         name = wiz._name;
  77.         HP = wiz._HP;
  78.         strength = wiz._strength;
  79.         specialization = spec(wiz._specialization);
  80.         lvl = wiz._lvl;
  81.     }
  82.     else if(random_number == 2)
  83.     {
  84.         Archer arch;
  85.  
  86.         name = arch._name;
  87.         HP = arch._HP;
  88.         strength = arch._strength;
  89.         specialization = spec(arch._specialization);
  90.         lvl = arch._lvl;
  91.     }
  92. }
  93.  
  94. void Menu_Game::system_figth(Player * obj)
  95. {
  96.     Heroes hero;
  97.     hero.lvl_up(obj);
  98.  
  99.     system("cls");
  100.  
  101.     random_enemy();
  102.  
  103.     int *_const_HP_bot = new int[nr_index];
  104.     int *_const_strength_bot = new int[nr_index];
  105.     int *_const_lvl_bot = new int[nr_index];
  106.  
  107.     int max_i;
  108.  
  109.     cout << nr_index;
  110.  
  111.     getchar();getchar();
  112.  
  113.     if(nr_index == 1)
  114.     {
  115.         _const_HP_bot[0] = 0;
  116.         _const_strength_bot[0] = 0;
  117.         _const_lvl_bot[0] = 0;
  118.  
  119.         max_i = 0;
  120.     }
  121.     else if(nr_index == 2)
  122.     {
  123.         _const_HP_bot[1] = 20;
  124.         _const_strength_bot[1] = 10;
  125.         _const_lvl_bot[1] = 1;
  126.  
  127.         max_i = 1;
  128.     }
  129.     else if(nr_index > 2)
  130.     {
  131.         for(int i = 2; i < nr_index; i++)
  132.         {
  133.             _const_HP_bot[i] =  _const_HP_bot[i-1] +  _const_HP_bot[i-2];
  134.             _const_strength_bot[i] =  _const_strength_bot[i-1] +  _const_strength_bot[i-2];
  135.             _const_lvl_bot[i] =  _const_lvl_bot[i-1] +  1;
  136.  
  137.             max_i = i;
  138.         }
  139.     }
  140.  
  141.     HP += _const_HP_bot[max_i];
  142.     strength += _const_strength_bot[max_i];
  143.     lvl +=  _const_lvl_bot[max_i];
  144.  
  145.     delete [] _const_HP_bot;
  146.     delete [] _const_strength_bot;
  147.     delete [] _const_lvl_bot;
  148.  
  149.     int counter;
  150.     int percent = 90;
  151.     char choose;
  152.  
  153.     srand(time(NULL));
  154.  
  155.     int random_number = rand()%9+1;
  156.  
  157.     if((random_number == 1) || (random_number == 3) || (random_number == 5) || (random_number == 7) || (random_number == 9))
  158.     {
  159.         counter = 1;
  160.     }
  161.     else if((random_number == 2) || (random_number == 4) || (random_number == 6) || (random_number == 8) || (random_number == 10))
  162.     {
  163.         counter = 2;
  164.     }
  165.  
  166.     while(true)
  167.     {
  168.         srand(time(NULL));
  169.         int plus_minus_random_number = rand()%20-10;
  170.         srand(time(NULL));
  171.         int miss_random_number = rand()%10+1;
  172.  
  173.         cout << "   " << obj -> _name << "\t" << "\t" << name << endl;
  174.         cout << "   " << spec(obj -> _specialization) << "\t" << "\t" << specialization << endl;
  175.         cout << "   Lvl: " << obj -> _lvl << "\t" << "\t" << "Lvl: " << lvl << endl << endl;
  176.         cout << "   " << obj -> _HP << "\t" << "\t" <<  "\t" << HP << endl << endl;
  177.  
  178.         Sleep(1000);
  179.  
  180.         if(counter == 1)
  181.         {
  182.             if(obj -> _HP < obj -> _const_HP/2)
  183.             {
  184.               if(obj -> _my_heals > 0)
  185.               {
  186.                    cout << endl << endl << "Do you want use heal?        pieces: " << obj -> _my_heals;
  187.                    cout << endl << endl;
  188.                    cout << "1. Use" << endl;
  189.                    cout << "2. NO" << endl << endl;
  190.  
  191.                    choose = getch();
  192.  
  193.                    switch(choose)
  194.                    {
  195.                    case '1':
  196.                         {
  197.                             obj -> _HP += 30;
  198.                             obj -> _my_heals -= 1;
  199.                             cout << "   HP: +30" << endl << endl;
  200.                             break;
  201.                         }
  202.                    case '2':
  203.                         {
  204.                             break;
  205.                         }
  206.                    }
  207.                }
  208.             }
  209.             if(specialization == "Warrior")
  210.             {
  211.                 if((miss_random_number == 1) || (miss_random_number == 2) || (miss_random_number == 4) || (miss_random_number == 5) || (miss_random_number == 6) || (miss_random_number == 7) ||(miss_random_number == 8) ||  (miss_random_number == 9) || (miss_random_number == 10))
  212.                 {
  213.                     cout << "   Asks blow" << "\t" << "\t" << "-" << obj -> _strength - plus_minus_random_number;
  214.                     if((obj -> _strength - plus_minus_random_number) > ((obj -> _strength*percent)/70))
  215.                     {
  216.                             cout << "   CRITICAL";
  217.                     }
  218.                     HP -= obj -> _strength - plus_minus_random_number;
  219.  
  220.                     Sleep(1500);
  221.                 }
  222.                 else if(miss_random_number == 3)
  223.                 {
  224.                     cout << "   Asks blow" << "\t" << "\t" << "MISS" << endl;
  225.                     Sleep(1500);
  226.                 }
  227.             }
  228.             else if(specialization == "Wizard")
  229.             {
  230.                 if((miss_random_number == 1) || (miss_random_number == 2) || (miss_random_number == 4) || (miss_random_number == 6) || (miss_random_number == 7) ||(miss_random_number == 8) ||  (miss_random_number == 9) || (miss_random_number == 10))
  231.                 {
  232.                     cout << "   Asks blow" << "\t" << "\t" << "-" << obj -> _strength - plus_minus_random_number;
  233.                     if((obj -> _strength - plus_minus_random_number) > ((obj -> _strength*percent)/70))
  234.                     {
  235.                             cout << "   CRITICAL";
  236.                     }
  237.                     HP -= obj -> _strength - plus_minus_random_number;
  238.  
  239.                     Sleep(1500);
  240.                 }
  241.                 else if((miss_random_number == 3) || (miss_random_number == 5))
  242.                 {
  243.                     cout << "   Asks blow" << "\t" << "\t" << "MISS" << endl;
  244.                     Sleep(1500);
  245.                 }
  246.             }
  247.             else if(specialization == "Archer")
  248.             {
  249.                 if((miss_random_number == 1) || (miss_random_number == 2) || (miss_random_number == 4) || (miss_random_number == 6) || (miss_random_number == 7) || (miss_random_number == 9) || (miss_random_number == 10))
  250.                 {
  251.                     cout << "   Asks blow" << "\t" << "\t" << "-" << obj -> _strength - plus_minus_random_number;
  252.                     if((obj -> _strength - plus_minus_random_number) > ((obj -> _strength*percent)/70))
  253.                     {
  254.                             cout << "   CRITICAL";
  255.                     }
  256.                     HP -= obj -> _strength - plus_minus_random_number;
  257.  
  258.                     Sleep(1500);
  259.                 }
  260.                 else if((miss_random_number == 3) || (miss_random_number == 5) || (miss_random_number == 8))
  261.                 {
  262.                     cout << "   Asks blow" << "\t" << "\t" << "MISS" << endl;
  263.                     Sleep(1500);
  264.                 }
  265.             }
  266.         }
  267.         else if(counter == 2)
  268.         {
  269.             if(spec(obj -> _specialization) == "Warrior")
  270.             {
  271.                 if((miss_random_number == 1) || (miss_random_number == 2) || (miss_random_number == 4) || (miss_random_number == 5) || (miss_random_number == 6) || (miss_random_number == 7) ||(miss_random_number == 8) ||  (miss_random_number == 9) || (miss_random_number == 10))
  272.                 {
  273.                     cout << "   -" << strength - plus_minus_random_number << "\t" << "\t" << "\t" <<  "Asks blow";
  274.                     if((strength - plus_minus_random_number) > ((strength*percent)/70))
  275.                     {
  276.                             cout << "   CRITICAL";
  277.                     }
  278.                     obj -> _HP -= strength - plus_minus_random_number;
  279.  
  280.                     Sleep(1500);
  281.                 }
  282.                 else if(miss_random_number == 3)
  283.                 {
  284.                     cout << "   MISS" << "\t" << "\t" << "\t" << "Asks blow" << endl;
  285.                     Sleep(1500);
  286.                 }
  287.             }
  288.             else if(spec(obj -> _specialization) == "Wizard")
  289.             {
  290.                 if((miss_random_number == 1) || (miss_random_number == 2) || (miss_random_number == 4) || (miss_random_number == 6) || (miss_random_number == 7) ||(miss_random_number == 8) ||  (miss_random_number == 9) || (miss_random_number == 10))
  291.                 {
  292.                     cout << "   -" << strength - plus_minus_random_number << "\t" << "\t" << "\t" <<  "Asks blow";
  293.                     if((strength - plus_minus_random_number) > ((strength*percent)/70))
  294.                     {
  295.                             cout << "   CRITICAL";
  296.                     }
  297.                     obj -> _HP -= strength - plus_minus_random_number;
  298.  
  299.                     Sleep(1500);
  300.                 }
  301.                 else if((miss_random_number == 3) || (miss_random_number == 5))
  302.                 {
  303.                     cout << "   MISS" << "\t" << "\t" << "\t" << "Asks blow" << endl;
  304.                     Sleep(1500);
  305.                 }
  306.             }
  307.             else if(spec(obj -> _specialization) == "Archer")
  308.             {
  309.                 if((miss_random_number == 1) || (miss_random_number == 2) || (miss_random_number == 4) || (miss_random_number == 6) || (miss_random_number == 7) || (miss_random_number == 9) || (miss_random_number == 10))
  310.                 {
  311.                     cout << "   -" << strength - plus_minus_random_number << "\t" << "\t" << "\t" <<  "Asks blow";
  312.                     if((strength - plus_minus_random_number) > ((strength*percent)/70))
  313.                     {
  314.                             cout << "   CRITICAL";
  315.                     }
  316.                     obj -> _HP -= strength - plus_minus_random_number;
  317.  
  318.                     Sleep(1500);
  319.                 }
  320.                 else if((miss_random_number == 3) || (miss_random_number == 5) || (miss_random_number == 8))
  321.                 {
  322.                     cout << "   MISS" << "\t" << "\t" << "\t" << "Asks blow" << endl;
  323.                     Sleep(1500);
  324.                 }
  325.             }
  326.         }
  327.  
  328.         if(counter == 2)
  329.         {
  330.             counter = 0;
  331.         }
  332.         counter++;
  333.  
  334.         if(obj -> _HP <= 0)
  335.         {
  336.             system("cls");
  337.  
  338.             cout << "   " << obj -> _name << "\t" << "\t" << name << endl;
  339.             cout << "   " << spec(obj -> _specialization) << "\t" << "\t" << specialization << endl << endl;
  340.             cout << "   " << obj -> _HP << "\t" << "\t" <<  "\t" << HP << endl << endl;
  341.  
  342.             cout << endl << endl << endl << "   LOSE" << "\t" << "\t" << "WINNER" << endl << endl;
  343.             cout << endl << endl << "You get experience: " << 0;
  344.             if(obj -> _HP < 0)
  345.             {
  346.                 obj -> _HP = 0;
  347.             }
  348.             getchar();getchar();
  349.             break;
  350.         }
  351.         else if(HP <= 0)
  352.         {
  353.             system("cls");
  354.  
  355.             cout << "   " << obj -> _name << "\t" << "\t" << name << endl;
  356.             cout << "   " << spec(obj -> _specialization) << "\t" << "\t" << specialization << endl << endl;
  357.             cout << "   " << obj -> _HP << "\t" << "\t" <<  "\t" << HP << endl << endl;
  358.  
  359.             cout << endl << endl << endl <<  "   WINNER" << "\t" << "\t" << "LOSE" << endl << endl;
  360.             cout << endl << endl << "You get experience: " << 30 << endl;
  361.             cout << "You get coins: " << 50;
  362.             obj -> _experience += 30;
  363.             obj -> _coins += 50;
  364.             hero.lvl_up(obj);
  365.             getchar();getchar();
  366.             break;
  367.         }
  368.         system("cls");
  369.     }
  370.  
  371. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement