-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmenu.h
152 lines (120 loc) · 6.9 KB
/
menu.h
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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
#ifndef MENU_H
#define MENUH
#include <iostream>
#include <string>
#include "manejo_archivos.h"
#include "herramientas.h"
#include "error.h"
using namespace std;
const string ARTE_PANTALLA_FINAL = R"(
__
_(\ |@@|
(__/\__ \--/ __
\___|----| | __
\ }{ /\ )_ / _\
/\__/\ \__O (__
(--/\--) \__/
_)( )(_
`---''---`)";
const string MSJ_FELICITACIONES_FINAL = R"(
_______ _______ ___ ___ _______ ___ _______ _______ _______ ___ _______ __ _ _______ _______
| || || | | | | || | | || _ || || | | || | | || || |
| ___|| ___|| | | | | || | |_ _|| |_| || || | | _ || |_| || ___|| _____|
| |___ | |___ | | | | | || | | | | || || | | | | || || |___ | |_____
| ___|| ___|| |___ | | | _|| | | | | || _|| | | |_| || _ || ___||_____ |
| | | |___ | || | | |_ | | | | | _ || |_ | | | || | | || |___ _____| |
|___| |_______||_______||___| |_______||___| |___| |__| |__||_______||___| |_______||_| |__||_______||_______|)";
const string MSJ_MENU_BIENVENIDA_JUGADOR_UNO = R"(
___ __ __ _______ _______ ______ _______ ______ ____
| || | | || || _ || | | || _ | | |
| || | | || ___|| |_| || _ || _ || | || | |
| || |_| || | __ | || | | || | | || |_||_ | |
___| || || || || || |_| || |_| || __ | | |
| || || |_| || _ || || || | | | | |
|_______||_______||_______||__| |__||______| |_______||___| |_| |___|)";
const string MSJ_MENU_BIENVENIDA_JUGADOR_DOS = R"(
___ __ __ _______ _______ ______ _______ ______ _______
| || | | || || _ || | | || _ | | |
| || | | || ___|| |_| || _ || _ || | || |____ |
| || |_| || | __ | || | | || | | || |_||_ ____| |
___| || || || || || |_| || |_| || __ | | ______|
| || || |_| || _ || || || | | | | |_____
|_______||_______||_______||__| |__||______| |_______||___| |_| |_______|)";
const string MSJ_MENU_BIENVENIDA_PARTIDA_NUEVA = R"(
_______ ___ _______ __ _ __ __ _______ __ _ ___ ______ _______ _______
| _ || | | || | | || | | || || | | || | | | | || |
| |_| || | | ___|| |_| || |_| || ___|| |_| || | | _ || _ || _____|
| || | | |___ | || || |___ | || | | | | || | | || |_____
| _ | | | | ___|| _ || || ___|| _ || | | |_| || |_| ||_____ |
| |_| || | | |___ | | | | | | | |___ | | | || | | || | _____| |
|_______||___| |_______||_| |__| |___| |_______||_| |__||___| |______| |_______||_______|
_______
| _ |
| |_| |
| |
| |
| _ |
|__| |__|
_______ __ _ ______ __ __ _______ _______ ___ ___ _______
| _ || | | || | | | | || || || | | | | |
| |_| || |_| || _ || |_| || _ || _ || | | | | _____|
| || || | | || || |_| || | | || | | | | |_____
| || _ || |_| ||_ _|| ___|| |_| || |___ | | |_____ |
| _ || | | || | | | | | | || || | _____| |
|__| |__||_| |__||______| |___| |___| |_______||_______||___| |_______|
)";
const string MSJ_MENU_OPCION_1 = "1. Construir edificio por nombre";
const string MSJ_MENU_OPCION_2 = "2. Listar mis edificios construidos";
const string MSJ_MENU_OPCION_3 = "3. Demoler un edificio por coordenada";
const string MSJ_MENU_OPCION_4 = "4. Atacar un edificio por coordenada";
const string MSJ_MENU_OPCION_5 = "5. Reparar un edificio por coordenada";
const string MSJ_MENU_OPCION_6 = "6. Comprar bombas";
const string MSJ_MENU_OPCION_7 = "7. Consultar coordenadas";
const string MSJ_MENU_OPCION_8 = "8. Mostrar inventario";
const string MSJ_MENU_OPCION_9 = "9. Mostrar objetivos";
const string MSJ_MENU_OPCION_10 = "10. Recolectar recursos producidos";
const string MSJ_MENU_OPCION_11 = "11. Moverse a una coordenada";
const string MSJ_MENU_OPCION_12 = "12. Finalizar turno";
const string MSJ_MENU_OPCION_13 = "13. Guardar y salir";
const string MSJ_MENU_PARTIDA_NUEVA_OPCION_1 = "1. Modificar edificio por nombre";
const string MSJ_MENU_PARTIDA_NUEVA_OPCION_2 = "2. Listar todos los edificos";
const string MSJ_MENU_PARTIDA_NUEVA_OPCION_3 = "3. Mostrar mapa";
const string MSJ_MENU_PARTIDA_NUEVA_OPCION_4 = "4. Comenzar partida";
const string MSJ_MENU_PARTIDA_NUEVA_OPCION_5 = "5. Guardar y salir";
const string MSJ_MENU_INGRESO_OPCION = "Elija una opcion";
const string MSJ_INGRESO_EDIFICIO_DEMOLER = "Ingresa el nombre del edificio a demoler:";
const string MSJ_DESPEDIDA = "¡Hasta la proxima!";
const string MSJ_PARTIDA_NUEVA = "¡Comienza una nueva partida!";
class Menu{
private:
// Atributos
string ingreso_usuario;
int opcion_elegida;
public:
// Metodos
// pre: -
// pos: Constructor por default
Menu();
// pre: -
// pos: Destructor
~Menu(){};
// pre:
// pos: obtiene la opcion elegida por el usuario
int obtener_opcion_elegida();
// pre: -
// pos: muestra el menu
void mostrar_menu_jugador(Jugador_t jugador, Andypolis& andypolis);
// pre: -
// pos: muestra el menu de la partida nueva en caso de tener texto de ubicaciones vacio
void mostrar_menu_partida_nueva();
// pre: -
// pos: muestra una pantalla final felicitando al ganador
void mostrar_pantalla_final(Jugador_t jugador);
// pre: -
// pos: Verifica que la opcion ingresada este dentro del rango (min,max)
bool verificar_opcion_elegida_en_rango(int min, int max);
// pre: -
// pos: Valida la opcion ingresada por el usuario
Estado_t ingreso_menu();
};
#endif // MENU_H