Compare commits

..

No commits in common. "master" and "v1.0.6" have entirely different histories.

6 changed files with 8 additions and 40 deletions

View file

@ -21,8 +21,7 @@ A multipurpose Discord bot written in Java.
## Config file schema
```json
{
"token": "your_token",
"warningChannel": 0
"token": "your_token"
}
```
@ -38,4 +37,3 @@ A multipurpose Discord bot written in Java.
| `/timeout get` | Gets the current timeout status of the specified member | `[member]` |
| `/timeout cancel` | Cancels the specified users timeout | `[member]`, `(reason)` |
| `/poll` | Creates a poll | `[title]`, `[duration]`, `[options]`, `(multiple-choice)` |
| `/warn` | Warns a user | `[member]`, `[reason]` |

View file

@ -1,4 +1,3 @@
{
"token": "CHANGEME",
"warningChannel": 0
"token": "CHANGEME"
}

View file

@ -6,7 +6,7 @@
<groupId>net.hypr</groupId>
<artifactId>doki</artifactId>
<version>1.0.8</version>
<version>1.0.6</version>
<properties>
<maven.compiler.source>17</maven.compiler.source>

View file

@ -11,7 +11,6 @@ import java.nio.charset.StandardCharsets;
//You will need a valid config.json in the resources folder for this to work
public class Config {
@SuppressWarnings("unused") private String token;
@SuppressWarnings("unused") private long warningChannel;
/**
* Returns the configuration object for this bot
@ -34,7 +33,4 @@ public class Config {
public String getToken() {
return token;
}
public long getWarningChannel() {
return warningChannel;
}
}

View file

@ -22,10 +22,6 @@ public class Doki {
public static JDA getJDA() {
return jda;
}
public static Config getConfig() { return config; }
public static Logger getLogger() {
return log;
}
public static void start() throws IOException, InterruptedException {
config = Config.readConfig();

View file

@ -10,11 +10,6 @@ import com.freya02.botcommands.api.application.slash.annotations.JDASlashCommand
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.channel.concrete.TextChannel;
import net.hypr.doki.Doki;
import org.slf4j.Logger;
import java.awt.*;
@CommandMarker
@BotPermissions(Permission.MODERATE_MEMBERS)
@ -27,29 +22,13 @@ public class Warn extends ApplicationCommand {
public void warn(GuildSlashEvent event,
@AppOption(name = "member", description = "The member to warn") Member member,
@AppOption(name = "reason", description = "The reason for warning them") String reason) {
Logger log = Doki.getLogger();
Member actingMod = event.getMember();
EmbedBuilder warnEmbed = new EmbedBuilder()
.setTitle(String.format("You were warned in %s", event.getGuild().getName()))
.setDescription(String.format("**Reason:** %s", reason))
.setFooter(String.format("Warned by %s (%s)", actingMod.getEffectiveName(), actingMod.getId()), actingMod.getEffectiveAvatarUrl())
.setColor(new Color(239, 148, 60));
log.debug(String.format("%s", Doki.getConfig().getWarningChannel()));
TextChannel warningChannel = Doki.getJDA().getTextChannelById(Doki.getConfig().getWarningChannel());
member.getUser().openPrivateChannel().queue(
(dm) -> dm.sendMessageEmbeds(warnEmbed.build()).queue(
success -> event.replyFormat("Warned %s for %s", member.getAsMention(), reason).setEphemeral(true).queue(),
// User has blocked bot or disabled DMs
error -> event.replyFormat("Warned %s for %s\n-# (Unable to DM user)", member.getAsMention(), reason).queue()
),
.setDescription(String.format("**Reason:** %s", reason));
member.getUser().openPrivateChannel().queue((dm) -> dm.sendMessageEmbeds(warnEmbed.build()).queue(
success -> event.replyFormat("Warned %s for %s", member.getAsMention(), reason).setEphemeral(true).queue(),
// User has blocked bot or disabled DMs
error -> event.replyFormat("Warned %s for %s\n-# (Unable to DM user)", member.getAsMention(), reason).queue()
);
warnEmbed.setTitle(String.format("%s (%s) was warned", member.getEffectiveName(), member.getId()));
try {
assert warningChannel != null;
warningChannel.sendMessage(member.getAsMention()).addEmbeds(warnEmbed.build()).queue();
} catch (NullPointerException ex) {
log.warn("Failed to send message to warning log channel");
}
));
}
}