【发布时间】:2020-10-03 06:58:28
【问题描述】:
我只是想知道是否有一种方法可以计算我的 Discord 服务器中使用了多少次命令就像屏幕截图上的那样。 我是编码新手。我使用了 discord.js 12.1.1 提前谢谢!
更新。 例如,user1 拥抱 user2。
User1 拥抱 N 次
User2 已被拥抱 N 次
我如何计算消息作者拥抱用户的次数?
我尝试将计数插入到我完成的代码中,但它只考虑了提到的用户。
即使我没有提及任何人,机器人也会认为我提及自己..
我尝试了不同的方法,但我的大脑已经爆炸了。2天我无法理解我的错误
我将let member 更改为不同的值,但它只能同时正常工作.. -_-
别笑了,我试试(
const Discord = module.require("discord.js");
const fs = require("fs");
const config = require(`../config.json`)
const hugs = require('../db.json');
module.exports.run = async (bot, message, args) => {
let member = message.mentions.members.first() || message.guild.members.cache.get(args[0]) || message.member;
let msg =
member === message.member
? `${message.author} hugs everyone`
: `${message.author} hugged ${member}`;
let gif = [
"IRUb7GTCaPU8E",
"u9BxQbM5bxvwY",
"3EJsCqoEiq6n6",
];
let selected = gif[Math.floor(Math.random() * gif.length)];
let id = member.id || message.author.id
let hugCount = hugs[id];
if (!hugCount) {
hugs[id] = 1;
let embed = new Discord.MessageEmbed()
.setDescription(`${msg}`)
.setColor("RANDOM")
.setFooter(`${member.user.username} hugged for the first time.`)
.setImage(`https://media.giphy.com/media/${selected}/giphy.gif`);
message.channel.send(embed);
} else {
hugCount = (hugs[id] = hugs[id] + 1);
let embed = new Discord.MessageEmbed()
.setDescription(`**${msg}**`)
.setColor("RANDOM")
.setFooter(`${config.prefix}${module.exports.help.name} | ${member.user.username} has been hugged ${hugCount} times.`)
.setImage(`https://media.giphy.com/media/${selected}/giphy.gif`);
message.channel.send(embed);
return message.delete()
}
fs.writeFileSync(
"./db.json",
JSON.stringify(hugs),
(err) => console.log(err)
);
}
module.exports.help = {
name: "hugg"
};
如果可能,请帮助我 - 如何让用户写一条消息(例如,!hug user2 "hello")并让机器人在嵌入中显示消息
【问题讨论】:
标签: javascript discord discord.js