Quase como uma filha, é um bot de propósitos gerais, chamada de Yui estou a desenvolvendo para o discord com a biblioteca discord.js, o nome tem inspiração na personagem Yui do anime Sword Art Online que a princípio é uma I.A.
- Adicione o bot clicando nesse LINK
- Você precisa de permissões de administrador em algum server
- Leia a documentação dos comandos AQUI
- Só curtir 😁
Antes de tudo você precisa ter adicionado o bot no seu servidor, para isso clique nesse link
// Clone o repositório
$ git clone https://github.com/miguelrisquelme/yui.git
// Instale as dependências
$ npm i
// Crie e configure o arquivo .env, basta seguir o arquivo de exemplo .env.example
~/.env
// Inicie a aplicação
$ npm run dev
Para os consoles de erros darem certo, a estrutura de pastas tem que estar padronizada, para tal, basta seguir essas instruções:
-
O nome do comando deve ser o mesmo nome da pasta dele
/commands/${nameCommand}
module.exports = { name: `${nameCommand}`, description: "Descrição do comando", execute, };
-
O nome das funções devem ser o mesmo dos argumentos passados depois do comando
> time ${args}
/commands/time/functions/${args}.js
Exemplo de saída:
❌ TypeError: message.channel.sen is not a function
🦊 Input: '> time hours'
✨ Command: time
🔥 Function: hours
🧅 Possible Path: /commands/time/hours.js
O código do catch Error:
const error = require("../utils/handlers/errors/errors.handler");
...
catch (err) {
const args = message.content.slice(prefix.length).trim().split(/ +/);
console.error(`
❌ ${err.toString()}
🦊 Input: '${message.content}'
✨ Command: ${args[0]}
🔥 Function: ${args[1]}
🧅 Possible Path: /commands/${args[0]}/${args[1]}.js
`);
console.error(err);
error.handler(err, message);
}
- Diretório onde se encontra todos os comandos do bot
- Cada comando fica em uma pasta com o seu nome
- Dentro de cada pasta tem
- main.js - Configurações do comando
- /functions - Dentro dessa pasta fica os subcomandos assim dizer
Exemplo de código
// Importações
const execute = (message, args) => {
try {
// O código para ser executado
} catch (error) {
console.error(error);
}
};
module.exports = {
name: "Nome do comando",
description: "Descrição do comando",
execute,
};
- Diretório onde se encontra todos os eventos do bot
- Tudo que vai ser executado como ação fica aqui
- Onde será manipulado os dados
- É criado handlers para manipular tipos de dados
- Eventos
- Erros
- Comandos
- Função anônima
- Listar os comandos
- Executa os handlers enviando o diretório dos events
- Lista os comandos
- Adiciona eles ao client que é a instância do BOT
- Manipula os eventos
- Fala quando o o bot foi iniciado por completo
- Ouve o evento message
- Manipula os erros
- Diz os tipos de erros
- Verifica quem está chamando o comando, caso seja o OWNER_ID irá atribuir o nome definido no arquivo
.env
- Faz o tratamento do evento acionado
- Faz as verificações
- Executa o comando
- Mostra em quantos server o bot está conectado
- Fala que a aplicação já está rodando