Merge branch 'master' into i18n
This commit is contained in:
commit
6d766f9150
14 changed files with 213 additions and 45 deletions
22
pom.xml
22
pom.xml
|
|
@ -5,9 +5,19 @@
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<groupId>Hadder</groupId>
|
<groupId>Hadder</groupId>
|
||||||
<artifactId>Hadder</artifactId>
|
<artifactId>Hadder</artifactId>
|
||||||
<version>1.1.0</version>
|
<version>1.1.3</version>
|
||||||
|
|
||||||
<name>Hadder</name>
|
<name>Hadder</name>
|
||||||
|
<inceptionYear>2019</inceptionYear>
|
||||||
|
<description>Hadder is a multi-purpose Discord bot.</description>
|
||||||
|
<url>https://github.com/BigBotNetwork/Hadder</url>
|
||||||
|
|
||||||
|
<licenses>
|
||||||
|
<license>
|
||||||
|
<name>GNU Affero General Public License v3.0</name>
|
||||||
|
<url>https://www.gnu.org/licenses/agpl-3.0.en.html</url>
|
||||||
|
<distribution>repo</distribution>
|
||||||
|
</license>
|
||||||
|
</licenses>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
|
@ -56,7 +66,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.dv8tion</groupId>
|
<groupId>net.dv8tion</groupId>
|
||||||
<artifactId>JDA</artifactId>
|
<artifactId>JDA</artifactId>
|
||||||
<version>4.1.1_108</version>
|
<version>4.1.1_113</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.json</groupId>
|
<groupId>org.json</groupId>
|
||||||
|
|
@ -81,7 +91,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.kohsuke</groupId>
|
<groupId>org.kohsuke</groupId>
|
||||||
<artifactId>github-api</artifactId>
|
<artifactId>github-api</artifactId>
|
||||||
<version>1.106</version>
|
<version>1.108</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.sedmelluq</groupId>
|
<groupId>com.sedmelluq</groupId>
|
||||||
|
|
@ -91,7 +101,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.fasterxml.jackson.core</groupId>
|
<groupId>com.fasterxml.jackson.core</groupId>
|
||||||
<artifactId>jackson-annotations</artifactId>
|
<artifactId>jackson-annotations</artifactId>
|
||||||
<version>2.10.2</version>
|
<version>2.10.3</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
|
|
@ -132,7 +142,7 @@
|
||||||
</plugin>
|
</plugin>
|
||||||
<plugin>
|
<plugin>
|
||||||
<artifactId>maven-site-plugin</artifactId>
|
<artifactId>maven-site-plugin</artifactId>
|
||||||
<version>3.8.2</version>
|
<version>3.9.0</version>
|
||||||
</plugin>
|
</plugin>
|
||||||
<plugin>
|
<plugin>
|
||||||
<artifactId>maven-project-info-reports-plugin</artifactId>
|
<artifactId>maven-project-info-reports-plugin</artifactId>
|
||||||
|
|
|
||||||
|
|
@ -126,7 +126,9 @@ public class Hadder {
|
||||||
new EchoCommand(),
|
new EchoCommand(),
|
||||||
new ServerStatsCommand(),
|
new ServerStatsCommand(),
|
||||||
new ProfileCommand(),
|
new ProfileCommand(),
|
||||||
new CodeCommand()), config, helpCommand);
|
new CodeCommand(),
|
||||||
|
new MoveAllCommand(),
|
||||||
|
new CoronaCommand()), config, helpCommand);
|
||||||
|
|
||||||
builder.addEventListeners(
|
builder.addEventListeners(
|
||||||
new MentionListener(rethink),
|
new MentionListener(rethink),
|
||||||
|
|
|
||||||
|
|
@ -162,5 +162,4 @@ public class AudioManager {
|
||||||
s = s - (minutes * 60);
|
s = s - (minutes * 60);
|
||||||
return (hours == 0 ? "" : hours + ":") + String.format("%02d", minutes) + ":" + String.format("%02d", s);
|
return (hours == 0 ? "" : hours + ":") + String.format("%02d", minutes) + ":" + String.format("%02d", s);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -66,9 +66,7 @@ public class ClydeCommand implements Command {
|
||||||
}
|
}
|
||||||
webhook.delete().queue();
|
webhook.delete().queue();
|
||||||
e.getMessage().delete().queue();
|
e.getMessage().delete().queue();
|
||||||
} else {
|
} else e.getTextChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||||
e.getTextChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
|
||||||
}
|
|
||||||
} else e.getHelpCommand().sendHelp(this, e);
|
} else e.getHelpCommand().sendHelp(this, e);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,6 @@
|
||||||
|
|
||||||
package com.bbn.hadder.commands.general;
|
package com.bbn.hadder.commands.general;
|
||||||
|
|
||||||
import com.bbn.hadder.Hadder;
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
import com.bbn.hadder.utils.MessageEditor;
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
|
|
@ -32,8 +31,8 @@ public class InviteCommand implements Command {
|
||||||
"",
|
"",
|
||||||
"commands.general.invite.success.description",
|
"commands.general.invite.success.description",
|
||||||
"(https://discordapp.com/oauth2/authorize?client_id="
|
"(https://discordapp.com/oauth2/authorize?client_id="
|
||||||
+ Hadder.shardManager.getGuilds().get(0).getSelfMember().getId()
|
+ e.getJDA().getSelfUser().getId()
|
||||||
+ "&scope=bot&permissions=470133879)")
|
+ "&scope=bot&permissions=1043852663)")
|
||||||
.build()).queue();
|
.build()).queue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,69 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2019-2020 GregTCLTK and Schlauer-Hax
|
||||||
|
*
|
||||||
|
* Licensed under the GNU Affero General Public License, Version 3.0;
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* https://www.gnu.org/licenses/agpl-3.0.en.html
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.bbn.hadder.commands.misc;
|
||||||
|
|
||||||
|
import com.bbn.hadder.commands.Command;
|
||||||
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
|
import okhttp3.OkHttpClient;
|
||||||
|
import okhttp3.Request;
|
||||||
|
import okhttp3.Response;
|
||||||
|
import org.json.JSONObject;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
public class CoronaCommand implements Command {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void executed(String[] args, CommandEvent e) {
|
||||||
|
OkHttpClient client = new OkHttpClient();
|
||||||
|
Request request = new Request.Builder().url("https://api.covid.stream/latest/numbers").build();
|
||||||
|
|
||||||
|
try {
|
||||||
|
Response response = client.newCall(request).execute();
|
||||||
|
JSONObject json = new JSONObject(response.body().string()).getJSONObject("data");
|
||||||
|
StringBuilder stringBuilder = new StringBuilder();
|
||||||
|
stringBuilder.append("`Confirmed cases:` **").append(json.get("totalConfirmedNumbers")).append("**\n").append("`Deaths:` **").append(json.get("totalDeathNumbers")).append("** \n").append("`Recovered:` **").append(json.get("totalRecoveredNumbers")).append("** \n");
|
||||||
|
e.getTextChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.INFO).setDescription(stringBuilder).build()).queue();
|
||||||
|
} catch (IOException ex) {
|
||||||
|
e.getTextChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR)
|
||||||
|
.setTitle("API Error")
|
||||||
|
.setDescription("Try again later!")
|
||||||
|
.build()).queue();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String[] labels() {
|
||||||
|
return new String[]{"corona"};
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String description() {
|
||||||
|
return "commands.misc.corona.help.description";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String usage() {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String example() {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -54,12 +54,10 @@ public class GitHubCommand implements Command {
|
||||||
String website = "None";
|
String website = "None";
|
||||||
try {
|
try {
|
||||||
bio = json.getString("bio");
|
bio = json.getString("bio");
|
||||||
} catch (JSONException ignored) {
|
} catch (JSONException ignored) {}
|
||||||
}
|
|
||||||
try {
|
try {
|
||||||
location = json.getString("location");
|
location = json.getString("location");
|
||||||
} catch (JSONException ignored) {
|
} catch (JSONException ignored) {}
|
||||||
}
|
|
||||||
|
|
||||||
if (!json.getString("blog").equals("")) website = json.getString("blog");
|
if (!json.getString("blog").equals("")) website = json.getString("blog");
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,60 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2019-2020 GregTCLTK and Schlauer-Hax
|
||||||
|
*
|
||||||
|
* Licensed under the GNU Affero General Public License, Version 3.0;
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* https://www.gnu.org/licenses/agpl-3.0.en.html
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.bbn.hadder.commands.misc;
|
||||||
|
import com.bbn.hadder.commands.Command;
|
||||||
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
|
import com.bbn.hadder.core.Perm;
|
||||||
|
import com.bbn.hadder.core.Perms;
|
||||||
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
|
|
||||||
|
@Perms(Perm.VOICE_MOVE_OTHERS)
|
||||||
|
public class MoveAllCommand implements Command {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void executed(String[] args, CommandEvent e) {
|
||||||
|
if (args.length == 2) {
|
||||||
|
int count = e.getGuild().getVoiceChannelById(args[0]).getMembers().size();
|
||||||
|
e.getGuild().getVoiceChannelById(args[0]).getMembers().forEach(
|
||||||
|
member -> e.getGuild().moveVoiceMember(member, e.getGuild().getVoiceChannelById(args[1])).queue()
|
||||||
|
);
|
||||||
|
e.getChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.INFO,
|
||||||
|
"commands.misc.moveall.success.title", "",
|
||||||
|
"commands.misc.moveall.success.description", String.valueOf(count))
|
||||||
|
.build()).queue();
|
||||||
|
} else e.getHelpCommand().sendHelp(this, e);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String[] labels() {
|
||||||
|
return new String[]{"moveall", "move-all", "ma"};
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String description() {
|
||||||
|
return "commands.misc.moveall.help.description";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String usage() {
|
||||||
|
return "[source-channel] [target-channel]";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String example() {
|
||||||
|
return "452806287307046923 452858405212782623";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -56,7 +56,7 @@ public class RulesCommand implements Command {
|
||||||
try {
|
try {
|
||||||
TextChannel channel = e1.getGuild().getTextChannelsByName(e1.getMessage().getContentRaw(), true).get(0);
|
TextChannel channel = e1.getGuild().getTextChannelsByName(e1.getMessage().getContentRaw(), true).get(0);
|
||||||
createRules(e, e1, channel);
|
createRules(e, e1, channel);
|
||||||
} catch (NullPointerException ex) {
|
} catch (NullPointerException | IndexOutOfBoundsException ex) {
|
||||||
e.getTextChannel().sendMessage(
|
e.getTextChannel().sendMessage(
|
||||||
e.getMessageEditor().getMessage(
|
e.getMessageEditor().getMessage(
|
||||||
MessageEditor.MessageType.ERROR,
|
MessageEditor.MessageType.ERROR,
|
||||||
|
|
|
||||||
|
|
@ -70,17 +70,22 @@ public class Config {
|
||||||
.key("Tokens").object()
|
.key("Tokens").object()
|
||||||
.key("BotToken").value(null)
|
.key("BotToken").value(null)
|
||||||
.key("Giphy").value(null)
|
.key("Giphy").value(null)
|
||||||
|
.key("GitHub").value(null)
|
||||||
.key("MythicalBotList").value(null)
|
.key("MythicalBotList").value(null)
|
||||||
.key("BotsForDiscord").value(null)
|
.key("BotsForDiscord").value(null)
|
||||||
.key("DiscordBotList").value(null)
|
.key("DiscordBotList").value(null)
|
||||||
.key("DiscordBestBots").value(null)
|
|
||||||
.key("DiscordBoats").value(null)
|
.key("DiscordBoats").value(null)
|
||||||
.key("YetAnotherBotList").value(null)
|
.key("YetAnotherBotList").value(null)
|
||||||
.value("DiscordExtremeList").value(null)
|
.key("DiscordExtremeList").value(null)
|
||||||
.value("DiscordBotReviews").value(null)
|
.key("DiscordBotReviews").value(null)
|
||||||
.value("DiscordBots").value(null)
|
.key("DiscordBots").value(null)
|
||||||
.value("BotListSpace").value(null)
|
.key("BotListSpace").value(null)
|
||||||
.endObject().endObject().toString();
|
.key("DiscordBots2").value(null)
|
||||||
|
.key("CloudList").value(null)
|
||||||
|
.key("Arcane").value(null)
|
||||||
|
.endObject()
|
||||||
|
.key("Clyde").value("Clyde")
|
||||||
|
.endObject().toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getBotToken() {
|
public String getBotToken() {
|
||||||
|
|
@ -143,10 +148,6 @@ public class Config {
|
||||||
return config.getJSONObject("Tokens").getString("DiscordExtremeList");
|
return config.getJSONObject("Tokens").getString("DiscordExtremeList");
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getDiscordBotReviewsToken() {
|
|
||||||
return config.getJSONObject("Tokens").getString("DiscordBotReviews");
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getDiscordBotsToken() {
|
public String getDiscordBotsToken() {
|
||||||
return config.getJSONObject("Tokens").getString("DiscordBots");
|
return config.getJSONObject("Tokens").getString("DiscordBots");
|
||||||
}
|
}
|
||||||
|
|
@ -163,6 +164,10 @@ public class Config {
|
||||||
return config.getJSONObject("Tokens").getString("CloudList");
|
return config.getJSONObject("Tokens").getString("CloudList");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getArcaneToken() {
|
||||||
|
return config.getJSONObject("Tokens").getString("Arcane");
|
||||||
|
}
|
||||||
|
|
||||||
public String getClydeName() {
|
public String getClydeName() {
|
||||||
return config.getString("Clyde");
|
return config.getString("Clyde");
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -26,54 +26,60 @@ public enum Perm {
|
||||||
public boolean check(CommandEvent e) {
|
public boolean check(CommandEvent e) {
|
||||||
return e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
return e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
MANAGE_MESSAGES {
|
MANAGE_MESSAGES {
|
||||||
@Override
|
@Override
|
||||||
public boolean check(CommandEvent e) {
|
public boolean check(CommandEvent e) {
|
||||||
return e.getMember().hasPermission(Permission.MESSAGE_MANAGE) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
return e.getMember().hasPermission(Permission.MESSAGE_MANAGE) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
BAN_MEMBERS {
|
BAN_MEMBERS {
|
||||||
@Override
|
@Override
|
||||||
public boolean check(CommandEvent e) {
|
public boolean check(CommandEvent e) {
|
||||||
return e.getMember().hasPermission(Permission.BAN_MEMBERS) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
return e.getMember().hasPermission(Permission.BAN_MEMBERS) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
KICK_MEMBERS {
|
KICK_MEMBERS {
|
||||||
@Override
|
@Override
|
||||||
public boolean check(CommandEvent e) {
|
public boolean check(CommandEvent e) {
|
||||||
return e.getMember().hasPermission(Permission.KICK_MEMBERS) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
return e.getMember().hasPermission(Permission.KICK_MEMBERS) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
MANAGE_SERVER {
|
MANAGE_SERVER {
|
||||||
@Override
|
@Override
|
||||||
public boolean check(CommandEvent e) {
|
public boolean check(CommandEvent e) {
|
||||||
return e.getMember().hasPermission(Permission.MANAGE_SERVER) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
return e.getMember().hasPermission(Permission.MANAGE_SERVER) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
MANAGE_ROLES {
|
MANAGE_ROLES {
|
||||||
@Override
|
@Override
|
||||||
public boolean check(CommandEvent e) {
|
public boolean check(CommandEvent e) {
|
||||||
return e.getMember().hasPermission(Permission.MANAGE_ROLES) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
return e.getMember().hasPermission(Permission.MANAGE_ROLES) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
MANAGE_NICKNAMES {
|
MANAGE_NICKNAMES {
|
||||||
@Override
|
@Override
|
||||||
public boolean check(CommandEvent e) {
|
public boolean check(CommandEvent e) {
|
||||||
return e.getMember().hasPermission(Permission.NICKNAME_MANAGE) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
return e.getMember().hasPermission(Permission.NICKNAME_MANAGE) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
ADMINISTRATOR {
|
ADMINISTRATOR {
|
||||||
@Override
|
@Override
|
||||||
public boolean check(CommandEvent e) {
|
public boolean check(CommandEvent e) {
|
||||||
return e.getMember().hasPermission(Permission.ADMINISTRATOR) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
return e.getMember().hasPermission(Permission.ADMINISTRATOR) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
MANAGE_WEBHOOKS {
|
MANAGE_WEBHOOKS {
|
||||||
@Override
|
@Override
|
||||||
public boolean check(CommandEvent e) {
|
public boolean check(CommandEvent e) {
|
||||||
return e.getMember().hasPermission(Permission.MANAGE_WEBHOOKS) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
return e.getMember().hasPermission(Permission.MANAGE_WEBHOOKS) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
VOICE_MOVE_OTHERS {
|
||||||
|
@Override
|
||||||
|
public boolean check(CommandEvent e) {
|
||||||
|
return e.getMember().hasPermission(Permission.VOICE_MOVE_OTHERS) || e.getConfig().getOwners().contains(e.getAuthor().getIdLong());
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
public abstract boolean check(CommandEvent e);
|
public abstract boolean check(CommandEvent e);
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,7 @@ import net.dv8tion.jda.api.EmbedBuilder;
|
||||||
import net.dv8tion.jda.api.Permission;
|
import net.dv8tion.jda.api.Permission;
|
||||||
import net.dv8tion.jda.api.entities.ChannelType;
|
import net.dv8tion.jda.api.entities.ChannelType;
|
||||||
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
||||||
|
import net.dv8tion.jda.api.exceptions.ErrorResponseException;
|
||||||
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
|
|
@ -64,13 +65,17 @@ public class CommandListener extends ListenerAdapter {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
e.getAuthor().openPrivateChannel().complete().sendMessage(new EmbedBuilder()
|
try {
|
||||||
.setTitle("No permission")
|
e.getAuthor().openPrivateChannel().complete().sendMessage(new EmbedBuilder()
|
||||||
.setDescription("I need the `MESSAGE EMBED LINKS` permission in order to work!")
|
.setTitle("No permission")
|
||||||
.setColor(Color.RED)
|
.setDescription("I need the `MESSAGE EMBED LINKS` permission in order to work!")
|
||||||
.setFooter("Hadder", "https://bigbotnetwork.com/images/Hadder.png")
|
.setColor(Color.RED)
|
||||||
.setTimestamp(Instant.now())
|
.setFooter("Hadder", "https://bigbotnetwork.com/images/Hadder.png")
|
||||||
.build()).queue();
|
.setTimestamp(Instant.now())
|
||||||
|
.build()).queue();
|
||||||
|
} catch (ErrorResponseException ex) {
|
||||||
|
e.getTextChannel().sendMessage("I need the `MESSAGE EMBED LINKS` permission in order to work!").queue();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
e.getAuthor().openPrivateChannel().complete().sendMessage(new EmbedBuilder()
|
e.getAuthor().openPrivateChannel().complete().sendMessage(new EmbedBuilder()
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,7 @@ public class MentionListener extends ListenerAdapter {
|
||||||
MavenXpp3Reader reader = new MavenXpp3Reader();
|
MavenXpp3Reader reader = new MavenXpp3Reader();
|
||||||
Model model = null;
|
Model model = null;
|
||||||
try {
|
try {
|
||||||
model = reader.read(this.getClass().getClassLoader().getResourceAsStream("pom.xml"));
|
model = reader.read(getClass().getResourceAsStream("pom.xml"));
|
||||||
} catch (IOException | XmlPullParserException ex) {
|
} catch (IOException | XmlPullParserException ex) {
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -40,6 +40,7 @@ public class BotList {
|
||||||
private static String BotListSpace = "https://api.botlist.space/v1/bots/637002314162372639";
|
private static String BotListSpace = "https://api.botlist.space/v1/bots/637002314162372639";
|
||||||
private static String DiscordBots2 = "https://discord.bots.gg/api/v1/bots/637002314162372639/stats";
|
private static String DiscordBots2 = "https://discord.bots.gg/api/v1/bots/637002314162372639/stats";
|
||||||
private static String CloudList = "https://www.cloudlist.xyz/api/stats/637002314162372639";
|
private static String CloudList = "https://www.cloudlist.xyz/api/stats/637002314162372639";
|
||||||
|
private static String ArcaneBotCenter = "https://arcane-botcenter.xyz/api/637002314162372639/stats";
|
||||||
|
|
||||||
private Config config;
|
private Config config;
|
||||||
|
|
||||||
|
|
@ -57,6 +58,7 @@ public class BotList {
|
||||||
json.put("users", Hadder.shardManager.getUsers().size());
|
json.put("users", Hadder.shardManager.getUsers().size());
|
||||||
json.put("shard_count", Hadder.shardManager.getShards().size());
|
json.put("shard_count", Hadder.shardManager.getShards().size());
|
||||||
json.put("shardCount", Hadder.shardManager.getShards().size());
|
json.put("shardCount", Hadder.shardManager.getShards().size());
|
||||||
|
json.put("member_count", Hadder.shardManager.getUsers().size());
|
||||||
|
|
||||||
RequestBody body = RequestBody.create(MediaType.parse("application/json"), json.toString());
|
RequestBody body = RequestBody.create(MediaType.parse("application/json"), json.toString());
|
||||||
|
|
||||||
|
|
@ -209,6 +211,21 @@ public class BotList {
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Arcane Bot Center
|
||||||
|
|
||||||
|
Request arcane = new Request.Builder()
|
||||||
|
.url(ArcaneBotCenter)
|
||||||
|
.post(body)
|
||||||
|
.addHeader("Authorization", config.getArcaneToken())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
try {
|
||||||
|
new OkHttpClient().newCall(arcane).execute().close();
|
||||||
|
System.out.println("Successfully posted count to the Arcane Bot Center!");
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue