-
Notifications
You must be signed in to change notification settings - Fork 0
/
constants.h
160 lines (131 loc) · 8.45 KB
/
constants.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
153
154
155
156
157
158
159
160
#pragma once
namespace KeyBindings {
constexpr int UP_ARROW = 72;
constexpr int DOWN_ARROW = 80;
constexpr int LEFT_ARROW = 75;
constexpr int RIGHT_ARROW = 77;
constexpr int ESC_KEY = 27;
constexpr int ENTER_KEY = 13;
constexpr int SPACE_KEY = 32;
constexpr int Q_KEY = 81;
constexpr int q_KEY = 113;
constexpr int COL_KEY = 58;
constexpr int J_KEY = 74;
constexpr int j_KEY = 106;
constexpr int K_KEY = 107;
constexpr int H_KEY = 76;
constexpr int h_KEY = 104;
constexpr int L_KEY = 108;
constexpr int A_KEY = 64;
constexpr int a_KEY = 97;
constexpr int w_KEY = 119;
constexpr int W_KEY = 87;
constexpr int S_KEY = 82;
constexpr int s_KEY = 115;
constexpr int d_KEY = 100;
constexpr int D_KEY = 68;
}
#ifndef AUDIO_PATHS_H
#define AUDIO_PATHS_H
namespace Audio {
constexpr const char* BGM = "./audio/background.wav";
}
#endif
namespace GameConstants {
const std::string __game_title__ = R"(
DDDDDD EEEEEEEEE FFFFFFFFF EEEEEEEEE NN N DDDDDD EEEEEEEEE RRRRRRRRRRR !! SSSSSSSS
D D E F E N N N D D E R R !! SS
D D E F E N N N D D E R R !! SS
D D E F E N N N D D E R R !! SS
D D EEEEEE FFFFFF EEEEEE N N N D D EEEEEE RRRRRRRRRRRR SS
D D E F E N N N D D E R R SS
D D E F E N N N D D E R R SS
D D E F E N NN D D E R R SS
DDDDDD EEEEEEEEE F EEEEEEEEE N N DDDDDD EEEEEEEEE R R SSSSSSSS
DDDDDD OOOOOO MM MM AAAA |#| NN N
D D OO OO M M M M AA AA |#| N N N
D D OO OO M M M M AA AA |#| N N N
D D OO OO M M M M AA AA |#| N N N
D D OO OO M M M M AA AA |#| N N N
D D OO OO M M M M AAAAAAAAAAAAAA |#| N N N
D D OO OO M M M M AA AA |#| N N N
D D OO 00 M M M AA AA |#| N NN
DDDDDD OOOOOO M M AA AA |#| N N
)";
const std::string __game_lose__ = R"(
GGGGGGGG AAAA MM MM EEEEEEEEE OOOOOO VV VV EEEEEEEEE RRRRRRRRRRR
G G AA AA M M M M E OO OO VV VV E R R
G AA AA M M M M E OO OO VV VV E R R
G AA AA M M M M E OO OO VV VV E R R
G GGGGGG AA AA M M M M EEEEEE OO OO VV VV EEEEEE RRRRRRRRRRRR
G G AAAAAAAAAAAAAA M M M M E OO OO VV VV E R R
G G AA AA M M M M E OO OO VV VV E R R
G G AA AA M M M E OO 00 VV VV E R R
GGGGGGGGG AA AA M M EEEEEEEEE OOOOOO VVVV EEEEEEEEE R R
)";
constexpr const int MAX_ENEMIES = 90;
constexpr const char* EMPTY = " ";
constexpr const char BORDER_CORNER = '+';
constexpr const char BORDER_WALL_Y = '|';
constexpr const char* BORDER_WALL_X = "-----";
constexpr const char* DOOR = "[(.)]";
const int UPGRADE_TIMES[7][5] = {
{200, 350, 450, 500, 700}, // Electric Tower
{150, 250, 350, 450, 650}, // Fire Tower
{250, 380, 425, 650, 900}, // Poison Tower
{140, 240, 340, 440, 540}, // Water Tower
{180, 280, 380, 500, 600}, // Ice Tower
{160, 360, 460, 550, 740}, // Wind Tower
{260, 380, 500, 680, 950} // Shadow Tower
};
constexpr const char* RESET = "\033[37m";
constexpr const char* ICE_TOWERS[] = {
"\033[38;5;81m * \033[37m",
"\033[38;5;81m *> \033[37m",
"\033[38;5;81m <*> \033[37m",
"\033[38;5;81m <*>>\033[37m",
"\033[38;5;81m<<*>>\033[37m"
};
constexpr const char* WIND_TOWERS[] = {
"\033[38;5;159m * \033[37m",
"\033[38;5;159m *> \033[37m",
"\033[38;5;159m <*> \033[37m",
"\033[38;5;159m <*>>\033[37m",
"\033[38;5;159m<<*>>\033[37m"
};
constexpr const char* SHADOW_TOWERS[] = {
"\033[38;5;23m * \033[37m",
"\033[38;5;23m *> \033[37m",
"\033[38;5;23m <*> \033[37m",
"\033[38;5;23m <*>>\033[37m",
"\033[38;5;23m<<*>>\033[37m"
};
constexpr const char* ELECTRIC_TOWERS[] = {
"\033[38;5;214m * \033[37m",
"\033[38;5;214m *> \033[37m",
"\033[38;5;214m <*> \033[37m",
"\033[38;5;214m <*>>\033[37m",
"\033[38;5;214m<<*>>\033[37m"
};
constexpr const char* FIRE_TOWERS[] = {
"\033[38;5;196m * \033[37m",
"\033[38;5;196m *> \033[37m",
"\033[38;5;196m <*> \033[37m",
"\033[38;5;196m <*>>\033[37m",
"\033[38;5;196m<<*>>\033[37m"
};
constexpr const char* POISON_TOWERS[] = {
"\033[38;5;93m * \033[37m",
"\033[38;5;93m *> \033[37m",
"\033[38;5;93m <*> \033[37m",
"\033[38;5;93m <*>>\033[37m",
"\033[38;5;93m<<*>>\033[37m"
};
constexpr const char* WATER_TOWERS[] = {
"\033[38;5;39m * \033[37m",
"\033[38;5;39m *> \033[37m",
"\033[38;5;39m <*> \033[37m",
"\033[38;5;39m <*>>\033[37m",
"\033[38;5;39m<<*>>\033[37m"
};
}