diff --git a/src/main/java/buttondevteam/discordplugin/DPUtils.java b/src/main/java/buttondevteam/discordplugin/DPUtils.java index 48d5963..c21cceb 100755 --- a/src/main/java/buttondevteam/discordplugin/DPUtils.java +++ b/src/main/java/buttondevteam/discordplugin/DPUtils.java @@ -122,6 +122,7 @@ public final class DPUtils { public static ConfigData roleData(IHaveConfig config, String key, String defName, IGuild guild) { return config.getDataPrimDef(key, defName, name -> { + if (!(name instanceof String)) return null; val roles = guild.getRolesByName((String) name); return roles.size() > 0 ? roles.get(0) : null; }, IIDLinkedObject::getLongID); diff --git a/src/main/java/buttondevteam/discordplugin/commands/UserinfoCommand.java b/src/main/java/buttondevteam/discordplugin/commands/UserinfoCommand.java index 7954002..0433c81 100755 --- a/src/main/java/buttondevteam/discordplugin/commands/UserinfoCommand.java +++ b/src/main/java/buttondevteam/discordplugin/commands/UserinfoCommand.java @@ -22,22 +22,22 @@ import java.util.stream.Collectors; }) public class UserinfoCommand extends ICommand2DC { @Command2.Subcommand - public boolean def(Command2DCSender sender, @Command2.OptionalArg String args) { + public boolean def(Command2DCSender sender, @Command2.OptionalArg @Command2.TextArg String user) { val message = sender.getMessage(); IUser target = null; - if (args == null || args.length() == 0) + if (user == null || user.length() == 0) target = message.getAuthor(); else { final Optional firstmention = message.getMentions().stream() .filter(m -> !m.getStringID().equals(DiscordPlugin.dc.getOurUser().getStringID())).findFirst(); if (firstmention.isPresent()) target = firstmention.get(); - else if (args.contains("#")) { - String[] targettag = args.split("#"); + else if (user.contains("#")) { + String[] targettag = user.split("#"); final List targets = getUsers(message, targettag[0]); if (targets.size() == 0) { DiscordPlugin.sendMessageToChannel(message.getChannel(), - "The user cannot be found (by name): " + args); + "The user cannot be found (by name): " + user); return true; } for (IUser ptarget : targets) { @@ -48,15 +48,15 @@ public class UserinfoCommand extends ICommand2DC { } if (target == null) { DiscordPlugin.sendMessageToChannel(message.getChannel(), - "The user cannot be found (by discriminator): " + args + "(Found " + targets.size() + "The user cannot be found (by discriminator): " + user + "(Found " + targets.size() + " users with the name.)"); return true; } } else { - final List targets = getUsers(message, args); + final List targets = getUsers(message, user); if (targets.size() == 0) { DiscordPlugin.sendMessageToChannel(message.getChannel(), - "The user cannot be found on Discord: " + args); + "The user cannot be found on Discord: " + user); return true; } if (targets.size() > 1) { diff --git a/src/main/java/buttondevteam/discordplugin/mcchat/MCChatCommand.java b/src/main/java/buttondevteam/discordplugin/mcchat/MCChatCommand.java index fbe4e38..23af46f 100755 --- a/src/main/java/buttondevteam/discordplugin/mcchat/MCChatCommand.java +++ b/src/main/java/buttondevteam/discordplugin/mcchat/MCChatCommand.java @@ -18,7 +18,7 @@ import lombok.val; public class MCChatCommand extends ICommand2DC { @Command2.Subcommand - public boolean def(Command2DCSender sender, String args) { + public boolean def(Command2DCSender sender) { val message = sender.getMessage(); if (!message.getChannel().isPrivate()) { message.reply("this command can only be issued in a direct message with the bot.");