Advertisement
Guest User

Untitled

a guest
Mar 17th, 2018
165
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.81 KB | None | 0 0
  1. package me.RDev.nmsClasses.firework;
  2.  
  3. import net.minecraft.server.v1_12_R1.EntityFireworks;
  4. import net.minecraft.server.v1_12_R1.PacketPlayOutEntityStatus;
  5. import net.minecraft.server.v1_12_R1.World;
  6.  
  7. import org.bukkit.FireworkEffect;
  8. import org.bukkit.Location;
  9. import org.bukkit.craftbukkit.v1_12_R1.CraftWorld;
  10. import org.bukkit.craftbukkit.v1_12_R1.entity.CraftPlayer;
  11. import org.bukkit.entity.Firework;
  12. import org.bukkit.entity.Player;
  13. import org.bukkit.inventory.meta.FireworkMeta;
  14.  
  15. public class CustomEntityFireworkv1_12_R1 extends EntityFireworks {
  16. Player[] players = null;
  17.  
  18. public CustomEntityFireworkv1_12_R1(World world, Player... p) {
  19. super(world);
  20. players = p;
  21. this.a(0.25F, 0.25F);
  22. }
  23.  
  24. boolean gone = false;
  25.  
  26. @Override
  27. public void B_() {
  28. if (gone) {
  29. return;
  30. }
  31.  
  32. if (!this.world.isClientSide) {
  33. gone = true;
  34.  
  35. if (players != null)
  36. if (players.length > 0)
  37. for (Player player : players)
  38. (((CraftPlayer) player).getHandle()).playerConnection.sendPacket(new PacketPlayOutEntityStatus(this, (byte) 17));
  39. else
  40. world.broadcastEntityEffect(this, (byte) 17);
  41. this.die();
  42. }
  43. }
  44.  
  45. public static void spawn(Location location, FireworkEffect effect, Player... players) {
  46. try {
  47. CustomEntityFireworkv1_12_R1 firework = new CustomEntityFireworkv1_12_R1(((CraftWorld) location.getWorld()).getHandle(), players);
  48. FireworkMeta meta = ((Firework) firework.getBukkitEntity()).getFireworkMeta();
  49. meta.addEffect(effect);
  50. ((Firework) firework.getBukkitEntity()).setFireworkMeta(meta);
  51. firework.setPosition(location.getX(), location.getY(), location.getZ());
  52.  
  53. if ((((CraftWorld) location.getWorld()).getHandle()).addEntity(firework)) {
  54. firework.setInvisible(true);
  55. }
  56. } catch (Exception e) {
  57. e.printStackTrace();
  58. }
  59. }
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement