Advertisement
mttprvst13

TellMe Listener File

Mar 21st, 2015
18
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.14 KB | None | 0 0
  1. package me.mttprvst13;
  2.  
  3. import org.bukkit.ChatColor;
  4. import org.bukkit.entity.Player;
  5. import org.bukkit.event.EventHandler;
  6. import org.bukkit.event.EventPriority;
  7. import org.bukkit.event.Listener;
  8. import org.bukkit.event.player.AsyncPlayerChatEvent;
  9.  
  10. public class ChatListener implements Listener {
  11.  
  12.     Main plugin;
  13.    
  14.     public ChatListener(Main main) {
  15.  
  16.         plugin = main;
  17.  
  18.     }
  19.  
  20.     @SuppressWarnings("deprecation")
  21.     @EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
  22.     public void onPlayerChat(AsyncPlayerChatEvent e) {
  23.        
  24.         Player player = (Player) e.getPlayer();
  25.        
  26.         String chatmsg = e.getMessage();
  27.        
  28.         if(player.hasPermission("tellme.color")){
  29.            
  30.             chatmsg = plugin.colorize(chatmsg);
  31.            
  32.         }
  33.  
  34.         String msg = null;
  35.         boolean local = true;
  36.  
  37.         if(e.getMessage().startsWith("!")){
  38.            
  39.             if(!player.hasPermission("tellme.shout")){
  40.                
  41.                 player.sendMessage(ChatColor.RED + "You are not allowed to shout.");
  42.                 msg = "";
  43.                 e.setCancelled(true);
  44.                
  45.             }else{
  46.                
  47.                 local = false;
  48.                 String form = plugin.getConfig().getString("Formats.Message-Format");
  49.                 msg = plugin.formatChat(player, form);
  50.                 chatmsg = chatmsg.substring(1);
  51.                
  52.             }
  53.            
  54.         }
  55.         if(e.getMessage().startsWith("@")){
  56.            
  57.             if(!player.hasPermission("tellme.msg")){
  58.                
  59.                 player.sendMessage(ChatColor.RED + "You are not allowed to send private messages.");
  60.                 msg = "";
  61.                 e.setCancelled(true);
  62.                
  63.             }else{
  64.                
  65.                 msg = e.getMessage().substring(1);
  66.                 String[] messageSplit = msg.split(" ");
  67.                 Player reciever = plugin.getServer().getPlayer(messageSplit[0]);
  68.                 if(reciever == null){
  69.                    
  70.                     player.sendMessage(ChatColor.RED + "That player is not online.");
  71.                     msg = "";
  72.                     e.setCancelled(true);
  73.                    
  74.                 }else{
  75.                    
  76.                     local = false;
  77.                     String form = plugin.getConfig().getString("Formats.PM-Format");
  78.                     form = form.replaceAll("%RECIVER%", messageSplit[0]);
  79.                     msg = plugin.formatChat(player, form);
  80.                     e.getRecipients().clear();
  81.                     e.getRecipients().add(player);
  82.                     e.getRecipients().add(reciever);
  83.                     e.getRecipients().addAll(plugin.getSpies());
  84.                     chatmsg = chatmsg.substring(messageSplit[0].length()+1);
  85.                    
  86.                 }
  87.                
  88.             }
  89.            
  90.         }
  91.        
  92.         if(local){
  93.            
  94.             if(plugin.getConfig().getBoolean("Chat-Range.Chat-Range", true)){
  95.            
  96.                 String form = plugin.getConfig().getString("Formats.Local-Format");
  97.                 msg = plugin.formatChat(player, form);
  98.                 double range = plugin.getConfig().getInt("Chat-Range.Range");
  99.                 e.getRecipients().clear();
  100.                 e.getRecipients().addAll(plugin.getLocalRecipients(player, msg, range));
  101.                 e.getRecipients().addAll(plugin.getSpies());
  102.                
  103.                
  104.             }else{
  105.                
  106.                 String form = plugin.getConfig().getString("Formats.Message-Format");
  107.                 msg = plugin.formatChat(player, form);
  108.                
  109.             }
  110.            
  111.         }
  112.        
  113.         if(player.hasPermission("tellme.color")){
  114.            
  115.             chatmsg = plugin.colorize(chatmsg);
  116.            
  117.         }
  118.        
  119.         msg = msg.replace("%MESSAGE%", "%2$s");
  120.         msg = plugin.colorize(msg);
  121.        
  122.         if(!plugin.filter(player, chatmsg)){
  123.            
  124.             e.setCancelled(true);
  125.            
  126.         }
  127.        
  128.         e.setFormat(msg);
  129.        
  130.         e.setMessage(chatmsg);
  131.  
  132.     }
  133.    
  134. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement