Yardım Discord v12 süreli mute kodu / tag alana rol verme kodu v12

vds#9999
Katılım
11 Mar 2022
Mesajlar
1
Tepkime puanı
0
Merhaba süreli mute atma kodu arıyorum ama üye sunucudan çık gir yapınca mute rolünü geri vermesi lazım


JavaScript:
const Discord = require('discord.js')
const ms = require('ms')

    exports.run = async(client, message, args) => {
 
        if(!message.member.roles.cache.has("MUTE ATABİLEN ROL İD")){
            const yetkiyok = new Discord.MessageEmbed()
            .setDescription(`${message.author} **Bu kodu kullanmak için gerekli yetkiye sahip değilsin.**`)
            .setColor('#ff0000')
            return message.channel.send(yetkiyok)
        }
 
        let kullanıcı = message.mentions.members.first();
        let sure = args[1];
        let sebep = args.slice(2).join(' ')

        if(!kullanıcı){
            const cmfhata = new Discord.MessageEmbed()
            .setColor('#ff0000')
            .setDescription(`**Lütfen Kullanıcı Belirt.**`)
            return message.channel.send(cmfhata)
        }

        if(!sure){
            const cmfhata = new Discord.MessageEmbed()
            .setColor('#ff0000')
            .setDescription(`**Lütfen Süre Belirt. Aşşağıda Tanımları Var** \n\n **S = Saniye && M = Dakika && H = Saat && D = Gün**`)
            return message.channel.send(cmfhata)
        }

        if(!sebep){
            const cmfhata = new Discord.MessageEmbed()
            .setColor('#ff0000')
            .setDescription(`**Lütfen Sebep Belirt**`)
            return message.channel.send(cmfhata)
        }
     
        if(kullanıcı && sure && sebep){
            const cmfmute = new Discord.MessageEmbed()
            .setColor('#00ff00')
            .setDescription(`${kullanıcı} Kişisine ${message.author} Tarafından **${sebep}** Sebebi İle **${sure.replace(/s/, ' Saniye').replace(/m/, ' Dakika').replace(/h/, ' Saat').replace(/d/, ' Gün')}** Süresince Mute Atıldı.`)
            .setFooter(kullanıcı.user.username + " Umarız Hatalarını Birdaha Tekrarlamazsın...")
            .setThumbnail(kullanıcı.user.avatarURL({dynamic: true, size: 2048}))
            message.channel.send(cmfmute)

            // Mute Atıldığında Verilecek & Alınacak Roller
            kullanıcı.roles.add('MUTELİ ROL İD')
            kullanıcı.roles.remove('ÜYE ROL İD')

            // Mute Bittiğinde Verilecek & Alınacak Roller
            setTimeout(() => {
                kullanıcı.roles.remove('MUTELİ ROL İD')
                kullanıcı.roles.add('ÜYE ROL İD')

                const mutebitti = new Discord.MessageEmbed()
                .setColor('#00ff00')
                .setDescription(`**${kullanıcı} Kişisinin Mute Süresi Doldu. Sohbete Tekrardan Hoşgeldin** :tada:`)
                message.channel.send(mutebitti)
            }, ms(sure))

        }

    } //

exports.conf = {
    enabled: true,
    guildOnly: false,
    aliases: ['Mute','MUTE','sustur','Sustur','SUSTUR'],
    permLevel: 0
}

exports.help = {
    name: 'mute'
}


birde şunun gibi sunucudan çıkıp girse bile rolünü geri verecek kod

JavaScript:
client.on('guildMemberAdd', async(member) => { let mute = member.guild.roles.find(r => r.name === ""); let mutelimi = db.fetch(`muteli_${member.guild.id + member.id}`) let süre = db.fetch(`süre_${member.id + member.guild.id}`) if (!mutelimi) return; if (mutelimi == "muteli") { member.addRole(mute.id) member.send("Muteliyken Sunucudan Çıktığın için Yeniden Mutelendin!") setTimeout(function(){ db.delete(`muteli_${member.guild.id + member.id}`)    member.send(`<@${member.id}> Muten açıldı.`)    member.removeRole(mute.id);  }, ms(süre)); } })

Bunun gibi çalışan v12 sürümü kod arıyorum. Bide tag alana rol veren tagı çıkarınca rolü geri alan ve bunları mesaj log kanalına yazacak kod arıyorum.
yardımcı olacaklara teşekkürler
 
Moderatör tarafından düzenlendi:

Konuyu 0 kişi okuyor. (0 kayıtlı üye ve 0 ziyaretçi)

  • Bilgi