diff --git a/events/message.js b/events/message.js index d03341c..69eb288 100644 --- a/events/message.js +++ b/events/message.js @@ -65,6 +65,8 @@ module.exports = async (client, message) => { }); } + if (message.guild && message.channel.id === "815709333107114043") {return require('../util/newpartner.js')(message, client);} + try { diff --git a/models/partner.js b/models/partner.js new file mode 100644 index 0000000..27e3676 --- /dev/null +++ b/models/partner.js @@ -0,0 +1,9 @@ +const mongoose = require('mongoose'); + +const Partners = new mongoose.Schema({ + gid: {unique: true, type: String}, + partners: {type: Object, default: {}}, + total: {type: Number, default: 0} +}); + +module.exports = mongoose.model('partners', Partners); \ No newline at end of file diff --git a/util/newpartner.js b/util/newpartner.js new file mode 100644 index 0000000..1812b56 --- /dev/null +++ b/util/newpartner.js @@ -0,0 +1,21 @@ +const Discord = require("discord.js"); + +const Partners = require('../models/partner'); + +module.exports = async (message, client) => { + let tp = await Partners.findOne({gid: message.guild.id}) || new Partners({gid: message.guild.id}); + if (!Object.keys(tp.partners).includes(message.author.id)) {tp.partners[message.author.id] = 0;} + tp.partners[message.author.id] += 1; + tp.total += 1; + tp.markModified(`partners.${message.author.id}`); + tp.save(); + return message.channel.send(new Discord.MessageEmbed() + .setTitle(`New Partner #${tp.total}!`) + .setThumbnail(message.guild.iconURL({size: 1024, dynamic: true})) + .setDescription(`PM: ${message.member.displayName} || <@${message.member.id}>\nTheir partner count: ${tp.partners[message.author.id]}`) + .setImage("https://cdn.discordapp.com/attachments/821171356820963328/847607981247561758/20210504_174641.gif") + .setColor('52c7bb') + .setFooter("Luno", client.user.avatarURL()) + .setTimestamp() + ); +}; \ No newline at end of file