我正尝试在discord.js中制作一款精彩的游戏! (您可以通过应该通过通道发送的消息来了解游戏的想法)加扰工作正常,但我似乎在选择文件中的随机行时遇到问题。我用的是我的这段代码:
const rl = require('readline-specific')
var started = 'true'
let randomline = Math.floor(Math.random() * 1525) + 1;
rl.oneline('./words.txt', randomline, function(err, res) {
if (err) console.error(err)
console.log(res)
let correctword = res
message.channel.send('The word to guess is: "' + res.shuffle() + '". use "+guess <yourguess>" if you think you know what it is!');
})
但是这似乎不起作用。它不会给出任何错误日志,也不会在聊天中进行任何操作,也不会记录日志。我在做什么错了?
编辑:似乎我的另一行if(started === 'false')
{如果游戏没有开始,则它是s变量false,反之则是true。我不明白,因为使用命令+ reset将其设置为false。发生了什么事?
答案 0 :(得分:0)
在测试了提供的代码之后,我猜测是您在提供的代码+ started
不可见的范围内将"false"
分配给if(started === 'false')
。我的解决方案是在脚本的开头声明started
,然后为其分配值,例如:
//Start of the script
var started = 'false';
...
//+reset
started = 'false'
...
if(started === 'false'){
const rl = require('readline-specific')
var started = 'true'
let randomline = Math.floor(Math.random() * 1525) + 1;
rl.oneline('./words.txt', randomline, function(err, res) {
if (err) console.error(err)
console.log(res)
let correctword = res
message.channel.send('The word to guess is: "' + res.shuffle() + '". use "+guess <yourguess>" if you think you know what it is!');
})
}
另外,res.shuffle()
是什么?是String
构造函数修改吗?
如果没有,请检查您是否没有将String.shuffle()
误认为shuffle()
。