diff options
| author | Trey-Server <trey6979@gmail.com> | 2018-03-19 00:10:51 +0000 |
|---|---|---|
| committer | Trey-Server <trey6979@gmail.com> | 2018-03-19 00:10:51 +0000 |
| commit | 62172685f32f8d4262d15528eaae8a8af2d85d24 (patch) | |
| tree | bab4216bf721502ee74882b288d1655f180b4acb /commands | |
| parent | 3f196569f0b2f2bab12728574398177f8665a3ec (diff) | |
| parent | c0bbf4e2183735bc7eb65a255eccc09f127a160d (diff) | |
| download | PokeBot-62172685f32f8d4262d15528eaae8a8af2d85d24.tar.gz PokeBot-62172685f32f8d4262d15528eaae8a8af2d85d24.tar.bz2 PokeBot-62172685f32f8d4262d15528eaae8a8af2d85d24.zip | |
Merge branch 'master' of https://github.com/PokeWorld/PokeBot
Diffstat (limited to 'commands')
| -rw-r--r-- | commands/Getting Started/test.js | 79 | ||||
| -rw-r--r-- | commands/Getting Started/test2.js | 79 | ||||
| -rw-r--r-- | commands/Owners Only/triggeregg.js | 39 | ||||
| -rw-r--r-- | commands/Pokemon/claim.js | 10 |
4 files changed, 203 insertions, 4 deletions
diff --git a/commands/Getting Started/test.js b/commands/Getting Started/test.js new file mode 100644 index 0000000..2152b90 --- /dev/null +++ b/commands/Getting Started/test.js @@ -0,0 +1,79 @@ +/** ************************************** + * + * Test: Plugin for PokeBot that helps us test new features + * Copyright (C) 2018 TheEdge, jtsshieh, Alee + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * *************************************/ + +exports.run = async (bot, msg) => { + const Canvas = require('canvas'); + const request = require('request-promise'); + Canvas.registerFont('./assets/Ketchum.otf', { + family: 'Ketchum' + }); + const canvas = Canvas.createCanvas(1500, 500); + const ctx = canvas.getContext('2d'); + const Image = Canvas.Image; + const base = new Image(); + const avatar = new Image(); + const fs = require('fs'); + + avatar.src = await request({ + uri: msg.author.avatarURL, + encoding: null + }); + base.src = await fs.readFileSync('./assets/Pokemon_Welcome_Template.png'); + ctx.drawImage(base, 0, 0, 1500, 500); + + ctx.font = '100px Ketchum'; + ctx.fillStyle = '#e5da2a'; + ctx.strokeStyle = '#3b4cca'; + ctx.lineWidth = 5; + ctx.fillText(msg.author.tag, 475, 175); + ctx.strokeText(msg.author.tag, 475, 175); + + ctx.font = '55px Ketchum'; + ctx.fillStyle = '#fff'; + ctx.fillText(msg.guild.name, 800, 325); + + ctx.font = '40px Ketchum'; + ctx.fillStyle = '#fff'; + ctx.fillText(msg.guild.memberCount + ' members', 100, 70); + + ctx.globalAlpha = 1; + ctx.beginPath(); + ctx.arc(208, 267, 166, 0, 2 * Math.PI, true); + ctx.closePath(); + ctx.clip(); + ctx.drawImage(avatar, 43, 101, 329, 331); + return msg.channel.send({ + files: [{ + attachment: canvas.toBuffer(), + name: 'welcomeCard.png' + } + ] + }); +}; + +exports.conf = { + aliases: [], + guildOnly: true, +}; + +exports.help = { + name: 'test', + description: 'Introduces you to the PokeWorld server!', +}; diff --git a/commands/Getting Started/test2.js b/commands/Getting Started/test2.js new file mode 100644 index 0000000..2ead6e1 --- /dev/null +++ b/commands/Getting Started/test2.js @@ -0,0 +1,79 @@ +/** ************************************** + * + * Test: Plugin for PokeBot that helps us test new features + * Copyright (C) 2018 TheEdge, jtsshieh, Alee + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * *************************************/ + +exports.run = async (bot, msg) => { + const Canvas = require('canvas'); + const request = require('request-promise'); + Canvas.registerFont('./assets/Ketchum.otf', { + family: 'Ketchum' + }); + const canvas = Canvas.createCanvas(1500, 500); + const ctx = canvas.getContext('2d'); + const Image = Canvas.Image; + const base = new Image(); + const avatar = new Image(); + const fs = require('fs'); + + avatar.src = await request({ + uri: msg.author.avatarURL, + encoding: null + }); + base.src = await fs.readFileSync('./assets/Pokemon_Leave_Template.png'); + ctx.drawImage(base, 0, 0, 1500, 500); + + ctx.font = '100px Ketchum'; + ctx.fillStyle = '#e5da2a'; + ctx.strokeStyle = '#3b4cca'; + ctx.lineWidth = 5; + ctx.fillText(msg.author.tag, 475, 175); + ctx.strokeText(msg.author.tag, 475, 175); + + ctx.font = '55px Ketchum'; + ctx.fillStyle = '#fff'; + ctx.fillText(msg.guild.name, 915, 435); + + ctx.font = '40px Ketchum'; + ctx.fillStyle = '#fff'; + ctx.fillText(msg.guild.memberCount + ' members', 100, 70); + + ctx.globalAlpha = 1; + ctx.beginPath(); + ctx.arc(208, 267, 166, 0, 2 * Math.PI, true); + ctx.closePath(); + ctx.clip(); + ctx.drawImage(avatar, 43, 101, 329, 331); + return msg.channel.send({ + files: [{ + attachment: canvas.toBuffer(), + name: 'leaveCard.png' + } + ] + }); +}; + +exports.conf = { + aliases: [], + guildOnly: true, +}; + +exports.help = { + name: 'test2', + description: 'Introduces you to the PokeWorld server!', +}; diff --git a/commands/Owners Only/triggeregg.js b/commands/Owners Only/triggeregg.js new file mode 100644 index 0000000..472afd9 --- /dev/null +++ b/commands/Owners Only/triggeregg.js @@ -0,0 +1,39 @@ +/** ************************************** + * + * TriggerEgg: Plugin for PokeBot that manages community events. + * Copyright (C) 2018 TheEdge, jtsshieh, Alee + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * *************************************/ + +exports.run = async (bot, msg, args) => { + if (!['242775871059001344', '247221105515823104', '236279900728721409'].includes(msg.author.id)) { + msg.reply('Nope! You need the person who created this bot to use this command.'); + } + else { + msg.guild.channels.find('name', 'pokeegghunt').send(':egg: **An egg is available!** *Someone needs to battle for it though...*'); + } + }; + + exports.conf = { + aliases: [], + guildOnly: true, + }; + + exports.help = { + name: 'triggeregg', + description: 'Sends an egg out for players to collect', + }; +
\ No newline at end of file diff --git a/commands/Pokemon/claim.js b/commands/Pokemon/claim.js index b0b6f2f..94e0064 100644 --- a/commands/Pokemon/claim.js +++ b/commands/Pokemon/claim.js @@ -39,7 +39,8 @@ exports.run = async (bot, msg) => { const owner = msg.channel.topic.slice(15).substring(0, 18); if (msg.guild.members.find('id', owner).roles.find('name', team)) return msg.reply('Don\'t try battling your own team. They won\'t like you.'); msg.channel.send('<@' + owner + '>, come here as ' + msg.member.displayName + ' wants to battle you.'); - bot.on('message', async mess => { + const func = async mess => { + if (mess.channel != msg.channel) return; let field = mess.embeds[0]; if (!field) return; field = field.description; @@ -52,7 +53,7 @@ exports.run = async (bot, msg) => { if (user != undefined) { if (user.id == owner) { await msg.channel.send('The owner has not been defeated!'); - bot.removeListener('message', this); + bot.removeListener('message', func); } if (user.id == msg.author.id) { await msg.channel.send('The owner has been defeated! Transfaring gym!'); @@ -61,11 +62,12 @@ exports.run = async (bot, msg) => { if (msg.member.roles.find('name', 'Rocket')) recipientTeam = 'Rocket'; if (msg.member.roles.find('name', 'Magma')) recipientTeam = 'Magma'; await msg.channel.setTopic('Current Owner: ' + msg.member.id + '/' + msg.author.tag + '/' + recipientTeam); - bot.removeListener('message', this); + bot.removeListener('message', func); } } } - }); + }; + bot.on('message', func); } }; |
