From 65fa1051585f5345c3270db73ab53b7a0dbbaa50 Mon Sep 17 00:00:00 2001 From: quou Date: Tue, 2 May 2023 21:37:07 +1000 Subject: Add ECS. --- world.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 world.h (limited to 'world.h') diff --git a/world.h b/world.h new file mode 100644 index 0000000..7f19520 --- /dev/null +++ b/world.h @@ -0,0 +1,24 @@ +#ifndef world_h +#define world_h + +#include "components.h" + +#define max_entities 256 + +typedef int Entity; + +typedef struct { + int entity_count; + + unsigned char bitmask[max_entities]; + + CSprite sprites[max_entities]; + CPosition positions[max_entities]; +} World; + +void init_world(World* world); +Entity new_entity(World* world); +void add_components(World* world, Entity e, CType bits); +void remove_components(World* world, Entity e, CType bits); + +#endif -- cgit v1.2.3-54-g00ecf