【问题标题】:Discord warn command + timeDiscord 警告命令 + 时间
【发布时间】:2021-07-03 15:58:42
【问题描述】:

您好,我想对我的警告命令做点什么

我想给它加一个时间,比如:,warn Noob 5m Cause a noob

警告 [名称 |昵称 |提及 | ID] [时间] [原因]

我不知道怎么做,有人可以帮忙吗?

const { MessageEmbed } = require("discord.js");
const { redlight } = require('../../JSON/colours.json')
const db = require('quick.db');

module.exports = {
    config: {
        name: "warn",
        aliases: ['report'],
        category: "moderation",
        description: "reports a user of the guild",
        usage: "[name | nickname | mention | ID] <reason> (optional)",
        accessableby: "Administrator",
    },
    run: async (bot, message, args) => {
        if (!message.member.hasPermission("MANAGE_GUILD")) return message.channel.send("**You Dont Have The Permissions To Report Someone! - [MANAGE_GUILD]**");
        if (!args[0]) return message.channel.send("**Please Enter A User!**")

        let target = message.mentions.members.first() || message.guild.members.cache.get(args[0]) || message.guild.members.cache.find(r => r.user.username.toLowerCase() === args[0].toLocaleLowerCase()) || message.guild.members.cache.find(ro => ro.displayName.toLowerCase() === args[0].toLocaleLowerCase());
        if (!target) return message.channel.send("**Please Enter A User!**")
        if (target.id === message.member.id) return message.channel.send("**Cannot Warn Yourself!**")
        
        let reason = args.slice(1).join(" ")

        if (target.roles.highest.comparePositionTo(message.guild.me.roles.highest) >= 0) return message.channel.send('**Cannot Warn This User!**')
        if (target.hasPermission("MANAGE_GUILD") || target.user.bot) return message.channel.send("**Cannot Warn This User!**")
      try {
        const sembed2 = new MessageEmbed()
            .setColor("RED")
            .setDescription(`**Hello, You Have Been Warned In ${message.guild.name} for - ${reason || "No Reason!"}**`)
            .setFooter(message.guild.name, message.guild.iconURL())
        target.send(sembed2)
      } catch {
        
      }
        if (reason) {
        const embed = new MessageEmbed()
            .setColor("GREEN")
            .setAuthor(`${message.guild.name}`, message.guild.iconURL())
            .setDescription(`**${target.displayName} Has Been Warned for ${reason}!**`)
        message.channel.send(embed)
        } else {
            const embed = new MessageEmbed()
            .setColor("GREEN")
            .setAuthor(`${message.guild.name}`, message.guild.iconURL())
            .setDescription(`**${target.displayName} Has Been Warned!**`)
        message.channel.send(embed)
        }

        let channel = db.fetch(`modlog_${message.guild.id}`)
        if (!channel) return;

        const sembed = new MessageEmbed()
            .setColor(redlight)
            .setTimestamp()
            .setThumbnail(target.user.displayAvatarURL({ dynamic: true }))
            .setFooter(message.guild.name, message.guild.iconURL())
            .setAuthor(`${message.guild.name} Modlogs`, message.guild.iconURL())
            .addField("**Moderation**", "report")
            .addField("**User Reported**", `${target}`)
            .addField("**User ID**", `${target.user.id}`)
            .addField("**Reported By**", `${message.member}`)
            .addField("**Reported in**", `${message.channel}`)
            .addField("**Reason**", `**${reason || "No Reason"}**`)
            .addField("**Date**", message.createdAt.toLocaleString());

            var sChannel = message.guild.channels.cache.get(channel)
            if (!sChannel) return;
            sChannel.send(sembed)
    }
}

提前致谢!

(告诉我要添加更多细节,但不知道我能说什么,所以忽略这个哈哈)

【问题讨论】:

  • 那个时间应该有什么影响?
  • 嗯,它会在计时器达到 0 时消除警告
  • 你已经设置了参数,使用数组。 args 中的每个单独元素都是您的消息参数

标签: discord discord.js


【解决方案1】:

基本上,您的代码很难获得,至少对我来说是这样。但是您可以像这样添加超时功能:-

setTimeout(function(){ 
    //thing you wanna do
 }, 1000); //time in milliseconds 

另外,在您继续之前,我认为您不想发出定时警告,在特定时间后会清除,Maybe。就在你身上。

【讨论】:

  • 我会尝试,是的,我想做定时警告,哈哈
猜你喜欢
  • 2019-03-07
  • 2021-09-06
  • 2021-07-19
  • 2017-11-21
  • 2020-08-11
  • 1970-01-01
  • 2014-12-21
  • 2020-12-30
  • 2017-09-15
相关资源
最近更新 更多