diff --git a/commands/factions.js b/commands/factions.js index 26787c1..16846e1 100644 --- a/commands/factions.js +++ b/commands/factions.js @@ -43,18 +43,6 @@ module.exports = { description = '> There are no factions that have claimed armbands.'; } else { for (const [factionID, data] of Object.entries(GuildDB.factionArmbands)) { - const guild = client.guilds.cache.get(GuildDB.serverID); - const role = guild.roles.cache.find(role => role.id == factionID); - if (!role) { - let query = { - $pull: { 'server.usedArmbands': data.armband }, - $unset: { [`server.factionArmbands.${factionID}`]: "" }, - }; - client.dbo.collection("guilds").updateOne({'server.serverID': GuildDB.serverID}, query, function (err, res) { - if (err) return client.sendInternalError(interaction, err); - }); - continue; - } if (description == "") description += `> <@&${factionID}> - ${data.armband}`; else description += `\n> <@&${factionID}> - *${data.armband}*`; } diff --git a/structures/DayzArmbands.js b/structures/DayzArmbands.js index 7ceb130..975b5d3 100644 --- a/structures/DayzArmbands.js +++ b/structures/DayzArmbands.js @@ -34,6 +34,20 @@ class DayzArmbands extends Client { const start = new Date().getTime(); if (interaction.type!=3) { let GuildDB = await this.GetGuild(interaction.guild_id); + + for (const [factionID, data] of Object.entries(GuildDB.factionArmbands)) { + const guild = this.guilds.cache.get(GuildDB.serverID); + const role = guild.roles.cache.find(role => role.id == factionID); + if (!role) { + let query = { + $pull: { 'server.usedArmbands': data.armband }, + $unset: { [`server.factionArmbands.${factionID}`]: "" }, + }; + this.dbo.collection("guilds").updateOne({'server.serverID': GuildDB.serverID}, query, function (err, res) { + if (err) return client.sendInternalError(interaction, err); + }); + } + } const command = interaction.data.name.toLowerCase(); const args = interaction.data.options;