Added DiscordUnlink

This commit is contained in:
Teriuihi 2021-09-16 15:34:41 +02:00
parent ce0f8ffc85
commit 0e2de7e0bb

View File

@ -0,0 +1,54 @@
package com.alttd.proxydiscordlink.bot.commands;
import com.alttd.proxydiscordlink.DiscordLink;
import com.alttd.proxydiscordlink.bot.DiscordCommand;
import com.alttd.proxydiscordlink.bot.objects.DiscordRole;
import com.alttd.proxydiscordlink.database.Database;
import com.alttd.proxydiscordlink.objects.DiscordLinkPlayer;
import net.dv8tion.jda.api.entities.Member;
import net.dv8tion.jda.api.entities.Message;
import java.util.stream.Collectors;
public class DiscordUnlink extends DiscordCommand {
@Override
public String getCommand() {
return "unlink";
}
@Override
public String getPermission() {
return null;
}
@Override
public String getDescription() {
return "Unlink your Minecraft and Discord accounts.";
}
@Override
public String getSyntax() {
return "unlink";
}
@Override
public void handleCommand(Message message, String sender, String command, String[] args) {
Member member = message.getMember();
Database database = DiscordLink.getPlugin().getDatabase();
DiscordLinkPlayer discordLinkPlayer = DiscordLinkPlayer.getDiscordLinkPlayer(member.getIdLong());
database.removeLinkedAccount(discordLinkPlayer);
discordLinkPlayer.updateDiscord(
DiscordRole.getDiscordRoles().stream()
.filter(role -> discordLinkPlayer.getRoles().contains(role.getInternalName()))
.collect(Collectors.toList()),
false);
discordLinkPlayer.updateMinecraft(
DiscordRole.getDiscordRoles().stream()
.filter(role -> discordLinkPlayer.getRoles().contains(role.getInternalName()))
.collect(Collectors.toList()),
false);
discordLinkPlayer.linkedRole(false);
}
}