Project

General

Profile

Statistics
| Revision:

root / proj / include / ent.h @ 250

History | View | Annotate | Download (2.71 KB)

1 193 up20180642
#ifndef ENT_H_INCLUDED
2
#define ENT_H_INCLUDED
3
4
#include "sprite.h"
5 231 up20180655
#include "list.h"
6 193 up20180642
7
void (ent_set_scale) (double n);
8
void (ent_set_origin)(double x, double y);
9
10 194 up20180642
double (ent_get_scale)  (void);
11 193 up20180642
double (ent_get_XLength)(void);
12
double (ent_get_YLength)(void);
13
14 201 up20180642
struct gunner;
15
typedef struct gunner gunner_t;
16
gunner_t* (gunner_ctor)(basic_sprite_t *dude, basic_sprite_t *weapon);
17
void      (gunner_dtor)(gunner_t *p);
18 229 up20180655
void (gunner_set_pos)               (gunner_t *p, double x, double y);
19 236 up20180642
void (gunner_set_spawn)             (gunner_t *p, double x, double y);
20 229 up20180655
void (gunner_set_angle)             (gunner_t *p, double angle      );
21
void (gunner_set_health)            (gunner_t *p, int health);
22
void (gunner_set_curr_health)       (gunner_t *p, int health);
23
double  (gunner_get_x)              (const gunner_t *p);
24
double  (gunner_get_y)              (const gunner_t *p);
25 232 up20180655
double  (gunner_get_spawn_x)        (const gunner_t *p);
26
double  (gunner_get_spawn_y)        (const gunner_t *p);
27 231 up20180655
double  (gunner_get_angle)          (const gunner_t *p);
28 229 up20180655
int     (gunner_get_health)         (const gunner_t *p);
29
int     (gunner_get_curr_health)    (const gunner_t *p);
30
int16_t (gunner_get_x_screen)       (const gunner_t *p);
31
int16_t (gunner_get_y_screen)       (const gunner_t *p);
32 201 up20180642
void (gunner_draw)(gunner_t *p);
33 229 up20180655
void (gunner_draw_health)(const gunner_t *p);
34 193 up20180642
35 201 up20180642
struct bullet;
36
typedef struct bullet bullet_t;
37 237 up20180642
bullet_t* (bullet_ctor)(const gunner_t *shooter, const basic_sprite_t *b, double x, double y, double vx, double vy);
38 203 up20180642
void      (bullet_dtor)(bullet_t *p);
39
double  (bullet_get_x)       (const bullet_t *p);
40
double  (bullet_get_y)       (const bullet_t *p);
41
int16_t (bullet_get_x_screen)(const bullet_t *p);
42
int16_t (bullet_get_y_screen)(const bullet_t *p);
43 230 up20180655
int     (bullet_get_damage)  (const bullet_t *p);
44
void    (bullet_set_damage)  (bullet_t *p, int damage);
45 226 up20180642
void (bullet_update_movement)(bullet_t *p);
46 231 up20180655
void (bullet_update_movement_list)(list_t *bullet_list);
47 203 up20180642
void (bullet_draw)(bullet_t *p);
48 248 up20180655
49
void (gunner_draw_list)(list_t *shooter_list);
50 231 up20180655
void (bullet_draw_list)(list_t *bullet_list);
51 229 up20180655
void (gunner_draw_health)(const gunner_t *p);
52 193 up20180642
53 216 up20180642
struct map;
54
typedef struct map map_t;
55
map_t* (map_ctor)(const char **background, const char **collide);
56
void   (map_dtor)(map_t *p);
57 220 up20180655
int    (map_collides_point)(const map_t *p, double x, double y);
58 226 up20180642
int    (map_collides_gunner)(const map_t *p, const gunner_t *gunner);
59
int    (map_collides_bullet)(const map_t *p, const bullet_t *bullet);
60 246 up20180655
int16_t (map_get_width)   (const map_t *p);
61
int16_t (map_get_height)  (const map_t *p);
62 228 up20180655
int (gunner_collides_bullet)(const gunner_t *shooter, const bullet_t *bull);
63 233 up20180655
int (gunner_collides_gunner)(const gunner_t *shooter1, const gunner_t *shooter2);
64 216 up20180642
void   (map_draw)(map_t *p);
65
66 193 up20180642
#endif //ENT_H_INCLUDED