mirror of
https://github.com/toast-ts/Daggerbot-TS.git
synced 2024-12-25 23:15:38 -05:00
little progress, yay automod now operational
This commit is contained in:
parent
3e94afb222
commit
8a90bb119b
64
src/Daggerbot.config.json
Normal file
64
src/Daggerbot.config.json
Normal file
@ -0,0 +1,64 @@
|
||||
{
|
||||
"embedColor": "#0052cf",
|
||||
"embedColorGreen": "#57f287",
|
||||
"embedColorYellow": "#ffea00",
|
||||
"embedColorRed": "#e62c3b",
|
||||
"embedColorBCA": "#ff69b4",
|
||||
"LRSstart": 1661236321433,
|
||||
"botSwitches": {
|
||||
"registerCommands": true,
|
||||
"commands": false,
|
||||
"logs": true,
|
||||
"automod": true,
|
||||
"mpstats": true,
|
||||
"mpstatsDebug": false,
|
||||
"autores": true
|
||||
},
|
||||
"eval": {
|
||||
"allowed": true,
|
||||
"whitelist": [
|
||||
"190407856527376384",
|
||||
"615761944154210305",
|
||||
"593696856165449749",
|
||||
"633345781780185099",
|
||||
"506022868157595648",
|
||||
"215497515934416896",
|
||||
"309373272594579456"
|
||||
]
|
||||
},
|
||||
"mainServer": {
|
||||
"id": "468835415093411861",
|
||||
"staffRoles": [
|
||||
"admin",
|
||||
"dcmod",
|
||||
"mpmanager",
|
||||
"mpmod",
|
||||
"vtcmanager",
|
||||
"vtcstaff",
|
||||
"ytmod"
|
||||
],
|
||||
"roles": {
|
||||
"admin": "468842789053136897",
|
||||
"bottech": "1011341005389307925",
|
||||
"dcmod": "468841295150972929",
|
||||
"mpmanager": "1028735939813585029",
|
||||
"mpmod": "572151330710487041",
|
||||
"vtcmanager": "1028735871370940490",
|
||||
"vtcstaff": "801945627268481046",
|
||||
"ytmod": "734888335851388958",
|
||||
"mphelper": "1034453973412884500",
|
||||
"mpplayer": "798285830669598762",
|
||||
"vtcmember": "802282391652663338"
|
||||
},
|
||||
"channels": {
|
||||
"console": "1011318687065710663",
|
||||
"errors": "1009754872188506192",
|
||||
"thismeanswar": "930588618085502987",
|
||||
"bot_status": "1009753780188884992",
|
||||
"logs": "548032776830582794",
|
||||
"welcome": "621134751897616406",
|
||||
"botcommands": "468888722210029588"
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -428,7 +428,7 @@ class userLevels extends Database {
|
||||
}
|
||||
} else if (data.messages >= this.algorithm(data.level+1)){// If user's message count meets/exceeds message requirement for next level...
|
||||
this._content[userid].level++;// Level them up.
|
||||
(this.client.channels.resolve(this.client.config.mainServer.channels.thismeanswar) as Discord.TextChannel).send({content: `<@${userid}> has reached level **${data.level}**. GG!`})
|
||||
(this.client.channels.resolve(this.client.config.mainServer.channels.thismeanswar) as Discord.TextChannel).send({content: `<@${userid}> has reached level **${data.level}**. GG!`, allowedMentions: {parse: ['users']}})
|
||||
}
|
||||
} else {// If user doesn't exist on file, create an object for it.
|
||||
this._content[userid] = {messages: 1, level: 0};
|
||||
|
@ -12,7 +12,7 @@ export default {
|
||||
//if (member && adminPerm) return interaction.reply('You cannot bonk an admin!')
|
||||
if (member) {
|
||||
const embed = new client.embed().setColor(client.config.embedColor)
|
||||
.setDescription(`> <@${member.id}> has been bonked!\n${reason?.length == null ? '' : `> Reason: ${reason}`}`)
|
||||
.setDescription(`> <@${member.id}> has been bonked!\n${reason?.length == null ? '' : `> Reason: **${reason}**`}`)
|
||||
.setImage('https://media.tenor.com/7tRddlNUNNcAAAAd/hammer-on-head-minions.gif')
|
||||
.setFooter({text: `Bonk count for ${member.tag}: ${await client.bonkCount.getUser(member.id).toLocaleString('en-US')}`})
|
||||
interaction.reply({embeds: [embed]})
|
||||
|
@ -3,7 +3,7 @@ import { TClient } from 'src/client';
|
||||
import { Punishment } from "src/typings/interfaces";
|
||||
export default {
|
||||
async run(client: TClient, interaction: Discord.ChatInputCommandInteraction<'cached'>){
|
||||
if (!interaction.member.roles.cache.has(client.config.mainServer.roles.dcmod)) return client.youNeedRole(interaction, 'dcmod')
|
||||
if (!client.isStaff(interaction.member)) return client.youNeedRole(interaction, 'dcmod');
|
||||
const Subb = interaction.options.getSubcommand();
|
||||
const caseId = interaction.options.getInteger('id');
|
||||
if (Subb == 'update'){
|
||||
|
@ -27,11 +27,11 @@ async function MPdata(client:TClient, interaction:Discord.ChatInputCommandIntera
|
||||
return FSserver
|
||||
}
|
||||
|
||||
export default {
|
||||
export default { //468835769092669461
|
||||
async run(client: TClient, interaction: Discord.ChatInputCommandInteraction<'cached'>){
|
||||
if (interaction.channelId == '468835769092669461' && !client.isStaff(interaction.member) && ['status', 'players'].includes(interaction.options.getSubcommand())) {
|
||||
if (interaction.channelId == '904192878140608563' && !client.isStaff(interaction.member) && ['status', 'players'].includes(interaction.options.getSubcommand())) {
|
||||
interaction.reply(`Please use <#739084625862852715> for \`/mp status/players\` commands to prevent clutter in this channel.`).then((msg)=>{
|
||||
setTimeout(()=>{interaction.deleteReply()}, 500)
|
||||
setTimeout(()=>{interaction.deleteReply()}, 5000)
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
File diff suppressed because one or more lines are too long
@ -1,22 +1,22 @@
|
||||
{
|
||||
"190407856527376384": {
|
||||
"messages": 53026,
|
||||
"messages": 53027,
|
||||
"level": 59
|
||||
},
|
||||
"593696856165449749": {
|
||||
"messages": 51467,
|
||||
"messages": 51469,
|
||||
"level": 58
|
||||
},
|
||||
"141304507249197057": {
|
||||
"messages": 67632,
|
||||
"messages": 67635,
|
||||
"level": 67
|
||||
},
|
||||
"533707949831487488": {
|
||||
"messages": 57042,
|
||||
"messages": 57043,
|
||||
"level": 61
|
||||
},
|
||||
"532662366354276352": {
|
||||
"messages": 33785,
|
||||
"messages": 33790,
|
||||
"level": 47
|
||||
},
|
||||
"824043915539513406": {
|
||||
@ -24,7 +24,7 @@
|
||||
"level": 35
|
||||
},
|
||||
"178941218510602240": {
|
||||
"messages": 6396,
|
||||
"messages": 6399,
|
||||
"level": 20
|
||||
},
|
||||
"215497515934416896": {
|
||||
@ -32,15 +32,15 @@
|
||||
"level": 46
|
||||
},
|
||||
"301350210926280704": {
|
||||
"messages": 14343,
|
||||
"messages": 14346,
|
||||
"level": 30
|
||||
},
|
||||
"695323013813633076": {
|
||||
"messages": 14092,
|
||||
"messages": 14095,
|
||||
"level": 30
|
||||
},
|
||||
"389237487094071337": {
|
||||
"messages": 12256,
|
||||
"messages": 12257,
|
||||
"level": 28
|
||||
},
|
||||
"716355511552966737": {
|
||||
@ -76,7 +76,7 @@
|
||||
"level": 18
|
||||
},
|
||||
"468837263577579524": {
|
||||
"messages": 7696,
|
||||
"messages": 7698,
|
||||
"level": 22
|
||||
},
|
||||
"734703851558535188": {
|
||||
@ -148,7 +148,7 @@
|
||||
"level": 0
|
||||
},
|
||||
"169891949464125441": {
|
||||
"messages": 541,
|
||||
"messages": 542,
|
||||
"level": 6
|
||||
},
|
||||
"718453763932946432": {
|
||||
@ -228,7 +228,7 @@
|
||||
"level": 2
|
||||
},
|
||||
"645342896312156181": {
|
||||
"messages": 696,
|
||||
"messages": 699,
|
||||
"level": 6
|
||||
},
|
||||
"488505753133645826": {
|
||||
@ -400,7 +400,7 @@
|
||||
"level": 0
|
||||
},
|
||||
"903147621961588757": {
|
||||
"messages": 15,
|
||||
"messages": 16,
|
||||
"level": 1
|
||||
},
|
||||
"386627658773168137": {
|
||||
@ -528,7 +528,7 @@
|
||||
"level": 0
|
||||
},
|
||||
"818595993121062974": {
|
||||
"messages": 48,
|
||||
"messages": 49,
|
||||
"level": 1
|
||||
},
|
||||
"273755695680192513": {
|
||||
@ -1340,7 +1340,7 @@
|
||||
"level": 0
|
||||
},
|
||||
"98464148379148288": {
|
||||
"messages": 1507,
|
||||
"messages": 1510,
|
||||
"level": 10
|
||||
},
|
||||
"1025723411680460840": {
|
||||
@ -1656,7 +1656,7 @@
|
||||
"level": 0
|
||||
},
|
||||
"937750032344571934": {
|
||||
"messages": 103,
|
||||
"messages": 105,
|
||||
"level": 2
|
||||
},
|
||||
"873149038709571594": {
|
||||
@ -1840,7 +1840,7 @@
|
||||
"level": 0
|
||||
},
|
||||
"682165767109738507": {
|
||||
"messages": 106,
|
||||
"messages": 107,
|
||||
"level": 2
|
||||
},
|
||||
"127840266701766656": {
|
||||
@ -2488,7 +2488,7 @@
|
||||
"level": 0
|
||||
},
|
||||
"284482432684785664": {
|
||||
"messages": 3,
|
||||
"messages": 4,
|
||||
"level": 0
|
||||
},
|
||||
"727948378067173407": {
|
||||
@ -2696,11 +2696,11 @@
|
||||
"level": 0
|
||||
},
|
||||
"562257805927776286": {
|
||||
"messages": 8,
|
||||
"messages": 12,
|
||||
"level": 0
|
||||
},
|
||||
"995622955897864272": {
|
||||
"messages": 96,
|
||||
"messages": 98,
|
||||
"level": 2
|
||||
},
|
||||
"153323923633733632": {
|
||||
@ -2772,11 +2772,23 @@
|
||||
"level": 0
|
||||
},
|
||||
"248226483967885312": {
|
||||
"messages": 3,
|
||||
"messages": 4,
|
||||
"level": 0
|
||||
},
|
||||
"985545842368864326": {
|
||||
"messages": 2,
|
||||
"level": 0
|
||||
},
|
||||
"760459018539106315": {
|
||||
"messages": 1,
|
||||
"level": 0
|
||||
},
|
||||
"169553969025253376": {
|
||||
"messages": 2,
|
||||
"level": 0
|
||||
},
|
||||
"288711706535002125": {
|
||||
"messages": 1,
|
||||
"level": 0
|
||||
}
|
||||
}
|
@ -3,7 +3,6 @@ import { TClient } from '../client';
|
||||
export default {
|
||||
name: 'messageCreate',
|
||||
execute: async(client:TClient, message:Discord.Message)=>{
|
||||
if (!client.config.botSwitches.commands && !client.config.eval.whitelist.includes(message.author.id)) return
|
||||
if (message.author.bot) return;
|
||||
if (message.channel.type === ChannelType.DM) return;
|
||||
const msgarr = message.content.toLowerCase().split(' ');
|
||||
@ -17,10 +16,10 @@ export default {
|
||||
// Arrary of channel ids for automod to be disabled in
|
||||
]
|
||||
|
||||
if (client.bannedWords._content.some((x: any)=>msgarr.includes(x)) && !message.member.roles.cache.has(client.config.mainServer.roles.dcmod) && message.guildId == client.config.mainServer.id && !Whitelist.includes(message.channelId) && client.config.botSwitches.automod){
|
||||
if (client.bannedWords._content.some((x)=>msgarr.includes(x)) && !message.member.roles.cache.has(client.config.mainServer.roles.dcmod) && message.guildId == client.config.mainServer.id && !Whitelist.includes(message.channelId) && client.config.botSwitches.automod){
|
||||
automodded = true;
|
||||
message.delete();
|
||||
message.channel.send('That word is banned here.').then((x: any)=>setTimeout(()=>x.delete(), 5000));
|
||||
message.channel.send('That word is banned here.').then((x)=>setTimeout(()=>x.delete(), 5000));
|
||||
if (client.repeatedMessages[message.author.id]){
|
||||
// add this message to the list
|
||||
client.repeatedMessages[message.author.id].set(message.createdTimestamp, {cont: 0, ch: message.channelId});
|
||||
@ -33,10 +32,10 @@ export default {
|
||||
const threshold = 30000;
|
||||
|
||||
// message mustve been sent after (now - threshold), so purge those that were sent earlier
|
||||
client.repeatedMessages[message.author.id] = client.repeatedMessages[message.author.id].filter((x: any, i: any)=>i >= Date.now() - threshold)
|
||||
client.repeatedMessages[message.author.id] = client.repeatedMessages[message.author.id].filter((x, i)=>i >= Date.now() - threshold)
|
||||
|
||||
// a spammed message is one that has been sent atleast 4 times in the last threshold milliseconds
|
||||
const spammedMessage = client.repeatedMessages[message.author.id]?.find((x:any)=>{
|
||||
const spammedMessage = client.repeatedMessages[message.author.id]?.find((x)=>{
|
||||
return client.repeatedMessages[message.author.id].size >= 4;
|
||||
});
|
||||
|
||||
@ -66,14 +65,27 @@ export default {
|
||||
const bannedChannels = [
|
||||
'516344221452599306', // #mp-moderators
|
||||
'742324777934520350', // #discord-moderators
|
||||
'904192878140608563'
|
||||
]
|
||||
if (message.content.toLowerCase().includes('tenor.com/view') || message.content.toLowerCase().includes('giphy.com/gifs/') || message.content.toLowerCase().includes('giphy.com/media/') && bannedChannels.includes(message.channelId)) {
|
||||
const gifURL = [
|
||||
'tenor.com/view',
|
||||
'giphy.com/gifs',
|
||||
'giphy.com/media'
|
||||
]
|
||||
if (gifURL.some(e=>message.content.toLowerCase().includes(e)) && bannedChannels.includes(message.channelId)) {
|
||||
message.reply('Gifs are not allowed in this channel.').then((msg: any)=>message.delete())
|
||||
}
|
||||
|
||||
// Autoresponse:tm:
|
||||
if (client.config.botSwitches.autores && !automodded) {
|
||||
const MorningArray = ['good morning', 'morning all', 'morning everyone', 'morning lads']
|
||||
const AfternoonArray = ['good afternoon', 'afternoon all']
|
||||
const EveningArray = ['good evening', 'evening all', 'evening everyone']
|
||||
const NightArray = ['night all', 'night everyone']
|
||||
const PasswordArray = ['whats the password', 'what\'s the password', 'password pls']
|
||||
const cantRead = ['i cant read', 'i can\'t read', 'cant read', 'can\'t read']
|
||||
const NawdicBrokeIt = ['break', 'broke', 'broken']
|
||||
const deadChat = ['dead chat', 'chat is dead', 'dead server']
|
||||
|
||||
if (message.mentions.members.has('309373272594579456') && !client.isStaff(message.member) && message.type != 19){
|
||||
message.reply('Please don\'t tag Daggerwin, read rule 14 in <#468846117405196289>')
|
||||
}
|
||||
@ -81,34 +93,40 @@ export default {
|
||||
message.reply('Please don\'t tag Monster unless it\'s important!')
|
||||
}
|
||||
if (message.content.toLowerCase().startsWith(`*mp players`) || message.content.toLowerCase().startsWith(`*mp status`)){
|
||||
message.reply('Prefix-based MP commands has been moved to `/mp players` and `/mp status`')
|
||||
message.reply('Prefix-based MP commands has moved to `/mp players` and `/mp status`')
|
||||
}
|
||||
if (message.content.toLowerCase().includes('whats the password') || message.content.toLowerCase().includes('what\'s the password') || message.content.toLowerCase().includes('password pls')){
|
||||
if (message.content.toLowerCase().startsWith(`*lrs`) || message.content.toLowerCase().startsWith(`*rank`)){
|
||||
message.reply('Prefix-based LRS command has moved to `/rank view`')
|
||||
}
|
||||
if (message.content.toLowerCase().startsWith(`*mp series`) || message.content.toLowerCase().startsWith(`*mp info`)){
|
||||
message.reply('Prefix-based info commands has moved to `/faq`')
|
||||
}
|
||||
if (PasswordArray.some(e=>message.content.toLowerCase().includes(e))){
|
||||
message.reply('Password and other details can be found in <#543494084363288637>')
|
||||
}
|
||||
if (message.content.toLowerCase().includes('i cant read') || message.content.toLowerCase().includes('i can\'t read')){
|
||||
if (cantRead.some(e=>message.content.toLowerCase().includes(e))){
|
||||
message.reply('https://tenor.com/view/aristocats-george-pen-cap-meticulous-gif-5330931')
|
||||
}
|
||||
if (message.content.toLowerCase().includes('is daggerbot working')){
|
||||
message.reply('https://tenor.com/view/i-still-feel-alive-living-existing-active-singing-gif-14630579')
|
||||
}
|
||||
if (message.content.toLowerCase().includes('dead chat') || message.content.toLowerCase().includes('chat is dead')){
|
||||
if (deadChat.some(e=>message.content.toLowerCase().includes(e))){
|
||||
message.reply('https://cdn.discordapp.com/attachments/925589318276382720/1011333656167579849/F57G5ZS.png')
|
||||
}
|
||||
if (message.content.toLowerCase().includes('nawdic') && (message.content.toLowerCase().includes('break') || message.content.toLowerCase().includes('broke') || message.content.toLowerCase().includes('broken'))){
|
||||
if (message.content.toLowerCase().includes('nawdic') && (NawdicBrokeIt.some(e=>message.content.toLowerCase().includes(e)))){
|
||||
const embed = new client.embed().setTitle('*Nawdic has done an oopsie*').setImage('https://c.tenor.com/JSj9ie_MD9kAAAAC/kopfsch%C3%BCtteln-an-kopf-fassen-oh-no.gif').setColor(client.config.embedColor)
|
||||
message.reply({embeds: [embed]})
|
||||
}
|
||||
if (message.content.toLowerCase().startsWith('good morning') || message.content.toLowerCase().startsWith('morning all') || message.content.toLowerCase().startsWith('morning everyone')){
|
||||
if (MorningArray.some(e=>message.content.toLowerCase().startsWith(e))){
|
||||
message.reply(`Good morning **${message.member.displayName}**!`)
|
||||
}
|
||||
if (message.content.toLowerCase().startsWith('good afternoon') || message.content.toLowerCase().startsWith('afternoon all')){
|
||||
if (AfternoonArray.some(e=>message.content.toLowerCase().startsWith(e))){
|
||||
message.reply(`Afternoon **${message.member.displayName}**!`)
|
||||
}
|
||||
if (message.content.toLowerCase().startsWith('good evening') || message.content.toLowerCase().startsWith('evening all')){
|
||||
if (EveningArray.some(e=>message.content.toLowerCase().startsWith(e))){
|
||||
message.reply(`Good evening **${message.member.displayName}**!`)
|
||||
}
|
||||
if (message.content.toLowerCase().startsWith('night all') || message.content.toLowerCase().startsWith('night everyone')){
|
||||
if (NightArray.some(e=>message.content.toLowerCase().startsWith(e))){
|
||||
message.reply(`Night **${message.member.displayName}**`)
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user