Project

General

Profile

Statistics
| Revision:

root / proj / include / ent.h @ 228

History | View | Annotate | Download (1.63 KB)

1
#ifndef ENT_H_INCLUDED
2
#define ENT_H_INCLUDED
3

    
4
#include "sprite.h"
5

    
6
void (ent_set_scale) (double n);
7
void (ent_set_origin)(double x, double y);
8

    
9
double (ent_get_scale)  (void);
10
double (ent_get_XLength)(void);
11
double (ent_get_YLength)(void);
12

    
13
struct gunner;
14
typedef struct gunner gunner_t;
15
gunner_t* (gunner_ctor)(basic_sprite_t *dude, basic_sprite_t *weapon);
16
void      (gunner_dtor)(gunner_t *p);
17
void (gunner_set_pos)  (gunner_t *p, double x, double y);
18
void (gunner_set_angle)(gunner_t *p, double angle      );
19
double  (gunner_get_x)       (const gunner_t *p);
20
double  (gunner_get_y)       (const gunner_t *p);
21
int16_t (gunner_get_x_screen)(const gunner_t *p);
22
int16_t (gunner_get_y_screen)(const gunner_t *p);
23
void (gunner_draw)(gunner_t *p);
24

    
25
struct bullet;
26
typedef struct bullet bullet_t;
27
bullet_t* (bullet_ctor)(basic_sprite_t *b, double x, double y, double vx, double vy);
28
void      (bullet_dtor)(bullet_t *p);
29
double  (bullet_get_x)       (const bullet_t *p);
30
double  (bullet_get_y)       (const bullet_t *p);
31
int16_t (bullet_get_x_screen)(const bullet_t *p);
32
int16_t (bullet_get_y_screen)(const bullet_t *p);
33
void (bullet_update_movement)(bullet_t *p);
34
void (bullet_draw)(bullet_t *p);
35

    
36
struct map;
37
typedef struct map map_t;
38
map_t* (map_ctor)(const char **background, const char **collide);
39
void   (map_dtor)(map_t *p);
40
int    (map_collides_point)(const map_t *p, double x, double y);
41
int    (map_collides_gunner)(const map_t *p, const gunner_t *gunner);
42
int    (map_collides_bullet)(const map_t *p, const bullet_t *bullet);
43
int (gunner_collides_bullet)(const gunner_t *shooter, const bullet_t *bull);
44
void   (map_draw)(map_t *p);
45

    
46
#endif //ENT_H_INCLUDED