diff --git a/build.gradle b/build.gradle index 9d16a41..bf0dd74 100644 --- a/build.gradle +++ b/build.gradle @@ -39,5 +39,5 @@ dependencies { } jar { - archiveVersion = '1.4.0' + archiveVersion = '1.5.0' } \ No newline at end of file diff --git a/src/main/java/io/github/jhale1805/powerarrow/PowerArrowRegistry.java b/src/main/java/io/github/jhale1805/powerarrow/PowerArrowRegistry.java index 229d03e..9b3f112 100644 --- a/src/main/java/io/github/jhale1805/powerarrow/PowerArrowRegistry.java +++ b/src/main/java/io/github/jhale1805/powerarrow/PowerArrowRegistry.java @@ -8,6 +8,7 @@ public class PowerArrowRegistry { new ExplosiveArrow(), new ForestFireArrow(), new NetArrow(), + new TeleportArrow(), new TorchArrow(), }; diff --git a/src/main/java/io/github/jhale1805/powerarrow/TeleportArrow.java b/src/main/java/io/github/jhale1805/powerarrow/TeleportArrow.java new file mode 100644 index 0000000..0df2995 --- /dev/null +++ b/src/main/java/io/github/jhale1805/powerarrow/TeleportArrow.java @@ -0,0 +1,52 @@ +package io.github.jhale1805.powerarrow; + +import org.bukkit.Material; +import org.bukkit.Particle; +import org.bukkit.entity.Player; +import org.bukkit.event.entity.ProjectileHitEvent; +import org.bukkit.inventory.ShapedRecipe; + +public class TeleportArrow extends PowerArrow { + + public TeleportArrow() { + super(); + } + + public TeleportArrow(int count) { + super(count); + } + + @Override + public String getName() { + return "teleport_arrow"; + } + + @Override + public String[] getUsageInstructions() { + return new String[] {"Teleports you to", "where it lands"}; + } + + @Override + public ShapedRecipe getRecipe() { + ShapedRecipe recipe = new ShapedRecipe( + this.getRecipeKey(), + new TeleportArrow() + ); + recipe.shape("E ", " A"); + recipe.setIngredient('E', Material.ENDER_PEARL); + recipe.setIngredient('A', Material.ARROW); + return recipe; + } + + @Override + public Particle getTrailParticle() { + return Particle.DRAGON_BREATH; + } + + @Override + protected void onThisProjectileHit(ProjectileHitEvent event) { + Player shooter = (Player) event.getEntity().getShooter(); + shooter.teleport(event.getEntity().getLocation()); + } + +} diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index a9c1b72..b7a8062 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,4 +1,4 @@ name: PowerProjectile main: io.github.jhale1805.PowerProjectilePlugin -version: 1.4.0 +version: 1.5.0 api-version: 1.16 \ No newline at end of file