]> git.lizzy.rs Git - nothing.git/blob - src/game/level/physical_world.h
(#639) Make rigid bodies interact with platforms
[nothing.git] / src / game / level / physical_world.h
1 #ifndef PHYSICAL_WORLD_H_
2 #define PHYSICAL_WORLD_H_
3
4 #include "game/level/solid.h"
5
6 // TODO(#632): remove Physical_world when it's not used anywhere anymore
7
8 typedef struct Physical_world Physical_world;
9
10 Physical_world *create_physical_world(void);
11 void destroy_physical_world(Physical_world *physical_world);
12
13 void physical_world_apply_gravity(Physical_world *physical_world);
14 void physical_world_collide_solids(Physical_world *physical_world,
15                                    Platforms *platforms);
16 int physical_world_add_solid(Physical_world *physical_world,
17                              Solid_ref solid);
18 void physical_world_clean(Physical_world *physical_world);
19
20 #endif  // PHYSICAL_WORLD_H_