diff options
author | md_5 <git@md-5.net> | 2016-03-03 16:52:19 +1100 |
---|---|---|
committer | md_5 <git@md-5.net> | 2016-03-03 16:52:19 +1100 |
commit | 78578ca517beebc5bea6cd3bbd4ae1fbc92fa1f9 (patch) | |
tree | f1fb9d65d577da5e3406c8adf489910eb9692db9 /src | |
parent | 4d3af9c19bfb1f9a02b19c968b22e5ef6d271a14 (diff) | |
download | craftbukkit-78578ca517beebc5bea6cd3bbd4ae1fbc92fa1f9.tar craftbukkit-78578ca517beebc5bea6cd3bbd4ae1fbc92fa1f9.tar.gz craftbukkit-78578ca517beebc5bea6cd3bbd4ae1fbc92fa1f9.tar.lz craftbukkit-78578ca517beebc5bea6cd3bbd4ae1fbc92fa1f9.tar.xz craftbukkit-78578ca517beebc5bea6cd3bbd4ae1fbc92fa1f9.zip |
SPIGOT-1676: Launch projectiles with velocity
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java index 28956287..0c234c7b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -20,6 +20,7 @@ import net.minecraft.server.EntityLargeFireball; import net.minecraft.server.EntityLiving; import net.minecraft.server.EntityPlayer; import net.minecraft.server.EntityPotion; +import net.minecraft.server.EntityProjectile; import net.minecraft.server.EntitySmallFireball; import net.minecraft.server.EntitySnowball; import net.minecraft.server.EntityThrownExpBottle; @@ -327,16 +328,22 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { if (Snowball.class.isAssignableFrom(projectile)) { launch = new EntitySnowball(world, getHandle()); + ((EntityProjectile) launch).a(getHandle(), getHandle().pitch, getHandle().yaw, 0.0F, 1.5F, 1.0F); // ItemSnowball } else if (Egg.class.isAssignableFrom(projectile)) { launch = new EntityEgg(world, getHandle()); + ((EntityProjectile) launch).a(getHandle(), getHandle().pitch, getHandle().yaw, 0.0F, 1.5F, 1.0F); // ItemEgg } else if (EnderPearl.class.isAssignableFrom(projectile)) { launch = new EntityEnderPearl(world, getHandle()); + ((EntityProjectile) launch).a(getHandle(), getHandle().pitch, getHandle().yaw, 0.0F, 1.5F, 1.0F); // ItemEnderPearl } else if (Arrow.class.isAssignableFrom(projectile)) { launch = new EntityTippedArrow(world, getHandle()); + ((EntityProjectile) launch).a(getHandle(), getHandle().pitch, getHandle().yaw, 0.0F, 3.0F, 1.0F); // ItemBow } else if (ThrownPotion.class.isAssignableFrom(projectile)) { launch = new EntityPotion(world, getHandle(), CraftItemStack.asNMSCopy(new ItemStack(Material.POTION, 1))); + ((EntityProjectile) launch).a(getHandle(), getHandle().pitch, getHandle().yaw, -20.0F, 0.5F, 1.0F); // ItemSplashPotion } else if (ThrownExpBottle.class.isAssignableFrom(projectile)) { launch = new EntityThrownExpBottle(world, getHandle()); + ((EntityProjectile) launch).a(getHandle(), getHandle().pitch, getHandle().yaw, -20.0F, 0.7F, 1.0F); // ItemExpBottle } else if (Fish.class.isAssignableFrom(projectile) && getHandle() instanceof EntityHuman) { launch = new EntityFishingHook(world, (EntityHuman) getHandle()); } else if (Fireball.class.isAssignableFrom(projectile)) { |