Index: proj/include/ent.h
===================================================================
--- proj/include/ent.h	(revision 236)
+++ proj/include/ent.h	(revision 237)
@@ -34,7 +34,7 @@
 
 struct bullet;
 typedef struct bullet bullet_t;
-bullet_t* (bullet_ctor)(const gunner_t *shooter, basic_sprite_t *b, double x, double y, double vx, double vy);
+bullet_t* (bullet_ctor)(const gunner_t *shooter, const basic_sprite_t *b, double x, double y, double vx, double vy);
 void      (bullet_dtor)(bullet_t *p);
 double  (bullet_get_x)       (const bullet_t *p);
 double  (bullet_get_y)       (const bullet_t *p);
Index: proj/include/proj_func.h
===================================================================
--- proj/include/proj_func.h	(revision 236)
+++ proj/include/proj_func.h	(revision 237)
@@ -34,7 +34,7 @@
 
 keys_t* (get_key_presses)(void);
 
-void (shoot_bullet)(const gunner_t *shooter, list_t *bullet_list);
+void (shoot_bullet)(const gunner_t *shooter, list_t *bullet_list, const basic_sprite_t *bsp_bullet);
 
 void (update_game_state)(const map_t *map, list_t *shooter_list, list_t *bullet_list);
 
Index: proj/src/ent.c
===================================================================
--- proj/src/ent.c	(revision 236)
+++ proj/src/ent.c	(revision 237)
@@ -107,7 +107,7 @@
     sprite_t *b;
     int damage;
 };
-bullet_t* (bullet_ctor)(const gunner_t *shooter, basic_sprite_t *b, double x, double y, double vx, double vy){
+bullet_t* (bullet_ctor)(const gunner_t *shooter, const basic_sprite_t *b, double x, double y, double vx, double vy){
     bullet_t *ret = malloc(sizeof(bullet_t));
     if(ret == NULL) return NULL;
     ret->shooter = shooter;
Index: proj/src/proj.c
===================================================================
--- proj/src/proj.c	(revision 236)
+++ proj/src/proj.c	(revision 237)
@@ -24,7 +24,7 @@
 #include "shooter.h"
 #include "pistol.h"
 #include "nothing.h"
-//#include "bullet.h"
+#include "bullet.h"
 #include "map1.h"
 
 #include "list.h"
@@ -82,7 +82,8 @@
     basic_sprite_t       *bsp_shooter   = NULL;
     basic_sprite_t       *bsp_pistol    = NULL;
     basic_sprite_t       *bsp_nothing   = NULL;
-    map_t                *map1      = NULL;
+    basic_sprite_t       *bsp_bullet    = NULL;
+    map_t                *map1          = NULL;
     sprite_t             *sp_crosshair  = NULL;
     {
         graph_clear_screen();
@@ -95,6 +96,7 @@
         bsp_shooter   = get_shooter  (); if(bsp_shooter   == NULL) printf("Failed to get shooter\n");
         bsp_pistol    = get_pistol   (); if(bsp_pistol    == NULL) printf("Failed to get pistol\n");
         bsp_nothing   = get_nothing  (); if(bsp_nothing   == NULL) printf("Failed to get nothing\n");
+        bsp_bullet    = get_bullet   (); if(bsp_bullet    == NULL) printf("Failed to get bullet\n");
         map1          = get_map1     (); if(map1          == NULL) printf("Failed to get map1\n");
 
         sp_crosshair = sprite_ctor(bsp_crosshair); if(sp_crosshair == NULL) printf("Failed to get crosshair sprite\n");
@@ -275,7 +277,7 @@
                                     counter_mouse_ih = 0;
 
                                     if (last_lb ^ get_key_presses()->lb_pressed && get_key_presses()->lb_pressed) {
-                                        shoot_bullet(shooter1, bullet_list);
+                                        shoot_bullet(shooter1, bullet_list, bsp_bullet);
                                     }
 
                                     last_lb = get_key_presses()->lb_pressed;
Index: proj/src/proj_func.c
===================================================================
--- proj/src/proj_func.c	(revision 236)
+++ proj/src/proj_func.c	(revision 237)
@@ -10,7 +10,6 @@
 #include "utils.h"
 #include "ent.h"
 #include "fast_math.h"
-#include "bullet.h"
 
 #include "kbc_macros.h"
 
@@ -66,11 +65,11 @@
     }
 }
 
-void (shoot_bullet)(const gunner_t *shooter, list_t *bullet_list) {
+void (shoot_bullet)(const gunner_t *shooter, list_t *bullet_list, const basic_sprite_t *bsp_bullet) {
     double angle = gunner_get_angle(shooter);
     double vx = -BULLET_SPEED * fm_sin(angle);
     double vy = -BULLET_SPEED * fm_cos(angle);
-    bullet_t *bullet = bullet_ctor(shooter, get_bullet(), gunner_get_x(shooter), gunner_get_y(shooter), vx, vy);
+    bullet_t *bullet = bullet_ctor(shooter, bsp_bullet, gunner_get_x(shooter), gunner_get_y(shooter), vx, vy);
     list_insert(bullet_list, list_end(bullet_list), bullet);
 }
 
