8,28 → 8,15 |
#define SNAKE_CANDY_COLOR GREEN |
#define SNAKE_COLLISION_COLOR ORANGE |
|
#define SNAKE_LEVEL_STEP 10 |
#define SNAKE_MAXIMUM_DELAY 800 |
#define SNAKE_MINIMUM_DELAY 300 |
|
typedef struct { |
unsigned x :8; |
unsigned y :8; |
unsigned z :8; |
unsigned :8; |
uint8_t x; |
uint8_t y; |
uint8_t z; |
} SNAKE_POINT; |
|
typedef union { |
struct { |
unsigned up :1; |
unsigned down :1; |
unsigned left :1; |
unsigned backward :1; |
unsigned right :1; |
unsigned forward :1; |
unsigned :2; |
}; |
uint8_t value; |
} SNAKE_DIRECTION; |
|
typedef struct { |
SNAKE_POINT body[CUBE_PIXELS]; |
SNAKE_POINT direction; |
44,7 → 31,7 |
|
void Snake_Init(SNAKE_DATA *data); |
void Snake_Main(void); |
void Snake_Update_Direction(uint8_t p1, uint8_t p2); |
void Snake_Update_Direction(uint8_t controller, CTRL_BTN_STATUS value); |
void Snake_Update_Frame(void); |
SNAKE_POINT Snake_Generate_Candy(void); |
|