diff options
author | nathansmithsmith <nathansmith7@mailfence.com> | 2023-10-01 19:36:15 -0600 |
---|---|---|
committer | nathansmithsmith <nathansmith7@mailfence.com> | 2023-10-01 19:36:15 -0600 |
commit | 939c371224e94f0ea4bdfb5f67e50b7ab943127c (patch) | |
tree | e786f0c2c551a0d4ea6ebf64878a293a85778d69 /src/levels.c | |
parent | e68a40c4da4093a51ea7596757413ca4964ff51f (diff) |
Worked on levels a bit more
Diffstat (limited to 'src/levels.c')
-rw-r--r-- | src/levels.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/levels.c b/src/levels.c index ff2b2b6..5f1bce1 100644 --- a/src/levels.c +++ b/src/levels.c @@ -2,3 +2,25 @@ const LevelInfo levelInfoList[LEVELS_COUNT] = { }; + +void initLevels(Levels * levels) { + levels->currentLevel = 0; + levels->data = NULL; +} + +void freeLevels(Levels * levels) { + if (levels->data != NULL) + KF_FREE(levels->data); + + levels->data = NULL; +} + +void startLevel(Game * game, Levels * levels, int levelNum) { + levels->currentLevel = levelNum; + levelInfoList[levelNum].initCb(game, levels); +} + +void endLevel(Levels * levels) { + freeLevels(levels); +} + |