Guest User

Untitled

a guest
Jun 21st, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.16 KB | None | 0 0
  1. int main() {
  2. Weapon w1("hello",STRENGTH,3);
  3. Game game(3);
  4. game.addWarrior("s22","we",STRENGTH,3,55);
  5. //4
  6. game.addWarrior("s22","we",STRENGTH,3,55);
  7. return 0;
  8. }
  9.  
  10. //inside game.cpp
  11.  
  12.  
  13. GameStatus Game::addPlayer(const string playerName, const string weaponName,
  14. Target target,int hit_strength)
  15. {
  16. Weapon newWeapon(weaponName,target,hit_strength);
  17. Warrior newWarrior(playerName,newWeapon,false);
  18. if(ifNameAlreadyExists(playerName)) {
  19. addRegPlayer(static_cast<Player*>(&newWarrior));
  20. }
  21. return SUCCESS;
  22. }
  23.  
  24. GameStatus Game::addRegPlayer(Player* player)
  25. {
  26. playersVector.push_back(player);
  27. }
  28.  
  29.  
  30. //base classes
  31.  
  32. class Game {
  33.  
  34. private:
  35. int maxPlayer;
  36. vector<Player*> playersVector;
  37. }
  38.  
  39. class Player {
  40. string player_name;
  41. int level;
  42. int strength;
  43. Weapon player_weapon;
  44. protected:
  45. int place;
  46. int life;
  47. public:
  48. Player(const string &name, const Weapon &weapon);
  49. virtual ~Player();
  50. }
  51.  
  52.  
  53. //inherited class
  54.  
  55. class Warrior : public Player {
  56. private:
  57. bool rider;
  58. public:
  59. Warrior ();
  60. Warrior (string const& name, Weapon const& weapon, bool rider);
  61. ~ Warrior () override = default;
  62. Warrior &operator=(const Warrior &warrior) ;
  63. Warrior ( const Warrior &warrior) = default;
  64. void makeStep() override;
  65. };
  66.  
  67.  
  68. //Constructor of Warrior
  69. Warrior::Warrior(string const& name, Weapon const& weapon, bool rider) :
  70. Player(name,weapon),rider(rider){
  71. if (weapon.getTarget() == LEVEL){
  72. throw IllegalWeapon();
  73. }
  74. }
  75. //constructor of player
  76. Player::Player(const string& name, const Weapon& weapon) :
  77. level(1),life(1),strength(1),player_weapon(weapon),player_name(name),place(0){
  78. }
Add Comment
Please, Sign In to add comment