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

43 lines
1.7 KiB
Java
Raw Normal View History

2017-12-29 18:12:47 +00:00
package me.totalfreedom.totalfreedommod.discord;
import me.totalfreedom.totalfreedommod.TotalFreedomMod;
import me.totalfreedom.totalfreedommod.admin.Admin;
import me.totalfreedom.totalfreedommod.player.PlayerData;
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)
{
2020-12-26 23:54:15 +00:00
if (!event.getAuthor().getId().equals(event.getJDA().getSelfUser().getId()))
2017-12-29 18:12:47 +00:00
{
// 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;
2020-06-30 07:25:38 +00:00
if (Discord.LINK_CODES.get(code) != null)
{
2020-06-30 07:25:38 +00:00
PlayerData player = Discord.LINK_CODES.get(code);
2020-01-25 06:27:16 +00:00
name = player.getName();
2020-06-30 07:25:38 +00:00
player.setDiscordID(event.getMessage().getAuthor().getId());
Admin admin = TotalFreedomMod.getPlugin().al.getEntryByUuid(player.getUuid());
if (admin != null)
2020-07-10 05:43:10 +00:00
{
Discord.syncRoles(admin, player.getDiscordID());
2020-07-10 05:43:10 +00:00
}
2020-12-26 23:54:15 +00:00
TotalFreedomMod.getPlugin().pl.save(player);
2020-06-30 07:25:38 +00:00
Discord.LINK_CODES.remove(code);
2020-01-25 06:27:16 +00:00
}
else
{
return;
}
event.getChannel().sendMessage("Link successful. Now this Discord account is linked with your Minecraft account **" + name + "**.").complete();
2017-12-29 18:12:47 +00:00
}
}
}
}