void game_over() { sleep(1); endwin(); free_snake(); exit(0); }
void free_all_client(field* map, snake** snakes, int size){ free_field(map); int i; for(i = 0; i<size; i++){ free_snake(snakes[i]); } }
void load_level(int lvl_nb) { char fname[100]; FILE *lev; unsigned iLin, iCol, x, y; char c; sprintf(fname, PATH"lvls/level-%d.lvl", lvl_nb); lev = fopen(fname, "r"); if(lev == NULL) { printf("Cannot open %s\n", fname); fflush(stdout); quit_stuff(); } for(iCol = 0; iCol < MAX_HEI; iCol++) { for(iLin = 0; iLin < MAX_LEN; iLin++) { c = getc(lev); if(c == '#') ground[iCol][iLin] = WALL; else ground[iCol][iLin] = GROUND; } getc(lev); /* This should be a \n */ } find_empty(&x, &y); ground[x][y] = BONUS; timeout[x][y] = rnd_max(45) + 5; find_empty(&x, &y); ground[x][y] = MALUS; timeout[x][y] = rnd_max(45) + 5; find_empty(&x, &y); ground[x][y] = MALUS; timeout[x][y] = rnd_max(45) + 5; find_empty(&x, &y); ground[x][y] = MALUS; timeout[x][y] = rnd_max(45) + 5; fclose(lev); free_snake(); /* Then the snake */ snake = malloc(sizeof(Snake)); snake->x = 9; snake->y = 13; snake->next = NULL; add_head(10, 13); add_head(11, 13); add_head(12, 13); add_head(13, 13); }