Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

351
Views
Discord.js v12.5.3 ¿Alguien sabe por qué esto no funciona?

EDITAR: ColinD resolvió mi problema, pero ahora el mensaje no se elimina y no tengo idea de por qué el mensaje no se eliminará porque me funcionó antes con bots

Código:

 const discord = require('discord.js') const newEmbed = require('embedcord') const randomHex = require('random-hex') module.exports = (client, message, options) => { let links = require('./links.json') let foundLink = false let banReason = (options && options.banReason) || 'Sent a phishing link.' let logs = (options && options.logs) let member = message.mentions.members.first() for(var i in links) { if(message.content.toLowerCase().includes(links[i])) foundLink = true } if(foundLink) { if(message.author.hasPermission('ADMINISTRATOR')) return message.delete() member.ban({reason: banReason}) const embed = newEmbed( '**Member Banned**', `${randomHex.generate()}`, `Member was banend for ${options.banReason}` ) logs.send(embed) } }
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Su posición de return podría estar impidiendo cualquier cosa a continuación si se ejecuta, intente cambiar esto

 if (foundLink) { if (message.author.hasPermission('ADMINISTRATOR')) return; const embed = newEmbed( '**Member Banned**', `${randomHex.generate()}`, `Member was banend for ${options.banReason}` ); message.delete(); member.ban({ reason: banReason }); logs.send(embed); }

O esto si quieres si/si no

 if (foundLink) { if (message.author.hasPermission('ADMINISTRATOR')) { return; } else { const embed = newEmbed( '**Member Banned**', `${randomHex.generate()}`, `Member was banend for ${options.banReason}` ); message.delete(); member.ban({ reason: banReason }); logs.send(embed); } }
about 4 years ago · Juan Pablo Isaza Report

0

EDITAR: ColinD resolvió mi problema, pero ahora el mensaje no se elimina y no tengo idea de por qué el mensaje no se eliminará porque me funcionó antes con bots

La variable foundLink es innecesaria, puede mover su código dentro del ciclo.

Utilice message.member.hasPermission() en lugar de message.author.hasPermission() .

Código de ejemplo para v12.5.3 (Evento de mensaje):

 client.on('message', (message) => { if (message.author.bot) return; // Ignore bot messages const { member, channel, guild } = message; // Get the message author, channel, and guild if (!member || !channel || !guild) return; // Ignore messages without a member, channel or guild const { links } = require('./links.json'); // Get links from json file for (let i = 0; i < links.length; i++) { // Check if the message contains a link in the links.json file if (message.content.toLowerCase().includes(links[i])) { // If the message contains a link if (member.hasPermission('ADMINISTRATOR')) return; // If the member has the administrator permission, don't ban them const banReason = 'Sent a phishing link'; // Reason for the ban message.delete(); // Delete the message guild.member(member).ban({ reason: banReason }); // Ban the member channel.send(`${member.displayName} has been banned for sending a phishing link.`) // Send a message to the channel break; } } })
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!