From 27cf856ad146399a6702444969f287f2a95c9f6f Mon Sep 17 00:00:00 2001 From: Daniel Odendahl Jr Date: Sat, 3 Jun 2017 15:36:17 +0000 Subject: [PATCH] Pokemon Fusion --- assets/json/pokemon-fusion.json | 154 ++++++++++++++++++++++++++++++ commands/random/pokemon-fusion.js | 41 ++++++++ package.json | 2 +- 3 files changed, 196 insertions(+), 1 deletion(-) create mode 100644 assets/json/pokemon-fusion.json create mode 100644 commands/random/pokemon-fusion.js diff --git a/assets/json/pokemon-fusion.json b/assets/json/pokemon-fusion.json new file mode 100644 index 00000000..bd47cb11 --- /dev/null +++ b/assets/json/pokemon-fusion.json @@ -0,0 +1,154 @@ +{ + "bulbasaur": "1", + "ivysaur": "2", + "venusaur": "3", + "charmander": "4", + "charmeleon": "5", + "charizard": "6", + "squirtle": "7", + "wartortle": "8", + "blastoise": "9", + "caterpie": "10", + "metapod": "11", + "butterfree": "12", + "weedle": "13", + "kakuna": "14", + "beedrill": "15", + "pidgey": "16", + "pidgeotto": "17", + "pidgeot": "18", + "rattata": "19", + "raticate": "20", + "spearow": "21", + "fearow": "22", + "ekans": "23", + "arbok": "24", + "pikachu": "25", + "raichu": "26", + "sandshrew": "27", + "sandslash": "28", + "nidoranf": "29", + "nidorina": "30", + "nidoqueen": "31", + "nidoranm": "32", + "nidorino": "33", + "nidoking": "34", + "clefairy": "35", + "clefable": "36", + "vulpix": "37", + "ninetales": "38", + "jigglypuff": "39", + "wigglytuff": "40", + "zubat": "41", + "golbat": "42", + "oddish": "43", + "gloom": "44", + "vileplume": "45", + "paras": "46", + "parasect": "47", + "venonat": "48", + "venomoth": "49", + "diglett": "50", + "dugtrio": "51", + "meowth": "52", + "persian": "53", + "psyduck": "54", + "golduck": "55", + "mankey": "56", + "primeape": "57", + "growlithe": "58", + "arcanine": "59", + "poliwag": "60", + "poliwhirl": "61", + "poliwrath": "62", + "abra": "63", + "kadabra": "64", + "alakazam": "65", + "machop": "66", + "machoke": "67", + "machamp": "68", + "bellsprout": "69", + "weepinbell": "70", + "victreebel": "71", + "tentacool": "72", + "tentacruel": "73", + "geodude": "74", + "graveler": "75", + "golem": "76", + "ponyta": "77", + "rapidash": "78", + "slowpoke": "79", + "slowbro": "80", + "magnemite": "81", + "magneton": "82", + "farfetch'd": "83", + "doduo": "84", + "dodrio": "85", + "seel": "86", + "dewgong": "87", + "grimer": "88", + "muk": "89", + "shellder": "90", + "cloyster": "91", + "gastly": "92", + "haunter": "93", + "gengar": "94", + "onix": "95", + "drowzee": "96", + "hypno": "97", + "krabby": "98", + "kingler": "99", + "voltorb": "100", + "electrode": "101", + "exeggcute": "102", + "exeggutor": "103", + "cubone": "104", + "marowak": "105", + "hitmonlee": "106", + "hitmonchan": "107", + "lickitung": "108", + "koffing": "109", + "weezing": "110", + "rhyhorn": "111", + "rhydon": "112", + "chansey": "113", + "tangela": "114", + "kangaskhan": "115", + "horsea": "116", + "seadra": "117", + "goldeen": "118", + "seaking": "119", + "staryu": "120", + "starmie": "121", + "mr. mime": "122", + "scyther": "123", + "jynx": "124", + "electabuzz": "125", + "magmar": "126", + "pinsir": "127", + "tauros": "128", + "magikarp": "129", + "gyarados": "130", + "lapras": "131", + "ditto": "132", + "eevee": "133", + "vaporeon": "134", + "jolteon": "135", + "flareon": "136", + "porygon": "137", + "omanyte": "138", + "omastar": "139", + "kabuto": "140", + "kabutops": "141", + "aerodactyl": "142", + "snorlax": "143", + "articuno": "144", + "zapdos": "145", + "moltres": "146", + "dratini": "147", + "dragonair": "148", + "dragonite": "149", + "mewtwo": "150", + "mew": "151", + "missingno.": "0" +} diff --git a/commands/random/pokemon-fusion.js b/commands/random/pokemon-fusion.js new file mode 100644 index 00000000..05e4fbe0 --- /dev/null +++ b/commands/random/pokemon-fusion.js @@ -0,0 +1,41 @@ +const Command = require('../../structures/Command'); +const pokemon = require('../../assets/json/pokemon-fusion'); + +module.exports = class PokemonFusionCommand extends Command { + constructor(client) { + super(client, { + name: 'pokemon-fusion', + aliases: ['poke-fusion', 'poke-fuse'], + group: 'random', + memberName: 'pokemon-fusion', + description: 'Fuses two Generation 1 Pokemon together.', + args: [ + { + key: 'source1', + prompt: 'What Pokemon should be fused?', + type: 'string', + validate: (source1) => { + if (pokemon.includes(source1.toLowerCase())) return true; + else return 'Only Pokemon from Generation 1 may be used.'; + }, + parse: (source1) => pokemon[source1.toLowerCase()] + }, + { + key: 'source2', + prompt: 'What Pokemon should be fused?', + type: 'string', + validate: (source2) => { + if (pokemon.includes(source2.toLowerCase())) return true; + else return 'Only Pokemon from Generation 1 may be used.'; + }, + parse: (source2) => pokemon[source2.toLowerCase()] + } + ] + }); + } + + run(msg, args) { + const { source1, source2 } = args; + return msg.say(`http://images.alexonsager.net/pokemon/fused/${source1}/${source1}.${source2}.png`); + } +}; diff --git a/package.json b/package.json index 3c645377..600fc894 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "xiaobot", - "version": "22.0.3", + "version": "22.1.0", "description": "A Discord Bot", "main": "Shard.js", "scripts": {