aboutsummaryrefslogtreecommitdiff
path: root/modules/embed.js
diff options
context:
space:
mode:
Diffstat (limited to 'modules/embed.js')
-rw-r--r--modules/embed.js190
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