मैं जानना चाहता हूं कि मैं कैसे बॉट को अन्य बॉट्स क्रियाओं (भूमिका अद्यतन, हटाया गया) को अनदेखा कर सकता हूं और उन्हें लॉग करना बंद कर सकता हूं। यहाँ मेरा कोड है:

    let messagechannel = oldMember.guild.channels.find(r => r.name === config.logsChannel);
    if (!messagechannel) return 'Canalul respectiv nu există!'

    if (oldMember.roles.size < newMember.roles.size) {
        const embed = new Discord.RichEmbed()
            .setColor('#383b3d')
            .setDescription(`${oldMember.user.tag} (${oldMember.user}) a fost actualizat.`)
            .setAuthor(`${oldMember.user.tag}`, oldMember.user.avatarURL)
            .addField(`ID`, oldMember.id)
            .setFooter(`${bot.user.tag}`, bot.user.avatarURL)
            .setTimestamp();

        for (const role of newMember.roles.map(x => x.id)) {
            if (!oldMember.roles.has(role)) {
                embed.addField(`Schimbări`, "➕    " +  `${newMember.guild.roles.get(role)}`);
            }
        }
        messagechannel.send(embed);
    }

    if (oldMember.roles.size > newMember.roles.size) {
        const embed = new Discord.RichEmbed()
            .setColor('#383b3d')
            .setDescription(`${oldMember.user.tag} (${oldMember.user}) a fost actualizat.`)
            .setAuthor(`${oldMember.user.tag}`, oldMember.user.avatarURL)
            .addField(`ID`, oldMember.id)
            .setFooter(`${bot.user.tag}`, bot.user.avatarURL)
            .setTimestamp()

        for (const role of oldMember.roles.map(x => x.id)) {
            if (!newMember.roles.has(role)) {
                embed.addField( `Schimbări`, "❌   " + `${oldMember.guild.roles.get(role)}`);
            }
        }
        messagechannel.send(embed);
    }

    if (newMember.nickname != oldMember.nickname) {
        const embed = new Discord.RichEmbed()
            .setColor('#383b3d')
            .setDescription(`${oldMember.user.tag} (${oldMember.user}) a fost actualizat.`)
            .setAuthor(`${oldMember.user.tag}`, oldMember.user.avatarURL)
            .addField(`ID`, oldMember.id)
            .addField(`Numele vechi`, `${oldMember.displayName}`)
            .addField(`Numele nou`, `${newMember.displayName}`)
            .setFooter(`${bot.user.tag}`, bot.user.avatarURL)
            .setTimestamp()

        messagechannel.send(embed);
    }
});

क्या कोई मेरी मदत कर सकता है? मुझे इन चीजों के बारे में ज्यादा जानकारी नहीं है इसलिए मैं थोड़ा कोड काम में आ सकता हूं।

0
Im Ezreally Bad 18 अप्रैल 2020, 12:56

1 उत्तर

सबसे बढ़िया उत्तर

अपने मौजूदा कोड में मामूली बदलावों के साथ इसे संग्रहित करने का एक आसान तरीका है।
User की संपत्ति GuildMember (newMember/oldMember) की संपत्ति bot
है जो एक बूलियन लौटाता है यदि वह उपयोगकर्ता एक बॉट उपयोगकर्ता है या नहीं।

तो आप इस पर क्या कर सकते हैं if (oldMember.user.bot || newMember.user.bot) return
आपके द्वारा अभी भेजे गए कोड के शीर्ष पर। bot प्रॉपर्टी के बारे में अधिक जानकारी जो आप पा सकते हैं यहां

0
Kawaaii 18 अप्रैल 2020, 11:25