]> git.lizzy.rs Git - nothing.git/blob - src/level.h
Merge pull request #124 from tsoding/117
[nothing.git] / src / level.h
1 #ifndef LEVEL_H_
2 #define LEVEL_H_
3
4 #include <SDL2/SDL_mixer.h>
5
6 typedef struct level_t level_t;
7
8 typedef struct player_t player_t;
9 typedef struct platforms_t platforms_t;
10 typedef struct SDL_Renderer SDL_Renderer;
11 typedef union SDL_Event SDL_Event;
12 typedef struct camera_t camera_t;
13
14 level_t *create_level_from_file(const char *file_name);
15 void destroy_level(level_t *level);
16
17 int level_render(const level_t *level, SDL_Renderer *renderer);
18 int level_update(level_t *level, Uint32 delta_time);
19
20 int level_event(level_t *level, const SDL_Event *event);
21 int level_input(level_t *level,
22                 const Uint8 *const keyboard_state,
23                 SDL_Joystick *the_stick_of_joy);
24 int level_reload_preserve_player(level_t *level,
25                                  const char *file_name);
26
27 void level_toggle_debug_mode(level_t *level);
28 void level_toggle_pause_mode(level_t *level);
29
30 #endif  // LEVEL_H_