diff --git a/du7/snake.c b/du7/snake.c index 764b4c3..7d48fdf 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -48,28 +48,29 @@ int step_state(struct state* st) { int nx = (st->snake->x + st->sx); int ny = (st->snake->y + st->sy); int count = 0; + //int county = 0; if (nx < 0 || nx >= st->width || ny < 0 || ny >= st->height) { return END_WALL; } if (is_snake(st->snake->next, nx, ny)) { return END_SNAKE; - } + } for (int i = 0; i < FOOD_COUNT; i++) { if (nx == st->foodx[i] && ny == st->foody[i]) { - count++; st->snake = add_snake(st->snake, nx, ny); st->foodx[i] = -1; st->foody[i] = -1; - if (count == FOOD_COUNT) { - return END_FOOD; } - } } + for (int i = 0; i < FOOD_COUNT; i++) { +if (st->foodx[i] == -1 && st->foody[i] == -1) { +count++; +if(count == 5){ +return END_FOOD; +} +} +} st->snake = add_snake(st->snake, nx, ny); st->snake = remove_snake(st->snake); return END_CONTINUE; -} - - - - +} \ No newline at end of file