#Help

7 messages · Page 1 of 1 (latest)

maiden ginkgo
#

I wanted to make an eventHendler using a table. I did everything according to the guide on YouTube, but it doesn't work, there are no errors.

index.js

const { Client, GatewayIntentBits, Partials, Collection } = require("discord.js");
const { Guilds, GuildMembers, GuildMessages } = GatewayIntentBits;
const { User, Message, GuildMember, ThreadMember } = Partials;

const client = new Client({ 
    intents: [Guilds, GuildMembers, GuildMessages],
    partials: [User, Message, GuildMember, ThreadMember]
});

const { loadEvents } = require("./Handlers/eventHandler");

client.config = require("./config.json");
client.events = new Collection();

loadEvents(client);

client
    .login(client.config.token)
    .then( () => {
      console.log(`client logged is as ${client.user.username}`);
      client.user.setActivity(`with ${client.guilds.cache.size} guilds(s)`);
})
.catch((err) => console.log(err));

fileLoader.js

const { glob } = require("glob");
const { promisify } = require("util");
const proGlob = promisify(glob);

async function loadFiles(dirName){
    const Files = await proGlob(`${process.cwd().replace(/\\/g, "/")}/${dirName}/**/*.js`);
    Files.forEach((file) => delete require.cache[require.resolve(file)]);
    return Files;
}

module.exports = { loadFiles }
hollow skyBOT
#
  • What's your exact discord.js npm list discord.js and node node -v version?
  • Not a discord.js issue? Check out #1081585952654360687.
  • Consider reading #how-to-get-help to improve your question!
  • Explain what exactly your issue is.
  • Post the full error stack trace, not just the top part!
  • Show your code!
  • Issue solved? Press the button!
maiden ginkgo
#

eventHandler.js

async function loadEvents(client) {
    const { loadFiles } = require("../Functions/fileLoader");
    const ascii = require("ascii-table");
    const table = new ascii().setHeading("Events", "Status");

    await client.events.clear();

    const Files = await loadFiles("Events");

    Files.forEach((file) => {
        const event = require(file);

        const execute = (...args) => event.execute(...args, client);
        client.events.set(event.name, execute);

        if(event.rest) {
            if(event.once) client.rest.once(event.name, execute);
            else
            client.rest.on(event.name, execute);
        } else {
          if(event.once) client.once(event.name, execute);
          else
          client.on(event.name, execute);
        }
        
        table.addRow(event.name, "🟩")
    })

    return console.log(table.toString(), "\nLoaded Events.s")
}

module.exports = { loadEvents };

Events \ Client \ ready.js

module.exports = {
    name: "ready",
    once: true,
    execute() {
        console.log("The client is now ready.")
    }
}
tiny flicker
#

Follow the guide instead of a yt tutorial, they get outdated really quickly

maiden ginkgo
boreal wadi
maiden ginkgo