diff options
author | Minteck <contact@minteck.org> | 2022-01-08 21:47:45 +0100 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2022-01-08 21:47:45 +0100 |
commit | be6c790e43be36cfa6669110c7064a67ad3c4623 (patch) | |
tree | 3e81dd5a8caaf3f9c9db6b21f858167f01983119 /modules/embed.js | |
parent | ac2dea4a23ca72001e41c1dbf66ff1a0d01e217c (diff) | |
download | ponyfind-be6c790e43be36cfa6669110c7064a67ad3c4623.tar.gz ponyfind-be6c790e43be36cfa6669110c7064a67ad3c4623.tar.bz2 ponyfind-be6c790e43be36cfa6669110c7064a67ad3c4623.zip |
Update
Diffstat (limited to 'modules/embed.js')
-rw-r--r-- | modules/embed.js | 190 |
1 files changed, 190 insertions, 0 deletions
diff --git a/modules/embed.js b/modules/embed.js new file mode 100644 index 0000000..9c2ab0a --- /dev/null +++ b/modules/embed.js @@ -0,0 +1,190 @@ +const { MessageEmbed } = require("discord.js"); +const data = require('../data/data.json'); + +module.exports = (page, id, gid) => { + if (typeof data[page] === "undefined") { + return false; + } + + d = data[page]; + + let sign = ""; + switch (page) { + case "Rainbow Dash": + sign = "đ"; + break; + + case "Twilight Sparkle": + sign = "âš"; + break; + + case "Pinkie Pie": + sign = "đ"; + break; + + case "Applejack": + sign = "đ"; + break; + + case "Fluttershy": + sign = "đ"; + break; + + case "Rarity": + sign = "đŠ"; + break; + + default: + sign = ""; + break; + } + + let kind = l("Unknown", "Inconnu", id, gid); + switch (d.kind) { + case "Pegasus": + kind = l("Pegasus", "PĂ©gase", id, gid) + break; + + case "Earth": + kind = l("Earth Pony", "Poney terrestre", id, gid) + break; + + case "Ahuizotl": + kind = l("Ahiuzotl", "Ahuizotl", id, gid) + break; + + case "Rabbit": + kind = l("Rabbit", "Lapin", id, gid) + break; + + case "Pony": + kind = l("Pony", "Poney", id, gid) + break; + + case "Unicorn": + kind = l("Unicorn", "Licorne", id, gid) + break; + + case "Draconequus": + kind = l("Draconequus", "Draconequus", id, gid) + break; + + case "Griffon": + kind = l("Griffon", "Gryphon", id, gid) + break; + + case "Alligator": + kind = l("Alligator", "Alligator", id, gid) + break; + + case "Minotaur": + kind = l("Minotaur", "Minotaure", id, gid) + break; + + case "Buffalo": + kind = l("Buffalo", "Buffle", id, gid) + break; + + case "Alicorn": + kind = l("Alicorn", "Alicorne", id, gid) + break; + + case "Persian": + kind = l("Persian", "Persien", id, gid) + break; + + case "Owl": + kind = l("Owl", "Hibou", id, gid) + break; + + case "Phoenix": + kind = l("Phoenix", "PhĂ©nix", id, gid) + break; + + case "Changelingbr": + kind = l("Changelingbr", "Changelingbr", id, gid) + break; + + case "Breezie": + kind = l("Breezie", "Brisie", id, gid) + break; + + case "Dragon": + kind = l("Dragon", "Dragon", id, gid) + break; + + case "Sea": + kind = l("Sea", "Mer", id, gid) + break; + + case "Tortoise": + kind = l("Tortoise", "Tortue", id, gid) + break; + + case "Centaurref": + kind = l("Centaurref", "Centaurref", id, gid) + break; + + case "Collie": + kind = l("Collie", "Collie", id, gid) + break; + + case "Zebrabr": + kind = l("Zebrabr", "Zebrabr", id, gid) + break; + } + + names = [...new Set(d.names.filter(e => e.trim().toLowerCase() !== page.toLowerCase()))]; + + let naming = "-"; + if (names.length > 5) { + naming = "- " + names[0] + "\n- " + names[1] + "\n- " + names[2] + "\n- " + names[3] + "\n- " + names[4] + "\n*" + l("and " + (names.length - 5) + " others", "et " + (names.length - 5) + " autres", id, gid) + "*" + } else { + if (names.length > 1) { + naming = "- " + names.join("\n- ") + } else { + naming = names[0]; + } + } + + if (typeof naming === "undefined" || naming.trim() === "") { + naming = "-"; + } + + let jobs = page; + if (d.occupation.length > 5) { + jobs = "- " + d.occupation[0] + "\n- " + d.occupation[1] + "\n- " + d.occupation[2] + "\n- " + d.occupation[3] + "\n- " + d.occupation[4] + "\n*" + l("and " + (d.occupation.length - 5) + " others", "et " + (d.occupation.length - 5) + " autres", id, gid) + "*" + } else { + if (d.occupation.length > 1) { + jobs = "- " + d.occupation.join("\n- ") + } else { + jobs = d.occupation[0]; + } + } + + let location = page; + if (d.residence.length > 5) { + location = "- " + d.residence[0] + "\n- " + d.residence[1] + "\n- " + d.residence[2] + "\n- " + d.residence[3] + "\n- " + d.residence[4] + "\n*" + l("and " + (d.residence.length - 5) + " others", "et " + (d.residence.length - 5) + " autres", id, gid) + "*" + } else { + if (d.residence.length > 1) { + location = "- " + d.residence.join("\n- ") + } else { + location = d.residence[0]; + } + } + + return new MessageEmbed() + .setColor(d.color.length === 6 ? d.color : "ffffff") + .setTitle(page + " " + sign) + .setDescription(l(d.extract, d.extract_fr, id, gid)) + .setImage(d.image) + .setThumbnail(d.mark) + .addFields([ + { name: l("Nicknames", "Surnoms", id, gid), value: naming, inline: true }, + { name: l("Sex", "Sexe", id, gid), value: d.sex === "F" ? "â" : "â", inline: true }, + { name: l("Kind", "Type", id, gid), value: kind, inline: true }, + { name: l("Occupation(s)", "Occupation(s)", id, gid), value: "(" + l("spoilers", "rĂ©vĂ©lations", id, gid) + ")\n||" + jobs + "||", inline: true }, + { name: l("Home(s)", "RĂ©sidence(s)", id, gid), value: "(" + l("spoilers", "rĂ©vĂ©lations", id, gid) + ")\n||" + location + "||", inline: true } + ]) + .setFooter(l("Content provided without warranty, use at your own risk.", "Contenu fourni sans aucune garantie, utilisez Ă vos risques et pĂ©rils", id, gid)) +}
\ No newline at end of file |