pvjc22/du7/snake.c

49 lines
1.1 KiB
C
Raw Normal View History

2022-04-26 17:40:00 +00:00
#include "snake.h"
#include <stdlib.h>
struct snake* add_snake(struct snake* snake,int x,int y){
2022-04-26 18:15:29 +00:00
struct snake* novyZaciatok = calloc(1, sizeof(struct snake)); //alokujem pam<61><6D> smern<72>ka
novyZaciatok->x = x; //nastav<61>m s<>radnice hada
2022-04-26 17:40:00 +00:00
novyZaciatok->y = y;
2022-04-26 17:44:26 +00:00
2022-04-26 18:15:29 +00:00
if (snake != NULL) { //ak m<> had telo,
novyZaciatok->next = snake; //tak mu iba prid<69>m hlavu
2022-04-26 17:46:44 +00:00
} else {
2022-04-26 18:15:29 +00:00
novyZaciatok->next = NULL; //inak mus<75>m vytvori<72> nov<6F> telo
2022-04-26 17:44:26 +00:00
}
2022-04-26 17:40:00 +00:00
return novyZaciatok;
}
struct snake* remove_snake(struct snake* snake){
2022-04-26 18:28:43 +00:00
if (snake == NULL) return NULL;
2022-04-26 18:26:09 +00:00
struct snake* nasledujuci = calloc(1, sizeof(struct snake));
nasledujuci = snake->next;
2022-04-26 18:15:29 +00:00
free(snake);
return nasledujuci;
2022-04-26 17:40:00 +00:00
}
void free_snake(struct snake* sn){
2022-04-26 18:26:09 +00:00
struct snake* nasledujuci = calloc(1, sizeof(struct snake));
2022-04-26 17:40:00 +00:00
while (sn != NULL) {
nasledujuci = sn->next;
free(sn);
sn = nasledujuci;
}
2022-04-26 18:28:43 +00:00
free(nasledujuci);
2022-04-26 17:40:00 +00:00
}
int is_snake(struct snake* snake,int x,int y){
return 0;
}
int step_state(struct state* st){
int nx = (st->snake->x + st->sx);
int ny = (st->snake->y + st->sy);
return END_CONTINUE;
}