Esempio n. 1
0
void game_over()
{
	sleep(1);
	endwin();
	free_snake();
	exit(0);
}
Esempio n. 2
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]);
    }
}
Esempio n. 3
0
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);
}