2017-12-29 18:12:47 +00:00
|
|
|
package me.totalfreedom.totalfreedommod.discord;
|
|
|
|
|
2018-03-24 15:41:45 +00:00
|
|
|
import me.totalfreedom.totalfreedommod.TotalFreedomMod;
|
2020-12-04 00:28:53 +00:00
|
|
|
import me.totalfreedom.totalfreedommod.admin.Admin;
|
2020-12-25 19:46:43 +00:00
|
|
|
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]"))
|
|
|
|
{
|
2018-02-09 08:21:44 +00:00
|
|
|
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)
|
2018-03-25 01:41:51 +00:00
|
|
|
{
|
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());
|
2018-03-24 15:41:45 +00:00
|
|
|
|
2022-04-15 13:09:23 +00:00
|
|
|
Admin admin = TotalFreedomMod.getPlugin().al.getEntryByUuid(player.getUuid());
|
2020-12-04 00:28:53 +00:00
|
|
|
if (admin != null)
|
2020-07-10 05:43:10 +00:00
|
|
|
{
|
2020-12-04 00:28:53 +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;
|
|
|
|
}
|
2022-04-15 13:52:06 +00:00
|
|
|
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
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2020-12-04 00:28:53 +00:00
|
|
|
}
|