aboutsummaryrefslogtreecommitdiff
path: root/src/levels.h
blob: 8630757890575b09a2c283c6b0d08d55733baa48 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include "gameCommon.h"
#include "world.h"
#include "entity.h"

#ifndef LEVELS_H
#define LEVELS_H

#define LEVELS_COUNT 1

typedef struct Level Level;

typedef void (*LevelInitCb)(Game * game, Level * level);
typedef void (*LevelUpdateCb)(Game * game, Level * level);

typedef struct Level {
    WorldEntry * entries;
    size_t entriesCount;
    LevelUpdateCb updateCb;
} Level;

typedef struct LevelInfo {
    LevelInitCb initCb;
    LevelUpdateCb updateCb;
} LevelInfo;

extern const LevelInfo levelInfoList[LEVELS_COUNT];

#endif