@everyoneや役職を考慮してメンションされているか確認する
@everyone/@hereや役職を考慮してメンションされているか確認するには、message.mentions.has(data)を使う
dataにはユーザー、チャンネル、役職などのIDやそのオブジェクトを渡す
ユーザーに対して役職によるメンションがされているか確認したい場合は引数にIDではなくGuildMemberを渡す必要がある
@everyone/@hereを含む場合はチャンネルであろうと問答無用でtrueを返すからなるべく個別で確認したほうがよさそう
個別にメンションされているか確認する
一応この挙動はmessage.mentions.has(data, { ignoreEveryone: true })のようにオプションで無効化することもできる
v11ではmessage.isMemberMentioned(member)を使う。こっちではUserまたはGuildMemberしか渡すことができない
役職によるメンションを確認するためには同様にGuildMemberを渡す必要がある
ドキュメント
MessageMentions#has(data, options): boolean
v11: Message#isMemberMentioned(member): boolean