#include "gameCommon.h" #include "world.h" #include "entity.h" #ifndef LEVELS_H #define LEVELS_H #define LEVELS_COUNT 1 typedef struct Levels Levels; typedef void (*LevelInitCb)(Game * game, Levels * levels); typedef bool (*LevelUpdateCb)(Game * game, Levels * levels); // Returns true when level is complete typedef struct Levels { int currentLevel; void * data; // Null if not used. } Levels; typedef struct LevelInfo { LevelInitCb initCb; LevelUpdateCb updateCb; } LevelInfo; extern const LevelInfo levelInfoList[LEVELS_COUNT]; void initLevels(Levels * levels); void freeLevels(Levels * levels); void startLevel(Game * game, Levels * levels, int levelNum); void endLevel(Levels * levels); #endif