SHARE
TWEET

RPG Battle Part 3 Main.cpp

zCool May 13th, 2012 36 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include<iostream>
  2. #include<string>
  3. #include "Enemy.h"
  4. #include "Player.h"
  5. #include "Stats.h"
  6.  
  7. using namespace std;
  8.  
  9. int main()
  10. {
  11.  
  12. void WaitForEnter();
  13. string userInput;
  14. Stats s;
  15. int damage;
  16.  
  17. //set up enemy and player object
  18. Enemy monster(100,10,5,2);
  19. Player hero(100, 10, 5, 2);
  20.  
  21. while(monster.getStats().getHealth() > 0 &&
  22.         hero.getStats().getHealth() > 0)
  23. {
  24.  
  25. //display enemy and player health
  26. monster.displayHP();
  27. hero.displayHP();
  28.  
  29. std::cout << "What would you like to do? ";
  30. getline(cin, userInput);
  31.  
  32. //Validate
  33. while(userInput.compare("Attack") != 0 &&
  34.                 userInput.compare("Heal") != 0)
  35.         {
  36.                 std::cout << "What would you like to do? ";
  37.                 getline(cin, userInput);
  38.         }
  39.  
  40.         //Attack
  41.         if(userInput.compare("Attack") == 0)
  42.         {
  43.                 //player attack
  44.                 int oMonsterHealth = monster.getStats().getHealth();
  45.                 int cMonsterHealth = monster.getHit(hero.getStats().getAttack(), monster.getStats().getDefense(),
  46.                         monster.getStats().getHealth());
  47.                 damage = oMonsterHealth - cMonsterHealth;
  48.                 cout << "Damage Dealt to Monster: " << damage << endl;
  49.                 s = monster.getStats();
  50.                 s.setHealth(cMonsterHealth);
  51.                 monster.setStats(s);
  52.  
  53.                 //monster attack
  54.                 int oHeroHealth = hero.getStats().getHealth();
  55.                 int cHeroHealth = hero.getHit(hero.getStats().getAttack(), hero.getStats().getDefense(),
  56.                         hero.getStats().getHealth());
  57.                 damage = oHeroHealth - cHeroHealth;
  58.                 cout << "Damage Dealt to Hero: " << damage << endl;
  59.                 s = hero.getStats();
  60.                 s.setHealth(cHeroHealth);
  61.                 hero.setStats(s);
  62.         }
  63.  
  64.         //Heal
  65.         if(userInput.compare("Heal") == 0)
  66.         {
  67.  
  68.                 //player heal
  69.                 int oHeroHealth = hero.getStats().getHealth();
  70.                 int nHeroHealth = hero.healSelf(hero.getStats().getHealth(),
  71.                         hero.getStats().getSkill());
  72.                 s = hero.getStats();
  73.                 s.setHealth(nHeroHealth);
  74.                 hero.setStats(s);
  75.                 cout << "Player Healed " << nHeroHealth - oHeroHealth << " HP!" << endl;
  76.  
  77.                 //monster attack
  78.                 int oMonsterHealth = monster.getStats().getHealth();
  79.                 int nMonsterHealth = monster.healSelf(monster.getStats().getHealth(),
  80.                         monster.getStats().getSkill());
  81.                 s = monster.getStats();
  82.                 s.setHealth(nMonsterHealth);
  83.                 monster.setStats(s);
  84.                 cout << "Monster Healed " << nMonsterHealth - oMonsterHealth << " HP!" << endl;
  85.         }
  86. }
  87.  
  88.  
  89. //Program End
  90. cout << "Press Enter To Exit...";
  91. WaitForEnter();
  92.  
  93.  
  94. }
  95.  
  96. //Taken from Moosader (Rachel J. Morris)
  97. void WaitForEnter(){ while(1) { if ('\n' == getchar() ) { break; } } }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top