一个代码块的两个问题(随机是相同的,如果条件满足则 ifs 不做任何事情)

Two problems with one block of code (Random is the same and ifs are not doing anything when condition is met)

包含一些 discord.js 代码,但有解释

我想做的是当用户使用特定命令时,它会启动一个随机变量,用于添加随机敌人。但是,当我使用该命令时,它给了我相同的数字(以前是 4,但稍微更改了我的代码后,现在是 1),并且没有执行该数字应该执行的操作(如果语句没有开始)

我认为我的代码有问题:

        var e = Math.floor(Math.random() * 3) + 1;
        if(e = 1){
            userData.skeletons + 1;
        }
        else if(e = 2){
            userData.skeletons + 1;
        }
        else if (e = 3){
            userData.minotaurs + 1;
        }              
        else if(e = 4){
            userData.skeletons + 1;
        }
        console.log(e)

完整代码:

if (message.content.startsWith(prefix + "search")) { //if the message the 
//user sends is equal to my prefix (bp!) plus the word search, it runs the 
//below code
    if(userData.stamina >= 3){
        userData.stamina - 3
        var e = Math.floor(Math.random() * 3) + 1;
        if(e = 1){
            userData.skeletons + 1;
        }
        else if(e = 2){
            userData.skeletons + 1;
        }
        else if (e = 3){
            userData.minotaurs + 1;
        }              
        else if(e = 4){
            userData.skeletons + 1;
        }
        console.log(e)
        message.reply('To see if ya found anything, use bp!enemies')
        //replies to the user who used the command with the above message
    }
    else{ //this else is for if they do not have enough stamina
        message.reply('You require at least 3 stamina to do this!')
        console.log(`${message.author.id} You require at least 3 stamina to 
        do this!`)            
    }
}

我已经为那些需要更多了解代码和 discord.js 代码的人创建了评论。

我已经检查了我的 userData 变量(每个用户唯一的变量),它们都没有问题。 我查看了其他问题,但看起来他们没有解决方案 感谢您花时间阅读本文。

这段代码有很多问题。 if(e = 1) 应该是 if(e == 1)userData.stamina - 3 应该是 userData.stamina -= 3.

userData.skeletons + 1 应该是 userData.skeletons++