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 61 62 63 64 65 66 67 68 69 70 71
|
#include "move class.h"
typedef tuple <int, int, int, int, int, int, string> Values;
class Compmon{
public:
Compmon(){};
~Compmon(){};
void operator = (Compmon Compmon1);
void SetValues(int attack, int defense, int health, int attackUp, int defenseUp, int healthUp, string name );
void SetValues(Values values);
void SetMove(Move newMove, int moveNumber);
Move * GetMove(int moveNumber);
int GetAttack() const {return itsAttack;};
int GetDefense() const {return itsDefense;};
int GetHealth() const {return itsHealth;};
int GetLevel() const {return itsLevel;};
string GetName() const {return itsName;};
Values GetValues() ;
void LevelUp(int levelsUp);
private:
int itsAttack;
int itsDefense;
int itsHealth;
int itsLevel;
int itsAttackUp;
int itsDefenseUp;
int itsHealthUp;
string itsName;
Move itsMoves[4];
Move * pItsMoves[4];
};
void Compmon::SetValues(int attack, int defense, int health, int attackUp, int defenseUp, int healthUp, string name) {
itsAttack=attack;
itsDefense=defense;
itsHealth=health;
itsLevel=1;
itsAttackUp=attackUp;
itsDefenseUp=defenseUp;
itsHealthUp=healthUp;
itsName=name;
}
void Compmon::LevelUp(int levelsUp){
itsLevel=itsLevel+levelsUp;
itsAttack=itsAttack+itsAttackUp*levelsUp;
itsDefense=itsDefense+itsDefenseUp*levelsUp;
itsHealth=itsHealth+itsHealthUp*levelsUp;
}
Values Compmon::GetValues() {
Values values(itsAttack, itsDefense, itsHealth, itsAttackUp, itsDefenseUp, itsHealthUp, itsName);
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);
itsName=get<6>(values);
}
void Compmon::SetMove(Move newMove, int moveNumber){
itsMoves[moveNumber-1]=newMove;
}
Move * Compmon::GetMove(int moveNumber){
return pItsMoves[moveNumber-1];
}
Compmon Null;
|