diff --git a/build.gradle b/build.gradle index 62ad6d0..7804f85 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ plugins { } -version '0.4' +version '0.5' def jdaVersion = '3.8.3_460' diff --git a/src/main/java/Shadowrun/dice.java b/src/main/java/Shadowrun/dice.java index 8e03023..51d026d 100755 --- a/src/main/java/Shadowrun/dice.java +++ b/src/main/java/Shadowrun/dice.java @@ -5,9 +5,7 @@ import net.dv8tion.jda.core.entities.ChannelType; import net.dv8tion.jda.core.entities.User; import net.dv8tion.jda.core.events.message.MessageReceivedEvent; import net.dv8tion.jda.core.hooks.ListenerAdapter; -import okhttp3.internal.Internal; -import org.json.JSONArray; -import org.json.JSONObject; + import java.awt.*; @@ -15,7 +13,6 @@ import java.security.SecureRandom; import java.util.HashMap; import java.util.Map; import java.util.Random; -import java.util.Scanner; import java.util.concurrent.ThreadLocalRandom; public class dice extends ListenerAdapter { @@ -47,7 +44,7 @@ public class dice extends ListenerAdapter { && !event.getMessage().getContentRaw().startsWith(this.prefixIni) && !event.getMessage().getContentRaw().startsWith(this.prefixZitat) && !event.getMessage().getContentRaw().startsWith(this.prefixTest)) - || event.getChannelType() != ChannelType.TEXT) { + || (event.getChannelType() != ChannelType.TEXT && event.getChannelType() != ChannelType.PRIVATE)) { return; } @@ -91,7 +88,7 @@ public class dice extends ListenerAdapter { EmbedBuilder test = new EmbedBuilder(); test.setTitle("Das ist ein Test"); test.setColor(Color.red); - test.setDescription("Text " + event.getMember().getAsMention()); + test.setDescription("Text " + getAsMention(event)); @@ -170,7 +167,12 @@ public class dice extends ListenerAdapter { if(MsgParts.length < 2) { String message = activLang.emptyCommand; message = message.replace("%command%", this.prefixSr); - event.getChannel().sendMessage(event.getMember().getAsMention() + message).queue(); + event.getChannel().sendMessage(getAsMention(event) + message).queue(); + return; + } + + if(MsgParts[1].contains("+")) { + this.ini(event); return; } @@ -178,13 +180,13 @@ public class dice extends ListenerAdapter { if(MsgParts[1].trim().toLowerCase().equals("de")) { activLang = langDe; channelList.put(event.getChannel().getId(), "de"); - event.getChannel().sendMessage(event.getMember().getAsMention() + activLang.language).queue(); + event.getChannel().sendMessage(getAsMention(event) + activLang.language).queue(); return; } else if(MsgParts[1].trim().toLowerCase().equals("en")) { activLang = langEn; channelList.put(event.getChannel().getId(), "en"); - event.getChannel().sendMessage(event.getMember().getAsMention() + activLang.language).queue(); + event.getChannel().sendMessage(getAsMention(event) + activLang.language).queue(); return; } @@ -198,14 +200,14 @@ public class dice extends ListenerAdapter { catch (NumberFormatException e) { String message = activLang.error; message = message.replace("%command%", MsgParts[1].trim().toLowerCase()); - event.getChannel().sendMessage(event.getMember().getAsMention() + message).queue(); + event.getChannel().sendMessage(getAsMention(event) + message).queue(); return; } } else { String message = activLang.error; message = message.replace("%command%", MsgParts[1].trim()); - event.getChannel().sendMessage(event.getMember().getAsMention() + message).queue(); + event.getChannel().sendMessage(getAsMention(event) + message).queue(); return; } } @@ -216,7 +218,7 @@ public class dice extends ListenerAdapter { catch (NumberFormatException e) { String message = activLang.error; message = message.replace("%command%", MsgParts[1].trim()); - event.getChannel().sendMessage(event.getMember().getAsMention() + message).queue(); + event.getChannel().sendMessage(getAsMention(event) + message).queue(); return; } } @@ -224,7 +226,7 @@ public class dice extends ListenerAdapter { if(numberOfDice <= 0) { String message = activLang.noNegativ; - event.getChannel().sendMessage(event.getMember().getAsMention() + message).queue(); + event.getChannel().sendMessage(getAsMention(event) + message).queue(); return; } @@ -269,7 +271,7 @@ public class dice extends ListenerAdapter { String message = activLang.resultText; //%numberOfDice%%dice%%diceart% %EdgeDice%:\tErfolge: %hits%\tMisserfolge: %oneHits%"; message = message.replace("%numberOfDice%", String.valueOf(numberOfDice)).replace("%diceart%", String.valueOf(diceart)).replace("%EdgeDice%", addition).replace("%hits%", String.valueOf(hits)).replace("%oneHits%", String.valueOf(verteilung[0])); - outputBox.setTitle(event.getMember().getEffectiveName() + " " + message); + outputBox.setTitle(getEffectiveName(event) + message); outputBox.setDescription("(" + result.toString().trim() + ")"); @@ -306,7 +308,7 @@ public class dice extends ListenerAdapter { if(MsgParts.length < 2) { // Leerer Befehl String message = activLang.emptyCommand; message = message.replace("%command%", this.prefixIni); - event.getChannel().sendMessage(event.getMember().getAsMention() + message).queue(); + event.getChannel().sendMessage(getAsMention(event) + message).queue(); return; } @@ -314,13 +316,13 @@ public class dice extends ListenerAdapter { if(MsgParts[1].trim().toLowerCase().equals("de")) { activLang = langDe; channelList.put(event.getChannel().getId(), "de"); - event.getChannel().sendMessage(event.getMember().getAsMention() + activLang.language).queue(); + event.getChannel().sendMessage(getAsMention(event) + activLang.language).queue(); return; } else if(MsgParts[1].trim().toLowerCase().equals("en")) { activLang = langEn; channelList.put(event.getChannel().getId(), "en"); - event.getChannel().sendMessage(event.getMember().getAsMention() + activLang.language).queue(); + event.getChannel().sendMessage(getAsMention(event) + activLang.language).queue(); return; } @@ -366,14 +368,14 @@ public class dice extends ListenerAdapter { catch (NumberFormatException e) { String message = activLang.error; message = message.replace("%command%", MsgParts[1].trim()); - event.getChannel().sendMessage(event.getMember().getAsMention() + message).queue(); + event.getChannel().sendMessage(getAsMention(event) + message).queue(); return; } } if(numberOfDice <= 0) { String message = activLang.noNegativ; - event.getChannel().sendMessage(event.getMember().getAsMention() + message).queue(); + event.getChannel().sendMessage(getAsMention(event) + message).queue(); return; } @@ -391,7 +393,7 @@ public class dice extends ListenerAdapter { //%numberOfDice%%dice%%diceart% %EdgeDice%:\tErfolge: %hits%\tMisserfolge: %oneHits%"; message = message.replace("%numberOfDice%", String.valueOf(numberOfDice)).replace("%diceart%", String.valueOf(diceart)) .replace("%iniBase%", String.valueOf(iniBase)).replace("%ini%", String.valueOf(ini)); - outputBox.setTitle(event.getMember().getEffectiveName() + " " + message); + outputBox.setTitle(getEffectiveName(event) + message); outputBox.setDescription(String.valueOf(iniBase) + " + (" + result.toString().trim().replace(" ", "+") + ")"); @@ -429,5 +431,17 @@ public class dice extends ListenerAdapter { event.getChannel().sendMessage(quotes[dice%6]).queue(); } + private String getEffectiveName(MessageReceivedEvent event) { + if(event.getMember() == null) { + return ""; + } + return event.getMember().getEffectiveName() + " "; + } + private String getAsMention(MessageReceivedEvent event) { + if(event.getMember() == null) { + return ""; + } + return event.getMember().getAsMention() + " "; + } }