From 3469b890d491f8e0e313452ced4428704be32c6d Mon Sep 17 00:00:00 2001 From: LCastr0 Date: Tue, 7 Mar 2017 21:51:06 -0300 Subject: [PATCH] Rainbow taunt now uses sides of player as locations --- .../core/gadget/gadgets/taunts/RainbowTaunt.java | 14 +++++++++----- .../core/particleeffects/RainbowTauntEffect.java | 5 ++--- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/Plugins/Mineplex.Core/src/mineplex/core/gadget/gadgets/taunts/RainbowTaunt.java b/Plugins/Mineplex.Core/src/mineplex/core/gadget/gadgets/taunts/RainbowTaunt.java index db03bf13a..2d9ed339d 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/gadget/gadgets/taunts/RainbowTaunt.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/gadget/gadgets/taunts/RainbowTaunt.java @@ -3,10 +3,10 @@ package mineplex.core.gadget.gadgets.taunts; import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.entity.Player; +import org.bukkit.util.Vector; import mineplex.core.common.util.C; import mineplex.core.common.util.LineFormat; -import mineplex.core.common.util.UtilMath; import mineplex.core.common.util.UtilText; import mineplex.core.gadget.GadgetManager; import mineplex.core.gadget.types.TauntGadget; @@ -35,11 +35,15 @@ public class RainbowTaunt extends TauntGadget if (!Recharge.Instance.use(player, getName(), COOLDOWN, true, false, "Cosmetics")) return; - double randX = UtilMath.random(3.5, 15), randZ = UtilMath.random(3.5, 15); - Location target = player.getLocation().clone().add(randX, 0, randZ); + Vector dir = player.getLocation().getDirection(); + Vector sideA = dir.clone().setX(-dir.getZ()).setZ(dir.getX()); + Vector sideB = dir.clone().setX(dir.getZ()).setZ(-dir.getX()); - RainbowTauntEffect rainbowTauntEffect = new RainbowTauntEffect(player, Manager.getPlugin()); - rainbowTauntEffect.setTargetLocation(new EffectLocation(target)); + Location start = player.getLocation().clone().add(sideA.multiply(4).toLocation(player.getWorld())); + Location end = player.getLocation().clone().add(sideB.multiply(4).toLocation(player.getWorld())); + + RainbowTauntEffect rainbowTauntEffect = new RainbowTauntEffect(start, Manager.getPlugin()); + rainbowTauntEffect.setTargetLocation(new EffectLocation(end)); rainbowTauntEffect.start(); } diff --git a/Plugins/Mineplex.Core/src/mineplex/core/particleeffects/RainbowTauntEffect.java b/Plugins/Mineplex.Core/src/mineplex/core/particleeffects/RainbowTauntEffect.java index 8bba6d82c..a571a3f0c 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/particleeffects/RainbowTauntEffect.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/particleeffects/RainbowTauntEffect.java @@ -3,7 +3,6 @@ package mineplex.core.particleeffects; import java.awt.Color; import org.bukkit.Location; -import org.bukkit.entity.Player; import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.util.Vector; @@ -25,9 +24,9 @@ public class RainbowTauntEffect extends Effect private static final Color INDIGO = new Color(75, 0, 130); private static final Color VIOLET = new Color(143, 0, 255); - public RainbowTauntEffect(Player player, JavaPlugin javaPlugin) + public RainbowTauntEffect(Location start, JavaPlugin javaPlugin) { - super(16, new EffectLocation(player), javaPlugin, 5); + super(16, new EffectLocation(start), javaPlugin, 5); } @Override