Cuando una embed tiene un footer de página o no, envía un mensaje a la consola.
Pero la segunda condición
if (!embed[i] || !embed[i].footer || embed[i].footer.text === null)
No funciona.
Pero si bajo a la condición,
if (embed[i] && embed[i].footer && embed[i].footer.text !== null)
y subo
if (!embed[i] || !embed[i].footer || embed[i].footer.text === null) ,
ahora
if (embed[i] && embed[i].footer && embed[i].footer.text !== null)
no responde.
El segundo if no funciona nunca
const { Client, Intents } = require("discord.js-selfbot"); const client = new Client({ intents: [ Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES, Intents.FLAGS.GUILD_MESSAGE_REACTIONS, ], }); let token = ""; client.on("ready", () => { console.log(`Logged in as ${client.user.tag}!`); }); client.on("message", (message) => { if (message.embeds.length >= 0) { // Check if the Message has embed or not let embed = message.embeds; for (let i = 0; i < embed.length; i++) { if (embed[i] && embed[i].footer && embed[i].footer.text !== null) return; // check each embed if it has footer or not { console.log("no have footer"); } if (!embed[i] || !embed[i].footer || embed[i].footer.text === null) return; // check each embed if it has footer or not { console.log("have footer"); } } } }); client.login(token);pones 2 condiciones y si son verdaderas sales con devolución, pero seguro una de ellas será cierta así que
{ console.log("have footer"); }nunca será llamado
El código se ve mal. Tal vez intente actualizar a continuación:
client.on("message", (message) => { if (message.embeds.length >= 0) { // Check if the Message has embed or not let embed = message.embeds; for (let i = 0; i < embed.length; i++) { // check each embed if it has footer or not if (embed[i] && embed[i].footer && embed[i].footer.text !== null) { console.log("no have footer"); return; } // check each embed if it has footer or not if (!embed[i] || !embed[i].footer || embed[i].footer.text === null) { console.log("have footer"); return; } } } });