diff --git a/assets/json/missingno.json b/assets/json/missingno.json index 74ed82c6..f95f88b8 100644 --- a/assets/json/missingno.json +++ b/assets/json/missingno.json @@ -19,7 +19,28 @@ "language": { "name": "en" }, - "flavor_text": "Comment to be written." + "flavor_text": "Comment to be written.", + "version": { + "name": "red" + } + }, + { + "language": { + "name": "en" + }, + "flavor_text": "コメント さくせいちゅう", + "version": { + "name": "blue" + } + }, + { + "language": { + "name": "en" + }, + "flavor_text": "\u200B", + "version": { + "name": "yellow" + } } ], "id": 0, diff --git a/commands/pokedex/pokedex.js b/commands/pokedex/pokedex.js index 84c11583..57ab78c8 100644 --- a/commands/pokedex/pokedex.js +++ b/commands/pokedex/pokedex.js @@ -94,6 +94,9 @@ module.exports = class PokedexCommand extends Command { if (found.id === pokemon.id) return `**${found.name}**`; return found.name; }).join(' -> '); + const entry = pokemon.entries.length + ? pokemon.entries[Math.floor(Math.random() * pokemon.entries.length)] + : { text: 'No data.', version: '' }; const embed = new EmbedBuilder() .setColor(0xED1C24) .setAuthor({ @@ -103,7 +106,7 @@ module.exports = class PokedexCommand extends Command { }) .setDescription(stripIndents` **${pokemon.genus}** - ${pokemon.entries.length ? pokemon.entries[Math.floor(Math.random() * pokemon.entries.length)] : 'No data.'} + ${entry.text}${entry.version ? ` _(${entry.version})_` : ''} `) .setThumbnail(pokemon.spriteImageURL) .addField('❯ Introduced In', games[genGames[pokemon.generation]], true) diff --git a/package.json b/package.json index f7c8dfd5..c6db8a4f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "xiao", - "version": "152.5.4", + "version": "152.5.5", "description": "Your personal server companion.", "main": "Xiao.js", "scripts": { diff --git a/structures/pokemon/Pokemon.js b/structures/pokemon/Pokemon.js index df85cd99..82e99770 100644 --- a/structures/pokemon/Pokemon.js +++ b/structures/pokemon/Pokemon.js @@ -14,9 +14,14 @@ module.exports = class Pokemon { this.name = data.names.length ? data.names.find(entry => entry.language.name === 'en').name : slugName; - this.entries = removeDuplicates(data.flavor_text_entries + this.entries = data.flavor_text_entries .filter(entry => entry.language.name === 'en') - .map(entry => entry.flavor_text.replace(/\n|\f|\r/g, ' '))); + .map(entry => { + return { + text: entry.flavor_text.replace(/\n|\f|\r/g, ' '), + version: versions[entry.version.name] + }; + }); this.names = data.names.length ? data.names.map(entry => ({ name: entry.name, language: entry.language.name })) : [{ name: slugName, language: 'en' }];