Merge branch 'master' of https://gitlab.com/loicbersier/discordbot
commit
7a1c55e935
@ -0,0 +1,62 @@
|
|||||||
|
const { Command } = require('discord-akairo');
|
||||||
|
const fs = require('fs');
|
||||||
|
const reload = require('auto-reload');
|
||||||
|
|
||||||
|
class fakebotCommand extends Command {
|
||||||
|
constructor() {
|
||||||
|
super('fakebot', {
|
||||||
|
aliases: ['fakebot', 'fakeuser', 'fakemember'],
|
||||||
|
category: 'fun',
|
||||||
|
clientPermissions: ['MANAGE_WEBHOOKS'],
|
||||||
|
args: [
|
||||||
|
{
|
||||||
|
id: 'member',
|
||||||
|
type: 'user',
|
||||||
|
prompt: {
|
||||||
|
start: 'Who should i fake?',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 'message',
|
||||||
|
type: 'string',
|
||||||
|
prompt: {
|
||||||
|
start: 'What message should i send?',
|
||||||
|
},
|
||||||
|
match: 'rest',
|
||||||
|
}
|
||||||
|
],
|
||||||
|
description: {
|
||||||
|
content: 'Fake a bot/user with webhook',
|
||||||
|
usage: '',
|
||||||
|
examples: ['']
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
async exec(message, args) {
|
||||||
|
if (!fs.existsSync(`./webhook/${message.guild.id}_${message.channel.id}.json`)) {
|
||||||
|
message.channel.createWebhook('fakebot')
|
||||||
|
.then(webhook => {
|
||||||
|
fs.writeFile(`./webhook/${message.guild.id}_${message.channel.id}.json`, `{"id": "${webhook.id}", "token": "${webhook.token}", "channel": "${message.channel.id}"}`, function (err) {
|
||||||
|
if (err) {
|
||||||
|
console.log(err);
|
||||||
|
}
|
||||||
|
return message.channel.send('Please run me again to send the message!');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
let webhook = reload(`../../webhook/${message.guild.id}_${message.channel.id}.json`);
|
||||||
|
this.client.fetchWebhook(webhook.id, webhook.token)
|
||||||
|
.then(webhook => {
|
||||||
|
webhook.edit({
|
||||||
|
name: args.member.username,
|
||||||
|
avatar: args.member.displayAvatarURL()
|
||||||
|
});
|
||||||
|
|
||||||
|
message.delete();
|
||||||
|
return webhook.send(args.message);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
module.exports = fakebotCommand;
|
@ -0,0 +1,70 @@
|
|||||||
|
const { Command } = require('discord-akairo');
|
||||||
|
const fs = require('fs');
|
||||||
|
const rand = require('../../rand.js');
|
||||||
|
|
||||||
|
class fakejoinCommand extends Command {
|
||||||
|
constructor() {
|
||||||
|
super('fakejoin', {
|
||||||
|
aliases: ['fakejoin'],
|
||||||
|
category: 'admin',
|
||||||
|
channelRestriction: 'guild',
|
||||||
|
args: [
|
||||||
|
{
|
||||||
|
id: 'member',
|
||||||
|
type: 'string',
|
||||||
|
match: 'rest'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
description: {
|
||||||
|
content: 'Fake join message',
|
||||||
|
usage: '[text]',
|
||||||
|
examples: ['Supositware']
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
async exec(message, args) {
|
||||||
|
if (fs.existsSync(`./welcome/${message.guild.id}.json`)) {
|
||||||
|
let member;
|
||||||
|
if (args.member) {
|
||||||
|
member = args.member;
|
||||||
|
} else {
|
||||||
|
member = message.author.username;
|
||||||
|
}
|
||||||
|
|
||||||
|
let welcome = require(`../../welcome/${message.guild.id}.json`);
|
||||||
|
|
||||||
|
const channel = this.client.channels.get(welcome['channel']);
|
||||||
|
|
||||||
|
let byeMessage = welcome['message'];
|
||||||
|
|
||||||
|
byeMessage = byeMessage.replace(/\[member\]/, member);
|
||||||
|
byeMessage = byeMessage.replace(/\[server\]/, message.guild.name);
|
||||||
|
|
||||||
|
let attach;
|
||||||
|
if (byeMessage.includes('[attach:')) {
|
||||||
|
attach = byeMessage.split(/(\[attach:.*?])/);
|
||||||
|
for (let i = 0, l = attach.length; i < l; i++) {
|
||||||
|
if (attach[i].includes('[attach:')) {
|
||||||
|
attach = attach[i].replace('[attach:', '').slice(0, -1);
|
||||||
|
i = attach.length;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
byeMessage = byeMessage.replace(/(\[attach:.*?])/, '');
|
||||||
|
}
|
||||||
|
|
||||||
|
byeMessage = rand.random(byeMessage);
|
||||||
|
|
||||||
|
message.delete();
|
||||||
|
if (attach) {
|
||||||
|
return channel.send(byeMessage, {files: [attach]});
|
||||||
|
} else {
|
||||||
|
return channel.send(byeMessage);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return message.channel.send('The server need a join message first!');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = fakejoinCommand;
|
Loading…
Reference in New Issue