#pragma once #include typedef enum snakeDirection_t { DOWN = 0, UP, LEFT, RIGHT } snakeDirection_t; // Bewegungsrichtung typedef struct snake_t { int length; // aktuelle Länge der Schlange int headX; int headY; // aktuelle Position der Schlange snakeDirection_t direction; int tail[512][2]; bool isAlive; // lebt die Schlange noch oder ist sie mit sich selbst kollidiert? } snake_t; void snakeInit(); // Snake mit bestimmter Startlänge an Startposition erstellen // Speicherbereich reservieren void snakeGrow(); // Snake wird um 1 Glied länger (nach Fressen) void snakeMove(); // bewegt die Schlang einen Schritt in die aktuelle Richtung // ruft lokale Variable dir von snakeSetDir auf void snakeSetDir(snakeDirection_t dir); // Richtung als Übergabeparameter // definiert aktuelle Bewegungsrichtung der Schlange bool snakeIsAlive(); // Überprüfen, ob Schlange noch lebt // Prüft Kollision mit sich selbst void snakeSetHeadPos(); // optional // für handlePortals // generiert zufällige Zielsposition, wohin sich die Schlange nach Betreten eines Portals bewegt