X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fgame%2Flevel%2Fboxes.h;h=207d1278906c76e6c9f6444cc9c99fcbd65daf55;hb=dc356739e8d0bc20bf62c2ca034d1b1122e4aea4;hp=96bf89b03622b4ebccc0990011095773ac17e0ed;hpb=dcb409245a5d7372d6d3e4b6f71991628d3e8770;p=nothing.git diff --git a/src/game/level/boxes.h b/src/game/level/boxes.h index 96bf89b0..207d1278 100644 --- a/src/game/level/boxes.h +++ b/src/game/level/boxes.h @@ -1,17 +1,28 @@ #ifndef BOXES_H_ #define BOXES_H_ -#include "game/level/platforms.h" #include "game/camera.h" +#include "game/level/platforms.h" +#include "lava.h" +#include "ebisp/expr.h" + +typedef struct Boxes Boxes; +typedef struct Player Player; +typedef struct Physical_world Physical_world; +typedef struct LineStream LineStream; + +Boxes *create_boxes_from_line_stream(LineStream *line_stream, RigidBodies *rigid_bodies); +void destroy_boxes(Boxes *boxes); + +int boxes_render(Boxes *boxes, Camera *camera); +int boxes_update(Boxes *boxes, float delta_time); -typedef struct boxes_t boxes_t; +void boxes_float_in_lava(Boxes *boxes, Lava *lava); -boxes_t *create_boxes_from_stream(FILE *stream); -void destroy_boxes(boxes_t *boxes); +int boxes_add_to_physical_world(const Boxes *boxes, + Physical_world *Physical_world); -int boxes_render(boxes_t *boxes, camera_t *camera); -int boxes_update(boxes_t *boxes, float delta_time); -void boxes_collide_with_platforms(boxes_t *boxes, - const platforms_t *platforms); +struct EvalResult +boxes_send(Boxes *boxes, Gc *gc, struct Scope *scope, struct Expr path); #endif // BOXES_H_