dosen't work how i'd like to
This commit is contained in:
parent
f0d66466f5
commit
0fc2db5074
1 changed files with 0 additions and 88 deletions
|
@ -1,88 +0,0 @@
|
||||||
const { Command } = require('discord-akairo');
|
|
||||||
const gm = require('gm');
|
|
||||||
const fetch = require('node-fetch');
|
|
||||||
const fs = require('fs');
|
|
||||||
|
|
||||||
class memeCommand extends Command {
|
|
||||||
constructor() {
|
|
||||||
super('meme', {
|
|
||||||
aliases: ['meme', 'caption'],
|
|
||||||
category: 'general',
|
|
||||||
args: [
|
|
||||||
{
|
|
||||||
id: 'topText',
|
|
||||||
type: 'string',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'bottomText',
|
|
||||||
type: 'string',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'ImageURL',
|
|
||||||
type: 'string',
|
|
||||||
}
|
|
||||||
],
|
|
||||||
description: {
|
|
||||||
content: 'Put Impact font on your image (Use quotes for multiples words, it also support gif)',
|
|
||||||
usage: '[topText] [bottom text] [GIF url (or as attachment)]',
|
|
||||||
examples: ['"hahah look at this" "funny doge" https://cdn.discordapp.com/attachments/586308815868395535/588472173824311306/resize.gif']
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
async exec(message, args) {
|
|
||||||
let Attachment = (message.attachments).array();
|
|
||||||
if (args.ImageURL) {
|
|
||||||
fetch(args.ImageURL)
|
|
||||||
.catch(err => {
|
|
||||||
console.error(err);
|
|
||||||
return message.channel.send('An error has occured, is your link valid?');
|
|
||||||
})
|
|
||||||
.then(res => {
|
|
||||||
const dest = fs.createWriteStream('./img/memeInput.gif');
|
|
||||||
res.body.pipe(dest);
|
|
||||||
dest.on('finish', () => {
|
|
||||||
processGif();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
} else if (Attachment[0]) {
|
|
||||||
fs.writeFile('./img/memeInput.gif', Attachment[0], 'binary', function(err) {
|
|
||||||
if (err) throw err;
|
|
||||||
processGif();
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
return message.channel.send('Please use an image!');
|
|
||||||
}
|
|
||||||
|
|
||||||
function processGif() {
|
|
||||||
gm('./img/memeInput.gif')
|
|
||||||
.stroke('#000000', 0.1)
|
|
||||||
.fill('#ffffff')
|
|
||||||
/*
|
|
||||||
// I have to try to make this work so font can adapt with image
|
|
||||||
.size(function(err, size) {
|
|
||||||
if (err) throw err;
|
|
||||||
if (size.width < 300 ) {
|
|
||||||
console.log('ye');
|
|
||||||
this.pointSize(10);
|
|
||||||
} else {
|
|
||||||
console.log('nah');
|
|
||||||
this.pointSize(50);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
*/
|
|
||||||
.font('/usr/share/fonts/TTF/impact.ttf', 40)
|
|
||||||
.drawText(0, 30, args.topText, 'North')
|
|
||||||
.drawText(0, 10, args.bottomText, 'South')
|
|
||||||
.write('./img/meme.gif', function (err) {
|
|
||||||
if (!err) {
|
|
||||||
message.channel.send({files: ['./img/meme.gif']});
|
|
||||||
} else {
|
|
||||||
console.error(err);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = memeCommand;
|
|
Loading…
Reference in a new issue