diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/de/romjaki/selfbot/Config.java | 45 | ||||
-rw-r--r-- | src/main/java/de/romjaki/selfbot/Main.java | 5 | ||||
-rw-r--r-- | src/main/java/de/romjaki/selfbot/MessageListener.java | 10 | ||||
-rw-r--r-- | src/main/java/de/romjaki/selfbot/Util.java | 2 |
4 files changed, 32 insertions, 30 deletions
diff --git a/src/main/java/de/romjaki/selfbot/Config.java b/src/main/java/de/romjaki/selfbot/Config.java index f2cf900..6ed13c7 100644 --- a/src/main/java/de/romjaki/selfbot/Config.java +++ b/src/main/java/de/romjaki/selfbot/Config.java @@ -5,7 +5,8 @@ import net.dv8tion.jda.core.utils.SimpleLog; import java.io.*; import java.lang.reflect.Field; import java.lang.reflect.Modifier; -import java.util.Scanner; +import java.util.Hashtable; +import java.util.Properties; import java.util.stream.Stream; /** @@ -32,30 +33,15 @@ public class Config { } public static Config getConfig(File file) { + file = file.getAbsoluteFile(); if (file.isDirectory()) { SimpleLog.getLog("startup").fatal("Config file is a directory"); System.exit(1); } - try (Scanner s = new Scanner(file)) { - Config c = new Config(); - Class<? extends Config> clazz = c.getClass(); - while (s.hasNextLine()) { - String line = s.nextLine(); - String[] tmp = line.split(":", 2); - String key = tmp[0].trim(); - String val = tmp[1].trim(); - if (val.isEmpty()) continue; - try { - Field f = clazz.getField(key.toUpperCase()); - if (f == null || !f.isAnnotationPresent(Configurable.class) || Modifier.isStatic(f.getModifiers())) - continue; - f.set(c, val); - } catch (Exception e) { - continue; - } - } - return c; - } catch (FileNotFoundException e) { + Properties props = new Properties(); + try (InputStream is = new FileInputStream(file)) { + props.load(is); + } catch (IOException e) { SimpleLog.getLog("startup").fatal("Config not found. Trying to generate file. Fill in the information and restart."); if (!file.getParentFile().exists()) { file.getParentFile().mkdirs(); @@ -69,7 +55,20 @@ public class Config { } System.exit(1); } - return null; + Config c = new Config(); + Class<? extends Config> clazz = c.getClass(); + ((Hashtable<String, String>) (Hashtable)props).forEach((key, val) -> { + if (val.isEmpty()) return; + try { + Field f = clazz.getField(key.toUpperCase()); + if (f == null || !f.isAnnotationPresent(Configurable.class) || Modifier.isStatic(f.getModifiers())) + return; + f.set(c, val); + } catch (Exception e) { + return; + } + }); + return c; } private static void writeTemplateToFile(File file) { @@ -83,7 +82,7 @@ public class Config { private static String buildTemplate() { StringBuilder sb = new StringBuilder(); - Stream.of(Config.class.getFields()).forEach(s -> sb.append(s.getName().toUpperCase()).append(':').append(System.lineSeparator())); + Stream.of(Config.class.getFields()).forEach(s -> sb.append(s.getName().toUpperCase()).append('=').append(System.lineSeparator())); return sb.toString(); } } diff --git a/src/main/java/de/romjaki/selfbot/Main.java b/src/main/java/de/romjaki/selfbot/Main.java index 093f0b3..f6db835 100644 --- a/src/main/java/de/romjaki/selfbot/Main.java +++ b/src/main/java/de/romjaki/selfbot/Main.java @@ -24,8 +24,7 @@ public class Main { public static void main(String[] args) { System.out.println(JDAInfo.VERSION); - System.out.println(System.getProperty("config.file")); - Config c = Config.getConfig(System.getProperty("config.file")); + Config c = Config.getConfig("config.properties"); System.out.println(c.TOKEN); jda = null; try { @@ -65,6 +64,8 @@ public class Main { se.eval("var imports = new JavaImporter(" + "java.nio.file," + "java.lang," + + "java.awt," + + "java.awt.datatransfer," + "java.util.stream," + "java.lang.management," + "java.text," + diff --git a/src/main/java/de/romjaki/selfbot/MessageListener.java b/src/main/java/de/romjaki/selfbot/MessageListener.java index 2631f07..b4e50a9 100644 --- a/src/main/java/de/romjaki/selfbot/MessageListener.java +++ b/src/main/java/de/romjaki/selfbot/MessageListener.java @@ -134,8 +134,10 @@ public class MessageListener extends ListenerAdapter { List<MessageEmbed> embeds = event.getMessage().getEmbeds(); boolean containsAfk = false; for (MessageEmbed embed : embeds) { - if (embed.getTitle().toLowerCase().contains("afk")) { - containsAfk = true; + if (embed.getTitle() != null) { + if (embed.getTitle().toLowerCase().contains("afk")) { + containsAfk = true; + } } } if (!containsAfk && AFK) { @@ -337,7 +339,7 @@ public class MessageListener extends ListenerAdapter { event.getMessage().editMessage("Error: Use `::event <java|python|bf> <code>"); return; } - Object out = ""; + Object out; int x = 8; if (parts[1].matches(".*\\d$")) { x = Integer.parseInt(parts[1].replaceFirst("b(rain)?f(uck)?", "")); @@ -586,7 +588,7 @@ public class MessageListener extends ListenerAdapter { EmbedBuilder embed = new EmbedBuilder(); MessageHistory h = event.getChannel().getHistoryAround(args[0], 2).complete(); Message cited = h.getMessageById(args[0]); - embed.setAuthor(cited.getAuthor().getName(), "https://discordapp.com", cited.getAuthor().getAvatarUrl()); + embed.setAuthor(cited.getAuthor().getName(), "https://discordapp.com/channels/@me/" + cited.getAuthor().getId(), cited.getAuthor().getAvatarUrl()); embed.setColor(Color.CYAN); embed.setDescription(cited.getContent()); embed.addField("**" + event.getJDA().getSelfUser().getName() + "** kommentiert:", args[1], true); diff --git a/src/main/java/de/romjaki/selfbot/Util.java b/src/main/java/de/romjaki/selfbot/Util.java index a41c5cd..67a106b 100644 --- a/src/main/java/de/romjaki/selfbot/Util.java +++ b/src/main/java/de/romjaki/selfbot/Util.java @@ -24,6 +24,6 @@ public class Util { } public static int clamp(int min, int max, int val) { - return val < min ? min : (val > max ? max : val); + return val < min ? min : (Math.min(val, max)); } } |