blob: 31f5dcd5dec7ab527247b2667e599d6cc02e4af2 (
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
29
30
31
32
33
|
#ifndef GAME_H
#define GAME_H
#include "types.h"
#include "input.h"
#include "sprite.h"
#include "level.h"
#include "ball.h"
typedef enum {
game_active,
game_menu,
game_win
} game_state_enum;
typedef struct {
game_state_enum state;
i32 running;
input_t input;
i32 width, height;
const char *bindir;
sprite_renderer_t renderer;
level_t level;
object_t player;
ball_t ball;
} game_t;
extern game_t init_game(i32 width, i32 height);
extern void process_input(game_t *game);
extern void update_game(game_t *game, f32 dt);
extern void render_game(game_t game);
#endif
|