Guest User

Battle sim c++

a guest
Aug 19th, 2012
353
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 32.47 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <string>
  4. #include <ctime>
  5. #include <windows.h>
  6.  
  7. using namespace std;
  8.  
  9. int opponentChoice, difficultyChoice,OpponentAttackChoice;
  10. int OrcChiefHealthPoints = 15, OrcHealthPoints = 12, ScruffyBanditHealthPoints = 10, PunchingSackHealthPoints = 2;
  11. int OrcChiefLevel = 31, OrcLevel = 11, ScruffyBanditLevel = 6, PunchingSackLevel = 1;
  12. int OrcChiefDamage = 3, OrcDamage = 2, ScruffyBanditDamage = 2, PunchingSackDamage = 1;
  13. int OrcChiefWeaponDamage = 2, OrcWeaponDamage = 2, ScruffyBanditWeaponDamage = 2, PunchingSackWeaponDamage = 1;
  14. int OrcCheifEnergy = 10, OrcEnergy = 5, ScruffyBanditEnergy = 5, PunchingSackEnergy = 1;
  15. int OpponentHealthPoints, OpponentLevel, OpponentDamage, OpponentWeaponDamage, OpponentEnergy;
  16. int PlayerHealthPoints, PlayerDamage, PlayerWeaponDamage, PlayerEnergy, GenderChoice, AttackChoice;
  17. int end, EnergyRegain = 9, EndRoundEnergyGain, OpponentEnergyRegain;
  18. int PlayerDamageTemp, OpponentDamageTemp, EnergyRegainTemp, OpponentEnergyRegainTemp, OpponentWeaponDamageTemp, PlayerWeaponDamageTemp;
  19. int PlayerHealthPointsTemp;
  20. string PlayerGenderText, PlayerGenderText2, OpponentNameCap, OpponentName, Replay, PlayerName = "Player";
  21. int OrcChiefLevelColor, OrcLevelColor, ScruffyBanditLevelColor;
  22. int Running, OpponentChoiceRunning;
  23.  
  24. int main()
  25. {
  26.     HANDLE hConsole;
  27.     hConsole = GetStdHandle (STD_OUTPUT_HANDLE);
  28.  
  29.     while(Running = 1){
  30.         system("cls");
  31.         srand(time(0));
  32.         cout << "-------------------------------------------------------------------------" << endl;
  33.         cout << "           Welcome to battle Simulator 0.92 -";
  34.         SetConsoleTextAttribute
  35.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY );
  36.         cout << " by Huw" << endl;
  37.         SetConsoleTextAttribute
  38.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  39.         cout << "          //                 ||                          " << endl;
  40.         cout << "         //                  ||                          " << endl;
  41.         cout << "        //                   ||                          " << endl;
  42.         cout << "     /====/                 ====                         " << endl;
  43.         cout << "      //                     []                          " << endl;
  44.         cout << "     ==                      ()                          " << endl;
  45.         cout << "-------------------------------------------------------------------------" << endl;
  46.         cout << "Choose a Gender" << endl;
  47.         cout << "-------------------------------------------------------------------------" << endl;
  48.         cout << "1. Male" << endl;
  49.         cout << "2. Female" << endl;
  50.         cout << "3. Neither" << endl;
  51.         cout << "-------------------------------------------------------------------------" << endl;
  52.         cout << "-";
  53.         cin >> GenderChoice;
  54.         system("cls");
  55.         switch(GenderChoice){
  56.             case 1 :
  57.                 PlayerGenderText = "his";
  58.                 PlayerGenderText2 = "he";
  59.             break;
  60.  
  61.             case 2 :
  62.                 PlayerGenderText = "her";
  63.                 PlayerGenderText2 = "she";
  64.             break;
  65.  
  66.             case 3 :
  67.                 PlayerGenderText = "its";
  68.                 PlayerGenderText2 = "it";
  69.             break;
  70.  
  71.             default :
  72.                 SetConsoleTextAttribute
  73.                 (hConsole, FOREGROUND_RED | FOREGROUND_INTENSITY);
  74.                 cout << "----------------------------!WARNING!------------------------------------" << endl;
  75.                 cout << GenderChoice << " Isnt a valid option you are supposed to choose from 1-3 now you will pay!" << endl;
  76.                 SetConsoleTextAttribute
  77.                 (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  78.                 PlayerGenderText = "derps";
  79.                 PlayerGenderText2 = "derp";
  80.  
  81.         }
  82.  
  83.         cout << "-------------------------------------------------------------------------" << endl;
  84.         cout << "        |----|                  " << endl;
  85.         cout << "         |[][] ___ _ ()_________            " << endl;
  86.         cout << "         |  )| ___(_)()========= >            " << endl;
  87.         cout << "         |  ^|       ()---------/       " << endl;
  88.         cout << "         #####                  " << endl;
  89.         cout << "-------------------------------------------------------------------------" << endl;
  90.         cout << "Enter your Name" << endl;
  91.         cout << "-------------------------------------------------------------------------" << endl;
  92.         cout << "please do not use numbers in your name" << endl;
  93.         cout << "-------------------------------------------------------------------------" << endl;
  94.         cout << "-";
  95.         cin >> PlayerName;
  96.         system("cls");
  97.         cout << "-------------------------------------------------------------------------" << endl;
  98.         cout << "                       Choose a Difficulty " << endl;
  99.         cout << "-------------------------------------------------------------------------" << endl;
  100.         cout << "        ][_______________________                                        " << endl;
  101.         cout << "  O=====[]______________________/                                        " << endl;
  102.         cout << "        ][                                                               " << endl;
  103.         cout << "-------------------------------------------------------------------------" << endl;
  104.         cout << "1. Easy                " << endl;
  105.         cout << "2. Normal              " << endl;
  106.         cout << "3. hard                " << endl;
  107.         cout << "4. probably impossible " << endl;
  108.         cout << "5. (cheat mode)          " << endl;
  109.         cout << "-------------------------------------------------------------------------" << endl;
  110.         cout << "-";
  111.         cin >> difficultyChoice;
  112.         system("cls");
  113.         switch(difficultyChoice){
  114.  
  115.             case 1 :
  116.                 PlayerHealthPoints = 100;
  117.                 PlayerDamage = 6;
  118.                 PlayerWeaponDamage = 11;
  119.                 PlayerEnergy = 100;
  120.                 EndRoundEnergyGain = 5;
  121.                 PlayerDamageTemp = 1;
  122.                 PlayerHealthPointsTemp = PlayerHealthPoints;
  123.             break;
  124.  
  125.             case 2 :
  126.                 PlayerHealthPoints = 80;
  127.                 PlayerDamage = 4;
  128.                 PlayerWeaponDamage = 6;
  129.                 PlayerEnergy = 80;
  130.                 EndRoundEnergyGain = 3;
  131.                 PlayerDamageTemp = 2;
  132.                 PlayerHealthPointsTemp = PlayerHealthPoints;
  133.             break;
  134.  
  135.             case 3 :
  136.                 PlayerHealthPoints = 60;
  137.                 PlayerDamage = 3;
  138.                 PlayerWeaponDamage = 3;
  139.                 PlayerEnergy = 50;
  140.                 EndRoundEnergyGain = 1;
  141.                 PlayerDamageTemp = 3;
  142.                 PlayerHealthPointsTemp = PlayerHealthPoints;
  143.             break;
  144.  
  145.             case 4 :
  146.                 PlayerHealthPoints = 40;
  147.                 PlayerDamage = 2;
  148.                 PlayerWeaponDamage = 1;
  149.                 PlayerEnergy = 20;
  150.                 EndRoundEnergyGain = 0;
  151.                 PlayerDamageTemp = 4;
  152.                 PlayerHealthPointsTemp = PlayerHealthPoints;
  153.             break;
  154.  
  155.             case 5 :
  156.                 cout << "Choose your health" << endl;
  157.                 cout << "-";
  158.                 cin >> PlayerHealthPoints;
  159.                 PlayerHealthPointsTemp = PlayerHealthPoints;
  160.                 cout << "Choose your strength" << endl;
  161.                 cout << "-";
  162.                 cin >> PlayerDamage;
  163.                 cout << "Choose your weapon damage" << endl;
  164.                 cout << "-";
  165.                 cin >> PlayerWeaponDamage;
  166.                 cout << "Choose your ammount of energy" << endl;
  167.                 cout << "-";
  168.                 cin >> PlayerEnergy;
  169.                 cout << "Choose the ammount of energy regained per round" << endl;
  170.                 cout << "-";
  171.                 cin >> EndRoundEnergyGain;
  172.                 PlayerDamageTemp = 1;
  173.                 system("cls");
  174.  
  175.             break;
  176.             default :
  177.                 cout << "----------------------------!WARNING!------------------------------------" << endl;
  178.                 cout << difficultyChoice << " Isnt a valid option, you clearly are incapable of even the most basic " << endl;
  179.                 cout << "Task so the difficulty will be set to super-easy mode ... have fun." << endl;
  180.                 PlayerHealthPoints = 200;
  181.                 PlayerDamage = 10;
  182.                 PlayerWeaponDamage = 21;
  183.                 PlayerEnergy = 300;
  184.                 EndRoundEnergyGain = 10;
  185.         }
  186.     while(OpponentChoiceRunning = 1)
  187.     {
  188.  
  189.         OrcChiefLevel = rand()%OrcChiefLevel;
  190.         OrcLevel = rand()%OrcLevel;
  191.         ScruffyBanditLevel = rand()%ScruffyBanditLevel;
  192.  
  193.         if(OrcChiefLevel >= 26)
  194.         {
  195.  
  196.             OrcChiefLevelColor = 1;
  197.  
  198.         }
  199.  
  200.         else if(OrcChiefLevel >= 15)
  201.         {
  202.  
  203.             OrcChiefLevelColor = 2;
  204.  
  205.         }
  206.  
  207.         else if(OrcChiefLevel <= 14)
  208.         {
  209.  
  210.             OrcChiefLevelColor = 3;
  211.  
  212.         }
  213.  
  214.         if(OrcLevel >= 9)
  215.         {
  216.  
  217.             OrcLevelColor = 1;
  218.  
  219.         }
  220.  
  221.         else if(OrcLevel >= 3)
  222.         {
  223.  
  224.             OrcLevelColor = 2;
  225.  
  226.         }
  227.  
  228.         else if(OrcLevel <= 2)
  229.         {
  230.  
  231.             OrcLevelColor = 3;
  232.  
  233.         }
  234.         if(ScruffyBanditLevel >= 5)
  235.         {
  236.  
  237.             ScruffyBanditLevelColor = 1;
  238.  
  239.         }
  240.         else if(ScruffyBanditLevel >= 3)
  241.         {
  242.  
  243.             ScruffyBanditLevelColor = 2;
  244.  
  245.         }
  246.         else if(ScruffyBanditLevel <= 2)
  247.         {
  248.  
  249.             ScruffyBanditLevelColor = 3;
  250.  
  251.         }
  252.  
  253.  
  254.  
  255.  
  256.         cout << "-------------------------------------------------------------------------" << endl;
  257.         cout << "Choose an Opponent to fight " << endl;
  258.         cout << "-------------------------------------------------------------------------" << endl;
  259.         cout << "1. Punching Sack  - level " << PunchingSackLevel << " (Training) " << endl;
  260.  
  261.         if(ScruffyBanditLevelColor == 1)
  262.         {
  263.  
  264.         cout << "2. Scruffy Bandit -";
  265.         SetConsoleTextAttribute
  266.         (hConsole, FOREGROUND_RED | FOREGROUND_INTENSITY);
  267.         cout << " level " << ScruffyBanditLevel << " (Hard) " << endl;
  268.         SetConsoleTextAttribute
  269.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  270.  
  271.         }
  272.         else if(ScruffyBanditLevelColor == 2)
  273.         {
  274.  
  275.         cout << "2. Scruffy Bandit -";
  276.         SetConsoleTextAttribute
  277.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY );
  278.         cout << " level " << ScruffyBanditLevel << " (Normal) " << endl;
  279.         SetConsoleTextAttribute
  280.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  281.  
  282.         }
  283.         else if(ScruffyBanditLevelColor == 3)
  284.         {
  285.  
  286.         cout << "2. Scruffy Bandit -";
  287.         SetConsoleTextAttribute
  288.         (hConsole, FOREGROUND_GREEN | FOREGROUND_INTENSITY );
  289.         cout << " level " << ScruffyBanditLevel << " (Easy) " << endl;
  290.         SetConsoleTextAttribute
  291.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  292.  
  293.         }
  294.         if(OrcLevelColor == 1)
  295.         {
  296.  
  297.         cout << "3. Orc            -";
  298.         SetConsoleTextAttribute
  299.         (hConsole, FOREGROUND_RED | FOREGROUND_INTENSITY);
  300.         cout << " level " << OrcLevel << " (Hard) " << endl;
  301.         SetConsoleTextAttribute
  302.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  303.  
  304.         }
  305.         else if(OrcLevelColor == 2)
  306.         {
  307.  
  308.         cout << "3. Orc            -";
  309.         SetConsoleTextAttribute
  310.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY );
  311.         cout << " level " << OrcLevel << " (Normal) " << endl;
  312.         SetConsoleTextAttribute
  313.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  314.  
  315.         }
  316.         else if(OrcLevelColor == 3)
  317.         {
  318.  
  319.         cout << "3. Orc            -";
  320.         SetConsoleTextAttribute
  321.         (hConsole, FOREGROUND_GREEN | FOREGROUND_INTENSITY );
  322.         cout << " level " << OrcLevel << " (Easy) " << endl;
  323.         SetConsoleTextAttribute
  324.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  325.  
  326.         }
  327.  
  328.         if(OrcChiefLevelColor == 1)
  329.         {
  330.  
  331.         cout << "4. Orc Chief      -";
  332.         SetConsoleTextAttribute
  333.         (hConsole, FOREGROUND_RED | FOREGROUND_INTENSITY);
  334.         cout << " level " << OrcChiefLevel << " (Hard) " << endl;
  335.         SetConsoleTextAttribute
  336.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  337.  
  338.         }
  339.         else if(OrcChiefLevelColor == 2)
  340.         {
  341.  
  342.         cout << "4. Orc Chief      -";
  343.         SetConsoleTextAttribute
  344.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY );
  345.         cout << " level " << OrcChiefLevel << " (Normal) " << endl;
  346.         SetConsoleTextAttribute
  347.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  348.  
  349.         }
  350.         else if(OrcChiefLevelColor == 3)
  351.         {
  352.  
  353.         cout << "4. Orc Chief      -";
  354.         SetConsoleTextAttribute
  355.         (hConsole, FOREGROUND_GREEN | FOREGROUND_INTENSITY );
  356.         cout << " level " << OrcChiefLevel << " (Easy) " << endl;
  357.         SetConsoleTextAttribute
  358.         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  359.  
  360.         }
  361.         cout << " (5 for a Refresh) " << endl;
  362.  
  363.         cout << "-------------------------------------------------------------------------" << endl;
  364.         cout << "-";
  365.         cin >> opponentChoice;
  366.         system("cls");
  367.         cout << "-------------------------------------------------------------------------" << endl;
  368.         switch(opponentChoice)
  369.         {
  370.  
  371.             case 1 :
  372.                 OpponentHealthPoints = PunchingSackHealthPoints;
  373.                 OpponentLevel = PunchingSackLevel;
  374.                 OpponentDamage = PunchingSackDamage;
  375.                 OpponentWeaponDamage = PunchingSackWeaponDamage;
  376.                 OpponentEnergy = 1;
  377.                 cout << "You have chosen to train against, the Punching sack" << endl;
  378.                 OpponentNameCap = "PUNCHING SACK";
  379.                 OpponentName = "Punching Sack";
  380.                 ScruffyBanditLevelColor == 0;
  381.             break;
  382.  
  383.             case 2 :
  384.                 OpponentHealthPoints = ScruffyBanditHealthPoints;
  385.                 OpponentLevel = ScruffyBanditLevel;
  386.                 OpponentDamage = ScruffyBanditDamage;
  387.                 OpponentWeaponDamage = ScruffyBanditWeaponDamage;
  388.                 OpponentEnergy = ScruffyBanditEnergy;
  389.                 cout << "You have chosen to fight, a level " << OpponentLevel << " Scruffy Bandit" << endl;
  390.                 OpponentNameCap = "SCRUFFY BANDIT";
  391.                 OpponentName = "Scruffy Bandit";
  392.                 OpponentEnergyRegain = 3;
  393.                 ScruffyBanditLevelColor == 0;
  394.             break;
  395.  
  396.             case 3 :
  397.                 OpponentHealthPoints = OrcHealthPoints;
  398.                 OpponentLevel = OrcLevel;
  399.                 OpponentDamage = OrcDamage;
  400.                 OpponentWeaponDamage = OrcWeaponDamage;
  401.                 OpponentEnergy = OrcEnergy;
  402.                 cout << "You have chosen to fight, a level " << OpponentLevel << " Orc" << endl;
  403.                 OpponentNameCap = "ORC";
  404.                 OpponentName = "Orc";
  405.                 OpponentEnergyRegain = 4;
  406.                 ScruffyBanditLevelColor == 0;
  407.             break;
  408.  
  409.             case 4 :
  410.                 OpponentHealthPoints = OrcChiefHealthPoints;
  411.                 OpponentLevel = OrcChiefLevel;
  412.                 OpponentDamage = OrcChiefDamage;
  413.                 OpponentWeaponDamage = OrcChiefWeaponDamage;
  414.                 OpponentEnergy = OrcCheifEnergy;
  415.                 cout << "You have chosen to fight, a level " << OpponentLevel << " Orc Cheif" << endl;
  416.                 OpponentNameCap = "ORC CHIEF";
  417.                 OpponentName = "Orc Chief";
  418.                 OpponentEnergyRegain = 6;
  419.                 ScruffyBanditLevelColor == 0;
  420.             break;
  421.  
  422.             case 5 :
  423.                 system("cls");
  424.                 ScruffyBanditLevelColor == 1;
  425.             break;
  426.  
  427.             default :
  428.                 system("cls");
  429.                 ScruffyBanditLevelColor == 1;
  430.             break;
  431.         break;
  432.         }
  433.     }
  434.  
  435.     if(OpponentLevel <= 0)
  436.     {
  437.  
  438.         OpponentDamage = 1;
  439.         OpponentWeaponDamage = 1;
  440.         OpponentHealthPoints = 20;
  441.         OpponentEnergy = 20;
  442.         OpponentLevel = 1;
  443.  
  444.     }
  445.     else if(OpponentLevel ==1)
  446.     {
  447.  
  448.         OpponentDamage = OpponentDamage + 1 ;
  449.         OpponentWeaponDamage = OpponentWeaponDamage;
  450.         OpponentHealthPoints = OpponentHealthPoints;
  451.         OpponentEnergy = OpponentEnergy;
  452.  
  453.     }
  454.     else if(OpponentLevel >=2)
  455.     {
  456.  
  457.         OpponentDamage = OpponentDamage * OpponentLevel;
  458.         OpponentWeaponDamage = OpponentWeaponDamage * OpponentLevel;
  459.         OpponentHealthPoints = OpponentHealthPoints * OpponentLevel;
  460.         OpponentEnergy = OpponentEnergy * OpponentLevel;
  461.         OpponentDamage = OpponentDamage / 2;
  462.         OpponentWeaponDamage = OpponentWeaponDamage / 2;
  463.         OpponentHealthPoints = OpponentHealthPoints / 2;
  464.         OpponentEnergy = OpponentEnergy / 2;
  465.  
  466.     }
  467.  
  468.  
  469.     cout << "-------------------------------------------------------------------------" << endl;
  470.     cout << "Preparing for Battle" << endl;
  471.     cout << "-------------------------------------------------------------------------" << endl;
  472.  
  473.     while(OpponentHealthPoints >= 1 and PlayerHealthPoints >= 1){
  474.     cout << "Choose an Option" << endl;
  475.     cout << "-------------------------------------------------------------------------" << endl;
  476.     cout << PlayerName << "'s Health Points :" << PlayerHealthPoints << " - Enemy Health Points    :" << OpponentHealthPoints << endl;
  477.     cout << " " << endl;
  478.     cout << PlayerName << "'s Energy       :" << PlayerEnergy << " - Opponent Energy Points :" << OpponentEnergy << endl;
  479.     cout << "-------------------------------------------------------------------------" << endl;
  480.     cout << "1. Punch (5 energy)" << endl;
  481.     cout << "2. Kick (8 energy)" << endl;
  482.     cout << "3. Weapon (12 energy)" << endl;
  483.     cout << "4. nothing (0 energy)" << endl;
  484.     cout << "-------------------------------------------------------------------------" << endl;
  485.     cout << "-";
  486.     cin >> AttackChoice;
  487.     system("cls");
  488.     cout << "-------------------------------------------------------------------------" << endl;
  489.     switch(AttackChoice)
  490.     {
  491.         case 1 :
  492.             if(PlayerEnergy>=5)
  493.             {
  494.                 PlayerDamageTemp = PlayerDamage;
  495.                 PlayerDamage = rand()%PlayerDamage;
  496.                     if(PlayerDamage<=0)
  497.                     {
  498.  
  499.                         SetConsoleTextAttribute
  500.                         (hConsole, FOREGROUND_RED | FOREGROUND_INTENSITY );
  501.                         cout << PlayerName << " Misses" << endl;
  502.                         SetConsoleTextAttribute
  503.                         (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  504.  
  505.                     }
  506.                     else if(PlayerDamage>=1)
  507.                     {
  508.  
  509.                         cout << PlayerName << " Punches for " << PlayerDamage << " Points of damage" << endl;
  510.                         OpponentHealthPoints = OpponentHealthPoints - PlayerDamage;
  511.  
  512.                     }
  513.                 PlayerEnergy = PlayerEnergy - 5;
  514.                 PlayerDamage = PlayerDamageTemp;
  515.             }
  516.             else if(PlayerEnergy<=4)
  517.             {
  518.                 cout << PlayerName << " is out of Energy, While gasping for breath " << PlayerGenderText2 << " regains " << rand()%EnergyRegain << " points of energy" << endl;
  519.                 PlayerEnergy = PlayerEnergy + EnergyRegain;
  520.             }
  521.         break;
  522.  
  523.         case 2 :
  524.             if(PlayerEnergy>=8)
  525.             {
  526.                 PlayerDamageTemp = PlayerDamage;
  527.                 PlayerDamage = rand()%PlayerDamage + rand()%4;
  528.                 cout << PlayerName << " Kicks for " << PlayerDamage << " Points of damage" << endl;
  529.                 OpponentHealthPoints = OpponentHealthPoints - PlayerDamage;
  530.                 PlayerEnergy = PlayerEnergy - 8;
  531.                 PlayerDamage = PlayerDamageTemp;
  532.  
  533.             }
  534.             else if(PlayerEnergy<=7)
  535.             {
  536.                 cout << PlayerName << " is out of Energy, While gasping for breath " << PlayerGenderText2 << " regains " << rand()%EnergyRegain << " points of energy" << endl;
  537.                 PlayerEnergy = PlayerEnergy + EnergyRegain;
  538.             }
  539.         break;
  540.  
  541.         case 3 :
  542.             if(PlayerEnergy>=12)
  543.             {
  544.                 PlayerDamageTemp = PlayerDamage;
  545.                 PlayerDamage = rand()%PlayerDamage;
  546.                 PlayerWeaponDamageTemp = PlayerWeaponDamage;
  547.                 PlayerWeaponDamage = rand()%PlayerWeaponDamage;
  548.                 cout << PlayerName << " Swings for " << PlayerDamage << " Points of damage + " << PlayerWeaponDamage << " Points of damage from " << PlayerGenderText << " weapon" << endl;
  549.                 OpponentHealthPoints = OpponentHealthPoints - PlayerDamage - PlayerWeaponDamage;
  550.                 PlayerEnergy = PlayerEnergy - 12;
  551.                 PlayerDamage = PlayerDamageTemp;
  552.                 PlayerWeaponDamage = PlayerWeaponDamageTemp;
  553.             }
  554.             else if(PlayerEnergy<=11)
  555.             {
  556.                 cout << PlayerName << " is out of Energy, While gasping for breath " << PlayerGenderText2 << " regains " << rand()%EnergyRegain << " points of energy" << endl;
  557.                 PlayerEnergy = PlayerEnergy + EnergyRegain;
  558.             }
  559.         break;
  560.  
  561.         case 4 :
  562.             cout << PlayerName << " does nothing and gains " << rand()%EnergyRegain << " points of energy" << endl;
  563.             PlayerEnergy = PlayerEnergy + EnergyRegain;
  564.         break;
  565.  
  566.     }
  567.     if(OpponentName == "Punching Sack")
  568.     {
  569.  
  570.         OpponentHealthPoints = 50;
  571.         OpponentEnergy = 0;
  572.         cout << "Punching sack does nothing because he is a sack of spuds tied to a pole" << endl;
  573.     }
  574.  
  575.     else if(OpponentName != "Punching Sack")
  576.     {
  577.         if(OpponentHealthPoints<=0)
  578.         {
  579.  
  580.             cout << OpponentName << " Is Dead" << endl;
  581.  
  582.         }
  583.         else if(OpponentHealthPoints>=1)
  584.         {
  585.             OpponentAttackChoice = rand()%3;
  586.             switch(OpponentAttackChoice)
  587.  
  588.             {
  589.  
  590.                 case 0 :
  591.                     if(OpponentEnergy>=5)
  592.  
  593.                     {
  594.  
  595.                         OpponentDamageTemp = OpponentDamage;
  596.                         OpponentDamage = rand()%OpponentDamage;
  597.                         if(OpponentDamage <= 0)
  598.                         {
  599.  
  600.                             SetConsoleTextAttribute
  601.                             (hConsole, FOREGROUND_GREEN | FOREGROUND_INTENSITY );
  602.                             cout << OpponentName << " misses!" << endl;
  603.                             SetConsoleTextAttribute
  604.                             (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE );
  605.  
  606.  
  607.                         }
  608.                         else if(OpponentDamage >= 1)
  609.                         {
  610.  
  611.                             cout << OpponentName << " Punches for " << OpponentDamage << " Points of damage" << endl;
  612.                             PlayerHealthPoints = PlayerHealthPoints - OpponentDamage;
  613.                             OpponentEnergy = OpponentEnergy - 5;
  614.                             OpponentDamage = OpponentDamageTemp;
  615.  
  616.                         }
  617.  
  618.  
  619.                     }
  620.  
  621.                     else if(OpponentEnergy<=4)
  622.                     {
  623.  
  624.                         OpponentEnergyRegainTemp = OpponentEnergyRegain;
  625.                         OpponentEnergyRegain = rand()%OpponentEnergyRegain;
  626.                         cout << OpponentName << " is out of Energy, While gasping for breath" << " he " << "regains " << OpponentEnergyRegain << " points of energy" << endl;
  627.                         OpponentEnergy = OpponentEnergy + OpponentEnergyRegain;
  628.                         OpponentEnergyRegain = OpponentEnergyRegainTemp;
  629.  
  630.                     }
  631.                 break;
  632.  
  633.                 case 1 :
  634.                     if(OpponentEnergy>=8)
  635.                     {
  636.  
  637.                         OpponentDamageTemp = OpponentDamage;
  638.                         OpponentDamage = rand()%OpponentDamage;
  639.                         cout << OpponentName << " kicks for " << OpponentDamage << " Points of damage" << endl;
  640.                         PlayerHealthPoints = PlayerHealthPoints - OpponentDamage;
  641.                         OpponentEnergy = OpponentEnergy - 5;
  642.                         OpponentDamage = OpponentDamageTemp;
  643.  
  644.                     }
  645.  
  646.                     else if(OpponentEnergy<=7)
  647.                     {
  648.  
  649.                         OpponentEnergyRegainTemp = OpponentEnergyRegain;
  650.                         OpponentEnergyRegain = rand()%OpponentEnergyRegain;
  651.                         cout << OpponentName << " is out of Energy, While gasping for breath" << " he " << "regains " << OpponentEnergyRegain << " points of energy" << endl;
  652.                         OpponentEnergy = OpponentEnergy + OpponentEnergyRegain;
  653.                         OpponentEnergyRegain = OpponentEnergyRegainTemp;
  654.  
  655.                     }
  656.  
  657.                 break;
  658.  
  659.                 case 2 :
  660.                     if(OpponentEnergy>=12)
  661.                     {
  662.  
  663.                         OpponentDamageTemp = OpponentDamage;
  664.                         OpponentWeaponDamageTemp = OpponentWeaponDamage;
  665.                         OpponentDamage = rand()%OpponentDamage;
  666.                         OpponentWeaponDamage = rand()%OpponentWeaponDamage;
  667.                         cout << OpponentName << " swings for " << OpponentDamage << " Points of damage + " << OpponentWeaponDamage << " from his weapon"<< endl;
  668.                         PlayerHealthPoints = PlayerHealthPoints - OpponentDamage - OpponentWeaponDamage;
  669.                         OpponentEnergy = OpponentEnergy - 12;
  670.                         OpponentDamage = OpponentDamageTemp;
  671.                         OpponentWeaponDamage = OpponentWeaponDamageTemp;
  672.  
  673.                     }
  674.  
  675.                     else if(OpponentEnergy<=11)
  676.                     {
  677.  
  678.                         OpponentEnergyRegainTemp = OpponentEnergyRegain;
  679.                         OpponentEnergyRegain = rand()%OpponentEnergyRegain;
  680.                         cout << OpponentName << " is out of Energy, While gasping for breath" << " he " << "regains " << OpponentEnergyRegain << " points of energy" << endl;
  681.                         OpponentEnergy = OpponentEnergy + OpponentEnergyRegain;
  682.                         OpponentEnergyRegain = OpponentEnergyRegainTemp;
  683.  
  684.                     }
  685.                 break;
  686.  
  687.             }
  688.         }
  689.     }
  690.         cout << OpponentName << " has " << OpponentHealthPoints  << " Health points left" << endl;
  691.         if(PlayerHealthPoints <= 10% PlayerHealthPointsTemp)
  692.         {
  693.             SetConsoleTextAttribute
  694.             (hConsole, FOREGROUND_RED | FOREGROUND_INTENSITY );
  695.             cout << PlayerName << " has " << PlayerHealthPoints << " Health points left" << endl;
  696.             SetConsoleTextAttribute
  697.             (hConsole, FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_GREEN );
  698.         }
  699.         else if(PlayerHealthPoints <= 30% PlayerHealthPointsTemp)
  700.         {
  701.  
  702.             SetConsoleTextAttribute
  703.             (hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY );
  704.             cout << PlayerName << " has " << PlayerHealthPoints << " Health points left" << endl;
  705.             SetConsoleTextAttribute
  706.             (hConsole, FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_GREEN );
  707.  
  708.         }
  709.         else if(PlayerHealthPoints >= 80% PlayerHealthPointsTemp)
  710.         {
  711.  
  712.             SetConsoleTextAttribute
  713.             (hConsole, FOREGROUND_GREEN | FOREGROUND_INTENSITY );
  714.             cout << PlayerName << " has " << PlayerHealthPoints << " Health points left" << endl;
  715.             SetConsoleTextAttribute
  716.             (hConsole, FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_GREEN );
  717.  
  718.         }
  719.         else
  720.         {
  721.             cout << PlayerName << " has " << PlayerHealthPoints << " Health points left" << endl;
  722.         }
  723.         if(PlayerHealthPoints>=1)
  724.         {
  725.  
  726.         cout << PlayerName << " regains " << EndRoundEnergyGain << " Points of energy" << endl;
  727.         PlayerEnergy = PlayerEnergy + EndRoundEnergyGain;
  728.  
  729.         }
  730.  
  731.     cout << "-------------------------------------------------------------------------" << endl;
  732.  
  733.     }
  734.  
  735.     if(OpponentHealthPoints<=0){
  736.         cout << "-------------------------------------------------------------------------" << endl;
  737.         cout << PlayerName << " HAS DEFEATED THE LEVEL " << OpponentLevel << " " << OpponentNameCap << " !" << endl;
  738.         cout << "-------------------------------------------------------------------------" << endl;
  739.     }
  740.     else if(PlayerHealthPoints<=0){
  741.         cout << "-------------------------------------------------------------------------" << endl;
  742.         cout << PlayerName << " HAS BEEN DEFEATED BY THE LEVEL " << OpponentLevel << " " << OpponentNameCap << " !" << endl;
  743.         cout << "-------------------------------------------------------------------------" << endl;
  744.     }
  745.  
  746.     cout << "Play again? - Y/N" << endl;
  747.     cout << "-";
  748.     cin >> Replay;
  749.     if(Replay == "Y")
  750.     {
  751.  
  752.         cout << "-------------------------------------------------------------------------" << endl;
  753.         cout << "-------------------------------------------------------------------------" << endl;
  754.         cout << "-------------------------------------------------------------------------" << endl;
  755.         cout << "-------------------------------------------------------------------------" << endl;
  756.         Running = 1;
  757.  
  758.     }
  759.     else if(Replay == "Yes")
  760.     {
  761.  
  762.         cout << "-------------------------------------------------------------------------" << endl;
  763.         cout << "-------------------------------------------------------------------------" << endl;
  764.         cout << "-------------------------------------------------------------------------" << endl;
  765.         cout << "-------------------------------------------------------------------------" << endl;
  766.         Running = 1;
  767.  
  768.     }
  769.     else if(Replay == "yes")
  770.     {
  771.  
  772.         cout << "-------------------------------------------------------------------------" << endl;
  773.         cout << "-------------------------------------------------------------------------" << endl;
  774.         cout << "-------------------------------------------------------------------------" << endl;
  775.         cout << "-------------------------------------------------------------------------" << endl;
  776.         Running = 1;
  777.  
  778.     }
  779.     else if(Replay == "y")
  780.     {
  781.  
  782.         cout << "-------------------------------------------------------------------------" << endl;
  783.         cout << "-------------------------------------------------------------------------" << endl;
  784.         cout << "-------------------------------------------------------------------------" << endl;
  785.         cout << "-------------------------------------------------------------------------" << endl;
  786.         Running = 1;
  787.  
  788.     }
  789.     else if(Replay == "yup")
  790.     {
  791.  
  792.         cout << "-------------------------------------------------------------------------" << endl;
  793.         cout << "-------------------------------------------------------------------------" << endl;
  794.         cout << "-------------------------------------------------------------------------" << endl;
  795.         cout << "-------------------------------------------------------------------------" << endl;
  796.         Running = 1;
  797.  
  798.     }
  799.     else if(Replay == "yep")
  800.     {
  801.  
  802.         cout << "-------------------------------------------------------------------------" << endl;
  803.         cout << "-------------------------------------------------------------------------" << endl;
  804.         cout << "-------------------------------------------------------------------------" << endl;
  805.         cout << "-------------------------------------------------------------------------" << endl;
  806.         Running = 1;
  807.  
  808.     }
  809.     else
  810.     {
  811.  
  812.         cout << "-------------------------------------------------------------------------" << endl;
  813.         cout << "Thank you for playing!" << endl;
  814.         cin >> end;
  815.         Running = 0;
  816.  
  817.     }
  818.  
  819.     }
  820. system("pause");
  821. }
Advertisement
Add Comment
Please, Sign In to add comment