--- a/net/minecraft/server/EntityShulkerBullet.java
+++ b/net/minecraft/server/EntityShulkerBullet.java
@@ -42,8 +42,29 @@
         this.target = entity;
         this.c = EnumDirection.UP;
         this.a(enumdirection_enumaxis);
+        projectileSource = (org.bukkit.entity.LivingEntity) entityliving.getBukkitEntity(); // CraftBukkit
     }
 
+    // CraftBukkit start
+    public EntityLiving getShooter() {
+        return this.shooter;
+    }
+
+    public void setShooter(EntityLiving e) {
+        this.shooter = e;
+    }
+
+    public Entity getTarget() {
+        return this.target;
+    }
+
+    public void setTarget(Entity e) {
+        this.target = e;
+        this.c = EnumDirection.UP;
+        this.a(EnumDirection.EnumAxis.X);
+    }
+    // CraftBukkit end
+
     protected void b(NBTTagCompound nbttagcompound) {
         BlockPosition blockposition;
         NBTTagCompound nbttagcompound1;