Advertisement
Guest User

Untitled

a guest
May 26th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const Social = require('../../structures/Social.js');
  2.  
  3. const { Canvas } = require('canvas-constructor');
  4.  
  5. const { Attachment } = require('discord.js');
  6. const { get } = require('snekfetch');
  7.  
  8. const imageUrlRegex = /\?size=2048$/g;
  9.  
  10. class Save extends Social {
  11.   constructor(client) {
  12.     super(client, {
  13.       name: 'save'
  14.     });
  15.   }
  16.  
  17.   async run(message, args, level) {
  18.     const msg = await message.channel.send('Creating save.');
  19.     const m = await message.channel.send('▱▱▱▱▱▱▱▱▱▱');
  20.  
  21.     for (let i = 0; i < 11; i++) {  
  22.       await m.edit('▰'.repeat(i) + '▱'.repeat(10 - i));
  23.       while (i === parseInt('11')) {
  24.         await msg.delete();
  25.         await m.delete();
  26.         await message.channel.send(new Attachment(await this.save((message.mentions.users.first() || message.author)), 'save.png'));
  27.       }
  28.     }
  29.     // await message.channel.send(new Attachment(await this.save((message.mentions.users.first() || message.author)), 'save.png'));
  30.   }
  31.  
  32.   async save(member) {
  33.     const { body: avatar } = await get(member.displayAvatarURL.replace(imageUrlRegex, '?size=256'));
  34.     return new Canvas(500, 500)
  35.       .setColor('#808080')
  36.       .createBeveledPath(0, 0, 850, 850, 60)
  37.       .fill()
  38.       .restore()
  39.       .setColor('#23272A')
  40.       .addRect(0, 0, 128, 32)
  41.       .addRect(84, 0, 500, 180)
  42.       .setColor('#2C2F33')
  43.       .addRect(0, 0, 165, 180)
  44.       .addRect(275, 26, 231, 46)
  45.       .addRect(323, 108, 176, 46)
  46.       .setShadowColor('rgba(22, 22, 22, 1)')
  47.       .setShadowOffsetY(5)
  48.       .setShadowBlur(10)
  49.       // .setColor('#A9A9A9')
  50.       // .addCircle(250, 325, 75)
  51.       .restore()
  52.       .addRoundImage(avatar, 210, 300, 75, 75, 36)
  53.       .restore()
  54.       .toBuffer();
  55.   }
  56. }
  57.  
  58. module.exports = Save;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement