首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么机器人只能减去硬币?

为什么机器人只能减去硬币?
EN

Stack Overflow用户
提问于 2020-05-23 06:38:33
回答 1查看 110关注 0票数 0

当我使用!flip bot时,如果随机数小于60,它可以减去下注,但如果随机数大于或等于60,它就不能工作。当机器人获胜时,不会向用户添加硬币,而是数字。例如:用户有5,000枚硬币,然后他!flip 2000,随机数掉80 (超过60),然后用户余额变成非50002000,它成为7000帮助请

代码语言:javascript
代码运行次数:0
运行
复制
const Discord = require("discord.js");
let coins = require("../coins.json");

module.exports.run = async (bot, message, args) => {

  let random = Math.floor(Math.random() * 100) + 1;

  let bal = coins[message.author.id].coins;

  if (bal < args[0]) return message.channel.send(`${message.author}, not enough coins!`)

  if (!args[0]) return message.channel.send(`${message.author}, Write bet!`)

  if (random >= 60) {

  let win = new Discord.MessageEmbed()
  .setDescription(`${message.author}`)
  .addField(`Victory!`, `Number: ${random}`)
  .setColor("YELLOW")
  message.channel.send(win)

    coins[message.author.id] = {
      coins: coins[message.author.id].coins + args[0]
    }
  };

  if (random < 60) {

    let lose = new Discord.MessageEmbed()
    .setDescription(`${message.author}`)
    .addField(`Lose`, `Number: ${random}`)
    .setColor("RED")
    message.channel.send(lose)

    coins[message.author.id] = {
      coins: coins[message.author.id].coins - args[0]
    }
  }
 };

module.exports.help = {
  name: "flip"
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-23 09:04:37

您根本不是在添加,而是将字符串组合在一起。

您需要将硬币和余额存储为数字,或者只使用parseInt()转换现有值

代码语言:javascript
代码运行次数:0
运行
复制
const Discord = require("discord.js");
let coins = require("../coins.json");

module.exports.run = async (bot, message, args) => {

  let random = Math.floor(Math.random() * 100) + 1;

  let bal = parseInt(coins[message.author.id].coins); // Convert user's balance to number type

  if (bal < parseInt(args[0])) return message.channel.send(`${message.author}, not enough coins!`)

  if (!args[0]) return message.channel.send(`${message.author}, Write bet!`)

  if (random >= 60) {

  let win = new Discord.MessageEmbed()
  .setDescription(`${message.author}`)
  .addField(`Victory!`, `Number: ${random}`)
  .setColor("YELLOW")
  message.channel.send(win)

    coins[message.author.id] = {
      coins: parseInt(coins[message.author.id].coins) + parseInt(args[0])
    }
  };

  if (random < 60) {

    let lose = new Discord.MessageEmbed()
    .setDescription(`${message.author}`)
    .addField(`Lose`, `Number: ${random}`)
    .setColor("RED")
    message.channel.send(lose)

    coins[message.author.id] = {
      coins: parseInt(coins[message.author.id].coins) - parseInt(args[0])
    }
  }
 };

module.exports.help = {
  name: "flip"
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61964936

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档