Skip to content

Commit

Permalink
v2.53
Browse files Browse the repository at this point in the history
  • Loading branch information
Tzesh committed Mar 24, 2021
1 parent 76a6573 commit 89be7aa
Show file tree
Hide file tree
Showing 6 changed files with 106 additions and 5 deletions.
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ plugins {

mainClassName = 'TzeBot.Main'

version '2.51'
version '2.53'

sourceCompatibility = JavaVersion.VERSION_14

Expand Down
1 change: 1 addition & 0 deletions src/main/java/TzeBot/commands/Help.java
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ public void handle(CommandContext ctx) {
info.setDescription(getMessage("help.moderation.info.setDescription", guildID));
info.addField(getMessage("general.icon.prefix", guildID) + "`" + prefix + getMessage("prefix.name", guildID) + "`", getMessage("prefix.gethelp1", guildID) + " " + getMessage("prefix.gethelp2", guildID) + prefix + getMessage("prefix.gethelp3", guildID), true);
info.addField(getMessage("general.icon.clear", guildID) + "`" + prefix + getMessage("clear.name", guildID) + "`", getMessage("clear.gethelp", guildID), true);
info.addField(getMessage("general.icon.ban", guildID) + "`" + prefix + getMessage("ban.name", guildID) + "`", getMessage("ban.description", guildID), true);
info.addField(getMessage("general.icon.language", guildID) + "`" + prefix + getMessage("language.name", guildID) + "`", getMessage("language.gethelp", guildID), true);
info.addField(getMessage("general.icon.vote", guildID) + "`" + prefix + getMessage("vote.name", guildID) + "`", getMessage("vote.gethelp", guildID), true);
info.addField(getMessage("general.icon.vote", guildID) + "`" + prefix + getMessage("voterole.name", guildID) + "`", getMessage("voterole.gethelp", guildID), true);
Expand Down
100 changes: 100 additions & 0 deletions src/main/java/TzeBot/commands/moderation/Ban.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
package TzeBot.commands.moderation;

import TzeBot.essentials.CommandContext;
import TzeBot.essentials.ICommand;
import net.dv8tion.jda.api.EmbedBuilder;
import net.dv8tion.jda.api.Permission;
import net.dv8tion.jda.api.entities.Member;
import net.dv8tion.jda.api.entities.TextChannel;

import java.time.Instant;
import java.util.Arrays;
import java.util.List;

import static TzeBot.essentials.LanguageManager.getMessage;

public class Ban implements ICommand {

@Override
public void handle(CommandContext ctx) {
final TextChannel channel = ctx.getChannel();
final List<String> args = ctx.getArgs();
final Member member = ctx.getMember();
final Member selfmember = ctx.getSelfMember();
final long guildID = ctx.getGuild().getIdLong();
final String message = String.join(" ", args);

if (args.isEmpty() || ctx.getMessage().getMentionedMembers().isEmpty() || ctx.getMessage().getMentionedMembers().size() != 1 || args.size() < 1) {
EmbedBuilder error = new EmbedBuilder();
error.setColor(0xff3923);
error.setTitle(getMessage("general.icon.error", guildID) + getMessage("ban.wrong.title", guildID));
error.setDescription(getMessage("ban.wrong.description", guildID));
error.setTimestamp(Instant.now());

channel.sendMessage(error.build()).queue();
return;
}

if (!member.hasPermission(Permission.BAN_MEMBERS)) {
EmbedBuilder error = new EmbedBuilder();
error.setColor(0xff3923);
error.setTitle(getMessage("general.icon.error", guildID) + getMessage("ban.permission1.title", guildID));
error.setDescription(getMessage("ban.permission1.description", guildID));
error.setTimestamp(Instant.now());

channel.sendMessage(error.build()).queue();
return;
}

if (!selfmember.hasPermission(Permission.BAN_MEMBERS)) {
EmbedBuilder error = new EmbedBuilder();
error.setColor(0xff3923);
error.setTitle(getMessage("general.icon.error", guildID) + getMessage("ban.permission2.title", guildID));
error.setDescription(getMessage("ban.permission2.description", guildID));
error.setTimestamp(Instant.now());

channel.sendMessage(error.build()).queue();
return;
}

Member banRequested = ctx.getMessage().getMentionedMembers().get(0);

if (!selfmember.canInteract(banRequested) || !member.canInteract(banRequested)) {
EmbedBuilder error = new EmbedBuilder();
error.setColor(0xff3923);
error.setTitle(getMessage("general.icon.error", guildID) + getMessage("general.hierarchy", guildID));
error.setDescription(getMessage("ban.hierarchy.setDescription", guildID));
error.setTimestamp(Instant.now());

channel.sendMessage(error.build()).queue();
return;
}

String reason = message.replace(banRequested.toString() + " ", "");

if (args.size() != 1) banRequested.ban(1)
.reason(String.format(getMessage("ban.banned.with"), member, reason)).queue();
else banRequested.ban(1)
.reason(String.format(getMessage("ban.banned.without"), member)).queue();

EmbedBuilder success = new EmbedBuilder();
success.setColor(0x00ff00);
success.setTitle(getMessage("general.icon.success", guildID) + banRequested.getEffectiveName() + " " + getMessage("ban.success.title", guildID));
success.setDescription(args.size() == 1 ? getMessage("ban.success.description1", guildID) : getMessage("ban.success.description2", guildID) + reason);
success.setFooter(getMessage("general.bythecommand", guildID) + " " + ctx.getMember().getUser().getName(), ctx.getMember().getUser().getAvatarUrl());
success.setTimestamp(Instant.now());

channel.sendMessage(success.build()).queue();
success.clear();
}

@Override
public String getName(long guildID) {
return getMessage("ban.name", guildID);
}

@Override
public String getHelp(long guildID) {
return getMessage("ban.help", guildID);
}
}
1 change: 1 addition & 0 deletions src/main/java/TzeBot/essentials/CommandManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ public CommandManager() {
addCommand(new Language());
addCommand(new Prefix());
addCommand(new Clear());
addCommand(new Ban());
addCommand(new Vote());
addCommand(new Play());
addCommand(new Pause());
Expand Down
5 changes: 2 additions & 3 deletions src/main/java/TzeBot/essentials/Config.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ public class Config {
public static Map<Long, HashMap<Long, Long>> MUSICCHANNELS = new HashMap<>(); // All of the music channels that are created and initialized.
public static Map<Long, Integer> VOLUMES = new HashMap<>(); // Volumes of the servers default is 50%
public static Map<Long, Long> CHANNELCREATED = new HashMap<>(); // All of the music channels that are created but either initialized or not. It's important value for preventing some kind of abusing of channel creation.
public static double currentVersion = 2.52; // Check if there's an update or not.
public static double currentVersion = 2.53; // Check if there's an update or not.
public static String dblToken = null;
public static String botId = null;

Expand Down Expand Up @@ -60,9 +60,8 @@ public static void createENV() {
+ "\nDBLTOKEN="
+ "\nBOTID=");
} catch (IOException exception) {
System.out.println("An error occurred during saving the .env");
System.out.println("An error occurred during creating the .env");
}
System.out.println("All .env settings have been saved.");
}
}

Expand Down
2 changes: 1 addition & 1 deletion versioncontrol.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
version=2.52
version=2.53

0 comments on commit 89be7aa

Please sign in to comment.