initAlphabet, drawAlphabet, macros added #8

This commit is contained in:
2017-05-04 21:56:04 +02:00
parent 9acc6f3b86
commit c664c70a37
3 changed files with 38 additions and 2 deletions

View File

@@ -71,7 +71,8 @@ int main(int argc, char **argv) {
/* start game */
initGuessWord(gs, filename);
initAlphabet(gs);
drawAlphabet(gs);
startGame(gs);
@@ -149,6 +150,35 @@ void initGuessWord(game_state *gs, char *filename) {
clear(); //clear the screen
}
void initAlphabet(game_state *gs) {
int hasNumber = 0;
int i, j;
for (i = 0; i < MAXWORDLENGTH; i++) {
if (isdigit(gs->guessWord[i]) == 0) {
hasNumber = 1;
break;
}
}
gs->alphabet = malloc(sizeof(char) * hasNumber ? ALPHABET : ALPHABET_NUM);
for (i = 'a', j = 0; i <= 'z'; i++, j++) {
gs->alphabet[j] = i;
}
if (hasNumber) {
j++;
for (i = 0; i < 10; i++, j++) {
gs->alphabet[j] = i;
}
}
}
void drawAlphabet(game_state *gs) {
int start = centerDiff(gs->centerx, gs->alphabet);
mvprintw(1, start, "%s", gs->alphabet);
}
void toLowerCase(char *str) {
int length = strlen(str);
int i;
@@ -342,5 +372,6 @@ void trollHitScreen(game_state *gs, int hits) {
}
}
}