summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
author8cy <[email protected]>2020-07-24 06:33:39 -0700
committer8cy <[email protected]>2020-07-24 06:33:39 -0700
commit35622cb6d6a7ab969d973aacf8c786707fb322be (patch)
tree5b04d53aaf1798fdb70a48dd4e307a509f10e0c1 /server
parentstage (diff)
downloaddep-core-35622cb6d6a7ab969d973aacf8c786707fb322be.tar.xz
dep-core-35622cb6d6a7ab969d973aacf8c786707fb322be.zip
big stuffs here
Diffstat (limited to 'server')
-rw-r--r--server/src/Config.ts8
-rw-r--r--server/src/DevConfig.ts (renamed from server/src/LiveConfig.ts)8
-rw-r--r--server/src/commands/mod/Ban.ts2
-rw-r--r--server/src/commands/mod/Kick.ts2
-rw-r--r--server/src/commands/mod/Prune.ts17
-rw-r--r--server/src/commands/mod/Slowmode.ts12
-rw-r--r--server/src/database/index.ts2
-rw-r--r--server/src/json/guildMemberAdd.json8
-rw-r--r--server/src/json/guildMemberRemove.json10
-rw-r--r--server/src/listeners/client/guildMemberAdd.ts26
-rw-r--r--server/src/listeners/client/guildMemberRemove.ts27
-rw-r--r--server/src/listeners/client/message.ts49
12 files changed, 153 insertions, 18 deletions
diff --git a/server/src/Config.ts b/server/src/Config.ts
index 407cfc7..107f357 100644
--- a/server/src/Config.ts
+++ b/server/src/Config.ts
@@ -1,9 +1,9 @@
-export const token: string = "NzEyMDg4MzY5MjA2OTE5MjY5.XsMd-Q.zuhGdb-S-BSdE1Gqyynp-xDutsg";
-export const prefix: string = "uwu$";
+export const token: string = "Njk5NDczMjYzOTk4MjcxNDg5.XpU5PQ.zDEhRT5HnfO0m4dyG-N86Dd1BVU";
+export const prefix: string = "uwu!";
export const owners: string[] = ['217348698294714370'];
export const authorization: string = "rex-1337";
-export const clientID: string = "712088369206919269";
-export const clientSecret: string = "qpj1nsOo7HWVyNh6lY8Z8I8IvtV0bPiM";
+export const clientID: string = "699473263998271489";
+export const clientSecret: string = "2e1kWuRhXJBYorWpG8FBKIcClrdO_oeh";
export const redirectUri: string = "http://localhost:3000";
export const callbackUrl: string = "http://localhost:8088/oauth/callback"; // 8080
export const colour: string = "ecb1d1";
diff --git a/server/src/LiveConfig.ts b/server/src/DevConfig.ts
index 107f357..407cfc7 100644
--- a/server/src/LiveConfig.ts
+++ b/server/src/DevConfig.ts
@@ -1,9 +1,9 @@
-export const token: string = "Njk5NDczMjYzOTk4MjcxNDg5.XpU5PQ.zDEhRT5HnfO0m4dyG-N86Dd1BVU";
-export const prefix: string = "uwu!";
+export const token: string = "NzEyMDg4MzY5MjA2OTE5MjY5.XsMd-Q.zuhGdb-S-BSdE1Gqyynp-xDutsg";
+export const prefix: string = "uwu$";
export const owners: string[] = ['217348698294714370'];
export const authorization: string = "rex-1337";
-export const clientID: string = "699473263998271489";
-export const clientSecret: string = "2e1kWuRhXJBYorWpG8FBKIcClrdO_oeh";
+export const clientID: string = "712088369206919269";
+export const clientSecret: string = "qpj1nsOo7HWVyNh6lY8Z8I8IvtV0bPiM";
export const redirectUri: string = "http://localhost:3000";
export const callbackUrl: string = "http://localhost:8088/oauth/callback"; // 8080
export const colour: string = "ecb1d1";
diff --git a/server/src/commands/mod/Ban.ts b/server/src/commands/mod/Ban.ts
index d91731e..3e81bfb 100644
--- a/server/src/commands/mod/Ban.ts
+++ b/server/src/commands/mod/Ban.ts
@@ -24,7 +24,7 @@ export default class BanMod extends Command {
type: 'string',
prompt: {
start: 'Which user would you like to ban?',
- retry: 'That doesn\' seem to be a user, please try again!'
+ retry: 'That doesn\'t seem to be a user, please try again!'
}
},
{
diff --git a/server/src/commands/mod/Kick.ts b/server/src/commands/mod/Kick.ts
index 3295c2a..da1a91f 100644
--- a/server/src/commands/mod/Kick.ts
+++ b/server/src/commands/mod/Kick.ts
@@ -24,7 +24,7 @@ export default class KickMod extends Command {
type: 'string',
prompt: {
start: 'Which user would you like to kick?',
- retry: 'That doesn\' seem to be a user, please try again!'
+ retry: 'That doesn\'t seem to be a user, please try again!'
}
},
{
diff --git a/server/src/commands/mod/Prune.ts b/server/src/commands/mod/Prune.ts
index bf56846..55307bc 100644
--- a/server/src/commands/mod/Prune.ts
+++ b/server/src/commands/mod/Prune.ts
@@ -31,9 +31,20 @@ export default class PruneMod extends Command {
}
public exec(msg: Message, { amount }): Promise<Message> {
- if (amount <= 100) amount = 99;
+ msg.delete();
+ let limit = false;
+ if (amount >= 100){
+ amount = 99;
+ limit = true;
+ }
(msg.channel as TextChannel).bulkDelete(amount, true);
- return msg.reply('Due to Discord API limitations, the amount of messages you have specified has been rounded down to **99**. (This message will automatically be deleted in 3 seconds.)')
- .then(m => m.delete({ timeout: 3000 }));
+ if (limit) {
+ msg.reply('Due to Discord API limitations, the amount of messages you have specified has been rounded down to **99**. (This message will automatically be deleted in 3 seconds.)')
+ .then(m => m.delete({ timeout: 3000 }));
+ }
+ if (amount > 1)
+ return msg.reply(`**${amount}** messages have been successfully pruned!`);
+ else
+ return msg.reply(`**${amount}** message has been successfully pruned!`);
}
} \ No newline at end of file
diff --git a/server/src/commands/mod/Slowmode.ts b/server/src/commands/mod/Slowmode.ts
index 1d626ec..3aec2bd 100644
--- a/server/src/commands/mod/Slowmode.ts
+++ b/server/src/commands/mod/Slowmode.ts
@@ -1,5 +1,6 @@
import { Command } from 'discord-akairo';
import { Message } from 'discord.js';
+import { TextChannel } from 'discord.js';
export default class SlowmodeMod extends Command {
public constructor() {
@@ -39,15 +40,18 @@ export default class SlowmodeMod extends Command {
public exec(msg: Message, { amount, realtime }): Promise<Message> {
try {
- if (amount > 120) return msg.channel.send('Due to Discord API limitations, slow mode can only be a max of **120** seconds or less!');
-
- // msg.channel.setRateLimitPerUser(amount);
+ if (amount > 120) {
+ amount = 120;
+ msg.channel.send('Due to Discord API limitations, slow mode can only be a max of **120** seconds or less! Your specified amount has been rounded down to **120** seconds. (This message will automatically be deleted in 3 seconds.)')
+ .then(m => m.delete({ timeout: 3000 }));
+ }
+ (msg.channel as TextChannel).setRateLimitPerUser(amount);
if (realtime) {
let time = 60000 * realtime;
msg.channel.send(`Slowmode has now been set to ${amount} seconds and will end in ${realtime} minutes!`);
setTimeout(() => {
- // msg.channel.setRateLimitPerUser(0);
+ (msg.channel as TextChannel).setRateLimitPerUser(0);
return msg.channel.send('Slowmode has now been disabled!');
}, time);
} else {
diff --git a/server/src/database/index.ts b/server/src/database/index.ts
index dc10553..3e56d53 100644
--- a/server/src/database/index.ts
+++ b/server/src/database/index.ts
@@ -2,4 +2,4 @@ import ReactionGuildModel from './models/ReactionGuildModel';
import ReactionModel from './models/ReactionModel';
import SettingsProvider from './structures/SettingsProvider';
-export { SettingsProvider }; \ No newline at end of file
+export { SettingsProvider, ReactionGuildModel, ReactionModel }; \ No newline at end of file
diff --git a/server/src/json/guildMemberAdd.json b/server/src/json/guildMemberAdd.json
new file mode 100644
index 0000000..0cab300
--- /dev/null
+++ b/server/src/json/guildMemberAdd.json
@@ -0,0 +1,8 @@
+[
+ "showed up!",
+ "finally showed up",
+ "has entered the swamp.",
+ "used warpseed to get here!",
+ "has entered the Gulag.",
+ "has come to end Dio."
+] \ No newline at end of file
diff --git a/server/src/json/guildMemberRemove.json b/server/src/json/guildMemberRemove.json
new file mode 100644
index 0000000..36e628e
--- /dev/null
+++ b/server/src/json/guildMemberRemove.json
@@ -0,0 +1,10 @@
+[
+ "used warpspeed.",
+ "was Thanos snapped out of existence!",
+ "has left the server.",
+ "fled the scene.",
+ "left the swamp.",
+ "was written in the Death Note.",
+ "used instant transmission to escape",
+ "forgot to put their mask on."
+] \ No newline at end of file
diff --git a/server/src/listeners/client/guildMemberAdd.ts b/server/src/listeners/client/guildMemberAdd.ts
new file mode 100644
index 0000000..41f7f50
--- /dev/null
+++ b/server/src/listeners/client/guildMemberAdd.ts
@@ -0,0 +1,26 @@
+import { Listener } from 'discord-akairo';
+import Welcome from '../../database/models/WelcomeModel';
+import { GuildMember } from 'discord.js';
+import wMRResponses from '../../json/guildMemberAdd.json';
+
+export default class GuildMemberAddListener extends Listener {
+ public constructor() {
+ super('guildMemberAdd', {
+ emitter: 'client',
+ event: 'guildMemberAdd',
+ category: 'client'
+ });
+ }
+
+ public exec(member: GuildMember): void {
+ Welcome.findOne({ guildID: member.guild.id }, async (error, g) => {
+ if (error) return this.client.logger.error(`[CLIENT ERROR] ${error}`);
+
+ const leaveMessage = await wMRResponses[Math.floor(Math.random() * wMRResponses.length)];
+ //@ts-ignore
+ if (g) return member.guild.channels.cache.get(g.channelID).send(`${member.user.tag} (<@${member.id}>) ${leaveMessage}`);
+
+ return;
+ });
+ }
+}
diff --git a/server/src/listeners/client/guildMemberRemove.ts b/server/src/listeners/client/guildMemberRemove.ts
new file mode 100644
index 0000000..f7b774e
--- /dev/null
+++ b/server/src/listeners/client/guildMemberRemove.ts
@@ -0,0 +1,27 @@
+import { Listener } from 'discord-akairo';
+import Goodbye from '../../database/models/GoodbyeModel';
+import { GuildMember } from 'discord.js';
+import gMRResponses from '../../json/guildMemberRemove.json';
+
+export default class GuildMemberRemoveListener extends Listener {
+ public constructor() {
+ super('guildMemberRemove', {
+ emitter: 'client',
+ event: 'guildMemberRemove',
+ category: 'client'
+ });
+ }
+
+ public exec(member: GuildMember): void {
+ Goodbye.findOne({ guildID: member.guild.id }, async (error, g) => {
+ if (error) return this.client.logger.error(`[CLIENT ERROR] ${error}`);
+
+ const leaveMessage = await gMRResponses[Math.floor(Math.random() * gMRResponses.length)];
+ //@ts-ignore
+ if (g) return member.guild.channels.cache.get(g.channelID).send(`${member.user.tag} (<@${member.id}>) ${leaveMessage}`)
+ .then(m => { m.react('🇫') });
+
+ return;
+ });
+ }
+}
diff --git a/server/src/listeners/client/message.ts b/server/src/listeners/client/message.ts
new file mode 100644
index 0000000..bcad42c
--- /dev/null
+++ b/server/src/listeners/client/message.ts
@@ -0,0 +1,49 @@
+import { Listener } from 'discord-akairo';
+import { Message } from 'discord.js';
+import { emmaServer } from '../../Config';
+
+export default class MessageListener extends Listener {
+ public constructor() {
+ super('message', {
+ emitter: 'client',
+ event: 'message',
+ category: 'client',
+ });
+ }
+
+ public exec(msg: Message): void {
+ if (msg.mentions.everyone) msg.react('👀');
+
+ const waterVariations = [
+ 'water',
+ 'wader',
+ 'wahter',
+ 'wahder',
+ 'wata',
+ 'wateer'
+ ];
+
+ if (msg.guild.id === emmaServer) {
+ if (waterVariations.includes(msg.content.toLowerCase())) {
+ msg.react('733894420700594187');
+ msg.react('732062891162992720');
+ }
+ }
+
+ const uglyVariations = [
+ 'ugly',
+ 'ugy',
+ 'ugyy',
+ 'uggy',
+ 'ugee',
+ 'uggly',
+ 'uglee'
+ ];
+
+ if (msg.guild.id === emmaServer) {
+ if (uglyVariations.includes(msg.content.toLowerCase())) {
+ msg.react('733301856054280253');
+ }
+ }
+ }
+}