TotalFreedomMod/src/main/java/me/totalfreedom/totalfreedommod/discord/PrivateMessageListener.java

60 lines
2.8 KiB
Java
Raw Normal View History

2017-12-29 18:12:47 +00:00
package me.totalfreedom.totalfreedommod.discord;
import me.totalfreedom.totalfreedommod.TotalFreedomMod;
2017-12-29 18:12:47 +00:00
import me.totalfreedom.totalfreedommod.admin.Admin;
2020-01-25 06:27:16 +00:00
import me.totalfreedom.totalfreedommod.masterbuilder.MasterBuilder;
import me.totalfreedom.totalfreedommod.playerverification.VPlayer;
2019-11-28 09:08:36 +00:00
import net.dv8tion.jda.api.events.message.priv.PrivateMessageReceivedEvent;
import net.dv8tion.jda.api.hooks.ListenerAdapter;
2017-12-29 18:12:47 +00:00
2019-11-03 21:40:05 +00:00
public class PrivateMessageListener extends ListenerAdapter
2017-12-29 18:12:47 +00:00
{
public void onPrivateMessageReceived(PrivateMessageReceivedEvent event)
{
if (!event.getAuthor().getId().equals(Discord.bot.getSelfUser().getId()))
{
// Handle link code
if (event.getMessage().getContentRaw().matches("[0-9][0-9][0-9][0-9][0-9]"))
{
String code = event.getMessage().getContentRaw();
2020-01-25 06:27:16 +00:00
String name;
if (Discord.ADMIN_LINK_CODES.get(code) != null)
{
2020-01-25 06:27:16 +00:00
Admin admin = Discord.ADMIN_LINK_CODES.get(code);
name = admin.getName();
2017-12-29 18:12:47 +00:00
admin.setDiscordID(event.getMessage().getAuthor().getId());
2020-01-25 06:27:16 +00:00
TotalFreedomMod.plugin().al.save();
TotalFreedomMod.plugin().al.updateTables();
Discord.ADMIN_LINK_CODES.remove(code);
2019-04-21 00:16:00 +00:00
Discord.syncRoles(admin);
2017-12-29 18:12:47 +00:00
}
2020-01-25 06:27:16 +00:00
else if (Discord.PLAYER_LINK_CODES.get(code) != null)
{
VPlayer player = Discord.PLAYER_LINK_CODES.get(code);
2020-01-25 06:27:16 +00:00
name = player.getName();
player.setDiscordId(event.getMessage().getAuthor().getId());
2019-07-11 02:13:57 +00:00
player.setEnabled(true);
TotalFreedomMod.plugin().pv.saveVerificationData(player);
Discord.PLAYER_LINK_CODES.remove(code);
}
2020-01-25 06:27:16 +00:00
else if (Discord.MASTER_BUILDER_LINK_CODES.get(code) != null)
{
MasterBuilder masterBuilder = Discord.MASTER_BUILDER_LINK_CODES.get(code);
name = masterBuilder.getName();
masterBuilder.setDiscordID(event.getMessage().getAuthor().getId());
TotalFreedomMod.plugin().mbl.save();
TotalFreedomMod.plugin().mbl.updateTables();
Discord.MASTER_BUILDER_LINK_CODES.remove(code);
}
else
{
return;
}
event.getChannel().sendMessage("Link successful. Now this Discord account is linked with your Minecraft account **" + name + "**.\n"
+ "Now when you are an impostor on the server, you may use `/verify` to verify.").complete();
2017-12-29 18:12:47 +00:00
}
}
}
}