diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 5fc6c94..1a0eb28 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -30,17 +30,17 @@ jobs:
uses: garygrossgarten/github-action-scp@release
with:
local: ./target/Hadder-Build.jar
- remote: /home/bots/Hadder/Hadder-Build.jar
+ remote: /home/Hadder-Build.jar
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
- passphrase: ${{ secrets.PASSWORD }}
- privateKey: ${{ secrets.PRIVATE_KEY }}
+ password: ${{ secrets.PASSWORD }}
- name: executing remote ssh commands using password
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.HOST }}
+ username: ${{ secrets.USERNAME }}
+ password: ${{ secrets.PASSWORD }}
port: ${{ secrets.PORT }}
- key: ${{ secrets.PRIVATE_KEY }}
script: /home/deploy.sh
- name: Send Webhook Notification
if: always()
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index bf337ec..a5d1924 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -69,7 +69,7 @@ further defined and clarified by project maintainers.
### Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
-reported by contacting the project team on [Discord](https://discordapp.com/invite/nPwjaJk). All
+reported by contacting the project team on [Discord](https://discordapp.com/invite/58My2dM). All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
diff --git a/README.md b/README.md
index a3aad5d..34413f0 100644
--- a/README.md
+++ b/README.md
@@ -1,61 +1,58 @@
-# Hadder
-
-Hadder Discord is a multi-purpose Discord bot with 100% uptime.
-
-
-[](https://github.com/BigBotNetwork/Hadder)
-[](https://www.codacy.com/gh/BigBotNetwork/Hadder?utm_source=github.com&utm_medium=referral&utm_content=BigBotNetwork/Hadder&utm_campaign=Badge_Grade)
-[](https://www.codefactor.io/repository/github/bigbotnetwork/hadder)
-[](https://bbn.crowdin.com/hadder)
-[](https://github.com/BigBotNetwork/Hadder/issues)
-[](https://github.com/BigBotNetwork/Hadder/blob/master/LICENSE)
-[](https://wakatime.com/badge/github/BigBotNetwork/Hadder)
-
-## Hadder Team
-### Developer
-Skidder#6775
-Hax#6775
-
-## A few commands
-| **Command** | **Description** |
-|----------------|---------------------------------------------------------------|
-| h.about | Shows information about Hadder |
-| h.avatar | Sends the avatar of the specified Member |
-| h.ban | Bans one or more users from the server |
-| h.bass | Change the bass for the song which is played at the moment |
-| h.clear | Deletes the specified number of messages |
-| h.clyde | Sends a message as a webhook named Clyde |
-| h.code | Shows information about a invite code |
-| h.corona | Shows the newest stats of COVID-19 |
-| h.echo | Sends your voice through Hadder |
-| h.editrules | Edits the rules message |
-| h.equals | Checks if two strings are equal |
-| h.feedback | Sends feedback directly to the developers |
-| h.gif | Looks for a GIF on Giphy |
-| h.github | Displays information about a GitHub user profile |
-| h.help | Shows each command and explains its usage |
-| h.info | Shows information about the playing song |
-| h.invite | Shows the invitation link to invite Hadder to your server |
-| h.invitedetect | Activate or deactivate the Discord invite link detection |
-| h.join | Joins your voice channel |
-| h.kick | Kicks one or more user from the server |
-| h.language | Sets the new primary language for a user |
-| h.loop | Repeats a song/queue |
-| h.meme | Sends you a random meme |
-| h.moveall | Moves all users in the source channel to the target channel |
-| h.nick | Rename a one or more user |
-| h.pause | Pause the playing song |
-| h.ping | Shows the ping to the Discord API |
-| h.play | Plays the specified song |
-| h.prefix | Sets the Guild-Prefix |
-| h.profile | Shows some information about the specified user |
-| h.queue | Shows the music queue |
-| h.regionchange | Changes the server region to locked regions |
-| h.role | Adds and removes one or more role(s) from one or more user(s) |
-| h.rules | Setup the rules on your Discord server |
-| h.screenshare | Shows you the link to share your screen |
-| h.serverstats | Shows information about a server |
-| h.skip | Skips the currently playing song |
-| h.starboard | Sets the starboard channel |
-| h.stop | Stops the song |
-| h.volume | Change the volume of the music |
+# Hadder
+
+Hadder Discord is a multi-purpose Discord bot with 100% uptime.
+
+
+[](https://github.com/BigBotNetwork/Hadder)
+[](https://www.codacy.com/gh/BigBotNetwork/Hadder?utm_source=github.com&utm_medium=referral&utm_content=BigBotNetwork/Hadder&utm_campaign=Badge_Grade)
+[](https://www.codefactor.io/repository/github/bigbotnetwork/hadder)
+[](https://bbn.crowdin.com/hadder)
+[](https://github.com/BigBotNetwork/Hadder/issues)
+[](https://github.com/BigBotNetwork/Hadder/blob/master/LICENSE)
+[](https://wakatime.com/badge/github/BigBotNetwork/Hadder)
+
+[](Https://Mythicalbots.Xyz/Bot/637002314162372639)
+[](https://top.gg/bot/637002314162372639)
+[](https://botlist.space/bot/637002314162372639?utm_source=bls&utm_medium=widget&utm_campaign=637002314162372639)
+[](https://discordbotlist.com/bots/637002314162372639)
+[](https://arcane-botcenter.xyz/bot/637002314162372639)
+
+## Hadder Team
+### Developer
+Skidder#6775
+Hax#6775
+
+## A few commands
+| **Command** | **Description** |
+|----------------|---------------------------------------------------------------|
+| h.help | Shows each command and explains its usage. |
+| h.about | Shows information about Hadder. |
+| h.equals | Checks if two strings are the same. |
+| h.invite | Shows the invite link to invite Hadder to your server. |
+| h.ping | Shows the ping to the Discord API. |
+| h.avatar | Sends the avatar of the specified member. |
+| h.gif | Looks for a GIF on Giphy. |
+| h.meme | Sends you a random meme. |
+| h.clyde | Sends a message as a webhook named Clyde. |
+| h.feedback | Sends feedback directly to the developers. |
+| h.github | Displays information about a GitHub user profile. |
+| h.screenshare | Shows you the link to share your screen. |
+| h.ban | Bans one or more users from the server. |
+| h.clear | Deletes the specified number of messages. |
+| h.prefix | Sets the Guild-Prefix. |
+| h.invitedetect | Activate or deactivate the Discord invite link detection. |
+| h.kick | Kicks one or more user from the server. |
+| h.nick | Rename a one or more user. |
+| h.regionchange | Changes the server region to locked regions. |
+| h.role | Adds and removes one or more role(s) from one or more user(s) |
+| h.rules | Setup the rules on your Discord server |
+| h.starboard | Sets the starboard channel. |
+| h.editrules | Edits the rules message. |
+| h.join | Joins your voice channel. |
+| h.leave | Leaves your voice channel. |
+| h.play | Plays the specified song. |
+| h.stop | Stops the song. |
+| h.info | Shows information about the playing song. |
+| h.queue | Shows the music queue. |
+| h.skip | Skips the currently playing song. |
+| h.volume | Change the volume of the music. |
diff --git a/pom.xml b/pom.xml
index f37520e..fd4e686 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
4.0.0
Hadder
Hadder
- 1.3.19
+ 1.3.16
Hadder
2019
Hadder is a multi-purpose Discord bot.
@@ -69,7 +69,7 @@
net.dv8tion
JDA
- 4.2.0_209
+ 4.2.0_194
org.json
@@ -89,7 +89,7 @@
club.minnced
discord-webhooks
- 0.5.0
+ 0.3.2
org.kohsuke
@@ -104,7 +104,7 @@
com.fasterxml.jackson.core
jackson-annotations
- 2.11.3
+ 2.11.2
@@ -149,7 +149,7 @@
maven-project-info-reports-plugin
- 3.1.1
+ 3.1.0
diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java
index 0ce84d5..447e8d0 100644
--- a/src/main/java/com/bbn/hadder/Hadder.java
+++ b/src/main/java/com/bbn/hadder/Hadder.java
@@ -137,7 +137,7 @@ public class Hadder {
new CoronaCommand()), config, helpCommand);
builder.addEventListeners(
- new MentionListener(rethink, config),
+ new MentionListener(rethink),
new PrivateMessageListener(rethink),
new CommandListener(rethink, commandHandler, audioManager),
new GuildListener(rethink, config),
diff --git a/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java b/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java
index 361284b..25f8295 100644
--- a/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java
@@ -70,7 +70,7 @@ public class AvatarCommand implements Command {
} catch (NullPointerException ignore) {
OkHttpClient client = new OkHttpClient();
- Request request = new Request.Builder().url("https://canary.discord.com/api/v8/users/" + args[0]).addHeader("Authorization", "Bot " + e.getConfig().getBotToken()).build();
+ Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/users/" + args[0]).addHeader("Authorization", "Bot " + e.getConfig().getBotToken()).build();
try {
Response response = client.newCall(request).execute();
diff --git a/src/main/java/com/bbn/hadder/commands/general/InviteCommand.java b/src/main/java/com/bbn/hadder/commands/general/InviteCommand.java
index feabf9a..669b3f0 100644
--- a/src/main/java/com/bbn/hadder/commands/general/InviteCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/general/InviteCommand.java
@@ -30,7 +30,7 @@ public class InviteCommand implements Command {
"commands.general.invite.success.title",
"",
"commands.general.invite.success.description",
- "(https://discord.com/oauth2/authorize?client_id="
+ "(https://discordapp.com/oauth2/authorize?client_id="
+ e.getJDA().getSelfUser().getId()
+ "&scope=bot&permissions=1043852663)")
.build()).queue();
diff --git a/src/main/java/com/bbn/hadder/commands/misc/CodeCommand.java b/src/main/java/com/bbn/hadder/commands/misc/CodeCommand.java
index 443331c..9f22e89 100644
--- a/src/main/java/com/bbn/hadder/commands/misc/CodeCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/misc/CodeCommand.java
@@ -31,7 +31,7 @@ public class CodeCommand implements Command {
public void executed(String[] args, CommandEvent e) {
if (args.length > 0) {
OkHttpClient client = new OkHttpClient();
- Request request = new Request.Builder().url("https://canary.discord.com/api/v8/invite/" + args[0] + "?with_counts=true").addHeader("Authorization", "Bot " + e.getConfig().getBotToken()).build();
+ Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invite/" + args[0] + "?with_counts=true").addHeader("Authorization", "Bot " + e.getConfig().getBotToken()).build();
try {
Response response = client.newCall(request).execute();
@@ -77,6 +77,6 @@ public class CodeCommand implements Command {
@Override
public String example() {
- return "nPwjaJk";
+ return "58My2dM";
}
}
diff --git a/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java b/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java
index 65cd24d..fd7a584 100644
--- a/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java
@@ -36,7 +36,7 @@ public class ScreenShareCommand implements Command {
e.getChannel().sendMessage(e.getMessageEditor().getMessage(
MessageEditor.MessageType.INFO,
"commands.misc.screenshare.success.title", "")
- .setDescription("http://discord.com/channels/" + e.getGuild().getId() + "/" + args[0] + "/").build()).queue();
+ .setDescription("http://discordapp.com/channels/" + e.getGuild().getId() + "/" + args[0] + "/").build()).queue();
} else {
e.getChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR, "commands.misc.screenshare.id.error.title", "commands.misc.screenshare.id.error.description").build()).queue();
e.getHelpCommand().sendHelp(this, e);
@@ -55,7 +55,7 @@ public class ScreenShareCommand implements Command {
int i = Integer.parseInt(msge.getMessage().getContentRaw());
if (vcs.size() > i) {
e.getChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.INFO, "commands.misc.screenshare.success.title", "")
- .setDescription("http://discord.com/channels/" + e.getGuild().getId() + "/" + vcs.get(i).getId() + "/").build()).queue();
+ .setDescription("http://discordapp.com/channels/" + e.getGuild().getId() + "/" + vcs.get(i).getId() + "/").build()).queue();
} else {
e.getChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR, "commands.misc.screenshare.number.error.title", "").build()).queue();
e.getHelpCommand().sendHelp(this, e);
@@ -70,7 +70,7 @@ public class ScreenShareCommand implements Command {
e.getHelpCommand().sendHelp(this, e);
} else {
e.getChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.INFO, "commands.misc.screenshare.success.title", "")
- .setDescription("http://discord.com/channels/" + e.getGuild().getId() + "/" + vcs.get(0).getId() + "/").build()).queue();
+ .setDescription("http://discordapp.com/channels/" + e.getGuild().getId() + "/" + vcs.get(0).getId() + "/").build()).queue();
}
}
} else e.getHelpCommand().sendHelp(this, e);
diff --git a/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java
index 8b876d1..bd1e4cd 100644
--- a/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java
@@ -68,14 +68,13 @@ public class InviteDetectCommand implements Command {
break;
default:
e.getHelpCommand().sendHelp(this, e);
- break;
}
} else e.getHelpCommand().sendHelp(this, e);
}
@Override
public String[] labels() {
- return new String[]{"invitedetect", "detectinvite", "invite-detect"};
+ return new String[]{"invitedetect", "detectinvite"};
}
@Override
diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RoleAssignmentCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RoleAssignmentCommand.java
new file mode 100644
index 0000000..601b6cf
--- /dev/null
+++ b/src/main/java/com/bbn/hadder/commands/moderation/RoleAssignmentCommand.java
@@ -0,0 +1,57 @@
+/*
+ * 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.moderation;
+
+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;
+import net.dv8tion.jda.api.Permission;
+
+@Perms(Perm.MANAGE_ROLES)
+public class RoleAssignmentCommand implements Command {
+
+ @Override
+ public void executed(String[] args, CommandEvent e) {
+ //TODO: THIS LOL
+ if (e.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES)) {
+
+ } else
+ e.getTextChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
+ }
+
+ @Override
+ public String[] labels() {
+ return new String[0];
+ }
+
+ @Override
+ public String description() {
+ return null;
+ }
+
+ @Override
+ public String usage() {
+ return null;
+ }
+
+ @Override
+ public String example() {
+ return null;
+ }
+}
diff --git a/src/main/java/com/bbn/hadder/commands/music/SkipCommand.java b/src/main/java/com/bbn/hadder/commands/music/SkipCommand.java
index 5695395..f7bd31c 100644
--- a/src/main/java/com/bbn/hadder/commands/music/SkipCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/music/SkipCommand.java
@@ -32,12 +32,7 @@ public class SkipCommand implements Command {
"commands.music.skip.success.title",
"commands.music.skip.success.description").build()).queue();
} else {
- e.getAudioManager().getTrackManager(e.getGuild()).setLoop(false);
- e.getAudioManager().forceSkipTrack(e);
- e.getAudioManager().getTrackManager(e.getGuild()).setLoop(true);
- e.getTextChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.INFO,
- "commands.music.skip.success.title",
- "commands.music.skip.success.description").build()).queue();
+ e.getTextChannel().sendMessage("Get rekt lol Mach Loop aus noob").queue();
}
} else {
e.getTextChannel().sendMessage(e.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR,
diff --git a/src/main/java/com/bbn/hadder/commands/owner/BlacklistCommand.java b/src/main/java/com/bbn/hadder/commands/owner/BlacklistCommand.java
index 4d5da6c..d385d22 100644
--- a/src/main/java/com/bbn/hadder/commands/owner/BlacklistCommand.java
+++ b/src/main/java/com/bbn/hadder/commands/owner/BlacklistCommand.java
@@ -45,7 +45,7 @@ public class BlacklistCommand implements Command {
String blacklisted = e.getRethinkUser().getBlacklisted();
List commands = new ArrayList<>();
if (!"none".equals(blacklisted)) commands.addAll(Arrays.asList(blacklisted.split(",")));
- if (args[0].equalsIgnoreCase("add")) commands.addAll(Arrays.asList(args[1].split(",")));
+ if (args[0].toLowerCase().equals("add")) commands.addAll(Arrays.asList(args[1].split(",")));
else commands.removeAll(Arrays.asList(args[1].split(",")));
LinkedHashSet hashSet = new LinkedHashSet<>(commands);
diff --git a/src/main/java/com/bbn/hadder/listener/GuildListener.java b/src/main/java/com/bbn/hadder/listener/GuildListener.java
index 40db876..4a62731 100644
--- a/src/main/java/com/bbn/hadder/listener/GuildListener.java
+++ b/src/main/java/com/bbn/hadder/listener/GuildListener.java
@@ -48,7 +48,7 @@ public class GuildListener extends ListenerAdapter {
}).start();
rethink.insertGuild(e.getGuild().getId());
- e.getJDA().getTextChannelById("759783393230979142").sendMessage(new MessageEditor(null, null).getMessage(MessageEditor.MessageType.INFO)
+ e.getJDA().getTextChannelById("475722540140986369").sendMessage(new MessageEditor(null, null).getMessage(MessageEditor.MessageType.INFO)
.setTitle("Joined Server")
.setThumbnail(e.getGuild().getIconUrl())
.addField("Name", e.getGuild().getName(), true)
@@ -63,7 +63,7 @@ public class GuildListener extends ListenerAdapter {
}
public void onGuildLeave(GuildLeaveEvent e) {
- e.getJDA().getTextChannelById("759783393230979142").sendMessage(new MessageEditor(null, null).getMessage(MessageEditor.MessageType.INFO)
+ e.getJDA().getTextChannelById("475722540140986369").sendMessage(new MessageEditor(null, null).getMessage(MessageEditor.MessageType.INFO)
.setTitle("Left Server")
.setThumbnail(e.getGuild().getIconUrl())
.addField("Name", e.getGuild().getName(), true)
diff --git a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java
index f845009..69dddfd 100644
--- a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java
+++ b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java
@@ -20,8 +20,6 @@ import com.bbn.hadder.db.Rethink;
import com.bbn.hadder.db.RethinkServer;
import net.dv8tion.jda.api.Permission;
import net.dv8tion.jda.api.entities.ChannelType;
-import net.dv8tion.jda.api.entities.Guild;
-import net.dv8tion.jda.api.entities.Member;
import net.dv8tion.jda.api.entities.Message;
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
import net.dv8tion.jda.api.events.message.MessageUpdateEvent;
@@ -43,14 +41,21 @@ public class InviteLinkListener extends ListenerAdapter {
@Override
public void onMessageReceived(@Nonnull MessageReceivedEvent e) {
- if (e.isFromType(ChannelType.TEXT)) scanMessage(e.getGuild(), e.getMessage(), e.getMember());
+ if (e.isFromType(ChannelType.TEXT)) {
+ RethinkServer rethinkServer = new RethinkServer(rethink.getObjectByID("server", e.getGuild().getId()), rethink);
+ if (e.getMessage().getContentRaw().contains("discord.gg/") && (!e.getMember().hasPermission(Permission.ADMINISTRATOR) && rethinkServer.hasInviteDetect())) {
+ checkInvite(e.getMessage(), "discord.gg/");
+ } else if (e.getMessage().getContentRaw().contains("discordapp.com/invite") && !e.getMember().hasPermission(Permission.ADMINISTRATOR) && rethinkServer.hasInviteDetect()) {
+ checkInvite(e.getMessage(), "discordapp.com/invite/");
+ }
+ }
}
public void checkInvite(Message message, String regex) {
String split = message.getContentRaw().split(regex, 10)[1];
String invite = split.split(" ")[0];
OkHttpClient client = new OkHttpClient();
- Request request = new Request.Builder().url("https://canary.discord.com/api/v8/invites/" + invite).build();
+ Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build();
try {
Response response = client.newCall(request).execute();
JSONObject json = new JSONObject(response.body().string());
@@ -64,17 +69,13 @@ public class InviteLinkListener extends ListenerAdapter {
@Override
public void onMessageUpdate(@Nonnull MessageUpdateEvent e) {
- if (e.isFromType(ChannelType.TEXT)) scanMessage(e.getGuild(), e.getMessage(), e.getMember());
- }
-
- public void scanMessage(Guild guild, Message message, Member member) {
- RethinkServer rethinkServer = new RethinkServer(rethink.getObjectByID("server", guild.getId()), rethink);
- if (message.getContentRaw().contains("discord.gg/") && !member.hasPermission(Permission.ADMINISTRATOR) && rethinkServer.hasInviteDetect()) {
- checkInvite(message, "discord.gg/");
- } else if (message.getContentRaw().contains("discord.com/invite") && !member.hasPermission(Permission.ADMINISTRATOR) && rethinkServer.hasInviteDetect()) {
- checkInvite(message, "discord.com/invite/");
- } else if (message.getContentRaw().contains("discordapp.com/invite") && !member.hasPermission(Permission.ADMINISTRATOR) && rethinkServer.hasInviteDetect()) {
- checkInvite(message, "discordapp.com/invite/");
+ if (e.isFromType(ChannelType.TEXT)) {
+ RethinkServer rethinkServer = new RethinkServer(rethink.getObjectByID("server", e.getGuild().getId()), rethink);
+ if (e.getMessage().getContentRaw().contains("discord.gg/") && !e.getMember().hasPermission(Permission.ADMINISTRATOR) && rethinkServer.hasInviteDetect()) {
+ checkInvite(e.getMessage(), "discord.gg/");
+ } else if (e.getMessage().getContentRaw().contains("discordapp.com/invite") && !e.getMember().hasPermission(Permission.ADMINISTRATOR) && rethinkServer.hasInviteDetect()) {
+ checkInvite(e.getMessage(), "discordapp.com/invite/");
+ }
}
}
}
diff --git a/src/main/java/com/bbn/hadder/listener/MentionListener.java b/src/main/java/com/bbn/hadder/listener/MentionListener.java
index 81c7c8f..16b2b19 100644
--- a/src/main/java/com/bbn/hadder/listener/MentionListener.java
+++ b/src/main/java/com/bbn/hadder/listener/MentionListener.java
@@ -16,7 +16,6 @@
package com.bbn.hadder.listener;
-import com.bbn.hadder.core.Config;
import com.bbn.hadder.db.Rethink;
import com.bbn.hadder.db.RethinkServer;
import com.bbn.hadder.db.RethinkUser;
@@ -24,8 +23,9 @@ import net.dv8tion.jda.api.EmbedBuilder;
import net.dv8tion.jda.api.entities.ChannelType;
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
import net.dv8tion.jda.api.hooks.ListenerAdapter;
-import org.kohsuke.github.GHRepository;
-import org.kohsuke.github.GitHub;
+import org.apache.maven.model.Model;
+import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import javax.annotation.Nonnull;
import java.io.IOException;
@@ -34,11 +34,9 @@ import java.util.Random;
public class MentionListener extends ListenerAdapter {
private Rethink rethink;
- private Config config;
- public MentionListener(Rethink rethink, Config config) {
+ public MentionListener(Rethink rethink) {
this.rethink = rethink;
- this.config = config;
}
@Override
@@ -49,24 +47,32 @@ public class MentionListener extends ListenerAdapter {
if (e.isFromType(ChannelType.TEXT) && (e.getMessage().getContentRaw().equals(e.getGuild().getSelfMember().getAsMention()) ||
e.getMessage().getContentRaw().equals(e.getGuild().getSelfMember().getAsMention().replace("@", "@!")))) {
- String version = null;
-
+ MavenXpp3Reader reader = new MavenXpp3Reader();
+ Model model = null;
try {
- GitHub connection = GitHub.connectUsingOAuth(config.getGitHubToken());
- GHRepository Hadder = connection.getOrganization("BigBotNetwork").getRepository("Hadder");
- version = Hadder.getLatestRelease().getTagName();
- } catch (IOException ioException) {
- ioException.printStackTrace();
+ model = reader.read(getClass().getResourceAsStream("pom.xml"));
+ } catch (IOException | XmlPullParserException ex) {
+ ex.printStackTrace();
}
-
EmbedBuilder builder = new EmbedBuilder()
.setTitle("Hi!")
- .addField("Version", version, false)
+ .addField("Version", model.getVersion(), false)
.addField("User-Prefix", rethinkUser.getPrefix(), true)
- .addField("Guild-Prefix", rethinkServer.getPrefix(), true)
- .addField("Join our Dev Server!", "[Click here!](https://discord.gg/nPwjaJk)", true)
- .addField("Github", "[Click here!](https://github.com/BigBotNetwork/Hadder)", false)
- .addField("Twitch", "[Click here!](https://www.twitch.tv/bigbotnetwork)", false);
+ .addField("Guild-Prefix", rethinkServer.getPrefix(), true);
+ StringBuilder stringBuilder = new StringBuilder();
+ model.getDependencies().forEach(
+ dependency -> stringBuilder.append(dependency.getArtifactId()).append(" - ").append(dependency.getVersion()).append("\n")
+ );
+ builder.addField("Dependencies", stringBuilder.toString(), false);
+ StringBuilder devs = new StringBuilder();
+ //TODO: Fix Mail stuff
+ model.getDevelopers().forEach(
+ developer -> devs.append(developer.getId()).append(" - [Website](").append(developer.getUrl()).append("), [E-Mail](https://hax.bigbotnetwork.de/redirect.html?url=mailto:").append(developer.getEmail()).append(")\n")
+ );
+ builder.addField("Developer", devs.toString(), false);
+ builder.addField("Join our Dev Server!", "[Click here!](https://discord.gg/58My2dM)", true);
+ builder.addField("Github", "[Click here!](https://github.com/BigBotNetwork/Hadder)", false);
+ builder.addField("Twitch", "[Click here!](https://www.twitch.tv/bigbotnetwork)", false);
e.getChannel().sendMessage(builder.build()).queue();
} else if (e.getMessage().getContentRaw().equalsIgnoreCase("@someone")) {
int member = new Random().nextInt(e.getGuild().getMembers().size() - 1);
diff --git a/src/main/resources/Translations/Translations_de.properties b/src/main/resources/Translations/Translations_de.properties
index 1f826d7..83feb11 100644
--- a/src/main/resources/Translations/Translations_de.properties
+++ b/src/main/resources/Translations/Translations_de.properties
@@ -23,19 +23,19 @@ success\! = Erfolgreich\!
commands.fun.avatar.success.title = Avatar von %extra%
commands.fun.avatar.error.title = Benutzer nicht gefunden
commands.fun.avatar.error.description = Ich kann keinen Benutzer mit dieser ID finden\!
-commands.fun.avatar.help.description = Sendet das Avatar des angegebenen Mitglieds.
-commands.fun.gif.error.description = Bitte versuche es mit einem anderen Begriff erneut.
-commands.fun.gif.help.description = Sucht nach einem GIF auf Giphy.
+commands.fun.avatar.help.description = Sendet das Avatar des angegebenen Mitglieds
+commands.fun.gif.error.description = Bitte versuche es mit einem anderen Begriff erneut
+commands.fun.gif.help.description = Sucht nach einem GIF auf Giphy
commands.fun.meme.success.title = Dein zufälliges Meme\:
commands.fun.meme.api.error = Die Anfrage an die Meme-API konnte nicht verarbeitet werden. Bitte versuche es später erneut.
-commands.fun.meme.help.description = Sendet dir einen zufälligen Meme.
-commands.fun.clyde.help.description = Sendet eine Nachricht als Webhook namens Clyde.
+commands.fun.meme.help.description = Sendet dir einen zufälligen Meme
+commands.fun.clyde.help.description = Sendet eine Nachricht als Webhook namens Clyde
commands.general.about.success.title = Hadder - Info
-commands.general.about.success.description = Hadder ist ein Open-Source Discord Bot.
+commands.general.about.success.description = Hadder ist ein Open-Source Discord Bot
commands.general.about.success.field.one.title = Unterstütze die Entwickler
commands.general.about.success.field.one.description = Hadder ist für alle völlig kostenlos. Wir würden es begrüßen, wenn du etwas Geld an uns spendest. Klicken [hier]%extra%, um zu spenden.
-commands.general.about.help.description = Zeigt Informationen über Hadder.
+commands.general.about.help.description = Zeigt Informationen über Hadder
commands.general.equals.string.first.request = Bitte sende mir den ersten String.
commands.general.equals.string.second.request = Bitte sende mir den zweiten String.
commands.general.equals.string.equals.true = Ja\! Der erste String entspricht dem zweiten String\!
@@ -43,24 +43,24 @@ commands.general.equals.string.equals.false = Ja, aber eigentlich nein. Das ist
commands.general.equals.string.first = Erster String\:
commands.general.equals.string.second = Zweiter String\:
commands.general.equals.string.result = Ergebnis\:
-commands.general.equals.help.description = Checks if two strings are equal.
+commands.general.equals.help.description = Checks if two strings are equal
commands.general.help.description = **Beschreibung\:**
commands.general.help.usage = **Benutzung\:**
commands.general.help.example = **Beispiel\:**
commands.general.help.error.description = Ich brauche die Links Einbetten Berechtigung, um das Hilfe-Menü zu senden\!
-commands.general.help.help.description = Zeigt jeden Befehl an und erklärt seine Verwendung.
+commands.general.help.help.description = Zeigt jeden Befehl an und erklärt seine Verwendung
commands.general.help.help.label = [Name des Commands]
commands.general.invite.success.title = Lade mich ein\!
commands.general.invite.success.description = [Lade mich hier ein\!]%extra%
-commands.general.invite.help.description = Zeigt den Einladungslink an, um Hadder auf deinen Server einzuladen.
-commands.general.ping.help.description = Zeigt den Ping zur Discord API.
+commands.general.invite.help.description = Zeigt den Einladungslink an, um Hadder auf deinen Server einzuladen
+commands.general.ping.help.description = Zeigt den Ping zur Discord API
commands.misc.feedback.title.request.title = Feedback-Thema
commands.misc.feedback.title.request.description = Bitte senden Sie mir das Thema des Feedbacks.
commands.misc.feedback.description.request.title = Feedback Beschreibung
commands.misc.feedback.description.request.description = Bitte senden Sie mir jetzt die Feedback Beschreibung.
commands.misc.feedback.success.title = Feedback erfolgreich gesendet\!
-commands.misc.feedback.help.description = Sendet Feedback direkt an die Entwickler.
+commands.misc.feedback.help.description = Sendet Feedback direkt an die Entwickler
commands.misc.github.link.title = Verbinde dein GitHub Konto
commands.misc.github.success.title = Informationen über %extra%
commands.misc.github.success.bio = Biographie
@@ -76,7 +76,7 @@ commands.misc.github.user.error.title = Benutzer existiert nicht
commands.misc.github.user.error.description = Ich kann keinen Benutzer finden der so heißt\!
commands.misc.github.connect.title = Verbinde dein GH Konto
commands.misc.github.connect.description = [Bitte verbinde dein GitHub-Konto hier]%extra%
-commands.misc.github.help.description = Zeigt Informationen über ein GitHub Benutzerprofil an.
+commands.misc.github.help.description = Zeigt Informationen über ein GitHub Benutzerprofil an
commands.misc.screenshare.success.title = Hier ist deine URL, um deinen Bildschirm zu teilen
commands.misc.screenshare.id.error.title = Warte. Das ist illegal.
commands.misc.screenshare.id.error.description = Diese ID ist ungültig. \nVielleicht hast du eine falsche ID eingegeben. \n\nHinweis\: Stelle sicher, dass der Sprachkanal auf diesem Server ist.
@@ -86,18 +86,18 @@ commands.misc.screenshare.number.error.title = Du hast eine falsche Nummer angeg
commands.misc.screenshare.number.error.description = Dies ist keine Zahl.
commands.misc.screenshare.channel.existing.error = Warte ma'
commands.misc.screenshare.channel.existing.description = Es existiert kein Sprachkanal mit diesem Namen. \n\nHinweis\: Stelle sicher, dass der Sprachkanal auf diesem Server ist.
-commands.misc.screenshare.help.description = Zeigt dir den Link zum Teilen deines Bildschirms.
+commands.misc.screenshare.help.description = Zeigt dir den Link zum Teilen deines Bildschirms
commands.misc.serverstats.title = Serverstatistiken
commands.misc.serverstats.description = Diese Nachricht enthält einige Informationen über `&extra&`
-commands.misc.serverstats.help.description = Zeigt Informationen über einen Server.
+commands.misc.serverstats.help.description = Zeigt Informationen über einen Server
commands.misc.profile.error.title = Nicht gefunden
commands.misc.profile.error.description = Ich kann den angegebenen Benutzer nicht finden.
-commands.misc.profile.help.description = Zeigt einige Informationen über den angegebenen Benutzer.
+commands.misc.profile.help.description = Zeigt einige Informationen über den angegebenen Benutzer
commands.misc.code.success.title = Informationen zum Einladungscode
commands.misc.code.success.description = Diese Nachricht enthält einige Informationen über den angegebenen Einladungscode.
commands.misc.code.error.title = Code nicht gefunden
commands.misc.code.error.description = Ich kann den angegebenen Einladungscode nicht finden.
-commands.misc.code.help.description = Zeigt Informationen über einen Einladungs-Code.
+commands.misc.code.help.description = Zeigt Informationen über einen Einladungs-Code
commands.misc.moveall.success.title = Erfolgreich verschoben
commands.misc.moveall.success.description = Ich habe erfolgreich %extra% Mitglieder verschoben. Viel Spaß\!
commands.misc.moveall.error.equals.title = Nicht zweimal
@@ -106,7 +106,7 @@ commands.misc.moveall.error.source.int.title = Ungültige ID
commands.misc.moveall.error.source.int.description = You haven't specified an ID as the source channel.
commands.misc.moveall.error.target.int.title = Ungültige ID
commands.misc.moveall.error.target.int.description = You haven't specified an ID as the target channel.
-commands.misc.moveall.help.description = Verschiebt alle Benutzer des Ursprungskanals in den Zielkanal.
+commands.misc.moveall.help.description = Verschiebt alle Benutzer des Ursprungskanals in den Zielkanal
commands.misc.corona.help.description = Zeigt die neuesten Statistiken von COVID-19
commands.moderation.ban.success.title = Erfolgreich gebannt
@@ -115,7 +115,7 @@ commands.moderation.ban.error.title = Nicht möglich
commands.moderation.ban.myself.error.description = Ich kann mich nicht selbst bannen\!
commands.moderation.ban.yourself.error.description = Du kannst dich nicht selbst bannen\!
commands.moderation.ban.massban.success.description = Ich habe erfolgreich %extra% Mitglieder gebannt\!
-commands.moderation.ban.help.description = Bannt einen oder mehrere Benutzer vom Server.
+commands.moderation.ban.help.description = Bannt einen oder mehrere Benutzer vom Server
commands.moderation.clear.all.success.title = Erfolgreich gelöscht
commands.moderation.clear.all.success.description = Ich habe erfolgreich %extra% Nachrichten gelöscht.
commands.moderation.clear.number.error.title = Ungültige Nummer
@@ -125,11 +125,11 @@ commands.moderation.clear.success.description.singular = Nachricht erfolgreich g
commands.moderation.clear.success.description.plural = Ich habe erfolgreich %extra% Nachrichten gelöscht.
commands.moderation.clear.message.error.title = Keine Nachrichten\!
commands.moderation.clear.message.error.description = Es gibt keine Nachrichten in diesem Kanal.
-commands.moderation.clear.help.description = Löscht die angegebene Anzahl von Nachrichten.
+commands.moderation.clear.help.description = Löscht die angegebene Anzahl von Nachrichten
commands.moderation.prefix.success.title = Erfolgreich festgelegt
commands.moderation.prefix.success.description = Ich habe erfolgreich den neuen Prefix für den Server auf `%extra% ` gesetzt.
commands.moderation.prefix.error.description = Der Prefix darf nicht **"** enthalten
-commands.moderation.prefix.help.description = Legt den Guild-Prefix fest.
+commands.moderation.prefix.help.description = Legt den Guild-Prefix fest
commands.moderation.invitedetect.activate.success.title = Erfolgreich aktiviert
commands.moderation.invitedetect.activate.success.description = Ich habe erfolgreich die Erkennung für Einladungslinks auf diesem Server aktiviert.
commands.moderation.invitedetect.activate.error.title = Bereits aktiviert
@@ -138,24 +138,24 @@ commands.moderation.invitedetect.deactivate.success.title = Erfolgreich deaktivi
commands.moderation.invitedetect.deactivate.success.description = Ich habe erfolgreich die Erkennung für Einladungslinks auf diesem Server deaktiviert.
commands.moderation.invitedetect.deactivate.error.title = Bereits deaktiviert
commands.moderation.invitedetect.deactivate.error.description = Die Erkennung von Einladungs-Links ist auf diesem Server bereits deaktiviert.
-commands.moderation.invitedetect.help.description = Aktiviert oder deaktiviert die Discord Einladungserkennung.
+commands.moderation.invitedetect.help.description = Aktiviert oder deaktiviert die Discord Einladungserkennung
commands.moderation.kick.success.title = %extra% Erfolgreich gekickt %extra%
commands.moderation.kick.success.description = Ich habe %extra% erfolgreich gekickt.
commands.moderation.kick.error.title = Nicht möglich
commands.moderation.kick.myself.error.description = Ich kann mich nicht selbst kicken\!
commands.moderation.kick.yourself.error.description = Du kannst dich nicht selbst kicken.
commands.moderation.kick.mass.success.description = Ich habe %extra% Mitglieder erfolgreich gekickt\!
-commands.moderation.kick.help.description = Wirft einen oder mehrere Benutzer vom Server.
+commands.moderation.kick.help.description = Wirft einen oder mehrere Benutzer vom Server
commands.moderation.kick.masskick.success.description = Ich habe %extra% Mitglieder erfolgreich gekickt.
commands.moderation.nick.success.title = Erfolgreich umbenannt
commands.moderation.nick.success.description = Ich habe %extra% erfolgreich umbenannt.
commands.moderation.nick.myself.success.description = Ich habe meinen Spitznamen erfolgreich geändert.
commands.moderation.nick.massnick.success.description = Ich habe erfolgreich %extra% Mitglieder umbenannt.
-commands.moderation.nick.help.description = Benennt einen oder mehrere Benutzer um.
+commands.moderation.nick.help.description = Benennt einen oder mehrere Benutzer um
commands.moderation.regionchange.regions.title = Alle Regionen
commands.moderation.regionchange.success.title = Region erfolgreich gesetzt
commands.moderation.regionchange.success.description = Ich habe die neue Serverregion erfolgreich zu %extra% geändert.
-commands.moderation.regionchange.help.description = Ändert die Server Region zu gesperrten Regionen.
+commands.moderation.regionchange.help.description = Ändert die Server Region zu gesperrten Regionen
commands.moderation.role.add.success.title = Rolle(n) erfolgreich hinzugefügt
commands.moderation.role.add.success.description = Ich habe %extra% Rollen zu %extra_two% Mitgliedern hinzugefügt.
commands.moderation.role.remove.success.title = Rolle(n) erfolgreich entfernt
@@ -194,7 +194,7 @@ commands.moderation.rules.error.interact.title = Kein Zugriff
commands.moderation.rules.error.interact.description = Ich kann auf die angegebene Rolle nicht zugreifen. Stelle sicher, dass meine Rolle höher als die angegebene Rolle ist.
commands.moderation.rules.help.description = Richte Regeln auf deinem Discord Server ein
commands.moderation.starboard.success.title = Kanal erfolgreich festgelegt\!
-commands.moderation.starboard.help.description = Legt den Kanal für das Starboard fest.
+commands.moderation.starboard.help.description = Legt den Kanal für das Starboard fest
commands.moderation.editrules.channel.title = Kanal der Regeln
commands.moderation.editrules.channel.description = Please send me the channel with the rules as mention
commands.moderation.editrules.channel.found.error.title = Kanal konnte nicht gefunden werden
@@ -207,11 +207,11 @@ commands.moderation.editrules.error.title = Keine Regeln
commands.moderation.editrules.error.description = There is nor rules message in this server. Please setup the rules first with %extra%rules
commands.moderation.editrules.success.title = Erfolgreich geändert
commands.moderation.editrules.success.description = Ich habe erfolgreich die Regeln geändert
-commands.moderation.editrules.help.description = Bearbeitet die Regelnachricht.
+commands.moderation.editrules.help.description = Bearbeitet die Regelnachricht
commands.music.bass.error.connected.title = Kein Kanal
commands.music.bass.error.connected.description = Du musst im selben Sprachkanal wie der Bot sein, um den Bass zu ändern.
-commands.music.bass.help.description = Ändere den Bass für den Song, welcher gerade abgespielt wird.
+commands.music.bass.help.description = Ändere den Bass für den Song, welcher gerade abgespielt wird
commands.music.join.success.title = Erfolgreich verbunden
commands.music.join.success.description = Ich habe mich erfolgreich mit %extra% verbunden.
commands.music.join.error.connecting.already.title = Bereits verbunden
@@ -222,7 +222,7 @@ commands.music.join.error.channel.title = Kein Sprachkanal
commands.music.join.error.channel.description = Du befindest dich nicht in einem Sprachkanal.
commands.music.join.error.permission.title = Keine Berechtigung
commands.music.join.error.permission.description = Ich bin nicht Berechtigt deinem Sprachkanal beizutreten.
-commands.music.join.help.description = Tritt deinem Sprachkanal bei.
+commands.music.join.help.description = Tritt deinem Sprachkanal bei
commands.music.play.load.title = %extra% Now loading %extra%
commands.music.play.load.description = Versuche das Lied zu laden...
commands.music.play.success.loading.title = %extra% Jetzt läuft %extra%
@@ -239,67 +239,67 @@ commands.music.play.success.unpause.title = Erfolgreich fortgesetzt
commands.music.play.success.unpause.description = Ich habe erfolgreich den Song fortgesetzt.
commands.music.play.error.connected.title = Kein Kanal
commands.music.play.error.connected.description = Du musst im selben Sprachkanal wie der Bot sein, um den Song fortzusetzen.
-commands.music.play.help.description = Spielt den angegebenen Song ab.
+commands.music.play.help.description = Spielt den angegebenen Song ab
commands.music.stop.success.title = Erfolgreich gestoppt
commands.music.stop.success.description = Ich habe den Song erfolgreich gestoppt.
commands.music.stop.error.connected.title = Kein Kanal
commands.music.stop.error.connected.description = Du musst im selben Sprachkanal wie der Bot sein, um ein Lied anzuhalten.
-commands.music.stop.help.description = Stoppt den Song.
+commands.music.stop.help.description = Stoppt den Song
commands.music.info.success.title = Informationen zum Lied
commands.music.info.error.title = Es wird kein Lied abgespielt
commands.music.info.error.description = Ich spiele im Moment nichts
-commands.music.info.help.description = Zeigt Informationen über das abgespielte Lied.
+commands.music.info.help.description = Zeigt Informationen über das abgespielte Lied
commands.music.queue.error.title = Keine Warteschlange
commands.music.queue.error.description = Momentan sind keine Lieder in der Warteschlange
commands.music.queue.success.title = Warteschlange %extra%
commands.music.queue.success.description = Dies ist die Warteschlange\: \n %extra%
-commands.music.queue.help.description = Zeigt die Musik Warteschlange.
+commands.music.queue.help.description = Zeigt die Musik Warteschlange
commands.music.skip.success.title = Erfolgreich übersprungen
commands.music.skip.success.description = Ich habe erfolgreich zum nächsten Song übersprungen
commands.music.skip.error.connected.title = Kein Kanal
commands.music.skip.error.connected.description = Du musst im selben Sprachkanal wie der Bot sein, um ein Lied zu überspringen.
-commands.music.skip.help.description = Überspringt den gerade abgespielten Song.
+commands.music.skip.help.description = Überspringt den gerade abgespielten Song
commands.music.volume.success.title = Erfolgreich festgelegt
commands.music.volume.success.description = Die Lautstärke wurde erfolgreich auf %extra% gesetzt
commands.music.volume.error.int.title = Ungültige Nummer
commands.music.volume.error.int.description = Die Lautstärke muss zwischen 1 und 200 liegen
commands.music.volume.error.connected.title = Kein Kanal
commands.music.volume.error.connected.description = Du musst im selben Sprachkanal wie der Bot sein, um die Lautstärke zu ändern.
-commands.music.volume.help.description = Ändere die Lautstärke der Musik.
+commands.music.volume.help.description = Ändere die Lautstärke der Musik
commands.music.pause.success.title = Erfolgreich pausiert
commands.music.pause.success.description = Ich habe den gespielten Song erfolgreich pausiert.
commands.music.pause.error.paused.title = Bereits pausiert
commands.music.pause.error.paused.description = The song is already paused. You can continue playing it with %extra%play
commands.music.pause.error.connected.title = Kein Kanal
commands.music.pause.error.connected.description = Du musst im selben Sprachkanal wie der Bot sein, um den Song zu pausieren.
-commands.music.pause.help.description = Pausiere das abgespielte Lied.
+commands.music.pause.help.description = Pausiere das abgespielte Lied
commands.music.loop.success.loop.title = Erfolgreich aktiviert
commands.music.loop.success.loop.description = Ich wiederhole nun den gerade gespielten Song.
commands.music.loop.success.unloop.title = Erfolgreich deaktiviert
commands.music.loop.success.unloop.description = Ich werde den gerade gespielten Song nicht mehr wiederholen.
commands.music.loop.error.connected.title = Kein Kanal
commands.music.loop.error.connected.description = You have to be in the same voice channel as the bot to set the repeat status.
-commands.music.loop.help.description = Wiederholt ein Lied/Warteschlange.
+commands.music.loop.help.description = Wiederholt ein Lied/Warteschlange
commands.music.echo.success.title = Erfolgreich aktiviert
commands.music.echo.success.description = I will now repeat everything I can hear in your voice channel
-commands.music.echo.help.description = Sends your voice through Hadder.
+commands.music.echo.help.description = Sends your voice through Hadder
commands.nsfw.gif.error.title = GIF wird nicht angezeigt? Klicke hier
commands.nsfw.img.error.title = Bild wird nicht angezeigt? Klicke hier
-commands.nsfw.anal.help.description = Zeigt einen zufälligen Anal GIF.
+commands.nsfw.anal.help.description = Shows a random anal gif
commands.nsfw.bdsm.help.description = Zeigt ein zufälliges BDSM Bild
commands.nsfw.blowjob.help.description = Zeigt ein zufälliges Blowjob Bild
-commands.nsfw.boobs.help.description = Zeigt einen zufälligen Boob GIF.
-commands.nsfw.cum.help.description = Zeigt einen zufälligen Cum GIF.
+commands.nsfw.boobs.help.description = Shows a random boob gif
+commands.nsfw.cum.help.description = Shows a random cum gif
commands.nsfw.erotic.help.description = Zeigt ein zufälliges Erotik Bild
-commands.nsfw.feet.help.description = Zeigt einen zufälligen Feet GIF.
-commands.nsfw.fingering.help.description = Zeigt einen zufälligen Finger GIF.
-commands.nsfw.linking.help.description = Zeigt ein zufälliges Leck GIF.
-commands.nsfw.porn.help.description = Zeigt einen zufälligen Porn GIF.
-commands.nsfw.pussy.help.description = Zeigt einen zufälligen Pussy GIF.
-commands.nsfw.randomporn.help.description = Zeigt ein völlig zufälliges Porno GIF.
-commands.nsfw.solo.help.description = Zeigt einen zufälligen Solo GIF.
-commands.nsfw.spank.help.description = Zeigt ein zufälliges spank GIF.
+commands.nsfw.feet.help.description = Shows a random feet gif
+commands.nsfw.fingering.help.description = Shows a random fingering gif
+commands.nsfw.linking.help.description = Shows a random licking gif
+commands.nsfw.porn.help.description = Shows a random porn gif
+commands.nsfw.pussy.help.description = Shows a random pussy gif
+commands.nsfw.randomporn.help.description = Shows a completely random porn gif
+commands.nsfw.solo.help.description = Shows a random solo gif
+commands.nsfw.spank.help.description = Shows a random spank gif
commands.nsfw.trans.help.description = Zeigt ein zufälliges Trans Bild
commands.owner.eval.success.title = Eval-Befehl
@@ -327,7 +327,7 @@ commands.settings.language.success.title = Sprache festgelegt
commands.settings.language.success.description = `%extra%` ist jetzt deine neue Sprache.
commands.settings.language.error.title = Language not found
commands.settings.language.error.description = Please choose one of the following language codes\: %extra%
-commands.settings.language.help.description = Führt den angegebenen Code aus.
+commands.settings.language.help.description = Führt den angegebenen Code aus
commands.settings.prefix.success.title = Prefix erfolgreich gesetzt
commands.settings.prefix.success.description = Ich habe erfolgreich den neuen Prefix für dich auf `%extra% `gesetzt.
-commands.settings.prefix.help.description = Legt einen neuen Prefix fest.
+commands.settings.prefix.help.description = Legt einen neuen Prefix fest
diff --git a/src/main/resources/Translations/Translations_es.properties b/src/main/resources/Translations/Translations_es.properties
index 98016c1..3577e78 100644
--- a/src/main/resources/Translations/Translations_es.properties
+++ b/src/main/resources/Translations/Translations_es.properties
@@ -23,19 +23,19 @@ success\! = Success\!
commands.fun.avatar.success.title = Avatar of %extra%
commands.fun.avatar.error.title = User not found
commands.fun.avatar.error.description = I can not find a user with this id\!
-commands.fun.avatar.help.description = Sends the avatar of the specified Member.
-commands.fun.gif.error.description = Please try again with another term.
-commands.fun.gif.help.description = Looks for a GIF on Giphy.
+commands.fun.avatar.help.description = Sends the avatar of the specified Member
+commands.fun.gif.error.description = Please try again with another term
+commands.fun.gif.help.description = Looks for a GIF on Giphy
commands.fun.meme.success.title = Your random meme\:
commands.fun.meme.api.error = The request to the meme API could not be processed. Please try again later.
-commands.fun.meme.help.description = Sends you a random meme.
-commands.fun.clyde.help.description = Sends a message as a webhook named Clyde.
+commands.fun.meme.help.description = Sends you a random meme
+commands.fun.clyde.help.description = Sends a message as a webhook named Clyde
commands.general.about.success.title = Hadder - About
-commands.general.about.success.description = Hadder is an open source Discord bot.
+commands.general.about.success.description = Hadder is an open source Discord bot
commands.general.about.success.field.one.title = Support the developers
commands.general.about.success.field.one.description = Hadder is completely free for everyone. We would appreciate it if you donated some money to us. Click [here]%extra% to donate.
-commands.general.about.help.description = Shows information about Hadder.
+commands.general.about.help.description = Shows information about Hadder
commands.general.equals.string.first.request = Please send me the first String.
commands.general.equals.string.second.request = Please send me the second String.
commands.general.equals.string.equals.true = Yes\! The first string equals the second string\!
@@ -43,24 +43,24 @@ commands.general.equals.string.equals.false = Well yes but actually No. This isn
commands.general.equals.string.first = First string\:
commands.general.equals.string.second = Second string\:
commands.general.equals.string.result = Result\:
-commands.general.equals.help.description = Checks if two strings are equal.
+commands.general.equals.help.description = Checks if two strings are equal
commands.general.help.description = **Description\:**
commands.general.help.usage = **Usage\:**
commands.general.help.example = **Example\:**
commands.general.help.error.description = I need the Embed Links Permission to send the Help Menu\!
-commands.general.help.help.description = Shows each command and explains its usage.
+commands.general.help.help.description = Shows each command and explains its usage
commands.general.help.help.label = [CommandName]
commands.general.invite.success.title = Invite me\!
commands.general.invite.success.description = [Invite me here\!]%extra%
-commands.general.invite.help.description = Shows the invitation link to invite Hadder to your server.
-commands.general.ping.help.description = Shows the ping to the Discord API.
+commands.general.invite.help.description = Shows the invitation link to invite Hadder to your server
+commands.general.ping.help.description = Shows the ping to the Discord API
commands.misc.feedback.title.request.title = Feedback Topic
commands.misc.feedback.title.request.description = Please send me the feedback topic.
commands.misc.feedback.description.request.title = Feedback Description
commands.misc.feedback.description.request.description = Please send me the feedback description now.
commands.misc.feedback.success.title = Feedback successfully sent\!
-commands.misc.feedback.help.description = Sends feedback directly to the developers.
+commands.misc.feedback.help.description = Sends feedback directly to the developers
commands.misc.github.link.title = Link your GitHub Account
commands.misc.github.success.title = Information about %extra%
commands.misc.github.success.bio = User bio
@@ -76,7 +76,7 @@ commands.misc.github.user.error.title = User doesn't exist
commands.misc.github.user.error.description = I can not find a user named like this\!
commands.misc.github.connect.title = Connect your GH account
commands.misc.github.connect.description = [Please connect your GitHub account here]%extra%
-commands.misc.github.help.description = Displays information about a GitHub user profile.
+commands.misc.github.help.description = Displays information about a GitHub user profile
commands.misc.screenshare.success.title = Here's your URL to share your Screen
commands.misc.screenshare.id.error.title = Wait. That's illegal.
commands.misc.screenshare.id.error.description = This ID is invalid. \nMaybe you entered a wrong ID. \n\nNote\: Make sure the Voice Channel is in this Guild.
@@ -86,18 +86,18 @@ commands.misc.screenshare.number.error.title = You specified a wrong number\!
commands.misc.screenshare.number.error.description = This isn't a Number.
commands.misc.screenshare.channel.existing.error = Hol' up
commands.misc.screenshare.channel.existing.description = There is no Voice Channel named like this. \n\nNote\: Make sure the Voice Channel is in this Guild.
-commands.misc.screenshare.help.description = Shows you the link to share your screen.
+commands.misc.screenshare.help.description = Shows you the link to share your screen
commands.misc.serverstats.title = Serverstats
commands.misc.serverstats.description = This message contains some information about `%extra%`
-commands.misc.serverstats.help.description = Shows information about a server.
+commands.misc.serverstats.help.description = Shows information about a server
commands.misc.profile.error.title = Not found
commands.misc.profile.error.description = I can't find the specified user.
-commands.misc.profile.help.description = Shows some information about the specified user.
+commands.misc.profile.help.description = Shows some information about the specified user
commands.misc.code.success.title = Invite code information
commands.misc.code.success.description = This message contains some information about the specified invite code.
commands.misc.code.error.title = Code not found
commands.misc.code.error.description = I can't find the specified invite code.
-commands.misc.code.help.description = Shows information about a invite code.
+commands.misc.code.help.description = Shows information about a invite code
commands.misc.moveall.success.title = Successfully moved
commands.misc.moveall.success.description = I successfully moved %extra% members. Have fun\!
commands.misc.moveall.error.equals.title = Not twice
@@ -106,7 +106,7 @@ commands.misc.moveall.error.source.int.title = Invalid ID
commands.misc.moveall.error.source.int.description = You haven't specified an ID as the source channel.
commands.misc.moveall.error.target.int.title = Invalid ID
commands.misc.moveall.error.target.int.description = You haven't specified an ID as the target channel.
-commands.misc.moveall.help.description = Moves all users in the source channel to the target channel.
+commands.misc.moveall.help.description = Moves all users in the source channel to the target channel
commands.misc.corona.help.description = Shows the newest stats of COVID-19
commands.moderation.ban.success.title = Successfully banned
@@ -115,7 +115,7 @@ commands.moderation.ban.error.title = Not possible
commands.moderation.ban.myself.error.description = I can not ban myself\!
commands.moderation.ban.yourself.error.description = You can not ban yourself\!
commands.moderation.ban.massban.success.description = I successfully banned %extra% members\!
-commands.moderation.ban.help.description = Bans one or more users from the server.
+commands.moderation.ban.help.description = Bans one or more users from the server
commands.moderation.clear.all.success.title = Successfully deleted
commands.moderation.clear.all.success.description = I successfully deleted %extra% messages.
commands.moderation.clear.number.error.title = Invalid number
@@ -125,11 +125,11 @@ commands.moderation.clear.success.description.singular = Successfully deleted on
commands.moderation.clear.success.description.plural = Successfully deleted %extra% messages.
commands.moderation.clear.message.error.title = No messages\!
commands.moderation.clear.message.error.description = There are no messages in this channel.
-commands.moderation.clear.help.description = Deletes the specified number of messages.
+commands.moderation.clear.help.description = Deletes the specified number of messages
commands.moderation.prefix.success.title = %extra% Successfully set %extra%
commands.moderation.prefix.success.description = I successfully set the new prefix for the server to `%extra%`.
commands.moderation.prefix.error.description = The prefix must not contain **"**
-commands.moderation.prefix.help.description = Sets the Guild-Prefix.
+commands.moderation.prefix.help.description = Sets the Guild-Prefix
commands.moderation.invitedetect.activate.success.title = Successfully activated
commands.moderation.invitedetect.activate.success.description = I successfully activated the invite link detection for this server.
commands.moderation.invitedetect.activate.error.title = Already activated
@@ -138,24 +138,24 @@ commands.moderation.invitedetect.deactivate.success.title = Successfully deactiv
commands.moderation.invitedetect.deactivate.success.description = I successfully deactivated the invite link detection for this server.
commands.moderation.invitedetect.deactivate.error.title = Already deactivated
commands.moderation.invitedetect.deactivate.error.description = The invite link detection is already deactivated on this server.
-commands.moderation.invitedetect.help.description = Activate or deactivate the Discord invite link detection.
+commands.moderation.invitedetect.help.description = Activate or deactivate the Discord invite link detection
commands.moderation.kick.success.title = %extra% Successfully kicked %extra%
commands.moderation.kick.success.description = I successfully kicked %extra%.
commands.moderation.kick.error.title = Not possible
commands.moderation.kick.myself.error.description = I can not kick myself\!
commands.moderation.kick.yourself.error.description = You can't kick yourself.
commands.moderation.kick.mass.success.description = I successfully kicked %extra% Members\!
-commands.moderation.kick.help.description = Kicks one or more user from the server.
+commands.moderation.kick.help.description = Kicks one or more user from the server
commands.moderation.kick.masskick.success.description = I successfully kicked %extra% members.
commands.moderation.nick.success.title = %extra% Successfully nicked %extra%
commands.moderation.nick.success.description = I successfully nicked %extra%.
commands.moderation.nick.myself.success.description = I successfully changed my nickname.
commands.moderation.nick.massnick.success.description = I successfully nicked %extra% Members.
-commands.moderation.nick.help.description = Rename a one or more user.
+commands.moderation.nick.help.description = Rename a one or more user
commands.moderation.regionchange.regions.title = All regions
commands.moderation.regionchange.success.title = Successfully set region
commands.moderation.regionchange.success.description = I successfully set the new server region to %extra%.
-commands.moderation.regionchange.help.description = Changes the server region to locked regions.
+commands.moderation.regionchange.help.description = Changes the server region to locked regions
commands.moderation.role.add.success.title = Successfully added role(s)
commands.moderation.role.add.success.description = I successfully added %extra% roles to %extra_two% members.
commands.moderation.role.remove.success.title = Successfully removed role(s)
@@ -194,7 +194,7 @@ commands.moderation.rules.error.interact.title = Can't interact
commands.moderation.rules.error.interact.description = I can not interact with the specified role. Make sure my role is higher than the specified role.
commands.moderation.rules.help.description = Setup the rules on your Discord server
commands.moderation.starboard.success.title = Successfully set the Channel\!
-commands.moderation.starboard.help.description = Sets the starboard channel.
+commands.moderation.starboard.help.description = Sets the starboard channel
commands.moderation.editrules.channel.title = Rules channel
commands.moderation.editrules.channel.description = Please send me the channel with the rules as mention
commands.moderation.editrules.channel.found.error.title = Channel not found
@@ -207,11 +207,11 @@ commands.moderation.editrules.error.title = No rules
commands.moderation.editrules.error.description = There is nor rules message in this server. Please setup the rules first with %extra%rules
commands.moderation.editrules.success.title = Successfully changed
commands.moderation.editrules.success.description = I successfully changed the rules
-commands.moderation.editrules.help.description = Edits the rules message.
+commands.moderation.editrules.help.description = Edits the rules message
commands.music.bass.error.connected.title = No channel
commands.music.bass.error.connected.description = You have to be in the same voice channel as the bot to change the bass level.
-commands.music.bass.help.description = Change the bass for the song which is played at the moment.
+commands.music.bass.help.description = Change the bass for the song which is played at the moment
commands.music.join.success.title = Successfully connected
commands.music.join.success.description = I successfully connected to %extra%.
commands.music.join.error.connecting.already.title = Already connected
@@ -222,7 +222,7 @@ commands.music.join.error.channel.title = No Voice Channel
commands.music.join.error.channel.description = You aren't in a Voice Channel.
commands.music.join.error.permission.title = No permission
commands.music.join.error.permission.description = I am not allowed to join your voice channel.
-commands.music.join.help.description = Joins your voice channel.
+commands.music.join.help.description = Joins your voice channel
commands.music.play.load.title = %extra% Now loading %extra%
commands.music.play.load.description = Trying to load the song...
commands.music.play.success.loading.title = %extra% Now playing %extra%
@@ -239,67 +239,67 @@ commands.music.play.success.unpause.title = Successfully continued
commands.music.play.success.unpause.description = I successfully continued playing the song.
commands.music.play.error.connected.title = No channel
commands.music.play.error.connected.description = You have to be in the same voice channel as the bot to continue the song.
-commands.music.play.help.description = Plays the specified song.
+commands.music.play.help.description = Plays the specified song
commands.music.stop.success.title = Successfully stopped
commands.music.stop.success.description = I successfully stopped the song.
commands.music.stop.error.connected.title = No channel
commands.music.stop.error.connected.description = You have to be in the same voice channel as the bot to stop the song.
-commands.music.stop.help.description = Stops the song.
+commands.music.stop.help.description = Stops the song
commands.music.info.success.title = Track info
commands.music.info.error.title = No playing track
commands.music.info.error.description = I am not playing anything at the moment
-commands.music.info.help.description = Shows information about the playing song.
+commands.music.info.help.description = Shows information about the playing song
commands.music.queue.error.title = No queue
commands.music.queue.error.description = There are no queued songs at the moment
commands.music.queue.success.title = Queue %extra%
commands.music.queue.success.description = This is the queue\: \n %extra%
-commands.music.queue.help.description = Shows the music queue.
+commands.music.queue.help.description = Shows the music queue
commands.music.skip.success.title = Successfully skipped
commands.music.skip.success.description = I successfully skipped to the next song
commands.music.skip.error.connected.title = No channel
commands.music.skip.error.connected.description = You have to be in the same voice channel as the bot to skip the song.
-commands.music.skip.help.description = Skips the currently playing song.
+commands.music.skip.help.description = Skips the currently playing song
commands.music.volume.success.title = Successfully set
commands.music.volume.success.description = I successfully set the new volume to %extra%
commands.music.volume.error.int.title = Invalid number
commands.music.volume.error.int.description = The volume have to be between 1 and 200
commands.music.volume.error.connected.title = No channel
commands.music.volume.error.connected.description = You have to be in the same voice channel as the bot to change the volume.
-commands.music.volume.help.description = Change the volume of the music.
+commands.music.volume.help.description = Change the volume of the music
commands.music.pause.success.title = Successfully paused
commands.music.pause.success.description = I successfully paused the played song.
commands.music.pause.error.paused.title = Already paused
commands.music.pause.error.paused.description = The song is already paused. You can continue playing it with %extra%play
commands.music.pause.error.connected.title = No channel
commands.music.pause.error.connected.description = You have to be in the same voice channel as the bot to pause the song.
-commands.music.pause.help.description = Pause the playing song.
+commands.music.pause.help.description = Pause the playing song
commands.music.loop.success.loop.title = Successfully activated
commands.music.loop.success.loop.description = I will now repeat the currently played song.
commands.music.loop.success.unloop.title = Successfully deactivated
commands.music.loop.success.unloop.description = I will no longer repeat the currently played song.
commands.music.loop.error.connected.title = No channel
commands.music.loop.error.connected.description = You have to be in the same voice channel as the bot to set the repeat status.
-commands.music.loop.help.description = Repeats a song/queue.
+commands.music.loop.help.description = Repeats a song/queue
commands.music.echo.success.title = Successfully activated
commands.music.echo.success.description = I will now repeat everything I can hear in your voice channel
-commands.music.echo.help.description = Sends your voice through Hadder.
+commands.music.echo.help.description = Sends your voice through Hadder
commands.nsfw.gif.error.title = GIF not showing? Click here
commands.nsfw.img.error.title = Image not showing? Click here
-commands.nsfw.anal.help.description = Shows a random anal gif.
+commands.nsfw.anal.help.description = Shows a random anal gif
commands.nsfw.bdsm.help.description = Shows a random BDSM picture
commands.nsfw.blowjob.help.description = Shows a random Blowjob picture
-commands.nsfw.boobs.help.description = Shows a random boob gif.
-commands.nsfw.cum.help.description = Shows a random cum gif.
+commands.nsfw.boobs.help.description = Shows a random boob gif
+commands.nsfw.cum.help.description = Shows a random cum gif
commands.nsfw.erotic.help.description = Shows a random erotic picture
-commands.nsfw.feet.help.description = Shows a random feet gif.
-commands.nsfw.fingering.help.description = Shows a random fingering gif.
-commands.nsfw.linking.help.description = Shows a random licking gif.
-commands.nsfw.porn.help.description = Shows a random porn gif.
-commands.nsfw.pussy.help.description = Shows a random pussy gif.
-commands.nsfw.randomporn.help.description = Shows a completely random porn gif.
-commands.nsfw.solo.help.description = Shows a random solo gif.
-commands.nsfw.spank.help.description = Shows a random spank gif.
+commands.nsfw.feet.help.description = Shows a random feet gif
+commands.nsfw.fingering.help.description = Shows a random fingering gif
+commands.nsfw.linking.help.description = Shows a random licking gif
+commands.nsfw.porn.help.description = Shows a random porn gif
+commands.nsfw.pussy.help.description = Shows a random pussy gif
+commands.nsfw.randomporn.help.description = Shows a completely random porn gif
+commands.nsfw.solo.help.description = Shows a random solo gif
+commands.nsfw.spank.help.description = Shows a random spank gif
commands.nsfw.trans.help.description = Shows a random trans picture
commands.owner.eval.success.title = Eval Command
@@ -327,7 +327,7 @@ commands.settings.language.success.title = Language set
commands.settings.language.success.description = `%extra%` is your new language now.
commands.settings.language.error.title = Language not found
commands.settings.language.error.description = Please choose one of the following language codes\: %extra%
-commands.settings.language.help.description = Sets the new primary language for a user.
+commands.settings.language.help.description = Sets the new primary language for a user
commands.settings.prefix.success.title = Successfully set prefix
commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`.
-commands.settings.prefix.help.description = Sets a new prefix.
+commands.settings.prefix.help.description = Sets a new prefix
diff --git a/src/main/resources/Translations/Translations_fr.properties b/src/main/resources/Translations/Translations_fr.properties
index 98016c1..3577e78 100644
--- a/src/main/resources/Translations/Translations_fr.properties
+++ b/src/main/resources/Translations/Translations_fr.properties
@@ -23,19 +23,19 @@ success\! = Success\!
commands.fun.avatar.success.title = Avatar of %extra%
commands.fun.avatar.error.title = User not found
commands.fun.avatar.error.description = I can not find a user with this id\!
-commands.fun.avatar.help.description = Sends the avatar of the specified Member.
-commands.fun.gif.error.description = Please try again with another term.
-commands.fun.gif.help.description = Looks for a GIF on Giphy.
+commands.fun.avatar.help.description = Sends the avatar of the specified Member
+commands.fun.gif.error.description = Please try again with another term
+commands.fun.gif.help.description = Looks for a GIF on Giphy
commands.fun.meme.success.title = Your random meme\:
commands.fun.meme.api.error = The request to the meme API could not be processed. Please try again later.
-commands.fun.meme.help.description = Sends you a random meme.
-commands.fun.clyde.help.description = Sends a message as a webhook named Clyde.
+commands.fun.meme.help.description = Sends you a random meme
+commands.fun.clyde.help.description = Sends a message as a webhook named Clyde
commands.general.about.success.title = Hadder - About
-commands.general.about.success.description = Hadder is an open source Discord bot.
+commands.general.about.success.description = Hadder is an open source Discord bot
commands.general.about.success.field.one.title = Support the developers
commands.general.about.success.field.one.description = Hadder is completely free for everyone. We would appreciate it if you donated some money to us. Click [here]%extra% to donate.
-commands.general.about.help.description = Shows information about Hadder.
+commands.general.about.help.description = Shows information about Hadder
commands.general.equals.string.first.request = Please send me the first String.
commands.general.equals.string.second.request = Please send me the second String.
commands.general.equals.string.equals.true = Yes\! The first string equals the second string\!
@@ -43,24 +43,24 @@ commands.general.equals.string.equals.false = Well yes but actually No. This isn
commands.general.equals.string.first = First string\:
commands.general.equals.string.second = Second string\:
commands.general.equals.string.result = Result\:
-commands.general.equals.help.description = Checks if two strings are equal.
+commands.general.equals.help.description = Checks if two strings are equal
commands.general.help.description = **Description\:**
commands.general.help.usage = **Usage\:**
commands.general.help.example = **Example\:**
commands.general.help.error.description = I need the Embed Links Permission to send the Help Menu\!
-commands.general.help.help.description = Shows each command and explains its usage.
+commands.general.help.help.description = Shows each command and explains its usage
commands.general.help.help.label = [CommandName]
commands.general.invite.success.title = Invite me\!
commands.general.invite.success.description = [Invite me here\!]%extra%
-commands.general.invite.help.description = Shows the invitation link to invite Hadder to your server.
-commands.general.ping.help.description = Shows the ping to the Discord API.
+commands.general.invite.help.description = Shows the invitation link to invite Hadder to your server
+commands.general.ping.help.description = Shows the ping to the Discord API
commands.misc.feedback.title.request.title = Feedback Topic
commands.misc.feedback.title.request.description = Please send me the feedback topic.
commands.misc.feedback.description.request.title = Feedback Description
commands.misc.feedback.description.request.description = Please send me the feedback description now.
commands.misc.feedback.success.title = Feedback successfully sent\!
-commands.misc.feedback.help.description = Sends feedback directly to the developers.
+commands.misc.feedback.help.description = Sends feedback directly to the developers
commands.misc.github.link.title = Link your GitHub Account
commands.misc.github.success.title = Information about %extra%
commands.misc.github.success.bio = User bio
@@ -76,7 +76,7 @@ commands.misc.github.user.error.title = User doesn't exist
commands.misc.github.user.error.description = I can not find a user named like this\!
commands.misc.github.connect.title = Connect your GH account
commands.misc.github.connect.description = [Please connect your GitHub account here]%extra%
-commands.misc.github.help.description = Displays information about a GitHub user profile.
+commands.misc.github.help.description = Displays information about a GitHub user profile
commands.misc.screenshare.success.title = Here's your URL to share your Screen
commands.misc.screenshare.id.error.title = Wait. That's illegal.
commands.misc.screenshare.id.error.description = This ID is invalid. \nMaybe you entered a wrong ID. \n\nNote\: Make sure the Voice Channel is in this Guild.
@@ -86,18 +86,18 @@ commands.misc.screenshare.number.error.title = You specified a wrong number\!
commands.misc.screenshare.number.error.description = This isn't a Number.
commands.misc.screenshare.channel.existing.error = Hol' up
commands.misc.screenshare.channel.existing.description = There is no Voice Channel named like this. \n\nNote\: Make sure the Voice Channel is in this Guild.
-commands.misc.screenshare.help.description = Shows you the link to share your screen.
+commands.misc.screenshare.help.description = Shows you the link to share your screen
commands.misc.serverstats.title = Serverstats
commands.misc.serverstats.description = This message contains some information about `%extra%`
-commands.misc.serverstats.help.description = Shows information about a server.
+commands.misc.serverstats.help.description = Shows information about a server
commands.misc.profile.error.title = Not found
commands.misc.profile.error.description = I can't find the specified user.
-commands.misc.profile.help.description = Shows some information about the specified user.
+commands.misc.profile.help.description = Shows some information about the specified user
commands.misc.code.success.title = Invite code information
commands.misc.code.success.description = This message contains some information about the specified invite code.
commands.misc.code.error.title = Code not found
commands.misc.code.error.description = I can't find the specified invite code.
-commands.misc.code.help.description = Shows information about a invite code.
+commands.misc.code.help.description = Shows information about a invite code
commands.misc.moveall.success.title = Successfully moved
commands.misc.moveall.success.description = I successfully moved %extra% members. Have fun\!
commands.misc.moveall.error.equals.title = Not twice
@@ -106,7 +106,7 @@ commands.misc.moveall.error.source.int.title = Invalid ID
commands.misc.moveall.error.source.int.description = You haven't specified an ID as the source channel.
commands.misc.moveall.error.target.int.title = Invalid ID
commands.misc.moveall.error.target.int.description = You haven't specified an ID as the target channel.
-commands.misc.moveall.help.description = Moves all users in the source channel to the target channel.
+commands.misc.moveall.help.description = Moves all users in the source channel to the target channel
commands.misc.corona.help.description = Shows the newest stats of COVID-19
commands.moderation.ban.success.title = Successfully banned
@@ -115,7 +115,7 @@ commands.moderation.ban.error.title = Not possible
commands.moderation.ban.myself.error.description = I can not ban myself\!
commands.moderation.ban.yourself.error.description = You can not ban yourself\!
commands.moderation.ban.massban.success.description = I successfully banned %extra% members\!
-commands.moderation.ban.help.description = Bans one or more users from the server.
+commands.moderation.ban.help.description = Bans one or more users from the server
commands.moderation.clear.all.success.title = Successfully deleted
commands.moderation.clear.all.success.description = I successfully deleted %extra% messages.
commands.moderation.clear.number.error.title = Invalid number
@@ -125,11 +125,11 @@ commands.moderation.clear.success.description.singular = Successfully deleted on
commands.moderation.clear.success.description.plural = Successfully deleted %extra% messages.
commands.moderation.clear.message.error.title = No messages\!
commands.moderation.clear.message.error.description = There are no messages in this channel.
-commands.moderation.clear.help.description = Deletes the specified number of messages.
+commands.moderation.clear.help.description = Deletes the specified number of messages
commands.moderation.prefix.success.title = %extra% Successfully set %extra%
commands.moderation.prefix.success.description = I successfully set the new prefix for the server to `%extra%`.
commands.moderation.prefix.error.description = The prefix must not contain **"**
-commands.moderation.prefix.help.description = Sets the Guild-Prefix.
+commands.moderation.prefix.help.description = Sets the Guild-Prefix
commands.moderation.invitedetect.activate.success.title = Successfully activated
commands.moderation.invitedetect.activate.success.description = I successfully activated the invite link detection for this server.
commands.moderation.invitedetect.activate.error.title = Already activated
@@ -138,24 +138,24 @@ commands.moderation.invitedetect.deactivate.success.title = Successfully deactiv
commands.moderation.invitedetect.deactivate.success.description = I successfully deactivated the invite link detection for this server.
commands.moderation.invitedetect.deactivate.error.title = Already deactivated
commands.moderation.invitedetect.deactivate.error.description = The invite link detection is already deactivated on this server.
-commands.moderation.invitedetect.help.description = Activate or deactivate the Discord invite link detection.
+commands.moderation.invitedetect.help.description = Activate or deactivate the Discord invite link detection
commands.moderation.kick.success.title = %extra% Successfully kicked %extra%
commands.moderation.kick.success.description = I successfully kicked %extra%.
commands.moderation.kick.error.title = Not possible
commands.moderation.kick.myself.error.description = I can not kick myself\!
commands.moderation.kick.yourself.error.description = You can't kick yourself.
commands.moderation.kick.mass.success.description = I successfully kicked %extra% Members\!
-commands.moderation.kick.help.description = Kicks one or more user from the server.
+commands.moderation.kick.help.description = Kicks one or more user from the server
commands.moderation.kick.masskick.success.description = I successfully kicked %extra% members.
commands.moderation.nick.success.title = %extra% Successfully nicked %extra%
commands.moderation.nick.success.description = I successfully nicked %extra%.
commands.moderation.nick.myself.success.description = I successfully changed my nickname.
commands.moderation.nick.massnick.success.description = I successfully nicked %extra% Members.
-commands.moderation.nick.help.description = Rename a one or more user.
+commands.moderation.nick.help.description = Rename a one or more user
commands.moderation.regionchange.regions.title = All regions
commands.moderation.regionchange.success.title = Successfully set region
commands.moderation.regionchange.success.description = I successfully set the new server region to %extra%.
-commands.moderation.regionchange.help.description = Changes the server region to locked regions.
+commands.moderation.regionchange.help.description = Changes the server region to locked regions
commands.moderation.role.add.success.title = Successfully added role(s)
commands.moderation.role.add.success.description = I successfully added %extra% roles to %extra_two% members.
commands.moderation.role.remove.success.title = Successfully removed role(s)
@@ -194,7 +194,7 @@ commands.moderation.rules.error.interact.title = Can't interact
commands.moderation.rules.error.interact.description = I can not interact with the specified role. Make sure my role is higher than the specified role.
commands.moderation.rules.help.description = Setup the rules on your Discord server
commands.moderation.starboard.success.title = Successfully set the Channel\!
-commands.moderation.starboard.help.description = Sets the starboard channel.
+commands.moderation.starboard.help.description = Sets the starboard channel
commands.moderation.editrules.channel.title = Rules channel
commands.moderation.editrules.channel.description = Please send me the channel with the rules as mention
commands.moderation.editrules.channel.found.error.title = Channel not found
@@ -207,11 +207,11 @@ commands.moderation.editrules.error.title = No rules
commands.moderation.editrules.error.description = There is nor rules message in this server. Please setup the rules first with %extra%rules
commands.moderation.editrules.success.title = Successfully changed
commands.moderation.editrules.success.description = I successfully changed the rules
-commands.moderation.editrules.help.description = Edits the rules message.
+commands.moderation.editrules.help.description = Edits the rules message
commands.music.bass.error.connected.title = No channel
commands.music.bass.error.connected.description = You have to be in the same voice channel as the bot to change the bass level.
-commands.music.bass.help.description = Change the bass for the song which is played at the moment.
+commands.music.bass.help.description = Change the bass for the song which is played at the moment
commands.music.join.success.title = Successfully connected
commands.music.join.success.description = I successfully connected to %extra%.
commands.music.join.error.connecting.already.title = Already connected
@@ -222,7 +222,7 @@ commands.music.join.error.channel.title = No Voice Channel
commands.music.join.error.channel.description = You aren't in a Voice Channel.
commands.music.join.error.permission.title = No permission
commands.music.join.error.permission.description = I am not allowed to join your voice channel.
-commands.music.join.help.description = Joins your voice channel.
+commands.music.join.help.description = Joins your voice channel
commands.music.play.load.title = %extra% Now loading %extra%
commands.music.play.load.description = Trying to load the song...
commands.music.play.success.loading.title = %extra% Now playing %extra%
@@ -239,67 +239,67 @@ commands.music.play.success.unpause.title = Successfully continued
commands.music.play.success.unpause.description = I successfully continued playing the song.
commands.music.play.error.connected.title = No channel
commands.music.play.error.connected.description = You have to be in the same voice channel as the bot to continue the song.
-commands.music.play.help.description = Plays the specified song.
+commands.music.play.help.description = Plays the specified song
commands.music.stop.success.title = Successfully stopped
commands.music.stop.success.description = I successfully stopped the song.
commands.music.stop.error.connected.title = No channel
commands.music.stop.error.connected.description = You have to be in the same voice channel as the bot to stop the song.
-commands.music.stop.help.description = Stops the song.
+commands.music.stop.help.description = Stops the song
commands.music.info.success.title = Track info
commands.music.info.error.title = No playing track
commands.music.info.error.description = I am not playing anything at the moment
-commands.music.info.help.description = Shows information about the playing song.
+commands.music.info.help.description = Shows information about the playing song
commands.music.queue.error.title = No queue
commands.music.queue.error.description = There are no queued songs at the moment
commands.music.queue.success.title = Queue %extra%
commands.music.queue.success.description = This is the queue\: \n %extra%
-commands.music.queue.help.description = Shows the music queue.
+commands.music.queue.help.description = Shows the music queue
commands.music.skip.success.title = Successfully skipped
commands.music.skip.success.description = I successfully skipped to the next song
commands.music.skip.error.connected.title = No channel
commands.music.skip.error.connected.description = You have to be in the same voice channel as the bot to skip the song.
-commands.music.skip.help.description = Skips the currently playing song.
+commands.music.skip.help.description = Skips the currently playing song
commands.music.volume.success.title = Successfully set
commands.music.volume.success.description = I successfully set the new volume to %extra%
commands.music.volume.error.int.title = Invalid number
commands.music.volume.error.int.description = The volume have to be between 1 and 200
commands.music.volume.error.connected.title = No channel
commands.music.volume.error.connected.description = You have to be in the same voice channel as the bot to change the volume.
-commands.music.volume.help.description = Change the volume of the music.
+commands.music.volume.help.description = Change the volume of the music
commands.music.pause.success.title = Successfully paused
commands.music.pause.success.description = I successfully paused the played song.
commands.music.pause.error.paused.title = Already paused
commands.music.pause.error.paused.description = The song is already paused. You can continue playing it with %extra%play
commands.music.pause.error.connected.title = No channel
commands.music.pause.error.connected.description = You have to be in the same voice channel as the bot to pause the song.
-commands.music.pause.help.description = Pause the playing song.
+commands.music.pause.help.description = Pause the playing song
commands.music.loop.success.loop.title = Successfully activated
commands.music.loop.success.loop.description = I will now repeat the currently played song.
commands.music.loop.success.unloop.title = Successfully deactivated
commands.music.loop.success.unloop.description = I will no longer repeat the currently played song.
commands.music.loop.error.connected.title = No channel
commands.music.loop.error.connected.description = You have to be in the same voice channel as the bot to set the repeat status.
-commands.music.loop.help.description = Repeats a song/queue.
+commands.music.loop.help.description = Repeats a song/queue
commands.music.echo.success.title = Successfully activated
commands.music.echo.success.description = I will now repeat everything I can hear in your voice channel
-commands.music.echo.help.description = Sends your voice through Hadder.
+commands.music.echo.help.description = Sends your voice through Hadder
commands.nsfw.gif.error.title = GIF not showing? Click here
commands.nsfw.img.error.title = Image not showing? Click here
-commands.nsfw.anal.help.description = Shows a random anal gif.
+commands.nsfw.anal.help.description = Shows a random anal gif
commands.nsfw.bdsm.help.description = Shows a random BDSM picture
commands.nsfw.blowjob.help.description = Shows a random Blowjob picture
-commands.nsfw.boobs.help.description = Shows a random boob gif.
-commands.nsfw.cum.help.description = Shows a random cum gif.
+commands.nsfw.boobs.help.description = Shows a random boob gif
+commands.nsfw.cum.help.description = Shows a random cum gif
commands.nsfw.erotic.help.description = Shows a random erotic picture
-commands.nsfw.feet.help.description = Shows a random feet gif.
-commands.nsfw.fingering.help.description = Shows a random fingering gif.
-commands.nsfw.linking.help.description = Shows a random licking gif.
-commands.nsfw.porn.help.description = Shows a random porn gif.
-commands.nsfw.pussy.help.description = Shows a random pussy gif.
-commands.nsfw.randomporn.help.description = Shows a completely random porn gif.
-commands.nsfw.solo.help.description = Shows a random solo gif.
-commands.nsfw.spank.help.description = Shows a random spank gif.
+commands.nsfw.feet.help.description = Shows a random feet gif
+commands.nsfw.fingering.help.description = Shows a random fingering gif
+commands.nsfw.linking.help.description = Shows a random licking gif
+commands.nsfw.porn.help.description = Shows a random porn gif
+commands.nsfw.pussy.help.description = Shows a random pussy gif
+commands.nsfw.randomporn.help.description = Shows a completely random porn gif
+commands.nsfw.solo.help.description = Shows a random solo gif
+commands.nsfw.spank.help.description = Shows a random spank gif
commands.nsfw.trans.help.description = Shows a random trans picture
commands.owner.eval.success.title = Eval Command
@@ -327,7 +327,7 @@ commands.settings.language.success.title = Language set
commands.settings.language.success.description = `%extra%` is your new language now.
commands.settings.language.error.title = Language not found
commands.settings.language.error.description = Please choose one of the following language codes\: %extra%
-commands.settings.language.help.description = Sets the new primary language for a user.
+commands.settings.language.help.description = Sets the new primary language for a user
commands.settings.prefix.success.title = Successfully set prefix
commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`.
-commands.settings.prefix.help.description = Sets a new prefix.
+commands.settings.prefix.help.description = Sets a new prefix
diff --git a/src/main/resources/Translations/Translations_ru.properties b/src/main/resources/Translations/Translations_ru.properties
index 98016c1..3577e78 100644
--- a/src/main/resources/Translations/Translations_ru.properties
+++ b/src/main/resources/Translations/Translations_ru.properties
@@ -23,19 +23,19 @@ success\! = Success\!
commands.fun.avatar.success.title = Avatar of %extra%
commands.fun.avatar.error.title = User not found
commands.fun.avatar.error.description = I can not find a user with this id\!
-commands.fun.avatar.help.description = Sends the avatar of the specified Member.
-commands.fun.gif.error.description = Please try again with another term.
-commands.fun.gif.help.description = Looks for a GIF on Giphy.
+commands.fun.avatar.help.description = Sends the avatar of the specified Member
+commands.fun.gif.error.description = Please try again with another term
+commands.fun.gif.help.description = Looks for a GIF on Giphy
commands.fun.meme.success.title = Your random meme\:
commands.fun.meme.api.error = The request to the meme API could not be processed. Please try again later.
-commands.fun.meme.help.description = Sends you a random meme.
-commands.fun.clyde.help.description = Sends a message as a webhook named Clyde.
+commands.fun.meme.help.description = Sends you a random meme
+commands.fun.clyde.help.description = Sends a message as a webhook named Clyde
commands.general.about.success.title = Hadder - About
-commands.general.about.success.description = Hadder is an open source Discord bot.
+commands.general.about.success.description = Hadder is an open source Discord bot
commands.general.about.success.field.one.title = Support the developers
commands.general.about.success.field.one.description = Hadder is completely free for everyone. We would appreciate it if you donated some money to us. Click [here]%extra% to donate.
-commands.general.about.help.description = Shows information about Hadder.
+commands.general.about.help.description = Shows information about Hadder
commands.general.equals.string.first.request = Please send me the first String.
commands.general.equals.string.second.request = Please send me the second String.
commands.general.equals.string.equals.true = Yes\! The first string equals the second string\!
@@ -43,24 +43,24 @@ commands.general.equals.string.equals.false = Well yes but actually No. This isn
commands.general.equals.string.first = First string\:
commands.general.equals.string.second = Second string\:
commands.general.equals.string.result = Result\:
-commands.general.equals.help.description = Checks if two strings are equal.
+commands.general.equals.help.description = Checks if two strings are equal
commands.general.help.description = **Description\:**
commands.general.help.usage = **Usage\:**
commands.general.help.example = **Example\:**
commands.general.help.error.description = I need the Embed Links Permission to send the Help Menu\!
-commands.general.help.help.description = Shows each command and explains its usage.
+commands.general.help.help.description = Shows each command and explains its usage
commands.general.help.help.label = [CommandName]
commands.general.invite.success.title = Invite me\!
commands.general.invite.success.description = [Invite me here\!]%extra%
-commands.general.invite.help.description = Shows the invitation link to invite Hadder to your server.
-commands.general.ping.help.description = Shows the ping to the Discord API.
+commands.general.invite.help.description = Shows the invitation link to invite Hadder to your server
+commands.general.ping.help.description = Shows the ping to the Discord API
commands.misc.feedback.title.request.title = Feedback Topic
commands.misc.feedback.title.request.description = Please send me the feedback topic.
commands.misc.feedback.description.request.title = Feedback Description
commands.misc.feedback.description.request.description = Please send me the feedback description now.
commands.misc.feedback.success.title = Feedback successfully sent\!
-commands.misc.feedback.help.description = Sends feedback directly to the developers.
+commands.misc.feedback.help.description = Sends feedback directly to the developers
commands.misc.github.link.title = Link your GitHub Account
commands.misc.github.success.title = Information about %extra%
commands.misc.github.success.bio = User bio
@@ -76,7 +76,7 @@ commands.misc.github.user.error.title = User doesn't exist
commands.misc.github.user.error.description = I can not find a user named like this\!
commands.misc.github.connect.title = Connect your GH account
commands.misc.github.connect.description = [Please connect your GitHub account here]%extra%
-commands.misc.github.help.description = Displays information about a GitHub user profile.
+commands.misc.github.help.description = Displays information about a GitHub user profile
commands.misc.screenshare.success.title = Here's your URL to share your Screen
commands.misc.screenshare.id.error.title = Wait. That's illegal.
commands.misc.screenshare.id.error.description = This ID is invalid. \nMaybe you entered a wrong ID. \n\nNote\: Make sure the Voice Channel is in this Guild.
@@ -86,18 +86,18 @@ commands.misc.screenshare.number.error.title = You specified a wrong number\!
commands.misc.screenshare.number.error.description = This isn't a Number.
commands.misc.screenshare.channel.existing.error = Hol' up
commands.misc.screenshare.channel.existing.description = There is no Voice Channel named like this. \n\nNote\: Make sure the Voice Channel is in this Guild.
-commands.misc.screenshare.help.description = Shows you the link to share your screen.
+commands.misc.screenshare.help.description = Shows you the link to share your screen
commands.misc.serverstats.title = Serverstats
commands.misc.serverstats.description = This message contains some information about `%extra%`
-commands.misc.serverstats.help.description = Shows information about a server.
+commands.misc.serverstats.help.description = Shows information about a server
commands.misc.profile.error.title = Not found
commands.misc.profile.error.description = I can't find the specified user.
-commands.misc.profile.help.description = Shows some information about the specified user.
+commands.misc.profile.help.description = Shows some information about the specified user
commands.misc.code.success.title = Invite code information
commands.misc.code.success.description = This message contains some information about the specified invite code.
commands.misc.code.error.title = Code not found
commands.misc.code.error.description = I can't find the specified invite code.
-commands.misc.code.help.description = Shows information about a invite code.
+commands.misc.code.help.description = Shows information about a invite code
commands.misc.moveall.success.title = Successfully moved
commands.misc.moveall.success.description = I successfully moved %extra% members. Have fun\!
commands.misc.moveall.error.equals.title = Not twice
@@ -106,7 +106,7 @@ commands.misc.moveall.error.source.int.title = Invalid ID
commands.misc.moveall.error.source.int.description = You haven't specified an ID as the source channel.
commands.misc.moveall.error.target.int.title = Invalid ID
commands.misc.moveall.error.target.int.description = You haven't specified an ID as the target channel.
-commands.misc.moveall.help.description = Moves all users in the source channel to the target channel.
+commands.misc.moveall.help.description = Moves all users in the source channel to the target channel
commands.misc.corona.help.description = Shows the newest stats of COVID-19
commands.moderation.ban.success.title = Successfully banned
@@ -115,7 +115,7 @@ commands.moderation.ban.error.title = Not possible
commands.moderation.ban.myself.error.description = I can not ban myself\!
commands.moderation.ban.yourself.error.description = You can not ban yourself\!
commands.moderation.ban.massban.success.description = I successfully banned %extra% members\!
-commands.moderation.ban.help.description = Bans one or more users from the server.
+commands.moderation.ban.help.description = Bans one or more users from the server
commands.moderation.clear.all.success.title = Successfully deleted
commands.moderation.clear.all.success.description = I successfully deleted %extra% messages.
commands.moderation.clear.number.error.title = Invalid number
@@ -125,11 +125,11 @@ commands.moderation.clear.success.description.singular = Successfully deleted on
commands.moderation.clear.success.description.plural = Successfully deleted %extra% messages.
commands.moderation.clear.message.error.title = No messages\!
commands.moderation.clear.message.error.description = There are no messages in this channel.
-commands.moderation.clear.help.description = Deletes the specified number of messages.
+commands.moderation.clear.help.description = Deletes the specified number of messages
commands.moderation.prefix.success.title = %extra% Successfully set %extra%
commands.moderation.prefix.success.description = I successfully set the new prefix for the server to `%extra%`.
commands.moderation.prefix.error.description = The prefix must not contain **"**
-commands.moderation.prefix.help.description = Sets the Guild-Prefix.
+commands.moderation.prefix.help.description = Sets the Guild-Prefix
commands.moderation.invitedetect.activate.success.title = Successfully activated
commands.moderation.invitedetect.activate.success.description = I successfully activated the invite link detection for this server.
commands.moderation.invitedetect.activate.error.title = Already activated
@@ -138,24 +138,24 @@ commands.moderation.invitedetect.deactivate.success.title = Successfully deactiv
commands.moderation.invitedetect.deactivate.success.description = I successfully deactivated the invite link detection for this server.
commands.moderation.invitedetect.deactivate.error.title = Already deactivated
commands.moderation.invitedetect.deactivate.error.description = The invite link detection is already deactivated on this server.
-commands.moderation.invitedetect.help.description = Activate or deactivate the Discord invite link detection.
+commands.moderation.invitedetect.help.description = Activate or deactivate the Discord invite link detection
commands.moderation.kick.success.title = %extra% Successfully kicked %extra%
commands.moderation.kick.success.description = I successfully kicked %extra%.
commands.moderation.kick.error.title = Not possible
commands.moderation.kick.myself.error.description = I can not kick myself\!
commands.moderation.kick.yourself.error.description = You can't kick yourself.
commands.moderation.kick.mass.success.description = I successfully kicked %extra% Members\!
-commands.moderation.kick.help.description = Kicks one or more user from the server.
+commands.moderation.kick.help.description = Kicks one or more user from the server
commands.moderation.kick.masskick.success.description = I successfully kicked %extra% members.
commands.moderation.nick.success.title = %extra% Successfully nicked %extra%
commands.moderation.nick.success.description = I successfully nicked %extra%.
commands.moderation.nick.myself.success.description = I successfully changed my nickname.
commands.moderation.nick.massnick.success.description = I successfully nicked %extra% Members.
-commands.moderation.nick.help.description = Rename a one or more user.
+commands.moderation.nick.help.description = Rename a one or more user
commands.moderation.regionchange.regions.title = All regions
commands.moderation.regionchange.success.title = Successfully set region
commands.moderation.regionchange.success.description = I successfully set the new server region to %extra%.
-commands.moderation.regionchange.help.description = Changes the server region to locked regions.
+commands.moderation.regionchange.help.description = Changes the server region to locked regions
commands.moderation.role.add.success.title = Successfully added role(s)
commands.moderation.role.add.success.description = I successfully added %extra% roles to %extra_two% members.
commands.moderation.role.remove.success.title = Successfully removed role(s)
@@ -194,7 +194,7 @@ commands.moderation.rules.error.interact.title = Can't interact
commands.moderation.rules.error.interact.description = I can not interact with the specified role. Make sure my role is higher than the specified role.
commands.moderation.rules.help.description = Setup the rules on your Discord server
commands.moderation.starboard.success.title = Successfully set the Channel\!
-commands.moderation.starboard.help.description = Sets the starboard channel.
+commands.moderation.starboard.help.description = Sets the starboard channel
commands.moderation.editrules.channel.title = Rules channel
commands.moderation.editrules.channel.description = Please send me the channel with the rules as mention
commands.moderation.editrules.channel.found.error.title = Channel not found
@@ -207,11 +207,11 @@ commands.moderation.editrules.error.title = No rules
commands.moderation.editrules.error.description = There is nor rules message in this server. Please setup the rules first with %extra%rules
commands.moderation.editrules.success.title = Successfully changed
commands.moderation.editrules.success.description = I successfully changed the rules
-commands.moderation.editrules.help.description = Edits the rules message.
+commands.moderation.editrules.help.description = Edits the rules message
commands.music.bass.error.connected.title = No channel
commands.music.bass.error.connected.description = You have to be in the same voice channel as the bot to change the bass level.
-commands.music.bass.help.description = Change the bass for the song which is played at the moment.
+commands.music.bass.help.description = Change the bass for the song which is played at the moment
commands.music.join.success.title = Successfully connected
commands.music.join.success.description = I successfully connected to %extra%.
commands.music.join.error.connecting.already.title = Already connected
@@ -222,7 +222,7 @@ commands.music.join.error.channel.title = No Voice Channel
commands.music.join.error.channel.description = You aren't in a Voice Channel.
commands.music.join.error.permission.title = No permission
commands.music.join.error.permission.description = I am not allowed to join your voice channel.
-commands.music.join.help.description = Joins your voice channel.
+commands.music.join.help.description = Joins your voice channel
commands.music.play.load.title = %extra% Now loading %extra%
commands.music.play.load.description = Trying to load the song...
commands.music.play.success.loading.title = %extra% Now playing %extra%
@@ -239,67 +239,67 @@ commands.music.play.success.unpause.title = Successfully continued
commands.music.play.success.unpause.description = I successfully continued playing the song.
commands.music.play.error.connected.title = No channel
commands.music.play.error.connected.description = You have to be in the same voice channel as the bot to continue the song.
-commands.music.play.help.description = Plays the specified song.
+commands.music.play.help.description = Plays the specified song
commands.music.stop.success.title = Successfully stopped
commands.music.stop.success.description = I successfully stopped the song.
commands.music.stop.error.connected.title = No channel
commands.music.stop.error.connected.description = You have to be in the same voice channel as the bot to stop the song.
-commands.music.stop.help.description = Stops the song.
+commands.music.stop.help.description = Stops the song
commands.music.info.success.title = Track info
commands.music.info.error.title = No playing track
commands.music.info.error.description = I am not playing anything at the moment
-commands.music.info.help.description = Shows information about the playing song.
+commands.music.info.help.description = Shows information about the playing song
commands.music.queue.error.title = No queue
commands.music.queue.error.description = There are no queued songs at the moment
commands.music.queue.success.title = Queue %extra%
commands.music.queue.success.description = This is the queue\: \n %extra%
-commands.music.queue.help.description = Shows the music queue.
+commands.music.queue.help.description = Shows the music queue
commands.music.skip.success.title = Successfully skipped
commands.music.skip.success.description = I successfully skipped to the next song
commands.music.skip.error.connected.title = No channel
commands.music.skip.error.connected.description = You have to be in the same voice channel as the bot to skip the song.
-commands.music.skip.help.description = Skips the currently playing song.
+commands.music.skip.help.description = Skips the currently playing song
commands.music.volume.success.title = Successfully set
commands.music.volume.success.description = I successfully set the new volume to %extra%
commands.music.volume.error.int.title = Invalid number
commands.music.volume.error.int.description = The volume have to be between 1 and 200
commands.music.volume.error.connected.title = No channel
commands.music.volume.error.connected.description = You have to be in the same voice channel as the bot to change the volume.
-commands.music.volume.help.description = Change the volume of the music.
+commands.music.volume.help.description = Change the volume of the music
commands.music.pause.success.title = Successfully paused
commands.music.pause.success.description = I successfully paused the played song.
commands.music.pause.error.paused.title = Already paused
commands.music.pause.error.paused.description = The song is already paused. You can continue playing it with %extra%play
commands.music.pause.error.connected.title = No channel
commands.music.pause.error.connected.description = You have to be in the same voice channel as the bot to pause the song.
-commands.music.pause.help.description = Pause the playing song.
+commands.music.pause.help.description = Pause the playing song
commands.music.loop.success.loop.title = Successfully activated
commands.music.loop.success.loop.description = I will now repeat the currently played song.
commands.music.loop.success.unloop.title = Successfully deactivated
commands.music.loop.success.unloop.description = I will no longer repeat the currently played song.
commands.music.loop.error.connected.title = No channel
commands.music.loop.error.connected.description = You have to be in the same voice channel as the bot to set the repeat status.
-commands.music.loop.help.description = Repeats a song/queue.
+commands.music.loop.help.description = Repeats a song/queue
commands.music.echo.success.title = Successfully activated
commands.music.echo.success.description = I will now repeat everything I can hear in your voice channel
-commands.music.echo.help.description = Sends your voice through Hadder.
+commands.music.echo.help.description = Sends your voice through Hadder
commands.nsfw.gif.error.title = GIF not showing? Click here
commands.nsfw.img.error.title = Image not showing? Click here
-commands.nsfw.anal.help.description = Shows a random anal gif.
+commands.nsfw.anal.help.description = Shows a random anal gif
commands.nsfw.bdsm.help.description = Shows a random BDSM picture
commands.nsfw.blowjob.help.description = Shows a random Blowjob picture
-commands.nsfw.boobs.help.description = Shows a random boob gif.
-commands.nsfw.cum.help.description = Shows a random cum gif.
+commands.nsfw.boobs.help.description = Shows a random boob gif
+commands.nsfw.cum.help.description = Shows a random cum gif
commands.nsfw.erotic.help.description = Shows a random erotic picture
-commands.nsfw.feet.help.description = Shows a random feet gif.
-commands.nsfw.fingering.help.description = Shows a random fingering gif.
-commands.nsfw.linking.help.description = Shows a random licking gif.
-commands.nsfw.porn.help.description = Shows a random porn gif.
-commands.nsfw.pussy.help.description = Shows a random pussy gif.
-commands.nsfw.randomporn.help.description = Shows a completely random porn gif.
-commands.nsfw.solo.help.description = Shows a random solo gif.
-commands.nsfw.spank.help.description = Shows a random spank gif.
+commands.nsfw.feet.help.description = Shows a random feet gif
+commands.nsfw.fingering.help.description = Shows a random fingering gif
+commands.nsfw.linking.help.description = Shows a random licking gif
+commands.nsfw.porn.help.description = Shows a random porn gif
+commands.nsfw.pussy.help.description = Shows a random pussy gif
+commands.nsfw.randomporn.help.description = Shows a completely random porn gif
+commands.nsfw.solo.help.description = Shows a random solo gif
+commands.nsfw.spank.help.description = Shows a random spank gif
commands.nsfw.trans.help.description = Shows a random trans picture
commands.owner.eval.success.title = Eval Command
@@ -327,7 +327,7 @@ commands.settings.language.success.title = Language set
commands.settings.language.success.description = `%extra%` is your new language now.
commands.settings.language.error.title = Language not found
commands.settings.language.error.description = Please choose one of the following language codes\: %extra%
-commands.settings.language.help.description = Sets the new primary language for a user.
+commands.settings.language.help.description = Sets the new primary language for a user
commands.settings.prefix.success.title = Successfully set prefix
commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`.
-commands.settings.prefix.help.description = Sets a new prefix.
+commands.settings.prefix.help.description = Sets a new prefix
diff --git a/src/main/resources/Translations/Translations_tr.properties b/src/main/resources/Translations/Translations_tr.properties
index 98016c1..3577e78 100644
--- a/src/main/resources/Translations/Translations_tr.properties
+++ b/src/main/resources/Translations/Translations_tr.properties
@@ -23,19 +23,19 @@ success\! = Success\!
commands.fun.avatar.success.title = Avatar of %extra%
commands.fun.avatar.error.title = User not found
commands.fun.avatar.error.description = I can not find a user with this id\!
-commands.fun.avatar.help.description = Sends the avatar of the specified Member.
-commands.fun.gif.error.description = Please try again with another term.
-commands.fun.gif.help.description = Looks for a GIF on Giphy.
+commands.fun.avatar.help.description = Sends the avatar of the specified Member
+commands.fun.gif.error.description = Please try again with another term
+commands.fun.gif.help.description = Looks for a GIF on Giphy
commands.fun.meme.success.title = Your random meme\:
commands.fun.meme.api.error = The request to the meme API could not be processed. Please try again later.
-commands.fun.meme.help.description = Sends you a random meme.
-commands.fun.clyde.help.description = Sends a message as a webhook named Clyde.
+commands.fun.meme.help.description = Sends you a random meme
+commands.fun.clyde.help.description = Sends a message as a webhook named Clyde
commands.general.about.success.title = Hadder - About
-commands.general.about.success.description = Hadder is an open source Discord bot.
+commands.general.about.success.description = Hadder is an open source Discord bot
commands.general.about.success.field.one.title = Support the developers
commands.general.about.success.field.one.description = Hadder is completely free for everyone. We would appreciate it if you donated some money to us. Click [here]%extra% to donate.
-commands.general.about.help.description = Shows information about Hadder.
+commands.general.about.help.description = Shows information about Hadder
commands.general.equals.string.first.request = Please send me the first String.
commands.general.equals.string.second.request = Please send me the second String.
commands.general.equals.string.equals.true = Yes\! The first string equals the second string\!
@@ -43,24 +43,24 @@ commands.general.equals.string.equals.false = Well yes but actually No. This isn
commands.general.equals.string.first = First string\:
commands.general.equals.string.second = Second string\:
commands.general.equals.string.result = Result\:
-commands.general.equals.help.description = Checks if two strings are equal.
+commands.general.equals.help.description = Checks if two strings are equal
commands.general.help.description = **Description\:**
commands.general.help.usage = **Usage\:**
commands.general.help.example = **Example\:**
commands.general.help.error.description = I need the Embed Links Permission to send the Help Menu\!
-commands.general.help.help.description = Shows each command and explains its usage.
+commands.general.help.help.description = Shows each command and explains its usage
commands.general.help.help.label = [CommandName]
commands.general.invite.success.title = Invite me\!
commands.general.invite.success.description = [Invite me here\!]%extra%
-commands.general.invite.help.description = Shows the invitation link to invite Hadder to your server.
-commands.general.ping.help.description = Shows the ping to the Discord API.
+commands.general.invite.help.description = Shows the invitation link to invite Hadder to your server
+commands.general.ping.help.description = Shows the ping to the Discord API
commands.misc.feedback.title.request.title = Feedback Topic
commands.misc.feedback.title.request.description = Please send me the feedback topic.
commands.misc.feedback.description.request.title = Feedback Description
commands.misc.feedback.description.request.description = Please send me the feedback description now.
commands.misc.feedback.success.title = Feedback successfully sent\!
-commands.misc.feedback.help.description = Sends feedback directly to the developers.
+commands.misc.feedback.help.description = Sends feedback directly to the developers
commands.misc.github.link.title = Link your GitHub Account
commands.misc.github.success.title = Information about %extra%
commands.misc.github.success.bio = User bio
@@ -76,7 +76,7 @@ commands.misc.github.user.error.title = User doesn't exist
commands.misc.github.user.error.description = I can not find a user named like this\!
commands.misc.github.connect.title = Connect your GH account
commands.misc.github.connect.description = [Please connect your GitHub account here]%extra%
-commands.misc.github.help.description = Displays information about a GitHub user profile.
+commands.misc.github.help.description = Displays information about a GitHub user profile
commands.misc.screenshare.success.title = Here's your URL to share your Screen
commands.misc.screenshare.id.error.title = Wait. That's illegal.
commands.misc.screenshare.id.error.description = This ID is invalid. \nMaybe you entered a wrong ID. \n\nNote\: Make sure the Voice Channel is in this Guild.
@@ -86,18 +86,18 @@ commands.misc.screenshare.number.error.title = You specified a wrong number\!
commands.misc.screenshare.number.error.description = This isn't a Number.
commands.misc.screenshare.channel.existing.error = Hol' up
commands.misc.screenshare.channel.existing.description = There is no Voice Channel named like this. \n\nNote\: Make sure the Voice Channel is in this Guild.
-commands.misc.screenshare.help.description = Shows you the link to share your screen.
+commands.misc.screenshare.help.description = Shows you the link to share your screen
commands.misc.serverstats.title = Serverstats
commands.misc.serverstats.description = This message contains some information about `%extra%`
-commands.misc.serverstats.help.description = Shows information about a server.
+commands.misc.serverstats.help.description = Shows information about a server
commands.misc.profile.error.title = Not found
commands.misc.profile.error.description = I can't find the specified user.
-commands.misc.profile.help.description = Shows some information about the specified user.
+commands.misc.profile.help.description = Shows some information about the specified user
commands.misc.code.success.title = Invite code information
commands.misc.code.success.description = This message contains some information about the specified invite code.
commands.misc.code.error.title = Code not found
commands.misc.code.error.description = I can't find the specified invite code.
-commands.misc.code.help.description = Shows information about a invite code.
+commands.misc.code.help.description = Shows information about a invite code
commands.misc.moveall.success.title = Successfully moved
commands.misc.moveall.success.description = I successfully moved %extra% members. Have fun\!
commands.misc.moveall.error.equals.title = Not twice
@@ -106,7 +106,7 @@ commands.misc.moveall.error.source.int.title = Invalid ID
commands.misc.moveall.error.source.int.description = You haven't specified an ID as the source channel.
commands.misc.moveall.error.target.int.title = Invalid ID
commands.misc.moveall.error.target.int.description = You haven't specified an ID as the target channel.
-commands.misc.moveall.help.description = Moves all users in the source channel to the target channel.
+commands.misc.moveall.help.description = Moves all users in the source channel to the target channel
commands.misc.corona.help.description = Shows the newest stats of COVID-19
commands.moderation.ban.success.title = Successfully banned
@@ -115,7 +115,7 @@ commands.moderation.ban.error.title = Not possible
commands.moderation.ban.myself.error.description = I can not ban myself\!
commands.moderation.ban.yourself.error.description = You can not ban yourself\!
commands.moderation.ban.massban.success.description = I successfully banned %extra% members\!
-commands.moderation.ban.help.description = Bans one or more users from the server.
+commands.moderation.ban.help.description = Bans one or more users from the server
commands.moderation.clear.all.success.title = Successfully deleted
commands.moderation.clear.all.success.description = I successfully deleted %extra% messages.
commands.moderation.clear.number.error.title = Invalid number
@@ -125,11 +125,11 @@ commands.moderation.clear.success.description.singular = Successfully deleted on
commands.moderation.clear.success.description.plural = Successfully deleted %extra% messages.
commands.moderation.clear.message.error.title = No messages\!
commands.moderation.clear.message.error.description = There are no messages in this channel.
-commands.moderation.clear.help.description = Deletes the specified number of messages.
+commands.moderation.clear.help.description = Deletes the specified number of messages
commands.moderation.prefix.success.title = %extra% Successfully set %extra%
commands.moderation.prefix.success.description = I successfully set the new prefix for the server to `%extra%`.
commands.moderation.prefix.error.description = The prefix must not contain **"**
-commands.moderation.prefix.help.description = Sets the Guild-Prefix.
+commands.moderation.prefix.help.description = Sets the Guild-Prefix
commands.moderation.invitedetect.activate.success.title = Successfully activated
commands.moderation.invitedetect.activate.success.description = I successfully activated the invite link detection for this server.
commands.moderation.invitedetect.activate.error.title = Already activated
@@ -138,24 +138,24 @@ commands.moderation.invitedetect.deactivate.success.title = Successfully deactiv
commands.moderation.invitedetect.deactivate.success.description = I successfully deactivated the invite link detection for this server.
commands.moderation.invitedetect.deactivate.error.title = Already deactivated
commands.moderation.invitedetect.deactivate.error.description = The invite link detection is already deactivated on this server.
-commands.moderation.invitedetect.help.description = Activate or deactivate the Discord invite link detection.
+commands.moderation.invitedetect.help.description = Activate or deactivate the Discord invite link detection
commands.moderation.kick.success.title = %extra% Successfully kicked %extra%
commands.moderation.kick.success.description = I successfully kicked %extra%.
commands.moderation.kick.error.title = Not possible
commands.moderation.kick.myself.error.description = I can not kick myself\!
commands.moderation.kick.yourself.error.description = You can't kick yourself.
commands.moderation.kick.mass.success.description = I successfully kicked %extra% Members\!
-commands.moderation.kick.help.description = Kicks one or more user from the server.
+commands.moderation.kick.help.description = Kicks one or more user from the server
commands.moderation.kick.masskick.success.description = I successfully kicked %extra% members.
commands.moderation.nick.success.title = %extra% Successfully nicked %extra%
commands.moderation.nick.success.description = I successfully nicked %extra%.
commands.moderation.nick.myself.success.description = I successfully changed my nickname.
commands.moderation.nick.massnick.success.description = I successfully nicked %extra% Members.
-commands.moderation.nick.help.description = Rename a one or more user.
+commands.moderation.nick.help.description = Rename a one or more user
commands.moderation.regionchange.regions.title = All regions
commands.moderation.regionchange.success.title = Successfully set region
commands.moderation.regionchange.success.description = I successfully set the new server region to %extra%.
-commands.moderation.regionchange.help.description = Changes the server region to locked regions.
+commands.moderation.regionchange.help.description = Changes the server region to locked regions
commands.moderation.role.add.success.title = Successfully added role(s)
commands.moderation.role.add.success.description = I successfully added %extra% roles to %extra_two% members.
commands.moderation.role.remove.success.title = Successfully removed role(s)
@@ -194,7 +194,7 @@ commands.moderation.rules.error.interact.title = Can't interact
commands.moderation.rules.error.interact.description = I can not interact with the specified role. Make sure my role is higher than the specified role.
commands.moderation.rules.help.description = Setup the rules on your Discord server
commands.moderation.starboard.success.title = Successfully set the Channel\!
-commands.moderation.starboard.help.description = Sets the starboard channel.
+commands.moderation.starboard.help.description = Sets the starboard channel
commands.moderation.editrules.channel.title = Rules channel
commands.moderation.editrules.channel.description = Please send me the channel with the rules as mention
commands.moderation.editrules.channel.found.error.title = Channel not found
@@ -207,11 +207,11 @@ commands.moderation.editrules.error.title = No rules
commands.moderation.editrules.error.description = There is nor rules message in this server. Please setup the rules first with %extra%rules
commands.moderation.editrules.success.title = Successfully changed
commands.moderation.editrules.success.description = I successfully changed the rules
-commands.moderation.editrules.help.description = Edits the rules message.
+commands.moderation.editrules.help.description = Edits the rules message
commands.music.bass.error.connected.title = No channel
commands.music.bass.error.connected.description = You have to be in the same voice channel as the bot to change the bass level.
-commands.music.bass.help.description = Change the bass for the song which is played at the moment.
+commands.music.bass.help.description = Change the bass for the song which is played at the moment
commands.music.join.success.title = Successfully connected
commands.music.join.success.description = I successfully connected to %extra%.
commands.music.join.error.connecting.already.title = Already connected
@@ -222,7 +222,7 @@ commands.music.join.error.channel.title = No Voice Channel
commands.music.join.error.channel.description = You aren't in a Voice Channel.
commands.music.join.error.permission.title = No permission
commands.music.join.error.permission.description = I am not allowed to join your voice channel.
-commands.music.join.help.description = Joins your voice channel.
+commands.music.join.help.description = Joins your voice channel
commands.music.play.load.title = %extra% Now loading %extra%
commands.music.play.load.description = Trying to load the song...
commands.music.play.success.loading.title = %extra% Now playing %extra%
@@ -239,67 +239,67 @@ commands.music.play.success.unpause.title = Successfully continued
commands.music.play.success.unpause.description = I successfully continued playing the song.
commands.music.play.error.connected.title = No channel
commands.music.play.error.connected.description = You have to be in the same voice channel as the bot to continue the song.
-commands.music.play.help.description = Plays the specified song.
+commands.music.play.help.description = Plays the specified song
commands.music.stop.success.title = Successfully stopped
commands.music.stop.success.description = I successfully stopped the song.
commands.music.stop.error.connected.title = No channel
commands.music.stop.error.connected.description = You have to be in the same voice channel as the bot to stop the song.
-commands.music.stop.help.description = Stops the song.
+commands.music.stop.help.description = Stops the song
commands.music.info.success.title = Track info
commands.music.info.error.title = No playing track
commands.music.info.error.description = I am not playing anything at the moment
-commands.music.info.help.description = Shows information about the playing song.
+commands.music.info.help.description = Shows information about the playing song
commands.music.queue.error.title = No queue
commands.music.queue.error.description = There are no queued songs at the moment
commands.music.queue.success.title = Queue %extra%
commands.music.queue.success.description = This is the queue\: \n %extra%
-commands.music.queue.help.description = Shows the music queue.
+commands.music.queue.help.description = Shows the music queue
commands.music.skip.success.title = Successfully skipped
commands.music.skip.success.description = I successfully skipped to the next song
commands.music.skip.error.connected.title = No channel
commands.music.skip.error.connected.description = You have to be in the same voice channel as the bot to skip the song.
-commands.music.skip.help.description = Skips the currently playing song.
+commands.music.skip.help.description = Skips the currently playing song
commands.music.volume.success.title = Successfully set
commands.music.volume.success.description = I successfully set the new volume to %extra%
commands.music.volume.error.int.title = Invalid number
commands.music.volume.error.int.description = The volume have to be between 1 and 200
commands.music.volume.error.connected.title = No channel
commands.music.volume.error.connected.description = You have to be in the same voice channel as the bot to change the volume.
-commands.music.volume.help.description = Change the volume of the music.
+commands.music.volume.help.description = Change the volume of the music
commands.music.pause.success.title = Successfully paused
commands.music.pause.success.description = I successfully paused the played song.
commands.music.pause.error.paused.title = Already paused
commands.music.pause.error.paused.description = The song is already paused. You can continue playing it with %extra%play
commands.music.pause.error.connected.title = No channel
commands.music.pause.error.connected.description = You have to be in the same voice channel as the bot to pause the song.
-commands.music.pause.help.description = Pause the playing song.
+commands.music.pause.help.description = Pause the playing song
commands.music.loop.success.loop.title = Successfully activated
commands.music.loop.success.loop.description = I will now repeat the currently played song.
commands.music.loop.success.unloop.title = Successfully deactivated
commands.music.loop.success.unloop.description = I will no longer repeat the currently played song.
commands.music.loop.error.connected.title = No channel
commands.music.loop.error.connected.description = You have to be in the same voice channel as the bot to set the repeat status.
-commands.music.loop.help.description = Repeats a song/queue.
+commands.music.loop.help.description = Repeats a song/queue
commands.music.echo.success.title = Successfully activated
commands.music.echo.success.description = I will now repeat everything I can hear in your voice channel
-commands.music.echo.help.description = Sends your voice through Hadder.
+commands.music.echo.help.description = Sends your voice through Hadder
commands.nsfw.gif.error.title = GIF not showing? Click here
commands.nsfw.img.error.title = Image not showing? Click here
-commands.nsfw.anal.help.description = Shows a random anal gif.
+commands.nsfw.anal.help.description = Shows a random anal gif
commands.nsfw.bdsm.help.description = Shows a random BDSM picture
commands.nsfw.blowjob.help.description = Shows a random Blowjob picture
-commands.nsfw.boobs.help.description = Shows a random boob gif.
-commands.nsfw.cum.help.description = Shows a random cum gif.
+commands.nsfw.boobs.help.description = Shows a random boob gif
+commands.nsfw.cum.help.description = Shows a random cum gif
commands.nsfw.erotic.help.description = Shows a random erotic picture
-commands.nsfw.feet.help.description = Shows a random feet gif.
-commands.nsfw.fingering.help.description = Shows a random fingering gif.
-commands.nsfw.linking.help.description = Shows a random licking gif.
-commands.nsfw.porn.help.description = Shows a random porn gif.
-commands.nsfw.pussy.help.description = Shows a random pussy gif.
-commands.nsfw.randomporn.help.description = Shows a completely random porn gif.
-commands.nsfw.solo.help.description = Shows a random solo gif.
-commands.nsfw.spank.help.description = Shows a random spank gif.
+commands.nsfw.feet.help.description = Shows a random feet gif
+commands.nsfw.fingering.help.description = Shows a random fingering gif
+commands.nsfw.linking.help.description = Shows a random licking gif
+commands.nsfw.porn.help.description = Shows a random porn gif
+commands.nsfw.pussy.help.description = Shows a random pussy gif
+commands.nsfw.randomporn.help.description = Shows a completely random porn gif
+commands.nsfw.solo.help.description = Shows a random solo gif
+commands.nsfw.spank.help.description = Shows a random spank gif
commands.nsfw.trans.help.description = Shows a random trans picture
commands.owner.eval.success.title = Eval Command
@@ -327,7 +327,7 @@ commands.settings.language.success.title = Language set
commands.settings.language.success.description = `%extra%` is your new language now.
commands.settings.language.error.title = Language not found
commands.settings.language.error.description = Please choose one of the following language codes\: %extra%
-commands.settings.language.help.description = Sets the new primary language for a user.
+commands.settings.language.help.description = Sets the new primary language for a user
commands.settings.prefix.success.title = Successfully set prefix
commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`.
-commands.settings.prefix.help.description = Sets a new prefix.
+commands.settings.prefix.help.description = Sets a new prefix
diff --git a/src/main/resources/Translations/Translations_zh.properties b/src/main/resources/Translations/Translations_zh.properties
index 98016c1..3577e78 100644
--- a/src/main/resources/Translations/Translations_zh.properties
+++ b/src/main/resources/Translations/Translations_zh.properties
@@ -23,19 +23,19 @@ success\! = Success\!
commands.fun.avatar.success.title = Avatar of %extra%
commands.fun.avatar.error.title = User not found
commands.fun.avatar.error.description = I can not find a user with this id\!
-commands.fun.avatar.help.description = Sends the avatar of the specified Member.
-commands.fun.gif.error.description = Please try again with another term.
-commands.fun.gif.help.description = Looks for a GIF on Giphy.
+commands.fun.avatar.help.description = Sends the avatar of the specified Member
+commands.fun.gif.error.description = Please try again with another term
+commands.fun.gif.help.description = Looks for a GIF on Giphy
commands.fun.meme.success.title = Your random meme\:
commands.fun.meme.api.error = The request to the meme API could not be processed. Please try again later.
-commands.fun.meme.help.description = Sends you a random meme.
-commands.fun.clyde.help.description = Sends a message as a webhook named Clyde.
+commands.fun.meme.help.description = Sends you a random meme
+commands.fun.clyde.help.description = Sends a message as a webhook named Clyde
commands.general.about.success.title = Hadder - About
-commands.general.about.success.description = Hadder is an open source Discord bot.
+commands.general.about.success.description = Hadder is an open source Discord bot
commands.general.about.success.field.one.title = Support the developers
commands.general.about.success.field.one.description = Hadder is completely free for everyone. We would appreciate it if you donated some money to us. Click [here]%extra% to donate.
-commands.general.about.help.description = Shows information about Hadder.
+commands.general.about.help.description = Shows information about Hadder
commands.general.equals.string.first.request = Please send me the first String.
commands.general.equals.string.second.request = Please send me the second String.
commands.general.equals.string.equals.true = Yes\! The first string equals the second string\!
@@ -43,24 +43,24 @@ commands.general.equals.string.equals.false = Well yes but actually No. This isn
commands.general.equals.string.first = First string\:
commands.general.equals.string.second = Second string\:
commands.general.equals.string.result = Result\:
-commands.general.equals.help.description = Checks if two strings are equal.
+commands.general.equals.help.description = Checks if two strings are equal
commands.general.help.description = **Description\:**
commands.general.help.usage = **Usage\:**
commands.general.help.example = **Example\:**
commands.general.help.error.description = I need the Embed Links Permission to send the Help Menu\!
-commands.general.help.help.description = Shows each command and explains its usage.
+commands.general.help.help.description = Shows each command and explains its usage
commands.general.help.help.label = [CommandName]
commands.general.invite.success.title = Invite me\!
commands.general.invite.success.description = [Invite me here\!]%extra%
-commands.general.invite.help.description = Shows the invitation link to invite Hadder to your server.
-commands.general.ping.help.description = Shows the ping to the Discord API.
+commands.general.invite.help.description = Shows the invitation link to invite Hadder to your server
+commands.general.ping.help.description = Shows the ping to the Discord API
commands.misc.feedback.title.request.title = Feedback Topic
commands.misc.feedback.title.request.description = Please send me the feedback topic.
commands.misc.feedback.description.request.title = Feedback Description
commands.misc.feedback.description.request.description = Please send me the feedback description now.
commands.misc.feedback.success.title = Feedback successfully sent\!
-commands.misc.feedback.help.description = Sends feedback directly to the developers.
+commands.misc.feedback.help.description = Sends feedback directly to the developers
commands.misc.github.link.title = Link your GitHub Account
commands.misc.github.success.title = Information about %extra%
commands.misc.github.success.bio = User bio
@@ -76,7 +76,7 @@ commands.misc.github.user.error.title = User doesn't exist
commands.misc.github.user.error.description = I can not find a user named like this\!
commands.misc.github.connect.title = Connect your GH account
commands.misc.github.connect.description = [Please connect your GitHub account here]%extra%
-commands.misc.github.help.description = Displays information about a GitHub user profile.
+commands.misc.github.help.description = Displays information about a GitHub user profile
commands.misc.screenshare.success.title = Here's your URL to share your Screen
commands.misc.screenshare.id.error.title = Wait. That's illegal.
commands.misc.screenshare.id.error.description = This ID is invalid. \nMaybe you entered a wrong ID. \n\nNote\: Make sure the Voice Channel is in this Guild.
@@ -86,18 +86,18 @@ commands.misc.screenshare.number.error.title = You specified a wrong number\!
commands.misc.screenshare.number.error.description = This isn't a Number.
commands.misc.screenshare.channel.existing.error = Hol' up
commands.misc.screenshare.channel.existing.description = There is no Voice Channel named like this. \n\nNote\: Make sure the Voice Channel is in this Guild.
-commands.misc.screenshare.help.description = Shows you the link to share your screen.
+commands.misc.screenshare.help.description = Shows you the link to share your screen
commands.misc.serverstats.title = Serverstats
commands.misc.serverstats.description = This message contains some information about `%extra%`
-commands.misc.serverstats.help.description = Shows information about a server.
+commands.misc.serverstats.help.description = Shows information about a server
commands.misc.profile.error.title = Not found
commands.misc.profile.error.description = I can't find the specified user.
-commands.misc.profile.help.description = Shows some information about the specified user.
+commands.misc.profile.help.description = Shows some information about the specified user
commands.misc.code.success.title = Invite code information
commands.misc.code.success.description = This message contains some information about the specified invite code.
commands.misc.code.error.title = Code not found
commands.misc.code.error.description = I can't find the specified invite code.
-commands.misc.code.help.description = Shows information about a invite code.
+commands.misc.code.help.description = Shows information about a invite code
commands.misc.moveall.success.title = Successfully moved
commands.misc.moveall.success.description = I successfully moved %extra% members. Have fun\!
commands.misc.moveall.error.equals.title = Not twice
@@ -106,7 +106,7 @@ commands.misc.moveall.error.source.int.title = Invalid ID
commands.misc.moveall.error.source.int.description = You haven't specified an ID as the source channel.
commands.misc.moveall.error.target.int.title = Invalid ID
commands.misc.moveall.error.target.int.description = You haven't specified an ID as the target channel.
-commands.misc.moveall.help.description = Moves all users in the source channel to the target channel.
+commands.misc.moveall.help.description = Moves all users in the source channel to the target channel
commands.misc.corona.help.description = Shows the newest stats of COVID-19
commands.moderation.ban.success.title = Successfully banned
@@ -115,7 +115,7 @@ commands.moderation.ban.error.title = Not possible
commands.moderation.ban.myself.error.description = I can not ban myself\!
commands.moderation.ban.yourself.error.description = You can not ban yourself\!
commands.moderation.ban.massban.success.description = I successfully banned %extra% members\!
-commands.moderation.ban.help.description = Bans one or more users from the server.
+commands.moderation.ban.help.description = Bans one or more users from the server
commands.moderation.clear.all.success.title = Successfully deleted
commands.moderation.clear.all.success.description = I successfully deleted %extra% messages.
commands.moderation.clear.number.error.title = Invalid number
@@ -125,11 +125,11 @@ commands.moderation.clear.success.description.singular = Successfully deleted on
commands.moderation.clear.success.description.plural = Successfully deleted %extra% messages.
commands.moderation.clear.message.error.title = No messages\!
commands.moderation.clear.message.error.description = There are no messages in this channel.
-commands.moderation.clear.help.description = Deletes the specified number of messages.
+commands.moderation.clear.help.description = Deletes the specified number of messages
commands.moderation.prefix.success.title = %extra% Successfully set %extra%
commands.moderation.prefix.success.description = I successfully set the new prefix for the server to `%extra%`.
commands.moderation.prefix.error.description = The prefix must not contain **"**
-commands.moderation.prefix.help.description = Sets the Guild-Prefix.
+commands.moderation.prefix.help.description = Sets the Guild-Prefix
commands.moderation.invitedetect.activate.success.title = Successfully activated
commands.moderation.invitedetect.activate.success.description = I successfully activated the invite link detection for this server.
commands.moderation.invitedetect.activate.error.title = Already activated
@@ -138,24 +138,24 @@ commands.moderation.invitedetect.deactivate.success.title = Successfully deactiv
commands.moderation.invitedetect.deactivate.success.description = I successfully deactivated the invite link detection for this server.
commands.moderation.invitedetect.deactivate.error.title = Already deactivated
commands.moderation.invitedetect.deactivate.error.description = The invite link detection is already deactivated on this server.
-commands.moderation.invitedetect.help.description = Activate or deactivate the Discord invite link detection.
+commands.moderation.invitedetect.help.description = Activate or deactivate the Discord invite link detection
commands.moderation.kick.success.title = %extra% Successfully kicked %extra%
commands.moderation.kick.success.description = I successfully kicked %extra%.
commands.moderation.kick.error.title = Not possible
commands.moderation.kick.myself.error.description = I can not kick myself\!
commands.moderation.kick.yourself.error.description = You can't kick yourself.
commands.moderation.kick.mass.success.description = I successfully kicked %extra% Members\!
-commands.moderation.kick.help.description = Kicks one or more user from the server.
+commands.moderation.kick.help.description = Kicks one or more user from the server
commands.moderation.kick.masskick.success.description = I successfully kicked %extra% members.
commands.moderation.nick.success.title = %extra% Successfully nicked %extra%
commands.moderation.nick.success.description = I successfully nicked %extra%.
commands.moderation.nick.myself.success.description = I successfully changed my nickname.
commands.moderation.nick.massnick.success.description = I successfully nicked %extra% Members.
-commands.moderation.nick.help.description = Rename a one or more user.
+commands.moderation.nick.help.description = Rename a one or more user
commands.moderation.regionchange.regions.title = All regions
commands.moderation.regionchange.success.title = Successfully set region
commands.moderation.regionchange.success.description = I successfully set the new server region to %extra%.
-commands.moderation.regionchange.help.description = Changes the server region to locked regions.
+commands.moderation.regionchange.help.description = Changes the server region to locked regions
commands.moderation.role.add.success.title = Successfully added role(s)
commands.moderation.role.add.success.description = I successfully added %extra% roles to %extra_two% members.
commands.moderation.role.remove.success.title = Successfully removed role(s)
@@ -194,7 +194,7 @@ commands.moderation.rules.error.interact.title = Can't interact
commands.moderation.rules.error.interact.description = I can not interact with the specified role. Make sure my role is higher than the specified role.
commands.moderation.rules.help.description = Setup the rules on your Discord server
commands.moderation.starboard.success.title = Successfully set the Channel\!
-commands.moderation.starboard.help.description = Sets the starboard channel.
+commands.moderation.starboard.help.description = Sets the starboard channel
commands.moderation.editrules.channel.title = Rules channel
commands.moderation.editrules.channel.description = Please send me the channel with the rules as mention
commands.moderation.editrules.channel.found.error.title = Channel not found
@@ -207,11 +207,11 @@ commands.moderation.editrules.error.title = No rules
commands.moderation.editrules.error.description = There is nor rules message in this server. Please setup the rules first with %extra%rules
commands.moderation.editrules.success.title = Successfully changed
commands.moderation.editrules.success.description = I successfully changed the rules
-commands.moderation.editrules.help.description = Edits the rules message.
+commands.moderation.editrules.help.description = Edits the rules message
commands.music.bass.error.connected.title = No channel
commands.music.bass.error.connected.description = You have to be in the same voice channel as the bot to change the bass level.
-commands.music.bass.help.description = Change the bass for the song which is played at the moment.
+commands.music.bass.help.description = Change the bass for the song which is played at the moment
commands.music.join.success.title = Successfully connected
commands.music.join.success.description = I successfully connected to %extra%.
commands.music.join.error.connecting.already.title = Already connected
@@ -222,7 +222,7 @@ commands.music.join.error.channel.title = No Voice Channel
commands.music.join.error.channel.description = You aren't in a Voice Channel.
commands.music.join.error.permission.title = No permission
commands.music.join.error.permission.description = I am not allowed to join your voice channel.
-commands.music.join.help.description = Joins your voice channel.
+commands.music.join.help.description = Joins your voice channel
commands.music.play.load.title = %extra% Now loading %extra%
commands.music.play.load.description = Trying to load the song...
commands.music.play.success.loading.title = %extra% Now playing %extra%
@@ -239,67 +239,67 @@ commands.music.play.success.unpause.title = Successfully continued
commands.music.play.success.unpause.description = I successfully continued playing the song.
commands.music.play.error.connected.title = No channel
commands.music.play.error.connected.description = You have to be in the same voice channel as the bot to continue the song.
-commands.music.play.help.description = Plays the specified song.
+commands.music.play.help.description = Plays the specified song
commands.music.stop.success.title = Successfully stopped
commands.music.stop.success.description = I successfully stopped the song.
commands.music.stop.error.connected.title = No channel
commands.music.stop.error.connected.description = You have to be in the same voice channel as the bot to stop the song.
-commands.music.stop.help.description = Stops the song.
+commands.music.stop.help.description = Stops the song
commands.music.info.success.title = Track info
commands.music.info.error.title = No playing track
commands.music.info.error.description = I am not playing anything at the moment
-commands.music.info.help.description = Shows information about the playing song.
+commands.music.info.help.description = Shows information about the playing song
commands.music.queue.error.title = No queue
commands.music.queue.error.description = There are no queued songs at the moment
commands.music.queue.success.title = Queue %extra%
commands.music.queue.success.description = This is the queue\: \n %extra%
-commands.music.queue.help.description = Shows the music queue.
+commands.music.queue.help.description = Shows the music queue
commands.music.skip.success.title = Successfully skipped
commands.music.skip.success.description = I successfully skipped to the next song
commands.music.skip.error.connected.title = No channel
commands.music.skip.error.connected.description = You have to be in the same voice channel as the bot to skip the song.
-commands.music.skip.help.description = Skips the currently playing song.
+commands.music.skip.help.description = Skips the currently playing song
commands.music.volume.success.title = Successfully set
commands.music.volume.success.description = I successfully set the new volume to %extra%
commands.music.volume.error.int.title = Invalid number
commands.music.volume.error.int.description = The volume have to be between 1 and 200
commands.music.volume.error.connected.title = No channel
commands.music.volume.error.connected.description = You have to be in the same voice channel as the bot to change the volume.
-commands.music.volume.help.description = Change the volume of the music.
+commands.music.volume.help.description = Change the volume of the music
commands.music.pause.success.title = Successfully paused
commands.music.pause.success.description = I successfully paused the played song.
commands.music.pause.error.paused.title = Already paused
commands.music.pause.error.paused.description = The song is already paused. You can continue playing it with %extra%play
commands.music.pause.error.connected.title = No channel
commands.music.pause.error.connected.description = You have to be in the same voice channel as the bot to pause the song.
-commands.music.pause.help.description = Pause the playing song.
+commands.music.pause.help.description = Pause the playing song
commands.music.loop.success.loop.title = Successfully activated
commands.music.loop.success.loop.description = I will now repeat the currently played song.
commands.music.loop.success.unloop.title = Successfully deactivated
commands.music.loop.success.unloop.description = I will no longer repeat the currently played song.
commands.music.loop.error.connected.title = No channel
commands.music.loop.error.connected.description = You have to be in the same voice channel as the bot to set the repeat status.
-commands.music.loop.help.description = Repeats a song/queue.
+commands.music.loop.help.description = Repeats a song/queue
commands.music.echo.success.title = Successfully activated
commands.music.echo.success.description = I will now repeat everything I can hear in your voice channel
-commands.music.echo.help.description = Sends your voice through Hadder.
+commands.music.echo.help.description = Sends your voice through Hadder
commands.nsfw.gif.error.title = GIF not showing? Click here
commands.nsfw.img.error.title = Image not showing? Click here
-commands.nsfw.anal.help.description = Shows a random anal gif.
+commands.nsfw.anal.help.description = Shows a random anal gif
commands.nsfw.bdsm.help.description = Shows a random BDSM picture
commands.nsfw.blowjob.help.description = Shows a random Blowjob picture
-commands.nsfw.boobs.help.description = Shows a random boob gif.
-commands.nsfw.cum.help.description = Shows a random cum gif.
+commands.nsfw.boobs.help.description = Shows a random boob gif
+commands.nsfw.cum.help.description = Shows a random cum gif
commands.nsfw.erotic.help.description = Shows a random erotic picture
-commands.nsfw.feet.help.description = Shows a random feet gif.
-commands.nsfw.fingering.help.description = Shows a random fingering gif.
-commands.nsfw.linking.help.description = Shows a random licking gif.
-commands.nsfw.porn.help.description = Shows a random porn gif.
-commands.nsfw.pussy.help.description = Shows a random pussy gif.
-commands.nsfw.randomporn.help.description = Shows a completely random porn gif.
-commands.nsfw.solo.help.description = Shows a random solo gif.
-commands.nsfw.spank.help.description = Shows a random spank gif.
+commands.nsfw.feet.help.description = Shows a random feet gif
+commands.nsfw.fingering.help.description = Shows a random fingering gif
+commands.nsfw.linking.help.description = Shows a random licking gif
+commands.nsfw.porn.help.description = Shows a random porn gif
+commands.nsfw.pussy.help.description = Shows a random pussy gif
+commands.nsfw.randomporn.help.description = Shows a completely random porn gif
+commands.nsfw.solo.help.description = Shows a random solo gif
+commands.nsfw.spank.help.description = Shows a random spank gif
commands.nsfw.trans.help.description = Shows a random trans picture
commands.owner.eval.success.title = Eval Command
@@ -327,7 +327,7 @@ commands.settings.language.success.title = Language set
commands.settings.language.success.description = `%extra%` is your new language now.
commands.settings.language.error.title = Language not found
commands.settings.language.error.description = Please choose one of the following language codes\: %extra%
-commands.settings.language.help.description = Sets the new primary language for a user.
+commands.settings.language.help.description = Sets the new primary language for a user
commands.settings.prefix.success.title = Successfully set prefix
commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`.
-commands.settings.prefix.help.description = Sets a new prefix.
+commands.settings.prefix.help.description = Sets a new prefix