-
Notifications
You must be signed in to change notification settings - Fork 0
/
estado.cpp
112 lines (103 loc) · 1.76 KB
/
estado.cpp
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#include "estado.h"
using namespace std;
Estado::Estado(){
this-> hambre =0;
this-> suciedad = 4;
this-> cansancio = 2;
this-> totalAlimentacion = 10;
this-> totalLimpieza = 10;
this-> totalCansancio =10;
}
Estado::~Estado(){
}
void Estado::mejorarEstado(string accionMejora){
if(accionMejora=="comer"){
if(hambre>0){
if(hambre-totalAlimentacion<-3){
hambre = -3;
} else{
hambre-=totalAlimentacion;
}
}
}
else if(accionMejora=="ducha"){
if(suciedad>0){
if(suciedad-totalLimpieza<-3){
suciedad = -3;
}
else{
suciedad-=totalLimpieza;
}
}
}
else if(accionMejora=="dormir"){
if(cansancio>0){
if(cansancio-totalCansancio<-3){
cansancio = -3;
}
else{
cansancio-=totalCansancio;
}
}
}
}
void Estado::aumentaHambre() {
#ifdef _WIN32
hambre+=2;
#else
hambre+=1;
#endif
}
void Estado::aumentaSuciedad() {
#ifdef _WIN32
suciedad+=2;
#else
suciedad+=1;
#endif
}
void Estado::aumentaCansancio() {
#ifdef _WIN32
cansancio+=2;
#else
cansancio+=1;
#endif
}
int Estado::obtieneTotalAlimentacion(){
return totalAlimentacion;
};
int Estado::obtieneTotalLimpieza(){
return totalLimpieza;
};
int Estado::obtieneTotalCansancio(){
return totalCansancio;
};
int Estado::obtieneHambreActual(){
int resultado;
if(hambre<0){
resultado = 0;
}
else{
resultado = hambre;
}
return resultado;
};
int Estado::obtieneSuciedadActual(){
int resultado;
if(suciedad<0){
resultado = 0;
}
else{
resultado = suciedad;
}
return resultado;
};
int Estado::obtieneCansancioActual(){
int resultado;
if(cansancio<0){
resultado = 0;
}
else{
resultado = cansancio;
}
return resultado;
};