-
Notifications
You must be signed in to change notification settings - Fork 0
/
JogoPC.cpp
86 lines (74 loc) · 2.45 KB
/
JogoPC.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
//Trabalho PAC - 2018/2 - Eng. Ele.
// Higor David Oliveira - 2018102587
// João Phillipe Hautequestt - 2018102204
// Nara Moraes Marcarini - 2018102176
#include "JogoPC.h"
using namespace std;
JogoPC::JogoPC() :Jogo() {
//cout << "Metodo construtivo normal de jogoPC" << endl;
this->tipo = 1;
//Jogo::qtdJogos++;
}
JogoPC::JogoPC(string _nome, float _valor, bool _emPromocao, string _genero, float _espacoDiscoRequerido) : Jogo(_nome, _valor, _emPromocao, _genero){
this->espacoDiscoRequerido = _espacoDiscoRequerido;
this->tipo = 1;
//cout << "Metodo construtivo parametrizado de JogoPC" << endl;
//Jogo::qtdJogos++;
}
JogoPC::~JogoPC() {
delete(this->genero);
//cout << "estou sendo destruido" << endl;
Jogo::qtdJogos--;
}
float JogoPC::getvaloremPromocao() {
if (this->emPromocao) {
return this->valor*(float)0.7;
}
else {
return this->valor;
}
}
int JogoPC::getTipo(){
return this->tipo;
}
void JogoPC::imprimeInfoJogo() {
cout << "Nome do JogoPC: " << this->getnome() << ". Valor: " << this->getvaloremPromocao() << " reais. Genero: ";
this->genero->imprimenome();
cout << ". Espaco em disco requerido: " << this->getEspacoDiscoReq() << " Gbs" << endl;
}
float JogoPC::getEspacoDiscoReq() {
return this->espacoDiscoRequerido;
}
void JogoPC::setEspacoDiscoReq(float _espaco) {
this->espacoDiscoRequerido = _espaco;
return;
}
void JogoPC::escreveJogoTxt(ofstream &arquivo){
arquivo << "1" << endl <<
this->getnome() << endl <<
this->getvalor() << endl <<
this->getEmpromocao() << endl <<
this->getgenero()->getnome() << endl <<
this->getEspacoDiscoReq() << endl;
return;
}
void JogoPC::escreveJogoHtml(ofstream &arquivo, int indice, bool instalado){
if (indice % 2 == 0){
arquivo << " <tr class=\"linhasPc2\">" << endl;
}else{
arquivo << " <tr class=\"linhasPc1\">" << endl;
}
arquivo << " <td align=\"center\"><b>" << indice << "</b></td>" << endl
<< " <td>" << this->nome << "</td>" << endl
<< " <td>R$ " << this->valor << " reais</td>" << endl
<< " <td>" << this->genero->getnome() << "</td>" << endl
<< " <td>" << this->espacoDiscoRequerido << "GBs</td>" << endl;
if (instalado){
arquivo << " <td style=\"color:rgb(20,90,20)\">" << "Sim" << "</td>" << endl;
}
else {
arquivo << " <td style=\"color:rgb(255,30,30)\">" << "Nao" << "</td>" << endl;
}
arquivo << " </tr>" << endl;
return;
}