Advertisement
Lisenochek

Untitled

Oct 8th, 2016
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.91 KB | None | 0 0
  1. package com.realistic.signals;
  2.  
  3. import java.util.Random;
  4.  
  5. import org.bukkit.ChatColor;
  6. import org.bukkit.Location;
  7. import org.bukkit.Material;
  8. import org.bukkit.block.Block;
  9. import org.bukkit.entity.Player;
  10. import org.bukkit.event.EventHandler;
  11. import org.bukkit.event.Listener;
  12. import org.bukkit.event.block.BlockPlaceEvent;
  13. import org.bukkit.scheduler.BukkitRunnable;
  14.  
  15. import com.realistic.api.API;
  16. import com.realistic.api.MessageManager;
  17. import com.realistic.api.MessageManager.MsgType;
  18. import com.realistic.config.configMessage;
  19. import com.realistic.crate.Crate_list;
  20. import com.realistic.otherAPI.ParticleEffect;
  21.  
  22. public class Handler_Place implements Listener {
  23.  
  24. private static final Random r = new Random();
  25. static int timer = 0;
  26.  
  27. @EventHandler
  28. public static void onPlace(BlockPlaceEvent e) {
  29.  
  30. Player p = e.getPlayer();
  31. Block b = e.getBlockPlaced();
  32.  
  33. if (e.isCancelled()) {
  34. return;
  35. }
  36.  
  37. if (b.getType() == Material.REDSTONE_TORCH_ON) {
  38.  
  39. if (p.getItemInHand().getItemMeta().getDisplayName() != null
  40. && p.getItemInHand().getItemMeta().getDisplayName()
  41. .equalsIgnoreCase(ChatColor.GOLD + ChatColor.BOLD.toString() + "Сигнальная шашка")) {
  42.  
  43. MessageManager.getManager().msg(p, MsgType.SUCCESS,
  44. configMessage.messageConfig.getString("signal_enable"));
  45.  
  46. spawn(b.getLocation(), b, p);
  47. }
  48. }
  49. }
  50.  
  51. public static void spawn(Location loc, Block b, Player p) {
  52.  
  53. BukkitRunnable run = new BukkitRunnable() {
  54.  
  55. @Override
  56. public void run() {
  57.  
  58. if (timer % 5 == 0) {
  59.  
  60. if (b.getType() == Material.AIR) {
  61. return;
  62. }
  63.  
  64. ParticleEffect.SMOKE_LARGE.display(0, 2, 0, 0, 5, b.getLocation().add(0.5, 3, 0.5), 200);
  65.  
  66. if (r.nextInt(5000) <= 100) {
  67.  
  68. b.setType(Material.AIR);
  69. Crate_list.commonCrate(loc, b, p);
  70. }
  71. }
  72.  
  73. ++timer;
  74. }
  75. };
  76. run.runTaskTimer(API.getInstance(), 1, 1);
  77. }
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement