6 #include "game/camera.h"
7 #include "game/sound_samples.h"
11 #include "game/level/level_editor/player_layer.h"
13 typedef struct Player Player;
14 typedef struct Goals Goals;
15 typedef struct LineStream LineStream;
16 typedef struct Script Script;
17 typedef struct Broadcast Broadcast;
18 typedef struct RigidBodies RigidBodies;
20 Player *create_player_from_player_layer(const PlayerLayer *player_layer,
21 RigidBodies *rigid_bodies,
22 Broadcast *broadcast);
23 void destroy_player(Player * player);
25 int player_render(const Player * player,
27 void player_update(Player * player,
29 void player_touches_rect_sides(Player *player,
31 int sides[RECT_SIDE_N]);
33 int player_sound(Player *player,
34 Sound_samples *sound_samples);
35 void player_checkpoint(Player *player,
38 void player_move_left(Player *player);
39 void player_move_right(Player *player);
40 void player_stop(Player *player);
41 void player_jump(Player *player, Script *supa_script);
42 void player_die(Player *player);
44 void player_focus_camera(Player *player,
46 void player_hide_goals(const Player *player,
48 void player_die_from_lava(Player *player,
51 bool player_overlaps_rect(const Player *player,
54 Rect player_hitbox(const Player *player);