Discord - 添加到用户昵称然后删除添加的单词
Discord - Add into users nickname then remove added word
我为我的 discord 机器人创建了一个 AFK 命令,但我正在努力弄清楚如何将“[AFK]”添加到当前用户 昵称。
下面是我所拥有的,但这采用了用户的不和谐名称 而不是昵称 并向其添加了“[AFK]”。
message.member.setNickname(`[AFK] ${message.author.username}`)
然后我想在 "if afk" 语句触发时从他们的昵称中删除 [AFK] (我已经写了 if 语句)但保留其余部分。
提前致谢
您可以使用 message.member
从消息中获取 GuildMember。
message.member.nickname
会给你用户的昵称,但如果用户有 none,它会 return null
。您也可以使用
message.member.displayName
这会给你昵称,或者他们的用户名,如果他们没有的话。
您应该简单地使用 .replace 替换字符串中的 [AFK]:
const currentNickname = message.member.nickname;
const newNickname = currentNickname.replace('[AFK]', '');
message.member.setNickname(newNickname);
你也可以这样做:
message.member.setNickname(message.member.displayName);
这为用户提供了他当前的昵称。如果用户没有昵称,新昵称将是该特定用户的 Discord 用户名。
我为我的 discord 机器人创建了一个 AFK 命令,但我正在努力弄清楚如何将“[AFK]”添加到当前用户 昵称。
下面是我所拥有的,但这采用了用户的不和谐名称 而不是昵称 并向其添加了“[AFK]”。
message.member.setNickname(`[AFK] ${message.author.username}`)
然后我想在 "if afk" 语句触发时从他们的昵称中删除 [AFK] (我已经写了 if 语句)但保留其余部分。
提前致谢
您可以使用 message.member
从消息中获取 GuildMember。
message.member.nickname
会给你用户的昵称,但如果用户有 none,它会 return null
。您也可以使用
message.member.displayName
这会给你昵称,或者他们的用户名,如果他们没有的话。
您应该简单地使用 .replace 替换字符串中的 [AFK]:
const currentNickname = message.member.nickname;
const newNickname = currentNickname.replace('[AFK]', '');
message.member.setNickname(newNickname);
你也可以这样做:
message.member.setNickname(message.member.displayName);
这为用户提供了他当前的昵称。如果用户没有昵称,新昵称将是该特定用户的 Discord 用户名。