在Discord.js中解密游戏的问题,选择文本文件中的随机行

时间:2019-03-21 03:20:59

标签: discord.js

我正尝试在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。发生了什么事?

1 个答案:

答案 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()