From 1652d39e04a7e3fcd91bde3d4ddfb8bb6e379d9d Mon Sep 17 00:00:00 2001 From: Schlauer-Hax Date: Mon, 18 May 2020 17:57:47 +0200 Subject: [PATCH] nice --- src/main/java/com/bbn/hadder/Hadder.java | 3 +- .../commands/owner/BlacklistCommand.java | 27 ++----------- .../hadder/listener/OwnerMessageListener.java | 40 +++++++++++++++++++ 3 files changed, 46 insertions(+), 24 deletions(-) create mode 100644 src/main/java/com/bbn/hadder/listener/OwnerMessageListener.java diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index 2fe8cf3..ab8edbe 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -140,7 +140,8 @@ public class Hadder { new InviteLinkListener(rethink), new RulesListener(rethink), new StarboardListener(rethink), - new VoiceLeaveListener(audioManager)); + new VoiceLeaveListener(audioManager), + new OwnerMessageListener(config)); try { shardManager = builder.build(); diff --git a/src/main/java/com/bbn/hadder/commands/owner/BlacklistCommand.java b/src/main/java/com/bbn/hadder/commands/owner/BlacklistCommand.java index 5724fa0..50555a4 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/BlacklistCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/BlacklistCommand.java @@ -39,33 +39,14 @@ public class BlacklistCommand implements Command { } else { switch (args[0].toLowerCase()) { case "add": - if (args.length == 3 && e.getMessage().getMentionedUsers().size() == 1) { - RethinkUser u = new RethinkUser(e.getRethink().getObjectByID("user", e.getMessage().getMentionedUsers().get(0).getId()), e.getRethink()); - String blacklisted = e.getRethinkUser().getBlacklisted(); - List commands = new ArrayList<>(); - if (!"none".equals(blacklisted)) commands.addAll(Arrays.asList(blacklisted.split(","))); - commands.addAll(Arrays.asList(args[1].split(","))); - LinkedHashSet hashSet = new LinkedHashSet<>(commands); - - ArrayList commandsWithoutDuplicates = new ArrayList<>(hashSet); - String newblacklisted = ((commandsWithoutDuplicates.size()!=0) ? String.join(",", commandsWithoutDuplicates) : "none"); - u.setBlacklisted(newblacklisted); - e.getTextChannel().sendMessage( - e.getMessageEditor().getMessage(MessageEditor.MessageType.INFO, - "commands.owner.blacklist.success.add.title", "", - "commands.owner.blacklist.success.add.description", newblacklisted) - .build()).queue(); - u.push(); - } else e.getHelpCommand().sendHelp(this, e); - break; - case "remove": if (args.length == 3 && e.getMessage().getMentionedUsers().size() == 1) { RethinkUser u = new RethinkUser(e.getRethink().getObjectByID("user", e.getMessage().getMentionedUsers().get(0).getId()), e.getRethink()); String blacklisted = e.getRethinkUser().getBlacklisted(); List commands = new ArrayList<>(); if (!"none".equals(blacklisted)) commands.addAll(Arrays.asList(blacklisted.split(","))); - commands.removeAll(Arrays.asList(args[1].split(","))); + if (args[0].toLowerCase().equals("add")) commands.addAll(Arrays.asList(args[1].split(","))); + else commands.removeAll(Arrays.asList(args[1].split(","))); LinkedHashSet hashSet = new LinkedHashSet<>(commands); ArrayList commandsWithoutDuplicates = new ArrayList<>(hashSet); @@ -73,8 +54,8 @@ public class BlacklistCommand implements Command { u.setBlacklisted(newblacklisted); e.getTextChannel().sendMessage( e.getMessageEditor().getMessage(MessageEditor.MessageType.INFO, - "commands.owner.blacklist.success.remove.title", "", - "commands.owner.blacklist.success.remove.description", newblacklisted) + "commands.owner.blacklist.success."+args[0].toLowerCase()+".title", "", + "commands.owner.blacklist.success."+args[0].toLowerCase()+".description", newblacklisted) .build()).queue(); u.push(); } else e.getHelpCommand().sendHelp(this, e); diff --git a/src/main/java/com/bbn/hadder/listener/OwnerMessageListener.java b/src/main/java/com/bbn/hadder/listener/OwnerMessageListener.java new file mode 100644 index 0000000..be14cae --- /dev/null +++ b/src/main/java/com/bbn/hadder/listener/OwnerMessageListener.java @@ -0,0 +1,40 @@ +/* + * @author Hax / Hax6775 / Schlauer_Hax + */ + +package com.bbn.hadder.listener; + +import com.bbn.hadder.core.Config; +import com.bbn.hadder.core.Perms; +import net.dv8tion.jda.api.entities.Emote; +import net.dv8tion.jda.api.events.message.MessageReceivedEvent; +import net.dv8tion.jda.api.hooks.ListenerAdapter; +import org.json.JSONObject; + +import javax.annotation.Nonnull; + +public class OwnerMessageListener extends ListenerAdapter { + + Config config; + + public OwnerMessageListener(Config config) { + this.config = config; + } + + @Override + public void onMessageReceived(@Nonnull MessageReceivedEvent event) { + if (config.getOwners().contains(event.getAuthor().getIdLong())) { + String emotename = event.getMessage().getContentRaw().split(":")[1]; + if (!emotename.contains(" ")) { + Emote[] emotes = event.getJDA().getEmotesByName(emotename, true).toArray(new Emote[0]); + StringBuilder sb = new StringBuilder(); + if (emotes.length!=0) { + for (Emote emote : emotes) { + sb.append(emote.getAsMention() + " "); + } + event.getChannel().sendMessage(sb.toString()).queue(); + } + } + } + } +}