I am trying to make a message command for my plugin, and this is what I have so far: Code:java if(commandLabel.equalsIgnoreCase("msg")) { try { Player player = (Player) theSender; Player playerToMessage = Bukkit.getPlayer(args[0]); player.sendMessage(ChatColor.DARK_GRAY + "[Me] --> " + "[" + ChatColor.DARK_AQUA + playerToMessage.getName() + ChatColor.DARK_GRAY + "] " + messageSent); playerToMessage.sendMessage(ChatColor.DARK_GRAY + "[" + ChatColor.DARK_AQUA + player.getName() + ChatColor.DARK_GRAY +"] --> [Me] " + messageSent); } catch(IndexOutOfBoundsException exception) { Player player = (Player) theSender; player.sendMessage(ChatColor.DARK_RED + "Usage: /msg <player> <msg>"); } } It works fine, except it only sends the first word of the message. Someone help please!
Xtremebrawler It depends what 'messageSent' is. Code:java public static String[] getMsgFromArgs(String[] args, int indexBegin, int indexEnd) { List<String> list = new ArrayList<String>(); for (int i = indexBegin; i < indexEnd; i++) { list.add(args[i]); } return (String[]) list.toArray(); }[/i] Use something along the lines of: Code: getMsgFromArgs(args, 1, args.length); to get the message as a String[]. You can then use Apache's StringUtils like this: Code: StringUtils.join(getMsgFromArgs(args, 1, args.length), " "); to turn it into a String.
thecrystalflame I meant this method here Code: public static String[] getMsgFromArgs(String[] args, int indexBegin, int indexEnd) { List<String> list = new ArrayList<String>(); for (int i = indexBegin; i < indexEnd; i++) { list.add(args[i]); } return (String[]) list.toArray(); } Not the StingUtils method