Advertisement
gamingod

Bungee Private Message - Main Class - v3.0

Jun 24th, 2014
3,054
1
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 16.95 KB | None | 1 0
  1. package net.thegamingcraft.BungeeMsg;
  2.  
  3. import java.util.HashMap;
  4. import java.util.Map;
  5. import java.util.logging.Level;
  6.  
  7. import net.md_5.bungee.api.ChatColor;
  8. import net.md_5.bungee.api.CommandSender;
  9. import net.md_5.bungee.api.connection.ProxiedPlayer;
  10. import net.md_5.bungee.api.plugin.Command;
  11. import net.md_5.bungee.api.plugin.Listener;
  12. import net.md_5.bungee.api.plugin.Plugin;
  13.  
  14. public class BungeeMsg extends Plugin
  15.   implements Listener
  16. {
  17.        
  18.         private Map<String, String> messagers = new HashMap<String, String>();
  19.        
  20.   public void onEnable()
  21.   {
  22.     getProxy().getPluginManager().registerListener(this, this);
  23.     getProxy().getPluginManager().registerCommand(this, new Command("msg")
  24.     {
  25.         @SuppressWarnings("deprecation")
  26.         public void execute(CommandSender sender, String[] args) {
  27.                   if (args.length == 0) {
  28.                           sender.sendMessage(ChatColor.RED + "Usage: /msg <player> <message>");
  29.                   } else if (args.length == 1) {
  30.                           sender.sendMessage(ChatColor.RED + "Usage: /msg <player> <message>");
  31.                   } else {
  32.                          
  33.                           if (!(sender instanceof ProxiedPlayer)) {
  34.                                  
  35.                               if (args[0].equalsIgnoreCase("proxy")) {
  36.                                  
  37.                                   sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "You cannot send message to yourself");
  38.                                  
  39.                               } else {
  40.                                  
  41.                                   StringBuilder str = new StringBuilder();
  42.                                   for (int i = 1; i < args.length; i++) {
  43.                                           str.append(args[i] + " ");
  44.                                   }
  45.                                   String nmessage = str.toString();
  46.                                   String message = nmessage.replace("&", "§");
  47.                                   ProxiedPlayer p1 = getProxy().getPlayer(args[0]);
  48.                                   if (p1 != null) {
  49.                                   sender.sendMessage(ChatColor.LIGHT_PURPLE + "To " + args[0] + ": " + ChatColor.RESET + message);
  50.                                           p1.sendMessage(ChatColor.LIGHT_PURPLE + "From proxy: " + ChatColor.RESET + message);
  51.                                         messagers.put(p1.getName(), "proxy");
  52.                                         messagers.put("proxy", p1.getName());
  53.                                   } else {
  54.                                           sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "Could not find player " + args[0]);
  55.                                   }
  56.                                  
  57.                               }
  58.                                  
  59.                           } else {
  60.                                  
  61.                                   if (args[0].equals(sender.getName())) {
  62.                                          
  63.                                           sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "You cannot send message to yourself");
  64.                                          
  65.                                   } else {
  66.                          
  67.                   StringBuilder str = new StringBuilder();
  68.                   for (int i = 1; i < args.length; i++) {
  69.                           str.append(args[i] + " ");
  70.                   }
  71.                   String nmessage = str.toString();
  72.                   String message = nmessage.replace("&", "§");
  73.                   ProxiedPlayer p1 = getProxy().getPlayer(args[0]);
  74.                   if (p1 != null) {
  75.                   sender.sendMessage(ChatColor.LIGHT_PURPLE + "To " + args[0] + ": " + ChatColor.RESET + message);
  76.                           p1.sendMessage(ChatColor.LIGHT_PURPLE + "From " + sender.getName() + ": " + ChatColor.RESET + message);
  77.                         messagers.put(p1.getName(), sender.getName());
  78.                         messagers.put(sender.getName(), p1.getName());
  79.                        
  80.                         logToConsole((ProxiedPlayer) sender, p1, message);
  81.                   } else {
  82.                           sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "Could not find player " + args[0]);
  83.                   }
  84.                          }
  85.                         }
  86.                   }
  87.           }
  88.        
  89.     });
  90.     getProxy().getPluginManager().registerCommand(this, new Command("tell") {
  91.         @SuppressWarnings("deprecation")
  92.         public void execute(CommandSender sender, String[] args) {
  93.                   if (args.length == 0) {
  94.                           sender.sendMessage(ChatColor.RED + "Usage: /tell <player> <message>");
  95.                   } else if (args.length == 1) {
  96.                           sender.sendMessage(ChatColor.RED + "Usage: /tell <player> <message>");
  97.                   } else {
  98.                          
  99.                           if (!(sender instanceof ProxiedPlayer)) {
  100.                              
  101.                           if (args[0].equalsIgnoreCase("proxy")) {
  102.                              
  103.                               sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "You cannot send message to yourself");
  104.                              
  105.                           } else {
  106.                              
  107.                               StringBuilder str = new StringBuilder();
  108.                                for (int i = 1; i < args.length; i++) {
  109.                                        str.append(args[i] + " ");
  110.                                }
  111.                                String nmessage = str.toString();
  112.                                String message = nmessage.replace("&", "§");
  113.                                ProxiedPlayer p1 = getProxy().getPlayer(args[0]);
  114.                                if (p1 != null) {
  115.                                sender.sendMessage(ChatColor.LIGHT_PURPLE + "To " + args[0] + ": " + ChatColor.RESET + message);
  116.                                        p1.sendMessage(ChatColor.LIGHT_PURPLE + "From proxy: " + ChatColor.RESET + message);
  117.                                      messagers.put(p1.getName(), "proxy");
  118.                                      messagers.put("proxy", p1.getName());
  119.                                      
  120.                                      logToConsole((ProxiedPlayer) sender, p1, message);
  121.                                } else {
  122.                                        sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "Could not find player " + args[0]);
  123.                                }
  124.                              
  125.                           }
  126.                              
  127.                        } else {
  128.                                  
  129.                                   if (args[0].equals(sender.getName())) {
  130.                                          
  131.                                           sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "You cannot send message to yourself");
  132.                                          
  133.                                   } else {
  134.                          
  135.                   StringBuilder str = new StringBuilder();
  136.                   for (int i = 1; i < args.length; i++) {
  137.                           str.append(args[i] + " ");
  138.                   }
  139.                   String nmessage = str.toString();
  140.                   String message = nmessage.replace("&", "§");
  141.                   ProxiedPlayer p1 = getProxy().getPlayer(args[0]);
  142.                   if (p1 != null) {
  143.                   sender.sendMessage(ChatColor.LIGHT_PURPLE + "To " + args[0] + ": " + ChatColor.RESET + message);
  144.                           p1.sendMessage(ChatColor.LIGHT_PURPLE + "From " + sender.getName() + ": " + ChatColor.RESET + message);
  145.                         messagers.put(p1.getName(), sender.getName());
  146.                         messagers.put(sender.getName(), p1.getName());
  147.                        
  148.                         logToConsole((ProxiedPlayer) sender, p1, message);
  149.                   } else {
  150.                           sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "Could not find player " + args[0]);
  151.                   }
  152.                          }
  153.                         }
  154.                   }
  155.           }
  156.         });
  157.     getProxy().getPluginManager().registerCommand(this, new Command("w") {
  158.         @SuppressWarnings("deprecation")
  159.         public void execute(CommandSender sender, String[] args) {
  160.           if (args.length == 0) {
  161.                   sender.sendMessage(ChatColor.RED + "Usage: /w <player> <message>");
  162.           } else if (args.length == 1) {
  163.                   sender.sendMessage(ChatColor.RED + "Usage: /w <player> <message>");
  164.           } else {
  165.                  
  166.                   if (!(sender instanceof ProxiedPlayer)) {
  167.                      
  168.                   if (args[0].equalsIgnoreCase("proxy")) {
  169.                      
  170.                       sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "You cannot send message to yourself");
  171.                      
  172.                   } else {
  173.                      
  174.                       StringBuilder str = new StringBuilder();
  175.                        for (int i = 1; i < args.length; i++) {
  176.                                str.append(args[i] + " ");
  177.                        }
  178.                        String nmessage = str.toString();
  179.                        String message = nmessage.replace("&", "§");
  180.                        ProxiedPlayer p1 = getProxy().getPlayer(args[0]);
  181.                        if (p1 != null) {
  182.                        sender.sendMessage(ChatColor.LIGHT_PURPLE + "To " + args[0] + ": " + ChatColor.RESET + message);
  183.                                p1.sendMessage(ChatColor.LIGHT_PURPLE + "From proxy: " + ChatColor.RESET + message);
  184.                              messagers.put(p1.getName(), "proxy");
  185.                              messagers.put("proxy", p1.getName());
  186.                              
  187.                              logToConsole((ProxiedPlayer) sender, p1, message);
  188.                        } else {
  189.                                sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "Could not find player " + args[0]);
  190.                        }
  191.                      
  192.                   }
  193.                      
  194.                } else {
  195.                          
  196.                           if (args[0].equals(sender.getName())) {
  197.                                  
  198.                                   sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "You cannot send message to yourself");
  199.                                  
  200.                           } else {
  201.                  
  202.                 StringBuilder str = new StringBuilder();
  203.                 for (int i = 1; i < args.length; i++) {
  204.                         str.append(args[i] + " ");
  205.                 }
  206.                 String nmessage = str.toString();
  207.                 String message = nmessage.replace("&", "§");
  208.                 ProxiedPlayer p1 = getProxy().getPlayer(args[0]);
  209.                 if (p1 != null) {
  210.                 sender.sendMessage(ChatColor.LIGHT_PURPLE + "To " + args[0] + ": " + ChatColor.RESET + message);
  211.                   p1.sendMessage(ChatColor.LIGHT_PURPLE + "From " + sender.getName() + ": " + ChatColor.RESET + message);
  212.                 messagers.put(p1.getName(), sender.getName());
  213.                 messagers.put(sender.getName(), p1.getName());
  214.                
  215.                 logToConsole((ProxiedPlayer) sender, p1, message);
  216.                 } else {
  217.                   sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "Could not find player " + args[0]);
  218.                 }
  219.                  }
  220.                 }
  221.           }
  222.         }
  223.       });
  224.     getProxy().getPluginManager().registerCommand(this, new Command("r") {
  225.         @SuppressWarnings("deprecation")
  226.         public void execute(CommandSender sender, String[] args) {
  227.                 if (args.length == 0) {
  228.                        
  229.                         sender.sendMessage(ChatColor.RED + "Usage: /r <message>");
  230.                        
  231.                 } else {
  232.                        
  233.                         if (!(sender instanceof ProxiedPlayer)) {
  234.                                
  235.                             if (!messagers.containsKey("proxy")) {
  236.                                 sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "You have nobody to reply to, you must reieve a message first");
  237.                                 return;
  238.                             }
  239.                            
  240.                             ProxiedPlayer target = getProxy().getPlayer(messagers.get("proxy"));
  241.                             if (target == null) {
  242.                                 sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "The player you last got a message from is not online");
  243.                                 return;
  244.                             }
  245.                            
  246.                             StringBuilder str = new StringBuilder();
  247.                             for (int i = 0; i < args.length; i++) {
  248.                                     str.append(args[i] + " ");
  249.                             }
  250.                             String nmessage = str.toString();
  251.                             String message = nmessage.replace("&", "§");
  252.                            
  253.                             sender.sendMessage(ChatColor.LIGHT_PURPLE + "To " + target.getName() + ": " + ChatColor.RESET + message);
  254.                             target.sendMessage(ChatColor.LIGHT_PURPLE + "From proxy: " + ChatColor.RESET + message);
  255.                                
  256.                             messagers.put(target.getName(), "proxy");
  257.                             messagers.put("proxy", target.getName());
  258.                            
  259.                             logToConsole((ProxiedPlayer) sender, target, message);
  260.                                
  261.                         } else {
  262.                                
  263.                     if (!messagers.containsKey(sender.getName())) {
  264.                        
  265.                         sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "You have nobody to reply to, you must reieve a message first");
  266.                         return;
  267.                        
  268.                     } else {
  269.                        
  270.                         if (messagers.get(sender.getName()).equalsIgnoreCase("proxy")) {
  271.                             StringBuilder str = new StringBuilder();
  272.                             for (int i = 0; i < args.length; i++) {
  273.                                     str.append(args[i] + " ");
  274.                             }
  275.                             String nmessage = str.toString();
  276.                             String message = nmessage.replace("&", "§");
  277.                            
  278.                             sender.sendMessage(ChatColor.LIGHT_PURPLE + "To proxy: " + ChatColor.RESET + message);
  279.                             getProxy().getLogger().log(Level.INFO, ChatColor.LIGHT_PURPLE + "From " + sender.getName() + ": " + ChatColor.RESET + message);
  280.                                
  281.                             messagers.put("proxy", sender.getName());
  282.                             messagers.put(sender.getName(), "proxy");
  283.                             return;
  284.                         }
  285.                        
  286.                         ProxiedPlayer target = getProxy().getPlayer(messagers.get(sender.getName()));
  287.                         if (target == null) {
  288.                                
  289.                                 sender.sendMessage(ChatColor.RED + "" + ChatColor.BOLD + "The player you last got a message from is not online");
  290.                                
  291.                         } else {
  292.                                
  293.                             StringBuilder str = new StringBuilder();
  294.                             for (int i = 0; i < args.length; i++) {
  295.                                     str.append(args[i] + " ");
  296.                             }
  297.                             String nmessage = str.toString();
  298.                             String message = nmessage.replace("&", "§");
  299.                            
  300.                             sender.sendMessage(ChatColor.LIGHT_PURPLE + "To " + target.getName() + ": " + ChatColor.RESET + message);
  301.                             target.sendMessage(ChatColor.LIGHT_PURPLE + "From " + sender.getName() + ": " + ChatColor.RESET + message);
  302.                                
  303.                             messagers.put(target.getName(), sender.getName());
  304.                             messagers.put(sender.getName(), target.getName());
  305.                            
  306.                             logToConsole((ProxiedPlayer) sender, target, message);
  307.                         }
  308.                        
  309.                     }
  310.                                
  311.                         }
  312.                        
  313.                 }
  314.         }
  315.       });    
  316.   }
  317.  
  318.   public void logToConsole(ProxiedPlayer player, ProxiedPlayer target, String message) {
  319.       getProxy().getLogger().log(Level.INFO, "*** BungePrivateMessage *** " + player.getName() + " to " + target.getName() + " >> " + message);
  320.   }
  321. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement