From dd076c4418c53ba0303f0c702fc82340038ea678 Mon Sep 17 00:00:00 2001 From: Sebastian Zeidler Date: Mon, 18 Feb 2019 19:26:01 +0100 Subject: [PATCH] =?UTF-8?q?Hinzuf=C3=BCgen=20einer=20Config=20Datei?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config.cfg | 11 +++ src/main/java/AtlasGruppe/groupchange.java | 33 +++++---- src/main/java/core/Main.java | 11 ++- src/main/java/core/config.java | 83 ++++++++++++++++++++++ 4 files changed, 120 insertions(+), 18 deletions(-) create mode 100755 config.cfg mode change 100644 => 100755 src/main/java/AtlasGruppe/groupchange.java mode change 100644 => 100755 src/main/java/core/Main.java create mode 100755 src/main/java/core/config.java diff --git a/config.cfg b/config.cfg new file mode 100755 index 0000000..298ecac --- /dev/null +++ b/config.cfg @@ -0,0 +1,11 @@ +#Mon Feb 18 18:59:33 CET 2019 +targetRole=Testtolle +noPrivilegs=Du bist nicht berechtigt den Befehl auszuf\u00FChren +hasGroup=%Member% hat bereits die Gruppe %Group% +authorizedRole=Test2 +notInGroup=%Member% ist nicht in der Gruppe %Group% +userNotFound=Benutzer nicht gefunden +removeGroup=%Member% wurde aus der Gruppe %Group% entfernt +becameGroup=%Member% wurde der Gruppe %Group% zugeteilt +GameWatching=fufufufufu +token=NTQ2NzEwODUwOTIxMjk5OTc5.D0sL6A.1fUd5iBr3eo2tbPXofEqyumDm6w \ No newline at end of file diff --git a/src/main/java/AtlasGruppe/groupchange.java b/src/main/java/AtlasGruppe/groupchange.java old mode 100644 new mode 100755 index 567e6d4..b75305b --- a/src/main/java/AtlasGruppe/groupchange.java +++ b/src/main/java/AtlasGruppe/groupchange.java @@ -1,5 +1,6 @@ package AtlasGruppe; +import core.Config; import net.dv8tion.jda.core.entities.ChannelType; import net.dv8tion.jda.core.entities.Member; import net.dv8tion.jda.core.entities.Role; @@ -14,12 +15,13 @@ public class groupchange extends ListenerAdapter { private String prefixPromote; private String prefixDegradation; + private Config config; - public groupchange() { - this.prefixPromote = "!add"; - this.prefixDegradation = "!remove"; - + public groupchange(Config config) { + this.prefixPromote = "!befördern"; + this.prefixDegradation = "!degradieren"; + this.config = config; } @Override @@ -40,17 +42,17 @@ public class groupchange extends ListenerAdapter { private void changeGroup(MessageReceivedEvent event, Boolean promote) { - Member MentionedMember = null; - User MentionedUser = null; - boolean roleCheck = false; + Member MentionedMember; + User MentionedUser; + boolean roleCheck; try { - Role targetRole = event.getGuild().getRolesByName("Test2", true).get(0); - Role authorizedRole = event.getGuild().getRolesByName("Test2", true).get(0); + Role targetRole = event.getGuild().getRolesByName(config.targetRole, true).get(0); + Role authorizedRole = event.getGuild().getRolesByName(config.authorizedRole, true).get(0); if (event.getMessage().getMentionedUsers().isEmpty()) { - event.getChannel().sendMessage(event.getMember().getAsMention() + " Benutzer nicht gefunden").queue(); + event.getChannel().sendMessage(event.getMember().getAsMention() + " " +config.userNotFound).queue(); return; } @@ -71,7 +73,7 @@ public class groupchange extends ListenerAdapter { } } if (!roleCheck) { - event.getChannel().sendMessage(event.getMember().getAsMention() + " Du bist nicht berechtigt den Befehl auszuführen").queue(); + event.getChannel().sendMessage(event.getMember().getAsMention() + " " + config.noPrivilegs).queue(); return; } @@ -84,11 +86,12 @@ public class groupchange extends ListenerAdapter { } } if (roleCheck) { - event.getChannel().sendMessage(event.getMember().getAsMention() + " " + MentionedMember.getEffectiveName() + " hat bereits die Gruppe " + targetRole.getName()).queue(); + + event.getChannel().sendMessage(event.getMember().getAsMention() + " " + config.hasGroup.replace("%Member%", MentionedMember.getEffectiveName()).replace("%Group%", targetRole.getName())).queue(); return; } event.getGuild().getController().addSingleRoleToMember(MentionedMember, targetRole).queue(); - event.getChannel().sendMessage(event.getMember().getAsMention() + " " + MentionedMember.getEffectiveName() + " wurde der Gruppe " + targetRole.getName() + " zugeteilt").queue(); + event.getChannel().sendMessage(event.getMember().getAsMention() + " " + config.becameGroup.replace("%Member%", MentionedMember.getEffectiveName()).replace("%Group%", targetRole.getName())).queue(); } else { roleCheck = false; for (Object x : MentionedMember.getRoles().toArray()) { @@ -98,11 +101,11 @@ public class groupchange extends ListenerAdapter { } } if (!roleCheck) { - event.getChannel().sendMessage(event.getMember().getAsMention() + " " + MentionedMember.getEffectiveName() + " ist nicht in der Gruppe " + targetRole.getName()).queue(); + event.getChannel().sendMessage(event.getMember().getAsMention() + " " + config.notInGroup.replace("%Member%", MentionedMember.getEffectiveName()).replace("%Group%", targetRole.getName())).queue(); return; } event.getGuild().getController().removeSingleRoleFromMember(MentionedMember, targetRole).queue(); - event.getChannel().sendMessage(event.getMember().getAsMention() + " " + MentionedMember.getEffectiveName() + " wurde aus der Gruppe " + targetRole.getName() + " entfernt").queue(); + event.getChannel().sendMessage(event.getMember().getAsMention() + " " + config.removeGroup.replace("%Member%", MentionedMember.getEffectiveName()).replace("%Group%", targetRole.getName())).queue(); } } catch (InsufficientPermissionException e) { diff --git a/src/main/java/core/Main.java b/src/main/java/core/Main.java old mode 100644 new mode 100755 index b32dfa5..2bd6a9e --- a/src/main/java/core/Main.java +++ b/src/main/java/core/Main.java @@ -15,16 +15,21 @@ public class Main { public static void main(String[] args) { + Config conf = new Config(); + conf.readConfig(); // Insert your bot's token here - String token = "NDA1MDQ2NDg1OTk0OTYyOTQ2.DUessg.YFKvsTLIyPwprLlEOnZc0PXWJH0"; + //String token = "NTQ3MDc5NzgzNDE1MjgzNzEy.D0xjRw.ydeX_ou_pAqN_DCSwyGHzQUGBBk"; + String token = conf.token; JDABuilder builder = new JDABuilder(AccountType.BOT); + + builder.setToken(token); builder.setAutoReconnect(true); builder.setStatus(OnlineStatus.ONLINE); - builder.setGame(Game.watching("Den NinjaSäuen zu")); - builder.addEventListener(new groupchange()); + builder.setGame(Game.watching(conf.GameWatching)); + builder.addEventListener(new groupchange(conf)); try { JDA jda = builder.build(); diff --git a/src/main/java/core/config.java b/src/main/java/core/config.java new file mode 100755 index 0000000..f7f6e85 --- /dev/null +++ b/src/main/java/core/config.java @@ -0,0 +1,83 @@ +package core; + +import java.io.*; +import java.util.Properties; + +public class Config { + public String token; + public String GameWatching = "Den NinjaSäuen zu"; + + public String targetRole = "Ninjasau"; + public String authorizedRole = "Chief Ninjasau"; + + public String userNotFound = "Benutzer nicht gefunden"; + public String noPrivilegs = "Du bist nicht berechtigt den Befehl auszuführen"; + + public String hasGroup = "%Member% hat bereits die Gruppe %Group%"; + public String becameGroup = "%Member% wurde der Gruppe %Group% zugeteilt"; + + public String notInGroup = "%Member% ist nicht in der Gruppe %Group%"; + public String removeGroup = "%Member% wurde aus der Gruppe %Group% entfernt"; + + + public void readConfig() { + FileInputStream input = null; + OutputStream output = null; + Properties config = new Properties(); + try { + File f = new File("config.cfg"); + if (f.isFile() && f.canRead()) { + + input = new FileInputStream("config.cfg"); + config.load(input); + if(config.containsKey("token")) + this.token = config.getProperty("token"); + if(config.containsKey("GameWatching")) + this.GameWatching = config.getProperty("GameWatching"); + + if(config.containsKey("targetRole")) + this.targetRole = config.getProperty("targetRole"); + if(config.containsKey("authorizedRole")) + this.authorizedRole = config.getProperty("authorizedRole"); + if(config.containsKey("userNotFound")) + this.userNotFound = config.getProperty("userNotFound"); + if(config.containsKey("noPrivilegs")) + this.noPrivilegs = config.getProperty("noPrivilegs"); + if(config.containsKey("hasGroup")) + this.hasGroup = config.getProperty("hasGroup"); + if(config.containsKey("becameGroup")) + this.becameGroup = config.getProperty("becameGroup"); + if(config.containsKey("notInGroup")) + this.notInGroup = config.getProperty("notInGroup"); + if(config.containsKey("removeGroup")) + this.removeGroup = config.getProperty("removeGroup"); + + } + else { + output = new FileOutputStream("config.cfg"); + config.setProperty("targetRole", this.targetRole); + config.setProperty("authorizedRole", this.authorizedRole); + config.setProperty("userNotFound", this.userNotFound); + config.setProperty("noPrivilegs", this.noPrivilegs); + config.setProperty("hasGroup", this.hasGroup); + config.setProperty("becameGroup", this.becameGroup); + config.setProperty("notInGroup", this.notInGroup); + config.setProperty("removeGroup", this.removeGroup); + config.store(output, null); + + } + } catch (Exception e) { + + } + finally { + if (input != null) { + try { + input.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } + +}