如何在 discord.js 中标记播放器并接收他们的不和谐 ID

Posted

技术标签:

【中文标题】如何在 discord.js 中标记播放器并接收他们的不和谐 ID【英文标题】:How to tag player and recieve their discord id in discord.js 【发布时间】:2021-03-29 23:00:08 【问题描述】:

我一直在试图弄清楚如何标记人们,然后接收他们的用户 ID。我试图为此编写代码,但问题是它以特定模式两次接收用户 ID。例如:

我的代码: 第一用户 - 1234566 第二个用户 - 1234576 1234576 第三个用户 - 1234586 1234586 1234586

我希望代码像这样运行:

第一个用户 - 1234566 第二个用户 - 1234576 第三个用户 - 1234586

下面是我的代码: (“加入”是我加入游戏的人的数组。这很好用)

client.on('message', function(playerFind) 
    const playerID = playerFind.content;
    if (playerFind.author.bot) return;
    let mention = playerFind.mentions.users.first();
    if((playerID.startsWith('!find id ')) && (mention) && (joined.length > 0))
        for(var i = 0; i < joined.length; i++)
            if(mention.id === user[joined[i]].getID()) 
                playerFind.channel.send(mention.id);
            
        
    
)

【问题讨论】:

这能回答你的问题吗? How to find a User ID from a Username in Discord.js? 不,你给我的链接关注的是别的东西。我想从数组的每个元素中获取用户 ID,但我所做的程序以某种模式重复它 【参考方案1】:

自 2019 年年中以来我就没有使用过 discord.js,但那时应该是

client.on("message", (message) => 
var command = message.content.split(" ")[0];
if(!command.startsWith(prefix)) return;

if(command === "getid") 
  message.channel.send(message.content.mentions.users.first().id)


);

我相信,正如我所说,已经有一段时间了。

【讨论】:

获取 id 有效,只是我试图打印数组中的每个用户对象,但在第 0 个元素之后,它打印了不止一次。例如:第 0 个元素:123456 第一个元素:123455 123455 等等......

以上是关于如何在 discord.js 中标记播放器并接收他们的不和谐 ID的主要内容,如果未能解决你的问题,请参考以下文章

如何在 discord.js 中使用 message.channel.send 正确标记用户

调度程序播放在 10 分钟后停止 (discord.js)

discord.js 机器人在没有声音的情况下播放音频

角色反应 Discord Bot

如何从用户 discord.js v12 中删除所有角色?

尝试在 Discord.js 中播放音频文件