snake.h 674 B

1234567891011121314151617181920212223242526272829303132
  1. #ifndef SNAKE_H_
  2. #define SNAKE_H_
  3. #include "../globals.h"
  4. extern boardInfo brdInfo;
  5. typedef struct orderNode {
  6. char dir;
  7. int delay;
  8. struct orderNode* next;
  9. } order;
  10. typedef struct snakeNode {
  11. int x;
  12. int y;
  13. char visChar;
  14. char dir;
  15. order* order;
  16. struct snakeNode* next;
  17. } snakePart;
  18. void mvSnakeParts(char board[][brdInfo.x], snakePart* head);
  19. void addSnakePart(char board[][brdInfo.x], snakePart* head);
  20. void pushOrder(order* head, char dir, int delay);
  21. void removeOrder(order* head);
  22. void addOrders(snakePart* head, char dir);
  23. void copyOrders(order* srcHead, order* destHead);
  24. bool checkCollision(snakePart* head, int x, int y);
  25. #endif // SNAKE_H_