diff --git a/README.md b/README.md
index 4f62557..cd779c4 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,3 @@
# Hadder
[](https://travis-ci.com/BigBotNetwork/Hadder)
-
diff --git a/pom.xml b/pom.xml
index 3211132..23bcffe 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,7 +25,7 @@
net.dv8tion
JDA
- 4.0.0_61
+ 4.0.0_56
org.json
diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java
index c515960..8a0e59a 100644
--- a/src/main/java/com/bbn/hadder/Hadder.java
+++ b/src/main/java/com/bbn/hadder/Hadder.java
@@ -53,6 +53,8 @@ public class Hadder {
new ScreenshareCommand(),
new RebootCommand(),
new EqualsCommand(),
+ new InviteCommand(),
+ new NickCommand(),
new GuildPrefixCommand()), config);
builder.addEventListeners(
diff --git a/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java b/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java
index 3240549..5bafb91 100644
--- a/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java
@@ -21,48 +21,54 @@ public class GitHubCommand implements Command {
@Override
public void executed(String[] args, CommandEvent event) {
if (args.length > 0) {
- Request request = new Request.Builder().url("https://api.github.com/users/" + args[0]).build();
- try {
-
- Response response = new OkHttpClient().newCall(request).execute();
- JSONObject json = new JSONObject(response.body().string());
-
- String nickname = json.getString("name");
- String bio = "None";
- String location = "Unknown";
- String website = "None";
+ if (args[0].equals("link")) {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.INFO, builder).setTitle("Link your GitHub Account").setDescription("https://github.com/login/oauth/authorize?client_id=25321f690bb1b6952942").build()).queue();
+ } else {
+ Request request = new Request.Builder().url("https://api.github.com/users/" + args[0]).build();
try {
- bio = json.getString("bio");
- } catch (JSONException ignored) {}
- try {
- location = json.getString("location");
- } catch (JSONException ignored) {}
- if(!json.getString("blog").equals("")) website = json.getString("blog");
+ Response response = new OkHttpClient().newCall(request).execute();
+ JSONObject json = new JSONObject(response.body().string());
- EmbedBuilder builder = new EmbedBuilder();
- event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.INFO, builder)
- .setAuthor("Information about " + nickname + " (" + args[0] + ")", "https://github.com/" + args[0] + "", "https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png")
- .setThumbnail(json.getString("avatar_url"))
- .addField("User bio", bio, false)
- .addField("Location", location, true)
- .addField("Website", website, true)
- .addField("Public repositories", String.valueOf(json.getInt("public_repos")), true)
- .addField("Public gists", String.valueOf(json.getInt("public_gists")), true)
- .addField("Followers", String.valueOf(json.getInt("followers")), true)
- .addField("Following", String.valueOf(json.getInt("following")), true)
- .build()).queue();
+ String nickname = json.getString("name");
+ String bio = "None";
+ String location = "Unknown";
+ String website = "None";
+ try {
+ bio = json.getString("bio");
+ } catch (JSONException ignored) {
+ }
+ try {
+ location = json.getString("location");
+ } catch (JSONException ignored) {
+ }
- } catch (IOException | NullPointerException e) {
- EmbedBuilder builder = new EmbedBuilder();
- event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.ERROR, builder).setDescription("The GitHub API might be down at the moment!").build()).queue();
- } catch (JSONException e) {
- EmbedBuilder builder = new EmbedBuilder();
- event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("This user does not exist!").build()).queue();
+ if (!json.getString("blog").equals("")) website = json.getString("blog");
+
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.INFO, builder)
+ .setAuthor("Information about " + nickname + " (" + args[0] + ")", "https://github.com/" + args[0] + "", "https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png")
+ .setThumbnail(json.getString("avatar_url"))
+ .addField("User bio", bio, false)
+ .addField("Location", location, true)
+ .addField("Website", website, true)
+ .addField("Public repositories", String.valueOf(json.getInt("public_repos")), true)
+ .addField("Public gists", String.valueOf(json.getInt("public_gists")), true)
+ .addField("Followers", String.valueOf(json.getInt("followers")), true)
+ .addField("Following", String.valueOf(json.getInt("following")), true)
+ .build()).queue();
+
+ } catch (IOException | NullPointerException e) {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.ERROR, builder).setDescription("The GitHub API might be down at the moment!").build()).queue();
+ } catch (JSONException e) {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("This user does not exist!").build()).queue();
+ }
}
} else {
- EmbedBuilder builder = new EmbedBuilder();
- event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("You have to specify a user!").build()).queue();
+ event.getTextChannel().sendMessage("SOON").queue();
}
}
diff --git a/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java b/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java
new file mode 100644
index 0000000..ac79e18
--- /dev/null
+++ b/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java
@@ -0,0 +1,35 @@
+package com.bbn.hadder.commands.misc;
+
+/*
+ * @author Skidder / GregTCLTK
+ */
+
+import com.bbn.hadder.Hadder;
+import com.bbn.hadder.commands.Command;
+import com.bbn.hadder.commands.CommandEvent;
+import com.bbn.hadder.utils.MessageEditor;
+import net.dv8tion.jda.api.EmbedBuilder;
+
+public class InviteCommand implements Command {
+
+ @Override
+ public void executed(String[] args, CommandEvent event) {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.INFO, builder).setTitle("Invite me!").setDescription("[Invite me here!](discordapp.com/oauth2/authorize?client_id=" + Hadder.shardManager.getGuilds().get(0).getSelfMember().getId() + "&scope=bot&permissions=470133879)").build()).queue();
+ }
+
+ @Override
+ public String[] labels() {
+ return new String[]{"invite"};
+ }
+
+ @Override
+ public String description() {
+ return "Hadder Bot Invite";
+ }
+
+ @Override
+ public String usage() {
+ return "";
+ }
+}
diff --git a/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java
index 5d61ed8..58a61ca 100644
--- a/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java
@@ -39,9 +39,28 @@ public class BanCommand implements Command {
} else if (event.getMessage().getMentionedMembers().size() == 0) {
EmbedBuilder builder = new EmbedBuilder();
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("You have to mention a user!").build()).queue();
- } else {
+ } else if (event.getMessage().getMentionedMembers().size() > 1) {
+ for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) {
+ Member member = event.getMessage().getMentionedMembers().get(i);
+ if (!event.getAuthor().getId().equals(member.getId())) {
+ if (!event.getJDA().getSelfUser().getId().equals(member.getId())) {
+ if (event.getGuild().getSelfMember().canInteract(member)) {
+ event.getGuild().ban(member, 0).reason("Mass Ban by " + event.getAuthor().getAsTag()).queue();
+ } else {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.NO_SELF_PERMISSION, builder).build()).queue();
+ }
+ } else {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("I can not ban myself!").build()).queue();
+ }
+ } else {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("You can't ban yourself.").build()).queue();
+ }
+ }
EmbedBuilder builder = new EmbedBuilder();
- event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("We will be adding multiple banning within a command in the future.").build()).queue();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.INFO, builder).setTitle("✅ Successfully banned ✅").setDescription("I successfully banned " + event.getMessage().getMentionedMembers().size() + " Members!").build()).queue();
}
} else {
EmbedBuilder builder = new EmbedBuilder();
diff --git a/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java
index 74ca429..5d8cba1 100644
--- a/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java
@@ -11,6 +11,7 @@ import net.dv8tion.jda.api.EmbedBuilder;
import net.dv8tion.jda.api.Permission;
import net.dv8tion.jda.api.entities.Member;
+
public class KickCommand implements Command {
@Override
@@ -30,18 +31,37 @@ public class KickCommand implements Command {
}
} else {
EmbedBuilder builder = new EmbedBuilder();
- event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("I can not kick myself").build()).queue();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("I can not kick myself!").build()).queue();
}
} else {
EmbedBuilder builder = new EmbedBuilder();
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("You can't kick yourself.").build()).queue();
}
} else if (event.getMessage().getMentionedMembers().size() == 0) {
- EmbedBuilder builder = new EmbedBuilder();
- event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("You have to mention a user!").build()).queue();
- } else {
- EmbedBuilder builder = new EmbedBuilder();
- event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("We will be adding multiple kicking within a command in the future.").build()).queue();
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("You have to mention a user!").build()).queue();
+ } else if (event.getMessage().getMentionedMembers().size() > 1) {
+ for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) {
+ Member member = event.getMessage().getMentionedMembers().get(i);
+ if (!event.getAuthor().getId().equals(member.getId())) {
+ if (!event.getJDA().getSelfUser().getId().equals(member.getId())) {
+ if (event.getGuild().getSelfMember().canInteract(member)) {
+ event.getGuild().kick(member).reason("Mass Kicked by " + event.getAuthor().getAsTag()).queue();
+ } else {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.NO_SELF_PERMISSION, builder).build()).queue();
+ }
+ } else {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("I can not kick myself!").build()).queue();
+ }
+ } else {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.WARNING, builder).setDescription("You can't kick yourself.").build()).queue();
+ }
+ }
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.INFO, builder).setTitle("✅ Successfully kicked ✅").setDescription("I successfully kicked " + event.getMessage().getMentionedMembers().size() + " Members!").build()).queue();
}
}
}
diff --git a/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java
new file mode 100644
index 0000000..3d1e6bb
--- /dev/null
+++ b/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java
@@ -0,0 +1,46 @@
+package com.bbn.hadder.commands.moderation;
+
+/*
+ * @author Skidder / GregTCLTK
+ */
+
+import com.bbn.hadder.commands.Command;
+import com.bbn.hadder.commands.CommandEvent;
+import com.bbn.hadder.utils.MessageEditor;
+import net.dv8tion.jda.api.EmbedBuilder;
+import net.dv8tion.jda.api.Permission;
+
+public class NickCommand implements Command {
+
+ @Override
+ public void executed(String[] args, CommandEvent event) {
+ if (event.getMember().hasPermission(Permission.NICKNAME_MANAGE)) {
+ if (event.getGuild().getSelfMember().hasPermission(Permission.NICKNAME_MANAGE)) {
+ if (args.length < 1) {
+
+ }
+ } else {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.NO_SELF_PERMISSION, builder).build()).queue();
+ }
+ } else {
+ EmbedBuilder builder = new EmbedBuilder();
+ event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.NO_PERMISSION, builder).build()).queue();
+ }
+ }
+
+ @Override
+ public String[] labels() {
+ return new String[]{"nick"};
+ }
+
+ @Override
+ public String description() {
+ return "Rename a user";
+ }
+
+ @Override
+ public String usage() {
+ return "<@user> ";
+ }
+}
diff --git a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java
index 0923ba1..b058ffa 100644
--- a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java
@@ -12,10 +12,11 @@ import net.dv8tion.jda.api.EmbedBuilder;
public class RebootCommand implements Command {
+
@Override
public void executed(String[] args, CommandEvent event) {
if (event.getAuthor().getId().equals("477141528981012511") || event.getAuthor().getId().equals("261083609148948488")) {
-
+
} else {
EmbedBuilder builder = new EmbedBuilder();
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.Messagetype.NO_PERMISSION, builder).build()).queue();