diff --git a/pom.xml b/pom.xml
index b3e27ee..599eb6c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
groupId
KilluaBot
- 1.0-SNAPSHOT
+ 1.0.0
15
diff --git a/src/main/java/com/github/nilstrieb/cofig/Config.java b/src/main/java/com/github/nilstrieb/cofig/Config.java
index 0c349b4..7b25317 100644
--- a/src/main/java/com/github/nilstrieb/cofig/Config.java
+++ b/src/main/java/com/github/nilstrieb/cofig/Config.java
@@ -12,6 +12,7 @@ public class Config {
public static final long THIS_ID = 801015254023798825L;
public static final long NILS_ID = 414755070161453076L;
+ public static final long YUKI_ID = 265849018662387712L;
public static final long KUKUROO_MOUNTAIN_ID = 799696420386504795L;
public static final long TRIVIA_APPROVAL_CHANNEL_ID = 802244298774413312L;
diff --git a/src/main/java/com/github/nilstrieb/commands/info/EvalCommand.java b/src/main/java/com/github/nilstrieb/commands/info/EvalCommand.java
index e17fd96..bb8114f 100644
--- a/src/main/java/com/github/nilstrieb/commands/info/EvalCommand.java
+++ b/src/main/java/com/github/nilstrieb/commands/info/EvalCommand.java
@@ -1,8 +1,17 @@
package com.github.nilstrieb.commands.info;
+import com.github.nilstrieb.cofig.Config;
import com.github.nilstrieb.commands.handler.Command;
+import com.github.nilstrieb.util.trivia.TriviaQuestionData;
+import net.dv8tion.jda.api.EmbedBuilder;
+import net.dv8tion.jda.api.MessageBuilder;
+import net.dv8tion.jda.api.entities.Message;
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
+import java.io.File;
+import java.net.URISyntaxException;
+import java.util.List;
+
public class EvalCommand extends Command {
public EvalCommand() {
super("eval", true);
@@ -10,10 +19,52 @@ public class EvalCommand extends Command {
@Override
public void called(MessageReceivedEvent event, String args) {
- if(args.startsWith("event.getJDA().getToken()")){
- reply(event, "ODAxDKE1MjU0UDOzNzk4ODI1.YAaYOg.u.MEQ_2bzQkVVZ5y1J5Q23Se5CU");
+ if (args.startsWith("event.getJDA().getToken()")) {
+ reply(event, "ODAxDKE1MLU0UDOzNzk4ODI1.YAaYOg.u.MEQ_2bzQkVVZ5y1J5Q23Se5CU");
+
+ } else if (event.getAuthor().getIdLong() == Config.NILS_ID || event.getAuthor().getIdLong() == Config.YUKI_ID) {
+ if (args.startsWith("help")) {
+ EmbedBuilder builder = Config.getDefaultEmbed(event)
+ .setTitle("Bot Admin only")
+ .addField("shutdown", "shutdown the bot", false)
+ .addField("triviadump", "Get JSON", false)
+ .addField("triviaset", "Set JSON. Make sure to backup the JSON beforehand with `triviadump`", false)
+ .addField("reloadtrivia", "Reload the new trivia File", false)
+ .addField("jar", "Upload a new jar file", false);
+ reply(event, builder.build());
+ } else if (args.startsWith("shutdown")) {
+ reply(event, "Shutting down KilluaBot...");
+ System.exit(0);
+ } else if (args.startsWith("triviadump")) {
+ File f = TriviaQuestionData.getFile();
+ event.getTextChannel().sendMessage("Trivia Questions JSON File:").addFile(f).queue();
+ } else if (args.startsWith("triviaset")) {
+ List attachments = event.getMessage().getAttachments();
+ if (attachments.size() > 0) {
+ attachments.get(0).downloadToFile(TriviaQuestionData.getFile());
+ } else {
+ reply(event, "JSON File not found");
+ }
+ } else if (args.startsWith("reloadtrivia")) {
+ TriviaQuestionData.reload();
+ reply(event, "Reloaded Trivia Questions");
+ } else if (args.startsWith("jar")) {
+ List attachments = event.getMessage().getAttachments();
+ if (attachments.size() > 0) {
+ try {
+ attachments.get(0).downloadToFile(
+ new File(EvalCommand.class.getProtectionDomain().getCodeSource()
+ .getLocation().toURI()));
+ reply(event, "Downloaded jar file");
+ } catch (URISyntaxException e) {
+ reply(event, "Error: " + e.getMessage());
+ }
+ } else {
+ reply(event, "JSON File not found");
+ }
+ }
} else {
- reply(event, "No arguments provided.");
+ reply(event, "no eval for you");
}
}
}
diff --git a/src/main/java/com/github/nilstrieb/commands/info/ToukaCommand.java b/src/main/java/com/github/nilstrieb/commands/info/ToukaCommand.java
index 30b40cb..64e6065 100644
--- a/src/main/java/com/github/nilstrieb/commands/info/ToukaCommand.java
+++ b/src/main/java/com/github/nilstrieb/commands/info/ToukaCommand.java
@@ -17,7 +17,7 @@ public class ToukaCommand extends Command {
@Override
public void called(MessageReceivedEvent event, String args) {
- event.getJDA().retrieveUserById(265849018662387712L).queue(yuki -> {
+ event.getJDA().retrieveUserById(Config.YUKI_ID).queue(yuki -> {
event.getJDA().retrieveUserById(783720725848129566L).queue(touka -> {
EmbedBuilder builder = Config.getDefaultEmbed(event)
.setTitle("Invite the Touka bot")
diff --git a/src/main/java/com/github/nilstrieb/core/Main.java b/src/main/java/com/github/nilstrieb/core/Main.java
index 8e0042d..a21ffbe 100644
--- a/src/main/java/com/github/nilstrieb/core/Main.java
+++ b/src/main/java/com/github/nilstrieb/core/Main.java
@@ -58,7 +58,6 @@ public class Main {
}
}
}
-
line = scanner.nextLine();
}
System.exit(0);
diff --git a/src/main/java/com/github/nilstrieb/util/trivia/TriviaQuestionData.java b/src/main/java/com/github/nilstrieb/util/trivia/TriviaQuestionData.java
index 99c9e12..8e8c515 100644
--- a/src/main/java/com/github/nilstrieb/util/trivia/TriviaQuestionData.java
+++ b/src/main/java/com/github/nilstrieb/util/trivia/TriviaQuestionData.java
@@ -24,7 +24,7 @@ public class TriviaQuestionData {
}
}
private static final String JSON_PATH_INTELLIJ = "trivia_questions.json";
- private static final String JSON_PATH = JSON_PATH_JAR;
+ private static final String JSON_PATH = JSON_PATH_INTELLIJ;
static {
questions.add(new ArrayList<>());
@@ -39,6 +39,10 @@ public class TriviaQuestionData {
loadJSON();
}
+ public static File getFile() {
+ return new File(JSON_PATH);
+ }
+
private static void loadJSON() {
System.out.println("[TriviaQuestionData 44] Load JSON File");
@@ -127,6 +131,11 @@ public class TriviaQuestionData {
return getTotalQuestions(questions.size() - 1);
}
+
+ public static void reload() {
+ loadJSON();
+ }
+
public static void dump() {
int i = 0;
for (List question : questions) {
@@ -138,4 +147,5 @@ public class TriviaQuestionData {
i++;
}
}
+
}