Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2018
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.96 KB | None | 0 0
  1. package plugin;
  2.  
  3. import java.util.Arrays;
  4. import java.util.stream.Collectors;
  5.  
  6. import org.bukkit.Bukkit;
  7. import org.bukkit.Sound;
  8. import org.bukkit.command.Command;
  9. import org.bukkit.command.CommandExecutor;
  10. import org.bukkit.command.CommandSender;
  11. import org.bukkit.entity.Player;
  12.  
  13. import net.md_5.bungee.api.ChatColor;
  14. import plugin.RealMessage;
  15.  
  16. public class Commands implements CommandExecutor{
  17.  
  18. private RealMessage plugin;
  19.  
  20. Commands(RealMessage plugin) {
  21. this.plugin = plugin;
  22. }
  23.  
  24. @Override
  25. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
  26. if (!sender.hasPermission("rmsg.use")) {
  27. sender.sendMessage(ChatColor.RED + "У вас нет прав на выполнение этого действия!");
  28. return true;
  29. }
  30. if (args.length <= 1) {
  31. return false;
  32. }
  33. if (!(sender instanceof Player)) {
  34. sender.sendMessage("Только в игре!");
  35. return true;
  36. }
  37. Player p = (Player) sender;// p = sender
  38. String targetname = args[0];
  39. int howlong = args[0].length();
  40. String message = Arrays.stream(args).collect(Collectors.joining(" ")).substring(howlong + 1);
  41. Player target = Bukkit.getPlayer(targetname);// target = target
  42. if (target == null) {
  43. sender.sendMessage("§6" + targetname + " §cНе онлайн");
  44. return true;
  45. }
  46. double d = target.getLocation().distance(p.getLocation());
  47. int delay = (int) d/4;
  48. delay(1, p, delay, message, target);
  49. delay(2, p, delay*2, message, target);
  50. delay(3, p, delay*3, message, target);
  51. delay(4, p, delay*4, message, target);
  52. return true;
  53. }
  54.  
  55. private void delay(int i, Player p, double d, String msg, Player target) {
  56. Bukkit.getScheduler().scheduleSyncDelayedTask(RealMessage.getInstance(), new Runnable() {
  57. @Override
  58. public void run() {
  59. if (i == 1) {
  60. p.playSound(p.getLocation(), Sound.ENTITY_ITEM_PICKUP, 1, 3);
  61. p.sendTitle("§6Отправка сообщения", ChatColor.RED + "o");
  62. } else if (i == 2) {
  63. p.playSound(p.getLocation(), Sound.ENTITY_ITEM_PICKUP, 1, 3);
  64. p.sendTitle("§6Отправка сообщения", ChatColor.YELLOW + "oo");
  65. } else if (i == 3) {
  66. p.playSound(p.getLocation(), Sound.ENTITY_ITEM_PICKUP, 1, 3);
  67. p.sendTitle("§6Отправка сообщения", ChatColor.GREEN + "ooo");
  68. } else if (i == 4) {
  69. p.sendTitle("§6" + msg, "§fУспешная отправка сообщения!");
  70. p.playSound(p.getLocation(), Sound.ENTITY_FIREWORK_LAUNCH, 1, 1);
  71. target.playSound(target.getLocation(), Sound.ENTITY_EXPERIENCE_ORB_PICKUP, 3, 1);
  72. target.sendMessage("§6" + p.getName() +" §f" + msg);
  73. target.sendTitle("§6Новое сообщение!", "§fвы получили новое сообщение");
  74. } else {
  75. return;
  76. }
  77. }
  78. }, (long) d*10);
  79. }
  80.  
  81. public RealMessage getPlugin() {
  82. return plugin;
  83. }
  84.  
  85. public void setPlugin(RealMessage plugin) {
  86. this.plugin = plugin;
  87. }}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement