File size: 1,595 Bytes
e771551 283d024 e771551 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | const { PermissionFlagsBits } = require('discord.js');
const { successEmbed } = require('../utils/embeds');
module.exports = {
async execute(client, message) {
const guild = await client.guilds.fetch(process.env.GUILD_ID);
await guild.roles.fetch();
const log = [];
// 1. Fix @everyone role (remove MentionEveryone)
const everyoneRole = guild.roles.everyone;
if (everyoneRole.permissions.has(PermissionFlagsBits.MentionEveryone)) {
const newPerms = everyoneRole.permissions.remove(PermissionFlagsBits.MentionEveryone);
await everyoneRole.setPermissions(newPerms);
log.push(`β
Removed MentionEveryone permission from **@everyone**`);
} else {
log.push(`βοΈ **@everyone** already cannot mention everyone/here`);
}
// 2. Make large/public roles unmentionable
const unmentionableRoles = [
'@@ Server Manager', '@@ Staff', '@@ Moderator',
'@@ Verified', '@@ Buyer', '@@ Booster', '@@ Known', '@@ Helper'
];
for (const rName of unmentionableRoles) {
const role = guild.roles.cache.find(r => r.name === rName);
if (role && role.mentionable) {
await role.setMentionable(false);
log.push(`β
Made **${rName}** unmentionable`);
} else if (role) {
log.push(`βοΈ **${rName}** is already unmentionable`);
}
}
await message.reply({ embeds: [successEmbed('β
Ping Exploit Fixed', log.join('\n'))] });
},
};
|