From 6a88b12bae325ad7722be9ae03245ebc00a9f936 Mon Sep 17 00:00:00 2001 From: Andy Huang Date: Tue, 13 Oct 2020 20:03:45 -0400 Subject: [PATCH 1/3] Add command to add the Event role to yourself Untested code Co-authored-by: Andy Huang --- bot/commands/addEventRole.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 bot/commands/addEventRole.js diff --git a/bot/commands/addEventRole.js b/bot/commands/addEventRole.js new file mode 100644 index 0000000..75c62d3 --- /dev/null +++ b/bot/commands/addEventRole.js @@ -0,0 +1,19 @@ +const config = require('../../config.json'); +const Discord = require('discord.js'); + +module.exports.execute = async (client, message, args) => { + let role = message.guild.roles.cache.get(config.bot.roles.event); + + if (!message.member.roles.cache.has(config.bot.roles.event)) { + await message.member.addRole(role); + await message.channel.send('> You have opted into event notifications!\n_To opt-out, run the `remove event role` command._'); + } else { + await message.channel.send('You already have the event role.'); + } +} + +module.exports.config = { + name: 'get event role', + aliases: ['get event role', 'assign me the event role',], + description: 'Add the Event role to yourself!', +} From decffafd4a4bafa30504d2091551882f5d1ae2fd Mon Sep 17 00:00:00 2001 From: Andy Huang Date: Tue, 13 Oct 2020 20:07:45 -0400 Subject: [PATCH 2/3] Add command to remove the Event role from yourself Untested code Co-authored-by: Andy Huang --- bot/commands/removeEventRole.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 bot/commands/removeEventRole.js diff --git a/bot/commands/removeEventRole.js b/bot/commands/removeEventRole.js new file mode 100644 index 0000000..759c8c4 --- /dev/null +++ b/bot/commands/removeEventRole.js @@ -0,0 +1,19 @@ +const config = require('../../config.json'); +const Discord = require('discord.js'); + +module.exports.execute = async (client, message, args) => { + let role = message.guild.roles.cache.get(config.bot.roles.event); + + if (message.member.roles.cache.has(config.bot.roles.event)) { + await message.member.removeRole(role); + await message.channel.send('> You have opted out of event notifications!\n_To opt-in, run the `get event role` command._'); + } else { + await message.channel.send('You do not have the event role.') + } +} + +module.exports.config = { + name: 'remove event role', + aliases: ['remove event role', 'remove the event role from me',], + description: 'Remove the Event role from yourself!', +} From e68e0d5f4de7d694b41fec75c5c0a7ba650e2095 Mon Sep 17 00:00:00 2001 From: Andy Huang Date: Wed, 14 Oct 2020 15:58:22 -0400 Subject: [PATCH 3/3] Fix usage of removed methods GuildMember.{addRole, removeRole} changed to GuildMember.{roles.add, roles.remove} Co-authored-by: Andy Huang --- bot/commands/addEventRole.js | 2 +- bot/commands/removeEventRole.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bot/commands/addEventRole.js b/bot/commands/addEventRole.js index 75c62d3..d4c84ad 100644 --- a/bot/commands/addEventRole.js +++ b/bot/commands/addEventRole.js @@ -5,7 +5,7 @@ module.exports.execute = async (client, message, args) => { let role = message.guild.roles.cache.get(config.bot.roles.event); if (!message.member.roles.cache.has(config.bot.roles.event)) { - await message.member.addRole(role); + await message.member.roles.add(role); await message.channel.send('> You have opted into event notifications!\n_To opt-out, run the `remove event role` command._'); } else { await message.channel.send('You already have the event role.'); diff --git a/bot/commands/removeEventRole.js b/bot/commands/removeEventRole.js index 759c8c4..0277055 100644 --- a/bot/commands/removeEventRole.js +++ b/bot/commands/removeEventRole.js @@ -5,7 +5,7 @@ module.exports.execute = async (client, message, args) => { let role = message.guild.roles.cache.get(config.bot.roles.event); if (message.member.roles.cache.has(config.bot.roles.event)) { - await message.member.removeRole(role); + await message.member.roles.remove(role); await message.channel.send('> You have opted out of event notifications!\n_To opt-in, run the `get event role` command._'); } else { await message.channel.send('You do not have the event role.')