diff --git a/include/level.h b/include/level.h index 9a4d16e..baaa51b 100644 --- a/include/level.h +++ b/include/level.h @@ -4,11 +4,11 @@ #include typedef struct Level { - int width; /* in tiles */ - int height; /* in tiles */ + uint width; /* in tiles */ + uint height; /* in tiles */ const uint8_t **layers; /* points toward the level content */ - int layers_count; - uint solid_layer; /* id of the solid layer */ + uint8_t layers_count; + uint8_t solid_layer; /* id of the solid layer */ } Level; #include "camera.h" diff --git a/levels/create_demo.lua b/levels/create_demo.lua index 899203e..d2fd24b 100755 --- a/levels/create_demo.lua +++ b/levels/create_demo.lua @@ -15,4 +15,4 @@ local function create_random_level(width, height, layers) end end -create_random_level(64, 64, 1) +create_random_level(64, 64, 3) diff --git a/src/level.c b/src/level.c index 9cf2cf1..9b90b76 100644 --- a/src/level.c +++ b/src/level.c @@ -10,7 +10,9 @@ void level_step(const Level *level) { } void level_draw(const Level *level, Camera *camera) { - layer_draw(level, camera, 0); + for (int i = 0; i < level->layers_count; ++i) { + layer_draw(level, camera, i); + } } void layer_draw(const Level *level, Camera *camera, uint layer_id) {