そのため、特定のユーザーに関する情報を提供できるコマンドを含むDiscord.Jsボットを作成中です。例:言及されたユーザーのPlayStationゲーマータグを提供するコマンドを追加したいと思います(特定のユーザーIDが<@ 123>であるとしましょう)。入力メッセージは次のようになります。
"!psn @mention"の場合、ボットはゲーマータグを出力し、手動でログに記録します-> message.channel.send( 'Here is <@ 1235467890>' s @psnname ');
サーバーのすべてのメンバーにゲーマータグを含めて、コマンド「psn」で言及すると誰でもリクエストできるようにしたいのですが、さまざまなコードで試行錯誤を繰り返しましたが、メッセージの指定方法がわかりません。言及.members.first(); 特定のユーザーIDによる。助けてください
module.exports = {
name: 'codtag',
execute(message, args){
let member = message.mentions.members.first();
if(!args.length){
return message.channel.send({embed: {
color: '#da1801',
title: 'Activision Gamertag: Error',
description: 'You need to tag a user dummy.'
}})
}
if (member !== '<@772597378142306354>')return;
else if (member === `772597378142306354`)return
{
(args[0] === member)
return message.channel.send({embed: {
color: '#1243c6',
title: 'Activision Gamertag',
description: 'Here is <@772597378142306354> Activision: \n\n **WalterWhite#2396124**'
}});
}}
}
同じ質問でこの投稿を見つけた人のために、私はそれを理解しました。次のコードは完全に機能します
追加した: let guild = message.mentions.members.first();
また、args [0]の条件を次のように含めました。 if (message.mentions.members.had('put users id here without the <@>')
module.exports = {
name: 'cod',
execute(message, args){
let guild = message.mentions.members.first();
if(!args.length){
return message.channel.send({embed: {
color: '#da1801',
title: 'Activision Gamertag: Error',
description: 'You need to tag a valid user dummy.'
}})
}
if(message.mentions.members.has('772597378142306354')){
(args[0] == guild)
message.channel.send({embed: {
color: '#1243c6',
title: 'Activision Gamertag',
description: 'Here is <@772597378142306354> Activision: \n\n **WalterWhite#2396124**',
footer: {
text: 'Message @issmayo if your gamertag is not included.'
}
}});
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加