From 0ae2b69355747fd0401bfd7f2d94f78218e0336b Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Mon, 26 Apr 2021 19:18:56 +0000 Subject: [PATCH 01/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/du7/snake.c b/du7/snake.c index 8a911c8..80deddc 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -1,4 +1,4 @@ -nclude "snake.h" +#include "snake.h" #include struct snake* add_snake(struct snake* snake,int x,int y){ From 228a3c4b9c6e2f54a9d90af935dbf3816b1272f7 Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Mon, 26 Apr 2021 19:42:04 +0000 Subject: [PATCH 02/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/du7/snake.c b/du7/snake.c index 80deddc..73379aa 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -20,7 +20,7 @@ struct snake* add_snake(struct snake* snake,int x,int y){ //temp->next = (struct snake*) calloc(1, sizeof(struct snake)); temp->next->x = temp->x - (myX - temp->x); - temp->next->y = temp->y - (myX - temp->y); + temp->next->y = temp->y - (myY - temp->y); temp->next->next = NULL; return newHead; @@ -66,7 +66,7 @@ int step_state(struct state* st){ int ny = (st->snake->y + st->sy); for(int i = 0; i < FOOD_COUNT; i++){ - if(st->snake-> == st->foodx && st->snake->y == st->food[i]){ + if(nx == st->foodx[i] && ny == st->foody[i]){ add_snake(st->snake, st->foodx[i], st->foody[i]); st->foodx[i] = -1; st->foody[i] = -1; @@ -81,7 +81,7 @@ int step_state(struct state* st){ } } - for(struct snake* temp = st->snake->next != NULL; temp = temp->next){ + for(struct snake* temp = st->snake->next; temp != NULL; temp = temp->next){ if(nx == temp->x && ny == temp->y){ return END_SNAKE; } From be7fcb6486e189a739eed8bad040e808cd8917f5 Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Tue, 27 Apr 2021 17:30:00 +0000 Subject: [PATCH 03/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/du7/snake.c b/du7/snake.c index 73379aa..69a4c00 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -7,7 +7,7 @@ struct snake* add_snake(struct snake* snake,int x,int y){ newHead-> = y; newHead->next = snake; - struct snake* temp = snake; + /*struct snake* temp = snake; int myX, myY; while(temp->next != NULL){ @@ -20,8 +20,8 @@ struct snake* add_snake(struct snake* snake,int x,int y){ //temp->next = (struct snake*) calloc(1, sizeof(struct snake)); temp->next->x = temp->x - (myX - temp->x); - temp->next->y = temp->y - (myY - temp->y); - temp->next->next = NULL; + temp->next->y = temp->y - (myX - temp->y); + temp->next->next = NULL;*/ return newHead; } @@ -46,6 +46,8 @@ void free_snake(struct snake* sn){ sn = sn->next; temp->next = NULL; } + + free(sn); } int is_snake(struct snake* snake,int x,int y){ @@ -67,7 +69,7 @@ int step_state(struct state* st){ for(int i = 0; i < FOOD_COUNT; i++){ if(nx == st->foodx[i] && ny == st->foody[i]){ - add_snake(st->snake, st->foodx[i], st->foody[i]); + st->snake = add_snake(st->snake, st->foodx[i], st->foody[i]); st->foodx[i] = -1; st->foody[i] = -1; for(int j = 0; j < FOOD_COUNT; j++){ @@ -78,18 +80,18 @@ int step_state(struct state* st){ return END_FOOD; } } + return END_CONTINUE; } } - for(struct snake* temp = st->snake->next; temp != NULL; temp = temp->next){ - if(nx == temp->x && ny == temp->y){ + for(struct snake* temp = st->snake->next != NULL; temp = temp->next){ + if((nx == temp->x && ny == temp->y) || (nx < 0 || nx >= st->width || ny < 0 || ny >= st->height)){ return END_SNAKE; } } - add_snake(st->snake, nx, ny); + st->snake = add_snake(st->snake, nx, ny); remove_snake(st->snake); return END_CONTINUE; } - From bcf30cd81931d77e1b508d8d6d9af4e515a74277 Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Tue, 27 Apr 2021 17:31:34 +0000 Subject: [PATCH 04/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/du7/snake.c b/du7/snake.c index 69a4c00..8447a40 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -3,8 +3,8 @@ struct snake* add_snake(struct snake* snake,int x,int y){ struct snake* newHead = (struct snake*) malloc(sizeof(struct snake)); - newHead-> = x; - newHead-> = y; + newHead->x = x; + newHead->y = y; newHead->next = snake; /*struct snake* temp = snake; From 0ca453d4ca0ce0466a35e215a6cbc86a8f56217f Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Tue, 27 Apr 2021 17:34:37 +0000 Subject: [PATCH 05/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/du7/snake.c b/du7/snake.c index 8447a40..04f789f 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -84,7 +84,7 @@ int step_state(struct state* st){ } } - for(struct snake* temp = st->snake->next != NULL; temp = temp->next){ + for(struct snake* temp = st->snake; temp != NULL; temp = temp->next){ if((nx == temp->x && ny == temp->y) || (nx < 0 || nx >= st->width || ny < 0 || ny >= st->height)){ return END_SNAKE; } From a2d1f3740805afde40c0f93fdb90385db57a8bf5 Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Tue, 27 Apr 2021 17:36:24 +0000 Subject: [PATCH 06/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/du7/snake.c b/du7/snake.c index 04f789f..51ef32a 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -29,6 +29,10 @@ struct snake* add_snake(struct snake* snake,int x,int y){ struct snake* remove_snake(struct snake* snake){ struct snake* temp = snake; + if(snake == NULL || snake->next == NULL){ + return snake; + } + while(temp->next->next != NULL){ temp = temp->next; // проход до последнего кусочка } From 0433fb2e7097e6d1ea68bf5fa885a3f5968ebad2 Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Tue, 27 Apr 2021 17:39:12 +0000 Subject: [PATCH 07/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/du7/snake.c b/du7/snake.c index 51ef32a..60172fa 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -37,6 +37,8 @@ struct snake* remove_snake(struct snake* snake){ temp = temp->next; // проход до последнего кусочка } + struct snake* temp1 = temp->next; + free(temp1); temp->next = NULL; return snake; From acc7f9ba419813e0cbda4c2e7c23815ab4e40f20 Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Tue, 27 Apr 2021 17:42:16 +0000 Subject: [PATCH 08/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/du7/snake.c b/du7/snake.c index 60172fa..2bb4aaf 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -37,9 +37,9 @@ struct snake* remove_snake(struct snake* snake){ temp = temp->next; // проход до последнего кусочка } - struct snake* temp1 = temp->next; - free(temp1); temp->next = NULL; + temp = temp->next + free(temp); return snake; } From 0463e59800509d983a72cbebd91fc2034a408c73 Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Tue, 27 Apr 2021 17:42:36 +0000 Subject: [PATCH 09/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/du7/snake.c b/du7/snake.c index 2bb4aaf..0d6441c 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -38,7 +38,7 @@ struct snake* remove_snake(struct snake* snake){ } temp->next = NULL; - temp = temp->next + temp = temp->next; free(temp); return snake; From cd786b6e1cb1b9d7a0d4386e71496a91ad4e87b6 Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Tue, 27 Apr 2021 17:44:30 +0000 Subject: [PATCH 10/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/du7/snake.c b/du7/snake.c index 0d6441c..b0b1612 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -29,7 +29,11 @@ struct snake* add_snake(struct snake* snake,int x,int y){ struct snake* remove_snake(struct snake* snake){ struct snake* temp = snake; - if(snake == NULL || snake->next == NULL){ + if(snake == NULL){ + return snake; + } + else if(snake->next == NULL){ + free(snake); return snake; } From aef26b5fff9603223872d3fc9161ad6fe2ded4a8 Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Tue, 27 Apr 2021 17:45:40 +0000 Subject: [PATCH 11/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 1 + 1 file changed, 1 insertion(+) diff --git a/du7/snake.c b/du7/snake.c index b0b1612..c600b67 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -34,6 +34,7 @@ struct snake* remove_snake(struct snake* snake){ } else if(snake->next == NULL){ free(snake); + snake = NULL; return snake; } From 78153dc165d03c786f73e2941814753fe7b45e64 Mon Sep 17 00:00:00 2001 From: Oleksandr Hryshchenko Date: Tue, 27 Apr 2021 17:58:17 +0000 Subject: [PATCH 12/12] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20'du7/snake.c'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- du7/snake.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/du7/snake.c b/du7/snake.c index c600b67..2431a7d 100644 --- a/du7/snake.c +++ b/du7/snake.c @@ -64,7 +64,7 @@ void free_snake(struct snake* sn){ int is_snake(struct snake* snake,int x,int y){ struct snake* temp = snake; - while(temp->next != NULL){ + while(temp != NULL){ if(x == temp->x && y == temp->y){ return 1; }