D'après la documentation Discord.js, tu peux récupérer les fichiers attachés avec message.attachments. Pour parcourir tout les fichiers attachés, tu peux donc faire:
// J'ai repris ce bout de code à un sujet StackOverFlow car je n'ai pas mon bot
// sous la main pour ça.
// Tu parcours la liste des fichiers attachés.
if (message.attachments.size > 0) {
if (message.attachments.every(attachIsImage)){
// Pour chaque fichier étant une image, tu exécute une portion de code.
}
}
// Cette fonction va te permettre de vérifier que le fichier et bien une image
// en regardant l'extension. Dans le code ci-dessous, seuls les fichiers PNG
// sont pris en compte. Il faut modifier la fonction pour les JPEG et
// éventuellement les WEBP.
function attachIsImage(msgAttach) {
var url = msgAttach.url;
return url.indexOf("png", url.length - "png".length) !== -1;
}
Pour envoyer une image, il faut utiliser message.send. Le code devient donc:
const uneCommande = '-repeat ';
if (message.content.startsWith(uneCommande)) {
// Récupération du message et suppression.
const str = message.content.substring(uneCommande.length)
let files = [];
message.delete();
// Récupération de toutes les images.
if (message.attachments.size > 0) {
if (message.attachments.every(attachIsImage)){
files.push(message.attachment.url);
}
}
// Envoi du message.
message.channel.send(str, {files: files});
}
function attachIsImage(msgAttach) {
var url = msgAttach.url;
return url.indexOf("png", url.length - "png".length) !== -1;
}
Tu remarquera que j'ai utilisé message.channel.send plutôt que SendMessage, c'est conseillé de faire ainsi.
- Edité par 19 août 2019 à 12:33:33
Je n'ai pas pu tester le code que je t'ai passé et je ne pourrais pas avant un bon moment. Le problème doit probablement venir de la ligne "(message.attachments.every(attachIsImage)", le paramètre doit être manquant.