From 6bd6757583510ba3edf75451309e4b8ec8c9b0f1 Mon Sep 17 00:00:00 2001 From: "Juan J. Martinez" Date: Sun, 25 Jun 2023 22:44:23 +0100 Subject: Add entity system, add new enemy (snake) --- src/entities.h | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/entities.h (limited to 'src/entities.h') diff --git a/src/entities.h b/src/entities.h new file mode 100644 index 0000000..e553390 --- /dev/null +++ b/src/entities.h @@ -0,0 +1,34 @@ +#ifndef _ENTITIES_H +#define _ENTITIES_H + +#define DIR_RIGHT 0 +#define DIR_LEFT 1 + +#define WALK_DELAY 8 + +typedef struct entity_s +{ + uint8_t used; + uint16_t x; + uint16_t y; + uint8_t dir; + uint8_t frame; + uint8_t delay; + uint8_t gravity; + uint8_t flag; + uint8_t bg[16 * 16]; + /* expected to be 2 directions per 4 frames max; 8 Rect */ + const Rect *frames; + void (*update)(struct entity_s *e); +} Entity; + +void entities_init(); + +Entity *entities_new(); + +void entities_update(); + +void entities_erase(); +void entities_draw(); + +#endif /* _ENTITIES_H */ -- cgit v1.2.3