首页 > 解决方案 > 如何在语音频道中奖励用户 XP?

问题描述

我对 node.js 和 discord.js 比较陌生。

我正在尝试使用 discord-xp npm 为特定语音频道中的每个用户提供随机数量的 XP,他们在语音频道中花费的每 30 秒。

我遇到这个错误

/home/runner/Peeper-Bash/index.js:78
    const randomXP = await Math.floor(Math.random() * 100) + 1;
                     ^^^^^

SyntaxError: await is only valid in async functions and the top level bodies of modules

这是我的代码

setInterval(() =>{ 
let voiceChannel = client.guilds.cache.get(process.env.DISCORD_GUILD_ID).channels.cache.get("539323872101531670");
let membersInChannel = voiceChannel.members.size;
const members = voiceChannel.members;
if (membersInChannel > 0) {
  members.forEach(member => {
    console.log(member.user.id);
    const randomXP = await Math.floor(Math.random() * 100) + 1;
    const hasLevelUP = await Levels.appendXp(member.user.id, process.env.DISCORD_GUILD_ID, randomXP)
  });
}
}, 30000);

任何帮助,将不胜感激。

标签: node.jsdiscord.js

解决方案


推荐阅读