Passo 4 — Implementando o comando Sum
Agora,irás estender o programa implementando o comando "! sum"
. O comando irá tomar qualquer número de argumentos e adicioná-los juntos, antes de retornar a soma de todos os argumentos ao usuário.
Se o bot Discord ainda estiver em execução, podes parar - lo com CTRL + C
.
Abra o arquivo index.js
novamente:
Para começar a implementar o comando "! sum"
, usarás um bloco else-if
. Depois de verificar o nome do comando ping, ele irá verificar se o nome do comando é igual a "sum"
. Usamos um bloco else-if
já que apenas um comando irá processar de cada vez, então se o programa corresponder ao nome de comando "ping"
, ele não precisa verificar o comando "sum"
. Adiciona as seguintes linhas destacadas ao arquivo:
Podes começar a implementar o código para o comando "sum"
. O código para o comando "sum"
irá entrar dentro do bloco else-if
que acabaste de criar. Agora, adiciona o código a seguir:
Usas o método map
na lista argumentos para criar uma nova lista usando a função parseFloat
em cada item no array args
. Isso cria um novo array (atribuído à constante numArgs
) no qual todos os itens são números em vez de strings. Isso significa que mais tarde podes encontrar com sucesso a soma dos números adicionando-os.
A segunda linha usa o método reduce
na constante numArgs
, fornecendo uma função que totaliza todos os elementos na lista. Atribuis a soma de todos os elementos em numArgs
à constante. sum
.
Em seguida, usas o método reply
no objeto message para responder ao comando do usuário com modelo literal, que contém a soma de todos os argumentos que o usuário envia para o bot.
Isso conclui a implementação do comando "sum"
. Agora, execute o bot usando o comando a seguir (na mesma pasta que index.js
):
Agora, podes usar o comando "! sum"
” em qualquer canal em que o bot possa visualizar e enviar mensagem.
A seguir está uma versão finalizada do script index.js
do bot:
Neste passo, melhoraste ainda mais o bot Discord implementando o comando sum
.
Parece uma ótima função para o bot, quando fazes uma atualização em que resolva equações? =D
ResponderEliminar