This commit is contained in:
Jimi 2022-11-26 15:27:07 +01:00
parent 7e0bd7a983
commit 82056136bf
26 changed files with 1265 additions and 1867 deletions

3
data/botconfig.json Normal file
View File

@ -0,0 +1,3 @@
{
"token":"YOUR_TOKEN_HERE"
}

View File

@ -1,12 +0,0 @@
module.exports = (msc, author) => {
var detections = []
var replies = [`<@545586677117353985> https://cdn.discordapp.com/attachments/823953803409096806/1045772249531162664/image.jpg`,`<@545586677117353985> https://cdn.discordapp.com/attachments/823953803409096806/1045772249531162664/image.jpg`,`https://tenor.com/view/meevin-melvin-hes-coming-321-run-gif-26186363`,`https://cdn.discordapp.com/attachments/1026216717891944478/1045474828313968791/2EC3FC50-419B-42B3-8CB4-7AE9EF84B634.jpeg`,`let me guess, your gay :yourefat:`,`wsg gang`,`wsg`,`bound 2`,`epoc`,`@everone`,`${author} when ssex eurah3 3333333`,`siyl willy`,`silly willy`, `so silly ${author}`,'fuck you 🫵🫵🫵🫵🫵🫵🫵🫵🫵🫵',`${author}, keep yourself safe, NOW!`,`${author} wtf no`,`${author} Yeah suuuuuuure.`,'i have no idea','ayo?\n🤨 📸','https://cdn.discordapp.com/attachments/1009457119159926785/1043622406759137360/kthoyo7e5lp91.png','https://cdn.discordapp.com/attachments/1009457119159926785/1043624378107166810/property_of_Bohuv_nejsilnejsi_valecnik_84.mp4','https://cdn.discordapp.com/attachments/1009457119159926785/1043795224931078286/310681329_624793822700013_3579882953739917914_n.mp4','crazy','xdd','!!!',':nerd:','sex\'ent','you sound like your underage','im winning','agree','for real?','nah bruhh tahts crazy','https://cdn.discordapp.com/attachments/1006667144555151390/1043717263276126258/trim.1E40D10B-FA8F-4E50-8CC8-A0965AF8B39C.mp4','https://media.discordapp.net/attachments/1006667144555151390/1020380940658294854/speechbubble.gif','https://cdn.discordapp.com/attachments/1006667144555151390/1043819037697773579/trim.6A0A434E-992F-4D3C-B81B-7B3D9655ABFE.mp4','https://cdn.discordapp.com/attachments/1013546438858383451/1043824932108369930/Gangster_Broccoli_4k_Remastered.mp4', 'https://cdn.discordapp.com/attachments/1009456381071470724/1040319351154290758/do_you_really_think_that_is_normal.png', `https://cdn.discordapp.com/attachments/1009456381071470724/1040884521295425627/unknown.png`, 'ok!', 'what??????', 'watth?', 'whar?', 'epic', 'stfu', 'not cool', 'thumbs down compadre', 'unloko', 'https://cdn.discordapp.com/attachments/1006667144555151390/1043585249411608576/togif.gif', 'https://cdn.discordapp.com/emojis/1010925703249793076.gif?v=1&size=48&quality=lossless', 'https://cdn.discordapp.com/attachments/1006667144555151390/1038451477221490708/image0-354.gif', 'https://tenor.com/view/the-j-letter-j-pear-butt-bv0j-gif-22468236', 'https://media.discordapp.net/attachments/1009383133726130216/1038555164036046899/EBABBF86-63BC-419B-BC5B-DC05624CF4AD.gif', 'https://media.discordapp.net/attachments/769200587354013728/997911213382053938/SPOILER_speed-1-1.gif', 'https://cdn.discordapp.com/emojis/1011703842276134982.gif?v=1&size=48&quality=lossless', 'https://media.discordapp.net/attachments/998802851151237151/1005336781643841616/unknown.gif', 'https://media.discordapp.net/attachments/823953803409096806/1011585352953233519/270891BF-F497-4887-B611-CC05D1666AF9.gif', 'https://media.discordapp.net/attachments/935989994735169546/1006608226676129832/306CE84B-E1E8-4443-A0DB-72B90D30BF48.gif', 'https://media.discordapp.net/attachments/940018559894061126/982598764730662983/ezgif.com-gif-maker.gif', 'https://media.discordapp.net/attachments/778438906101628978/895801293728268328/image0.gif', 'https://tenor.com/view/what-a-surprise-horse-gif-22766444', 'all good man', 'NEI', 'Fortnite is an online video game developed by Epic Games and released in 2017. It is available in three distinct game mode versions that otherwise share the same general gameplay and game engine: Fortnite', 'Θα φιλήσω τον Jimi απόψε γιατί είμαστε φίλοι και τον αγαπώ', 'GAH DAMN https://cdn.discordapp.com/attachments/1009383133726130216/1043566010239819927/Screenshot_20221106-160833_1.jpg', 'the procedure.............\n \nhttps://tenor.com/view/cat-femur-breaker-radlcies-gif-24136082', 'how about i fucking kill you? how avbout that ? https://cdn.discordapp.com/attachments/1009456381071470724/1040824569843417108/20221109_140001.jpg']
var reply = replies[Math.floor(Math.random() * replies.length)]
var donejson = {
detections:detections,
replies:replies,
reply:reply
}
return donejson
}

View File

@ -1,12 +0,0 @@
module.exports = (msc, author) => {
var detections = ["?"]
var replies = [`uncle google here: https://www.google.com/search?q=${msc.replace(/@/g, "noping")}`, `grandpa yahoo here: https://search.yahoo.com/search?p=${msc.replace(/@/g, "noping")}`, `mr wikipedia here: https://en.wikipedia.org/wiki/${msc.replace(/@/g, "noping")}`]
var reply = replies[Math.floor(Math.random() * replies.length)]
var donejson = {
detections:detections,
replies:replies,
reply:reply
}
return donejson
}

View File

@ -0,0 +1,79 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
//Import functions
const cat = require('./cmd-cat.js')
const poll = require('./cmd-poll.js')
const gay = require('./cmd-gay.js')
const nerdreact = require('./react-nerd.js')
const clownreact = require('./react-clown.js')
const wreact = require('./react-w.js')
const lreact = require('./react-l.js');
const togif = require('./convert-togif.js')
const toimage = require('./convert-toimage.js')
const vidtogif = require('./convert-vidtogif.js')
const AI = require('./AI.js')
const ChatAI = require('./cleverbot.js')
module.exports = async (message, author, guild, client) => {
if(message.content.includes("cmd cat")){
return cat(message, author, guild, client)
}
if(message.content.includes("cmd poll")){
return poll(message, author, guild, client)
}
if(message.content.includes("cmd gay")){
return gay(message, author, guild, client)
}
if(message.content.includes("convert image to gif")){
return togif(message, author, guild, client)
}
if(message.content.includes("convert gif to image")){
return toimage(message, author, guild, client)
}
if(message.content.includes("convert video to gif")){
return vidtogif(message, author, guild, client)
}
if(message.content.includes("react nerd")){
return nerdreact(message, author, guild, client)
}
if(message.content.includes("react clown")){
return clownreact(message, author, guild, client)
}
if(message.content.includes("react w")){
return wreact(message, author, guild, client)
}
if(message.content.includes("react l")){
return lreact(message, author, guild, client)
}
if(message.content.startsWith(`<@${client.user.id}> chatai `)){
return ChatAI(message, author, guild, client)
}
var response = await AI(message.content,message.author.username)
if(message.guild){
message.channel.startTyping();
setTimeout(function(){
message.channel.stopTyping();
return message.lineReply(response)
}, 2000);
} else {
message.channel.startTyping();
setTimeout(function(){
message.channel.stopTyping();
return message.channel.send(response)
}, 2000);
}
}

View File

@ -1,10 +1,9 @@
module.exports = async (message,author) => {
module.exports = async (message, author) => {
var msc = message.toLowerCase()
var compliment = require('./detections/compliment.js')
var insult = require('./detections/insult.js')
var neutral = require('./detections/neutral.js')
var questioncustom = require('./detections/question-custom.js')
var questionyon = require('./detections/question-yon.js')
var or = require('./detections/or.js')
var additionalreaction = require('./detections/additional-reaction.js')

22
functions/Help.js Normal file
View File

@ -0,0 +1,22 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
const embedhelp = new Discord.MessageEmbed()
.setColor("2f3136")
.setAuthor("sexbot help panel", client.user.displayAvatarURL())
.setDescription("sexbot is a dumb chatbot that acts like an average discord user.")
.addField("» How to use?", 'To talk with me, you just need to mention me in a message.')
.addField("» \"Sexbot is too dumb\" - :nerd:", 'Want a more "intelligent" version of sexbot? Mention me and add `chatai` at the beginning of your message.')
.addField('» "I don\'t want to mention all the time\" - :nerd:', "You can talk with me on DM's, or create a channel that contains 'sexbot-chat'.")
.addField("» \"I know how to make sexbot better\" - :nerd:", "We love to hear that! You can [contribute on Github](https://github.com/thejimi/sexbot) :heart:")
const embedcommands = new Discord.MessageEmbed()
.setColor("YELLOW")
.setAuthor("commands", client.user.displayAvatarURL())
.setDescription("sexbot also has some useful commands!\n \n```@sexbot cmd cat - Get a random cat image\n@sexbot cmd gay - Become gay\n@sexbot poll <message> - Create a poll```\n```@sexbot convert image to gif <url>\n@sexbot convert gif to image <url>\n@sexbot convert video to gif```\n```@sexbot react nerd <messagelink>\n@sexbot react clown <messagelink>\n@sexbot react l <messagelink>\n@sexbot react w <messagelink>```")
message.lineReplyNoMention(embedhelp)
message.channel.send(embedcommands)
}

21
functions/cleverbot.JS Normal file
View File

@ -0,0 +1,21 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
const cleverbot = require('cleverbot-free') //Install the cleverbot api
var text = message.content.replace(`<@${client.user.id}> botai `, '')
let conversation = [] //History of the conversation
cleverbot(text, conversation).then(res => {
conversation.push(text)
conversation.push(res)
message.channel.startTyping();
setTimeout(function(){
message.channel.stopTyping();
return message.lineReply(res)
}, 2000);
})
}

25
functions/cmd-cat.js Normal file
View File

@ -0,0 +1,25 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
fetch('https://cataas.com/cat?json=true')
.then((response) => response.json())
.then((data) => {
const embedload = new Discord.MessageEmbed()
.setColor("GREY")
.setAuthor("cmd cat", client.user.displayAvatarURL())
.setDescription("<a:loading:1046014857939537950> *Loading...*")
const embedresult = new Discord.MessageEmbed()
.setColor("2f3136")
.setAuthor("cmd cat", client.user.displayAvatarURL())
.setImage(`https://cataas.com${data.url}`)
message.lineReply(embedload).then(m => {
setTimeout(function(){
m.edit(':3', embedresult)
}, 1000);
})
});
}

18
functions/cmd-gay.js Normal file
View File

@ -0,0 +1,18 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
try {
message.react("1046014857939537950")
} catch (err) {
message.lineReply("<a:loading:1046014857939537950> Generating the image... It will take a while.")
}
const canvacord = require("canvacord");
let user = message.author
let avatar = user.displayAvatarURL();
let image = await canvacord.Canvas.rainbow(avatar);
let attachment = new Discord.MessageAttachment(image, "sexbot-rainbow.gif");
return message.lineReply(attachment);
}

19
functions/cmd-poll.js Normal file
View File

@ -0,0 +1,19 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
var pollcontent = message.content.replace(`<@${client.user.id}>`, '')
pollcontent = pollcontent.replace("cmd poll", '')
message.channel.send(`**:speech_left: ${pollcontent}**\n👤 ${author}`).then(m => {
try {
m.react("👍🏻")
m.react("👎🏻")
} catch (err) {
return message.channel.send("I can't react to messages 💀")
}
})
message.delete()
}

View File

@ -0,0 +1,24 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
try {
message.react("1046014857939537950")
} catch (err) {
message.lineReply("<a:loading:1046014857939537950> Generating the image... It will take a while.")
}
const request = require('request');
let url = message.content.replace(`<@${client.user.id}> `,'')
url = url.replace('convert image to gif ', '')
request({ url, encoding: null }, (err, resp, buffer) => {
var attachment = new Discord.MessageAttachment(buffer, "sexbot-converter.gif");
return message.lineReply(attachment);
});
setTimeout(function(){
message.lineReplyNoMention("Got no response? It means that you haven't provided a valid media url or you posted an attachment instead of a link.")
}, 5000);
}

View File

@ -0,0 +1,24 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
try {
message.react("1046014857939537950")
} catch (err) {
message.lineReply("<a:loading:1046014857939537950> Generating the image... It will take a while.")
}
const request = require('request');
let url = message.content.replace(`<@${client.user.id}> `,'')
url = url.replace('convert gif to image ', '')
request({ url, encoding: null }, (err, resp, buffer) => {
var attachment = new Discord.MessageAttachment(buffer, "sexbot-converter.png");
return message.lineReply(attachment);
});
setTimeout(function(){
message.lineReplyNoMention("Got no response? It means that you haven't provided a valid media url or you posted an attachment instead of a link.")
}, 5000);
}

View File

@ -0,0 +1,15 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
let url = message.content.replace(`<@${client.user.id}> `,'')
url = url.replace('convert video to gif ', '')
const embed = new Discord.MessageEmbed()
.setAuthor("Bruh",client.user.displayAvatarURL())
.setColor("RED")
.setDescription(`This feature is not implemented to sexbot yet.\n \n**But! You can convert your video to gif by entering this [link](https://ezgif.com/video-to-gif?url=${url})**`)
message.lineReply(embed)
}

View File

@ -0,0 +1,12 @@
module.exports = (msc, author) => {
var detections = []
var replies = [`https://cdn.discordapp.com/attachments/823953803409096806/1045772249531162664/image.jpg`,`https://tenor.com/view/meevin-melvin-hes-coming-321-run-gif-26186363`,`https://cdn.discordapp.com/attachments/1026216717891944478/1045474828313968791/2EC3FC50-419B-42B3-8CB4-7AE9EF84B634.jpeg`,`let me guess, your gay :yourefat:`,`wsg gang`,`wsg`,`bound 2`,`epoc`,`@everone`,`${author} when ssex eurah3 3333333`,`siyl willy`,`silly willy`, `so silly ${author}`,'fuck you 🫵🫵🫵🫵🫵🫵🫵🫵🫵🫵',`${author}, keep yourself safe, NOW!`,`${author} wtf no`,`${author} Yeah suuuuuuure.`,'i have no idea','ayo?\n🤨 📸','https://cdn.discordapp.com/attachments/1009457119159926785/1043622406759137360/kthoyo7e5lp91.png','https://cdn.discordapp.com/attachments/1009457119159926785/1043624378107166810/property_of_Bohuv_nejsilnejsi_valecnik_84.mp4','https://cdn.discordapp.com/attachments/1009457119159926785/1043795224931078286/310681329_624793822700013_3579882953739917914_n.mp4','crazy','xdd','!!!',':nerd:','sex\'ent','you sound like your underage','im winning','agree','for real?','nah bruhh tahts crazy','https://cdn.discordapp.com/attachments/1006667144555151390/1043717263276126258/trim.1E40D10B-FA8F-4E50-8CC8-A0965AF8B39C.mp4','https://media.discordapp.net/attachments/1006667144555151390/1020380940658294854/speechbubble.gif','https://cdn.discordapp.com/attachments/1006667144555151390/1043819037697773579/trim.6A0A434E-992F-4D3C-B81B-7B3D9655ABFE.mp4','https://cdn.discordapp.com/attachments/1013546438858383451/1043824932108369930/Gangster_Broccoli_4k_Remastered.mp4', 'https://cdn.discordapp.com/attachments/1009456381071470724/1040319351154290758/do_you_really_think_that_is_normal.png', `https://cdn.discordapp.com/attachments/1009456381071470724/1040884521295425627/unknown.png`, 'ok!', 'what??????', 'watth?', 'whar?', 'epic', 'stfu', 'not cool', 'thumbs down compadre', 'unloko', 'https://cdn.discordapp.com/attachments/1006667144555151390/1043585249411608576/togif.gif', 'https://cdn.discordapp.com/emojis/1010925703249793076.gif?v=1&size=48&quality=lossless', 'https://cdn.discordapp.com/attachments/1006667144555151390/1038451477221490708/image0-354.gif', 'https://tenor.com/view/the-j-letter-j-pear-butt-bv0j-gif-22468236', 'https://media.discordapp.net/attachments/1009383133726130216/1038555164036046899/EBABBF86-63BC-419B-BC5B-DC05624CF4AD.gif', 'https://media.discordapp.net/attachments/769200587354013728/997911213382053938/SPOILER_speed-1-1.gif', 'https://cdn.discordapp.com/emojis/1011703842276134982.gif?v=1&size=48&quality=lossless', 'https://media.discordapp.net/attachments/998802851151237151/1005336781643841616/unknown.gif', 'https://media.discordapp.net/attachments/823953803409096806/1011585352953233519/270891BF-F497-4887-B611-CC05D1666AF9.gif', 'https://media.discordapp.net/attachments/935989994735169546/1006608226676129832/306CE84B-E1E8-4443-A0DB-72B90D30BF48.gif', 'https://media.discordapp.net/attachments/940018559894061126/982598764730662983/ezgif.com-gif-maker.gif', 'https://media.discordapp.net/attachments/778438906101628978/895801293728268328/image0.gif', 'https://tenor.com/view/what-a-surprise-horse-gif-22766444', 'all good man', 'NEI', 'Fortnite is an online video game developed by Epic Games and released in 2017. It is available in three distinct game mode versions that otherwise share the same general gameplay and game engine: Fortnite', 'Θα φιλήσω τον Jimi απόψε γιατί είμαστε φίλοι και τον αγαπώ', 'GAH DAMN https://cdn.discordapp.com/attachments/1009383133726130216/1043566010239819927/Screenshot_20221106-160833_1.jpg', 'the procedure.............\n \nhttps://tenor.com/view/cat-femur-breaker-radlcies-gif-24136082', 'how about i fucking kill you? how avbout that ? https://cdn.discordapp.com/attachments/1009456381071470724/1040824569843417108/20221109_140001.jpg']
var reply = replies[Math.floor(Math.random() * replies.length)]
var donejson = {
detections:detections,
replies:replies,
reply:reply
}
return donejson
}

56
functions/react-clown.js vendored Normal file
View File

@ -0,0 +1,56 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
var messagelink = message.content.replace(`<@${client.user.id}> `, '')
messagelink = messagelink.replace('react clown ','')
var ids = messagelink.replace('https://discord.com/channels/','')
ids = ids.replace('https://ptb.discord.com/channels/','')
ids = ids.replace('https://canary.discord.com/channels/','')
var channelandmessage = ids.replace(`${guild.id}/`,'')
var splittedids = channelandmessage.split('/')
var channelid = splittedids[0]
var messageid = splittedids[1]
var channel = client.channels.cache.get(channelid)
const embedload = new Discord.MessageEmbed()
.setColor("GREY")
.setAuthor("react clown", client.user.displayAvatarURL())
.setDescription("<a:loading:1046014857939537950> *Reacting...*")
const embedresult = new Discord.MessageEmbed()
.setColor("2f3136")
.setAuthor("react clown", client.user.displayAvatarURL())
try {
channel.messages.fetch(messageid)
.then(message2 => {
message.lineReply(embedload).then(m => {
message2.react("🤡")
message2.react("1028379677183713350")
message2.react("1041071478524883004")
message2.react("1041071480764645376")
message2.react("1041071482756923392")
message2.react("1041097049531236412")
message2.react("1011706000199389246")
message2.react("1042098780230652035").then(c => {
embedresult.setDescription(`:clown: Clown reacted ${message2.author.username}`)
m.edit(embedresult)
m.channel.send(`${message2.author}`).then(m2 => {
m2.delete()
})
})
})
})
.catch(err => {
return message.lineReply(`Can't find this message, are you sure you provided a valid message link?\n \nExample usage: \`@${client.user.username} react clown ${message.url}\``)
});
} catch (err) {
return message.lineReply(`Can't find this message, are you sure you provided a valid message link?\n \nExample usage: \`@${client.user.username} react clown ${message.url}\``)
}
}

49
functions/react-l.js vendored Normal file
View File

@ -0,0 +1,49 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
var messagelink = message.content.replace(`<@${client.user.id}> `, '')
messagelink = messagelink.replace('react l ','')
var ids = messagelink.replace('https://discord.com/channels/','')
ids = ids.replace('https://ptb.discord.com/channels/','')
ids = ids.replace('https://canary.discord.com/channels/','')
var channelandmessage = ids.replace(`${guild.id}/`,'')
var splittedids = channelandmessage.split('/')
var channelid = splittedids[0]
var messageid = splittedids[1]
var channel = client.channels.cache.get(channelid)
const embedload = new Discord.MessageEmbed()
.setColor("GREY")
.setAuthor("react l", client.user.displayAvatarURL())
.setDescription("<a:loading:1046014857939537950> *Reacting...*")
const embedresult = new Discord.MessageEmbed()
.setColor("2f3136")
.setAuthor("react l", client.user.displayAvatarURL())
try {
channel.messages.fetch(messageid)
.then(message2 => {
message.lineReply(embedload).then(m => {
message2.react("1028379769470992424").then(c => {
embedresult.setDescription(`<:RatioL:1028379769470992424> reacted ${message2.author.username}`)
m.edit(embedresult)
m.channel.send(`${message2.author}`).then(m2 => {
m2.delete()
})
})
})
})
.catch(err => {
return message.lineReply(`Can't find this message, are you sure you provided a valid message link?\n \nExample usage: \`@${client.user.username} react l ${message.url}\``)
});
} catch (err) {
return message.lineReply(`Can't find this message, are you sure you provided a valid message link?\n \nExample usage: \`@${client.user.username} react l ${message.url}\``)
}
}

57
functions/react-nerd.js vendored Normal file
View File

@ -0,0 +1,57 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
var messagelink = message.content.replace(`<@${client.user.id}> `, '')
messagelink = messagelink.replace('react nerd ','')
var ids = messagelink.replace('https://discord.com/channels/','')
ids = ids.replace('https://ptb.discord.com/channels/','')
ids = ids.replace('https://canary.discord.com/channels/','')
var channelandmessage = ids.replace(`${guild.id}/`,'')
var splittedids = channelandmessage.split('/')
var channelid = splittedids[0]
var messageid = splittedids[1]
var channel = client.channels.cache.get(channelid)
const embedload = new Discord.MessageEmbed()
.setColor("GREY")
.setAuthor("react nerd", client.user.displayAvatarURL())
.setDescription("<a:loading:1046014857939537950> *Reacting...*")
const embedresult = new Discord.MessageEmbed()
.setColor("2f3136")
.setAuthor("react nerd", client.user.displayAvatarURL())
try {
channel.messages.fetch(messageid)
.then(message2 => {
message.lineReply(embedload).then(m => {
message2.react("🤓")
message2.react("1041071459705049179")
message2.react("1041071446866280490")
message2.react("1041071442105745428")
message2.react("1028379726257074246")
message2.react("1041071439719182406")
message2.react("1041071468936691732")
message2.react("1041071466608857138")
message2.react("1041085564163727460").then(c => {
embedresult.setDescription(`:nerd: Nerd reacted ${message2.author.username}`)
m.edit(embedresult)
m.channel.send(`${message2.author}`).then(m2 => {
m2.delete()
})
})
})
})
.catch(err => {
return message.lineReply(`Can't find this message, are you sure you provided a valid message link?\n \nExample usage: \`@${client.user.username} react nerd ${message.url}\``)
});
} catch (err) {
return message.lineReply(`Can't find this message, are you sure you provided a valid message link?\n \nExample usage: \`@${client.user.username} react nerd ${message.url}\``)
}
}

49
functions/react-w.js vendored Normal file
View File

@ -0,0 +1,49 @@
const Discord = require('discord.js') //Import Discord API
require('discord-inline-reply'); //Import inline replies for Discord API
const fetch = require('node-fetch'); //Import the FETCH API
module.exports = async (message, author, guild, client) => {
var messagelink = message.content.replace(`<@${client.user.id}> `, '')
messagelink = messagelink.replace('react w ','')
var ids = messagelink.replace('https://discord.com/channels/','')
ids = ids.replace('https://ptb.discord.com/channels/','')
ids = ids.replace('https://canary.discord.com/channels/','')
var channelandmessage = ids.replace(`${guild.id}/`,'')
var splittedids = channelandmessage.split('/')
var channelid = splittedids[0]
var messageid = splittedids[1]
var channel = client.channels.cache.get(channelid)
const embedload = new Discord.MessageEmbed()
.setColor("GREY")
.setAuthor("react w", client.user.displayAvatarURL())
.setDescription("<a:loading:1046014857939537950> *Reacting...*")
const embedresult = new Discord.MessageEmbed()
.setColor("2f3136")
.setAuthor("react w", client.user.displayAvatarURL())
try {
channel.messages.fetch(messageid)
.then(message2 => {
message.lineReply(embedload).then(m => {
message2.react("1028379774025998498").then(c => {
embedresult.setDescription(`<:RatioW:1028379774025998498> reacted ${message2.author.username}`)
m.edit(embedresult)
m.channel.send(`${message2.author}`).then(m2 => {
m2.delete()
})
})
})
})
.catch(err => {
return message.lineReply(`Can't find this message, are you sure you provided a valid message link?\n \nExample usage: \`@${client.user.username} react w ${message.url}\``)
});
} catch (err) {
return message.lineReply(`Can't find this message, are you sure you provided a valid message link?\n \nExample usage: \`@${client.user.username} react w ${message.url}\``)
}
}

104
index.js
View File

@ -1,56 +1,60 @@
const Discord = require('discord.js')
require('discord-inline-reply');
const { Client, Intents, Collection, MessageEmbed, MessageActionRow, MessageButton, DiscordAPIError } = require('discord.js');
const client = new Client()
const { Client, Intents, Collection, MessageEmbed, MessageActionRow, MessageButton, DiscordAPIError } = require('discord.js'); //Import the most important functions from discord.js
const Discord = require('discord.js'); //v12.5.3
require('discord-inline-reply'); //Import inline replies
const client = new Client(); //New Discord client
const botconfig = require('./data/botconfig.json') //Login info for the bot, you will have to provide your own info there
client.on("ready", () => {
var channel = client.channels.cache.get('823953803409096806')
channel.send('just restarted my braun 🧠🧠]')
console.log(`The bot is online!`)
client.user.setActivity(`v2! | discord.gg/memee`, {
type: "WATCHING"
});
console.log(`The bot is online!`)
client.user.setPresence({ status: 'dnd' });
});
var makeReply = require('./makeReply.js')
client.on("message", async (message) => {
const DetectMessageType = require('./functions/!DetectMessageType.js')
const ChatAI = require('./functions/cleverbot.js')
const AI = require('./functions/AI.js')
const Help = require('./functions/Help.js')
if(message.author.id === client.user.id){
return; //Stop the event if a message is sent by the bot.
}
if (message.content.includes("@everyone")) {
return; //Stop the event if a message includes @everyone ping.
}
if (message.content.includes("@here")) {
return; //Stop the event if a message includes @here ping.
}
client.on("message", async message => {
if(message.author.id === client.user.id){
return;
}
if(!message.guild){
var reply = await makeReply(message.content,message.author.username)
message.channel.startTyping();
setTimeout(function(){
message.channel.stopTyping();
message.channel.send({content:reply})
}, 2000);
return;
}
if (message.content.includes("@everyone")) {
return
}
if (message.content.includes("@here")) {
return
}
if (message.content === "!shelp") {
return message.lineReplyNoMention(`> **sexbot help command**\n \n- Commands:\n\`!sservers, !scontribute, !shelp\`\n \n- How to use sexbot?\n*Mention me in a message or dm me to talk.*`)
}
if (message.content === "!sservers") {
return message.lineReplyNoMention(`im in ${client.guilds.cache.size} guilds`)
}
if (message.content === "!scontribute") {
return message.lineReplyNoMention(`Join discord.gg/memee and upload your sexbot reply suggestion.`)
}
if (message.mentions.has(client.user)) {
var reply = await makeReply(message.content,message.author.username)
message.channel.startTyping();
setTimeout(function(){
message.channel.stopTyping();
message.lineReply({content:reply})
}, 2000);
}});
if (message.content.includes("!shelp")){
return Help(message, message.author, message.guild, client)
}
client.login("token")
if (message.mentions.has(client.user)) { //Continue if a message mentioned the bot.
return DetectMessageType(message, message.author, message.guild, client)
}
if (message.channel.name.includes('sexbot-ai')){
return ChatAI(message, message.author, message.guild, client)
}
if (message.channel.name.includes('sexbot-chat')){
var response = await AI(message.content,message.author.username)
if(message.guild){
message.channel.startTyping();
setTimeout(function(){
message.channel.stopTyping();
return message.lineReply(response)
}, 2000);
} else {
message.channel.startTyping();
setTimeout(function(){
message.channel.stopTyping();
return message.channel.send(response)
}, 2000);
}
}
});
client.login(botconfig.token)

2521
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +1,10 @@
{
"dependencies": {
"canvacord": "^5.4.8",
"cleverbot-free": "^1.1.11",
"discord-inline-reply": "^1.0.3",
"discord.js": "^12.5.3",
"google-it": "^1.6.4",
"wikipedia": "^1.1.9",
"wtf_wikipedia": "^10.0.3"
"node-fetch": "^2.6.7",
"request": "^2.88.2"
}
}