Как заставить диссонирующего бота менять скрипт при использовании команды? - PullRequest
0 голосов
/ 09 ноября 2019

Проблема в том, что я установил дискорд-бота с командами и ответами. Я хочу сделать это, например, когда я использую "! Changeport 2222" в моем канале разногласий, тогда он изменит фактический код внутри, который должен быть изменен на var port = 2222 ;. Если я использую "! Changeport 80", то его следует изменить на var port = 80;Inside Script.

Я пробовал несколько способов, но не повезло. Я также не профессиональный кодер.

var port = 80;
var portscanner = require('portscanner')
var used = false;

//command that is used in discord channel to change the port
client.on("message", (message) => {
var port = message.content.split(" ")[1]
var cooldowntext = ("You need to wait before using that command!")  
  if (message.content.startsWith("!port")) { 
     if(used) message.channel.send(cooldowntext);
     else{
    portscanner.checkPortStatus(port, '127.0.0.1', function(error, status) {
      // Status is 'open' if currently in use or 'closed' if available
      message.channel.send("Port changed to ");
      console.log(status)
      update()
      used = true;
      setTimeout(() => {
          used = false;
      }, 1000 * 10);

    })
     }


  }

});
//command that is used in discord channel to change the port /end/





Это не работает так, как я пытался это сделать.

1 Ответ

0 голосов
/ 09 ноября 2019

Вам нужно изменить значение вашего первого var:

var port = 80;
var portscanner = require('portscanner')
var used = false;

//command that is used in discord channel to change the port
client.on("message", (message) => {
var newPort = message.content.split(" ")[1]
var cooldowntext = ("You need to wait before using that command!")  
  if (message.content.startsWith("!port")) { 
     if(used) message.channel.send(cooldowntext);
     else{
    port = newPort;
    portscanner.checkPortStatus(port, '127.0.0.1', function(error, status) {
      // Status is 'open' if currently in use or 'closed' if available
      message.channel.send("Port changed to ");
      console.log(status)
      update()
      used = true;
      setTimeout(() => {
          used = false;
      }, 1000 * 10);

    })
     }


  }

});
//command that is used in discord channel to change the port /end/




Я заменил ваш второй port var на newPort и изменил первое значение port на значение newPort, когдакоманда запускается.

...