7 typedef struct sprite Sprite;
9 #define SPRITE(x) ((Sprite *) (x))
28 Sprite *free_sprites[N_TYPES]; // lists of free sprites, by type.
30 void do_collision(Sprite *a, Sprite *b);
31 void collisions(void);
33 void init_sprites(void);
34 void add_sprite(Sprite *s);
35 void move_sprite(Sprite *s);
36 void move_sprites(void);
38 Sprite *collides(Sprite *s);
39 int pixel_collides(float x, float y);
40 void load_sprite(Sprite *sprite, char *filename);
42 void bounce(Sprite *a, Sprite *b);
81 insert_sprite(Sprite **head, Sprite *s)
88 static inline Sprite *
89 remove_sprite(Sprite **head)
98 draw_sprite(Sprite *s)
101 if(s->type == NONE) return;
102 dest.x = s->x; dest.y = s->y;
103 SDL_BlitSurface(s->image, NULL, surf_screen, &dest);
106 #endif // VOR_SPRITE_H