1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
#include <iostream>
#include <tuple>
using namespace std;
using namespace tr1;
typedef tuple <int, int, int, int, int, int> Values;
class Compmon{
public:
Compmon(){};
~Compmon(){};
void operator = (Compmon Compmon1);
void SetValues(int attack, int defense, int health, int attackUp, int defenseUp, int healthUp );
void SetValues(Values values);
int GetAttack() const {return itsAttack;};
int GetDefense() const {return itsDefense;};
int GetHealth() const {return itsHealth;};
int GetLevel() const {return itsLevel;};
Values GetValues() ;
void LevelUp(int levelsUp);
int itsAttack;
int itsDefense;
int itsHealth;
int itsLevel;
int itsAttackUp;
int itsDefenseUp;
int itsHealthUp;
};
void Compmon::SetValues(int attack, int defense, int health, int attackUp, int defenseUp, int healthUp) {
itsAttack=attack;
itsDefense=defense;
itsHealth=health;
itsLevel=1;
itsAttackUp=attackUp;
itsDefenseUp=defenseUp;
itsHealthUp=healthUp;
}
void Compmon::LevelUp(int levelsUp){
itsLevel=itsLevel+levelsUp;
cout << "your compmon is now level " << itsLevel;
cout << "\n\n";
itsAttack=itsAttack+itsAttackUp*levelsUp;
itsDefense=itsDefense+itsDefenseUp*levelsUp;
itsHealth=itsHealth+itsHealthUp*levelsUp;
}
Values Compmon::GetValues() {
Values values(itsAttack, itsDefense, itsHealth, itsAttackUp, itsDefenseUp, itsHealthUp);
return values;
}
void Compmon::operator =(Compmon Compmon1){
SetValues(Compmon1.GetValues());
}
void Compmon::SetValues(Values values){
itsAttack=get<0>(values);
itsDefense=get<1>(values);
itsHealth=get<2>(values);
itsLevel=1;
itsAttackUp=get<3>(values);
itsDefenseUp=get<4>(values);
itsHealthUp=get<5>(values);
}
|