Update discord.js dependency to version 14 (#116)
* Update discord.js in package.json to v14.16.3 & update package-lock.json * Update all embeds to work with v14 * Do not show discriminator if it is 0
This commit is contained in:
parent
c751a5aec2
commit
062e6d43dc
14 changed files with 1306 additions and 2437 deletions
|
@ -19,13 +19,22 @@ module.exports = {
|
|||
|
||||
switch (presenceType) {
|
||||
case "PLAY":
|
||||
presenceType = "PLAYING";
|
||||
presenceType = 0;
|
||||
break;
|
||||
case "LISTEN":
|
||||
presenceType = "LISTENING";
|
||||
presenceType = 2;
|
||||
break;
|
||||
case "WATCH":
|
||||
presenceType = "WATCHING";
|
||||
presenceType = 3;
|
||||
break;
|
||||
case "CUSTOM":
|
||||
presenceType = 4;
|
||||
break;
|
||||
case "COMPETING":
|
||||
presenceType = 5;
|
||||
break;
|
||||
case "STREAM":
|
||||
presenceType = 1;
|
||||
break;
|
||||
default:
|
||||
presenceType = "INVALID";
|
||||
|
|
|
@ -1,24 +1,24 @@
|
|||
const Discord = require('discord.js');
|
||||
const getCreationDate = require('../../util/getCreationDate');
|
||||
const getGuildCount = require('../../util/getGuildCount');
|
||||
|
||||
|
||||
|
||||
module.exports = {
|
||||
name: 'botinfo',
|
||||
description: 'Shows information about the bot',
|
||||
execute({message, client, prefix}) {
|
||||
let guildCount = getGuildCount(client)
|
||||
const embed = new Discord.MessageEmbed()
|
||||
.setColor(15780145)
|
||||
.setTitle("Information about bot")
|
||||
.setTimestamp()
|
||||
.setAuthor(client.user.username, client.user.avatarURL({ dynamic: true, size: 4096 }))
|
||||
.addFields({
|
||||
name: "General info", value: `Name: ${client.user.username}\nPrefix: ${prefix}\nTotal Servers: ${guildCount}\nTotal Commands: ${client.commands.size}\nCreation Date: ${getCreationDate(client)}\nSource: [Click Here](https://github.com/SileNce5k/discord_bot)`,
|
||||
},)
|
||||
|
||||
message.channel.send({embeds :[embed]})
|
||||
|
||||
}
|
||||
const {EmbedBuilder} = require('discord.js');
|
||||
const getCreationDate = require('../../util/getCreationDate');
|
||||
const getGuildCount = require('../../util/getGuildCount');
|
||||
|
||||
|
||||
|
||||
module.exports = {
|
||||
name: 'botinfo',
|
||||
description: 'Shows information about the bot',
|
||||
execute({message, client, prefix}) {
|
||||
let guildCount = getGuildCount(client)
|
||||
const embed = new EmbedBuilder()
|
||||
.setColor(15780145)
|
||||
.setTitle("Information about bot")
|
||||
.setTimestamp()
|
||||
.setAuthor({name: client.user.username, iconURL: client.user.avatarURL({ format: 'png', dynamic: true, size: 2048 })})
|
||||
.addFields({
|
||||
name: "General info", value: `Name: ${client.user.username}\nPrefix: ${prefix}\nTotal Servers: ${guildCount}\nTotal Commands: ${client.commands.size}\nCreation Date: ${getCreationDate(client)}\nSource: [Click Here](https://github.com/SileNce5k/discord_bot)`,
|
||||
},)
|
||||
|
||||
message.channel.send({embeds :[embed]})
|
||||
|
||||
}
|
||||
};
|
|
@ -1,97 +1,97 @@
|
|||
const fs = require('fs');
|
||||
const Discord = require('discord.js');
|
||||
const getSubdirFiles = require('../../util/getSubdirFiles');
|
||||
|
||||
|
||||
module.exports = {
|
||||
name: 'help',
|
||||
description: 'List all available commands.',
|
||||
moreHelp: ["Examples:","`<prefix>help [optional_page]` will return help with a small description for each command",
|
||||
"`<prefix>help <another_command>` will return help with a more descriptive description",
|
||||
"The descriptive description isn't available on all commands",
|
||||
"`<prefix>help netmodules` to display help for netmodules"
|
||||
],
|
||||
execute({ message, args, prefix, client }) {
|
||||
let commands = ""
|
||||
let commandFiles = getSubdirFiles('commands/')
|
||||
let x = false;
|
||||
let fieldName = `Page [[page]]/${Math.round(client.commands.size / 10)}`;
|
||||
let iteration = 0;
|
||||
let num_in_args = false;
|
||||
let added_commands = 0;
|
||||
let page = -1;
|
||||
if (args[0] == "netmodules") {
|
||||
commandFiles = fs.readdirSync('../../netload').filter(file => file.endsWith('.js'));
|
||||
if (commandFiles.length == 0) {
|
||||
message.channel.send("There are no netmodules currently loaded.")
|
||||
x = true;
|
||||
}
|
||||
|
||||
}else if(!isNaN(parseInt(args[0])) && parseInt(args[0])){
|
||||
num_in_args = true;
|
||||
iteration = ( parseInt(args[0]) - 1) * 10;
|
||||
page = Math.round(parseInt(args[0]))
|
||||
}
|
||||
if(page === -1){
|
||||
page = 1;
|
||||
}
|
||||
fieldName = fieldName.replace("[[page]]", page);
|
||||
const max_commands = iteration + 10;
|
||||
|
||||
if (x) return;
|
||||
|
||||
const embed = new Discord.MessageEmbed()
|
||||
.setColor(15780145)
|
||||
.setTitle("Commands")
|
||||
.setTimestamp()
|
||||
.setAuthor(client.user.username, client.user.avatarURL({ dynamic: true, size: 4096 }))
|
||||
let start = 0;
|
||||
for (const file of commandFiles) {
|
||||
if(iteration >= max_commands) break;
|
||||
const command = require(`../../${file}`);
|
||||
|
||||
if(command.disabled) continue;
|
||||
|
||||
if (args[0] == "admin") {
|
||||
if (command.admin)
|
||||
commands = commands + `${prefix}${command.name} | ${command.description}\n`
|
||||
}else if(!args[0] || num_in_args){
|
||||
if (!command.admin){
|
||||
if(start < iteration){
|
||||
}else{
|
||||
added_commands++
|
||||
commands = commands + `${prefix}${command.name} | ${command.description}\n`;
|
||||
iteration++
|
||||
}
|
||||
start++;
|
||||
}
|
||||
}else if(args[0] === command.name){
|
||||
commands = commands + `${prefix}${command.name}\n`
|
||||
embed.setTitle(command.name.charAt(0).toUpperCase() + command.name.slice(1))
|
||||
if(command.moreHelp){
|
||||
command.moreHelp.forEach(element => {
|
||||
commands = commands + `${element}\n`
|
||||
});
|
||||
} else {
|
||||
fieldName = "Description";
|
||||
commands = commands + `${command.description}`;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(commands === ""){
|
||||
fieldName = "Command not found";
|
||||
commands = "No command with that name found."
|
||||
}
|
||||
let regex = /<prefix>/g;
|
||||
commands = commands.replace(regex, prefix)
|
||||
embed.addFields(
|
||||
{ name: fieldName, value: commands },
|
||||
)
|
||||
if(embed.fields[0].value.length > 1023){
|
||||
message.channel.send(`There are more than 1023 characters`)
|
||||
}else {
|
||||
message.channel.send({embeds :[embed]});
|
||||
}
|
||||
},
|
||||
const fs = require('fs');
|
||||
const {EmbedBuilder} = require('discord.js');
|
||||
const getSubdirFiles = require('../../util/getSubdirFiles');
|
||||
|
||||
|
||||
module.exports = {
|
||||
name: 'help',
|
||||
description: 'List all available commands.',
|
||||
moreHelp: ["Examples:","`<prefix>help [optional_page]` will return help with a small description for each command",
|
||||
"`<prefix>help <another_command>` will return help with a more descriptive description",
|
||||
"The descriptive description isn't available on all commands",
|
||||
"`<prefix>help netmodules` to display help for netmodules"
|
||||
],
|
||||
execute({ message, args, prefix, client }) {
|
||||
let commands = ""
|
||||
let commandFiles = getSubdirFiles('commands/')
|
||||
let x = false;
|
||||
let fieldName = `Page [[page]]/${Math.round(client.commands.size / 10)}`;
|
||||
let iteration = 0;
|
||||
let num_in_args = false;
|
||||
let added_commands = 0;
|
||||
let page = -1;
|
||||
if (args[0] == "netmodules") {
|
||||
commandFiles = fs.readdirSync('../../netload').filter(file => file.endsWith('.js'));
|
||||
if (commandFiles.length == 0) {
|
||||
message.channel.send("There are no netmodules currently loaded.")
|
||||
x = true;
|
||||
}
|
||||
|
||||
}else if(!isNaN(parseInt(args[0])) && parseInt(args[0])){
|
||||
num_in_args = true;
|
||||
iteration = ( parseInt(args[0]) - 1) * 10;
|
||||
page = Math.round(parseInt(args[0]))
|
||||
}
|
||||
if(page === -1){
|
||||
page = 1;
|
||||
}
|
||||
fieldName = fieldName.replace("[[page]]", page);
|
||||
const max_commands = iteration + 10;
|
||||
|
||||
if (x) return;
|
||||
|
||||
const embed = new EmbedBuilder()
|
||||
.setColor(15780145)
|
||||
.setTitle("Commands")
|
||||
.setTimestamp()
|
||||
.setAuthor({name: client.user.username, iconURL: client.user.avatarURL({ format: 'png', dynamic: true, size: 2048 })})
|
||||
let start = 0;
|
||||
for (const file of commandFiles) {
|
||||
if(iteration >= max_commands) break;
|
||||
const command = require(`../../${file}`);
|
||||
|
||||
if(command.disabled) continue;
|
||||
|
||||
if (args[0] == "admin") {
|
||||
if (command.admin)
|
||||
commands = commands + `${prefix}${command.name} | ${command.description}\n`
|
||||
}else if(!args[0] || num_in_args){
|
||||
if (!command.admin){
|
||||
if(start < iteration){
|
||||
}else{
|
||||
added_commands++
|
||||
commands = commands + `${prefix}${command.name} | ${command.description}\n`;
|
||||
iteration++
|
||||
}
|
||||
start++;
|
||||
}
|
||||
}else if(args[0] === command.name){
|
||||
commands = commands + `${prefix}${command.name}\n`
|
||||
embed.setTitle(command.name.charAt(0).toUpperCase() + command.name.slice(1))
|
||||
if(command.moreHelp){
|
||||
command.moreHelp.forEach(element => {
|
||||
commands = commands + `${element}\n`
|
||||
});
|
||||
} else {
|
||||
fieldName = "Description";
|
||||
commands = commands + `${command.description}`;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(commands === ""){
|
||||
fieldName = "Command not found";
|
||||
commands = "No command with that name found."
|
||||
}
|
||||
let regex = /<prefix>/g;
|
||||
commands = commands.replace(regex, prefix)
|
||||
embed.addFields(
|
||||
{ name: fieldName, value: commands },
|
||||
)
|
||||
if(embed.data.fields[0].value.length > 1023){
|
||||
message.channel.send(`There are more than 1023 characters`)
|
||||
}else {
|
||||
message.channel.send({embeds :[embed]});
|
||||
}
|
||||
},
|
||||
};
|
|
@ -1,23 +1,27 @@
|
|||
const Discord = require('discord.js');
|
||||
const convertDateToISOString = require('../../util/convertDateToISOString');
|
||||
|
||||
module.exports = {
|
||||
name: 'serverinfo',
|
||||
description: 'Displays information about the server',
|
||||
execute({message}) {
|
||||
const embed = new Discord.MessageEmbed()
|
||||
|
||||
.setThumbnail(message.guild.iconURL({ format: 'png', dynamic: true, size: 4096 }))
|
||||
.setColor("#ee7939")
|
||||
.setTimestamp()
|
||||
.addField("Server Owner: ", `<@${message.guild.ownerId}>`)
|
||||
.addField("Server Name: ", message.guild.name)
|
||||
.addField("Created", convertDateToISOString(message.guild.createdAt))
|
||||
.addField("Members: ", message.guild.memberCount.toString())
|
||||
//.addField("Emojis: ", message.guild.emojis.cache.array().length)
|
||||
|
||||
message.channel.send({embeds :[embed]});
|
||||
|
||||
|
||||
}
|
||||
const {EmbedBuilder} = require('discord.js');
|
||||
const convertDateToISOString = require('../../util/convertDateToISOString');
|
||||
|
||||
module.exports = {
|
||||
name: 'serverinfo',
|
||||
description: 'Displays information about the server',
|
||||
execute({message}) {
|
||||
const embed = new EmbedBuilder()
|
||||
|
||||
.setThumbnail(message.guild.iconURL({ format: 'png', dynamic: true, size: 4096 }))
|
||||
.setColor("#ee7939")
|
||||
.setTimestamp()
|
||||
.addFields([
|
||||
{name: "Server Owner", value: `<@${message.guild.ownerId}>`, inline: false},
|
||||
{name: "Server Name", value: message.guild.name, inline: false},
|
||||
{name: "Created", value: convertDateToISOString(message.guild.createdAt), inline: false},
|
||||
{name: "Members", value: message.guild.memberCount.toString(), inline: false},
|
||||
|
||||
|
||||
])
|
||||
//.addField("Emojis: ", message.guild.emojis.cache.array().length)
|
||||
|
||||
message.channel.send({embeds :[embed]});
|
||||
|
||||
|
||||
}
|
||||
};
|
|
@ -1,4 +1,4 @@
|
|||
const Discord = require('discord.js');
|
||||
const {EmbedBuilder} = require('discord.js');
|
||||
const getCreationDate = require('../../util/getCreationDate.js');
|
||||
const getJoinDate = require('../../util/getJoinDate.js');
|
||||
const getNickname = require('../../util/getNickname.js');
|
||||
|
@ -39,7 +39,8 @@ module.exports = {
|
|||
}
|
||||
status = user.presence.status.charAt(0).toUpperCase()+user.presence.status.slice(1)
|
||||
|
||||
}
|
||||
}
|
||||
if(status === "Dnd") status = "Do Not Disturb";
|
||||
let roles = "";
|
||||
user.roles.cache.each(role => {
|
||||
if (role.name != "@everyone")
|
||||
|
@ -48,23 +49,32 @@ module.exports = {
|
|||
let discriminator = user.user.discriminator;
|
||||
if(discriminator === "0")
|
||||
discriminator = "";
|
||||
let username = `**${user.user.username}#${user.user.discriminator}**${nickname}`
|
||||
const embed = new Discord.MessageEmbed()
|
||||
else
|
||||
discriminator = `#${discriminator}`;
|
||||
let username = `**${user.user.username}${discriminator}**${nickname}`;
|
||||
const embed = new EmbedBuilder()
|
||||
.setThumbnail(user.user.avatarURL({ format: 'png', dynamic: true, size: 2048 }))
|
||||
.setColor(roleColor)
|
||||
.setTimestamp()
|
||||
.setAuthor(user.user.username, user.user.avatarURL({ format: 'png', dynamic: true, size: 2048 }))
|
||||
.addField("Username", username)
|
||||
.addField("Status", status, false)
|
||||
if(isPresence)
|
||||
embed.addField("Presence", user.presence.activities[0].name, false)
|
||||
if(presenceDetails != 0)
|
||||
embed.addField("Details", presenceDetails.toString(), false)
|
||||
embed.addField("Creation date", getCreationDate(user), true)
|
||||
embed.addField("Join date", getJoinDate(user, message.guild), true)
|
||||
if(roles != ""){
|
||||
embed.addField("Roles", roles)
|
||||
}
|
||||
.setAuthor({name: user.user.username, iconURL: user.user.avatarURL({ format: 'png', dynamic: true, size: 2048 })})
|
||||
.addFields([
|
||||
{ name: "Username", value: username, inline: false },
|
||||
]);
|
||||
if (isPresence)
|
||||
embed.addFields([{name: "Presence", value: user.presence.activities[0].name, inline: false}])
|
||||
if (presenceDetails != 0){
|
||||
embed.addFields([{name: "Details", value: presenceDetails.toString(), inline: false}])
|
||||
embed.addFields([{name: "Status", value: status, inline: true }])
|
||||
}
|
||||
else
|
||||
embed.addFields([{ name: "Status", value: status, inline: false }])
|
||||
embed.addFields([
|
||||
{ name: "Creation date", value: getCreationDate(user), inline: true },
|
||||
{ name: "Join date", value: getJoinDate(user, message.guild), inline: true }
|
||||
])
|
||||
if (roles != "") {
|
||||
embed.addFields({name: "Roles", value: roles, inline: false})
|
||||
}
|
||||
|
||||
message.channel.send({embeds :[embed]});
|
||||
}
|
||||
|
|
|
@ -1,97 +1,97 @@
|
|||
const addCustomCommand = require("../../util/custom_commands/addCustomCommand");
|
||||
const deleteCustomCommand = require("../../util/custom_commands/deleteCustomCommand");
|
||||
const getAllCustomCommands = require("../../util/custom_commands/getAllCustomCommands");
|
||||
const getOwnerOfCustomCommand = require("../../util/custom_commands/getOwnerOfCustomCommand");
|
||||
const renameCustomCommand = require("../../util/custom_commands/renameCustomCommand");
|
||||
const Discord = require('discord.js');
|
||||
const fs = require('fs');
|
||||
const editCustomCommand = require("../../util/custom_commands/editCustomCommand");
|
||||
|
||||
module.exports = {
|
||||
name: 'custom',
|
||||
description: "Manage custom commands, see <prefix>help custom for more",
|
||||
moreHelp: ["<prefix>custom add - Add new custom commands",
|
||||
"<prefix>custom edit - Edit an existing command that you own",
|
||||
"<prefix>custom rename - Rename an existing command that you own",
|
||||
"<prefix>custom show - Show custom message unformatted.",
|
||||
"<prefix>custom remove - Delete your custom commands.",
|
||||
"<prefix>custom owner - check owner of custom command",
|
||||
"<prefix>custom list - list all custom commands",
|
||||
"<prefix>custom variables - list all variables you can use"
|
||||
],
|
||||
execute({message, args, client, prefix, owners}) {
|
||||
const customPath = 'data/customCommands.json';
|
||||
if(!fs.existsSync(customPath)){
|
||||
fs.writeFileSync(customPath,"[]")
|
||||
}
|
||||
let sendText;
|
||||
let isEmbed = false;
|
||||
if (args){
|
||||
let customName = args[1];
|
||||
let customMessage = args.slice(2, args.length).join(" ");
|
||||
|
||||
switch (args[0].toLowerCase()) {
|
||||
case "add":
|
||||
if(!customMessage) {
|
||||
message.channel.send("Message can't be empty");
|
||||
return;
|
||||
}
|
||||
sendText = addCustomCommand(customName, customMessage, message.author.id);
|
||||
break;
|
||||
case "remove":
|
||||
case "delete":
|
||||
sendText = deleteCustomCommand(customName, message.author.id, owners);
|
||||
break;
|
||||
case "owner":
|
||||
let author = getOwnerOfCustomCommand(customName);
|
||||
let user;
|
||||
if(!author)
|
||||
sendText = `${customName} does not exist`
|
||||
else{
|
||||
client.guilds.cache.each(guild => {
|
||||
user = guild.members.cache.get(author);
|
||||
});
|
||||
sendText = `The owner of ${customName} is ${user.user.username} (id: ${user.user.id}).`
|
||||
}
|
||||
|
||||
break;
|
||||
case "list":
|
||||
const embed = new Discord.MessageEmbed();
|
||||
sendText = getAllCustomCommands();
|
||||
if(sendText != ""){
|
||||
embed.setColor(15780145)
|
||||
embed.addFields(
|
||||
{ name: "Custom commands", value: sendText },
|
||||
)
|
||||
sendText = embed
|
||||
isEmbed = true;
|
||||
}else sendText = "NO CUSTOM COMMANDS"
|
||||
break;
|
||||
case "variables":
|
||||
sendText = "The variables you can use are:\n<prefix>\n<globalPrefix>\n<username>\n<nickname>\n<user_id>\n<guild_name>\n<guild_id>"
|
||||
break;
|
||||
case "edit":
|
||||
sendText = editCustomCommand(customName, message.author.id, customMessage)
|
||||
break;
|
||||
case "show":
|
||||
let json = fs.readFileSync(customPath, 'utf8');
|
||||
let customCommands = JSON.parse(json)
|
||||
sendText = "Command not found."
|
||||
customCommands.forEach(function (customCommand) {
|
||||
if (customCommand.customName === customName) {
|
||||
sendText = `\`\`\`\n${customCommand.customMessage}\n\`\`\``
|
||||
}
|
||||
});
|
||||
break;
|
||||
case "rename":
|
||||
sendText = renameCustomCommand(customName, args[2], message.author.id);
|
||||
break;
|
||||
default:
|
||||
sendText = `Argument not recognized.\n"${prefix}help custom" to see all arguments you can use.`
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(isEmbed) message.channel.send({embeds :[sendText]})
|
||||
else message.channel.send(sendText);
|
||||
}
|
||||
const addCustomCommand = require("../../util/custom_commands/addCustomCommand");
|
||||
const deleteCustomCommand = require("../../util/custom_commands/deleteCustomCommand");
|
||||
const getAllCustomCommands = require("../../util/custom_commands/getAllCustomCommands");
|
||||
const getOwnerOfCustomCommand = require("../../util/custom_commands/getOwnerOfCustomCommand");
|
||||
const renameCustomCommand = require("../../util/custom_commands/renameCustomCommand");
|
||||
const {EmbedBuilder} = require('discord.js');
|
||||
const fs = require('fs');
|
||||
const editCustomCommand = require("../../util/custom_commands/editCustomCommand");
|
||||
|
||||
module.exports = {
|
||||
name: 'custom',
|
||||
description: "Manage custom commands, see <prefix>help custom for more",
|
||||
moreHelp: ["<prefix>custom add - Add new custom commands",
|
||||
"<prefix>custom edit - Edit an existing command that you own",
|
||||
"<prefix>custom rename - Rename an existing command that you own",
|
||||
"<prefix>custom show - Show custom message unformatted.",
|
||||
"<prefix>custom remove - Delete your custom commands.",
|
||||
"<prefix>custom owner - check owner of custom command",
|
||||
"<prefix>custom list - list all custom commands",
|
||||
"<prefix>custom variables - list all variables you can use"
|
||||
],
|
||||
execute({message, args, client, prefix, owners}) {
|
||||
const customPath = 'data/customCommands.json';
|
||||
if(!fs.existsSync(customPath)){
|
||||
fs.writeFileSync(customPath,"[]")
|
||||
}
|
||||
let sendText;
|
||||
let isEmbed = false;
|
||||
if (args){
|
||||
let customName = args[1];
|
||||
let customMessage = args.slice(2, args.length).join(" ");
|
||||
|
||||
switch (args[0].toLowerCase()) {
|
||||
case "add":
|
||||
if(!customMessage) {
|
||||
message.channel.send("Message can't be empty");
|
||||
return;
|
||||
}
|
||||
sendText = addCustomCommand(customName, customMessage, message.author.id);
|
||||
break;
|
||||
case "remove":
|
||||
case "delete":
|
||||
sendText = deleteCustomCommand(customName, message.author.id, owners);
|
||||
break;
|
||||
case "owner":
|
||||
let author = getOwnerOfCustomCommand(customName);
|
||||
let user;
|
||||
if(!author)
|
||||
sendText = `${customName} does not exist`
|
||||
else{
|
||||
client.guilds.cache.each(guild => {
|
||||
user = guild.members.cache.get(author);
|
||||
});
|
||||
sendText = `The owner of ${customName} is ${user.user.username} (id: ${user.user.id}).`
|
||||
}
|
||||
|
||||
break;
|
||||
case "list":
|
||||
const embed = new EmbedBuilder();
|
||||
sendText = getAllCustomCommands();
|
||||
if(sendText != ""){
|
||||
embed.setColor(15780145)
|
||||
embed.addFields(
|
||||
{ name: "Custom commands", value: sendText },
|
||||
)
|
||||
sendText = embed
|
||||
isEmbed = true;
|
||||
}else sendText = "NO CUSTOM COMMANDS"
|
||||
break;
|
||||
case "variables":
|
||||
sendText = "The variables you can use are:\n<prefix>\n<globalPrefix>\n<username>\n<nickname>\n<user_id>\n<guild_name>\n<guild_id>"
|
||||
break;
|
||||
case "edit":
|
||||
sendText = editCustomCommand(customName, message.author.id, customMessage)
|
||||
break;
|
||||
case "show":
|
||||
let json = fs.readFileSync(customPath, 'utf8');
|
||||
let customCommands = JSON.parse(json)
|
||||
sendText = "Command not found."
|
||||
customCommands.forEach(function (customCommand) {
|
||||
if (customCommand.customName === customName) {
|
||||
sendText = `\`\`\`\n${customCommand.customMessage}\n\`\`\``
|
||||
}
|
||||
});
|
||||
break;
|
||||
case "rename":
|
||||
sendText = renameCustomCommand(customName, args[2], message.author.id);
|
||||
break;
|
||||
default:
|
||||
sendText = `Argument not recognized.\n"${prefix}help custom" to see all arguments you can use.`
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(isEmbed) message.channel.send({embeds :[sendText]})
|
||||
else message.channel.send(sendText);
|
||||
}
|
||||
};
|
3166
package-lock.json
generated
3166
package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -5,7 +5,7 @@
|
|||
"main": "server.js",
|
||||
"dependencies": {
|
||||
"@zuzak/owo": "^1.14.1",
|
||||
"discord.js": "^13.6.0",
|
||||
"discord.js": "^14.16.3",
|
||||
"dotenv": "^16.4.5",
|
||||
"express": "^4.21.1",
|
||||
"mysql": "^2.18.1",
|
||||
|
|
17
server.js
17
server.js
|
@ -20,8 +20,13 @@ const createDatabaseTables = require('./server/createDatabaseTables');
|
|||
const createLastfmTable = require('./server/createLastfmTable');
|
||||
createLastfmTable();
|
||||
checkAndConvertJSONToSQL();
|
||||
const Discord = require('discord.js');
|
||||
const client = new Discord.Client({ intents: [Discord.Intents.FLAGS.GUILDS, Discord.Intents.FLAGS.GUILD_MESSAGES, Discord.Intents.FLAGS.GUILD_PRESENCES] });
|
||||
const { Collection, Client, GatewayIntentBits, Partials } = require('discord.js');
|
||||
const client = new Client({ intents: [GatewayIntentBits.Guilds,
|
||||
GatewayIntentBits.GuildMessages,
|
||||
GatewayIntentBits.MessageContent,
|
||||
GatewayIntentBits.GuildMembers,
|
||||
GatewayIntentBits.GuildPresences
|
||||
], partials: [Partials.Channel] });
|
||||
const {
|
||||
globalPrefix,
|
||||
token,
|
||||
|
@ -33,10 +38,10 @@ const {
|
|||
presenceText
|
||||
} = require('./data/config.json');
|
||||
|
||||
client.settings = new Discord.Collection();
|
||||
client.commands = new Discord.Collection();
|
||||
client.serverPrefixes = new Discord.Collection();
|
||||
client.netmodules = new Discord.Collection();
|
||||
client.settings = new Collection();
|
||||
client.commands = new Collection();
|
||||
client.serverPrefixes = new Collection();
|
||||
client.netmodules = new Collection();
|
||||
|
||||
|
||||
client.settings.set("presenceType", presenceType);
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
const getNickname = require("../getNickname");
|
||||
const parseMention = require("../parseMention");
|
||||
const getFmUsername = require("./getFmUsername");
|
||||
const Discord = require('discord.js');
|
||||
const {EmbedBuilder} = require('discord.js');
|
||||
|
||||
require("dotenv").config();
|
||||
module.exports = async function(userID, guild) {
|
||||
|
@ -50,7 +50,7 @@ module.exports = async function(userID, guild) {
|
|||
sendText.text = scrobble.errorMsg;
|
||||
return sendText;
|
||||
}
|
||||
const embed = new Discord.MessageEmbed()
|
||||
const embed = new EmbedBuilder()
|
||||
.setTitle(`${scrobble.artist} - **${scrobble.album}**`)
|
||||
.setImage(scrobble.cover)
|
||||
sendText.embed = embed;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
const getNickname = require("../getNickname");
|
||||
const parseMention = require("../parseMention");
|
||||
const getFmUsername = require("./getFmUsername");
|
||||
const Discord = require('discord.js');
|
||||
const {EmbedBuilder} = require('discord.js');
|
||||
|
||||
require("dotenv").config();
|
||||
module.exports = async function (userID, guild) {
|
||||
|
@ -57,8 +57,8 @@ module.exports = async function (userID, guild) {
|
|||
sendText.text = tracks.errorMsg;
|
||||
return sendText;
|
||||
}
|
||||
const embed = new Discord.MessageEmbed()
|
||||
.setAuthor(`Now playing - ${nickname}`, user.user.avatarURL({ dynamic: true, size: 4096 }))
|
||||
const embed = new EmbedBuilder()
|
||||
.setAuthor({name: `Now playing - ${nickname}`, iconURL: user.user.avatarURL({ dynamic: true, size: 4096 })})
|
||||
.setThumbnail(tracks[0].cover)
|
||||
.setColor(15780145)
|
||||
.addFields({
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// http://ws.audioscrobbler.com/2.0/?method=user.gettoptracks&user=username&api_key=YOUR_API_KEY&format=json
|
||||
|
||||
const getFmUsername = require("./getFmUsername");
|
||||
const Discord = require('discord.js');
|
||||
const {EmbedBuilder} = require('discord.js');
|
||||
const getNickname = require('../getNickname')
|
||||
const parseMention = require('../parseMention')
|
||||
|
||||
|
@ -94,8 +94,8 @@ module.exports = async function (userID, option, guild, compatibility=false) {
|
|||
});
|
||||
});
|
||||
}
|
||||
const embed = new Discord.MessageEmbed()
|
||||
.setAuthor(`Top ${duration} tracks for ${nickname}`, user.user.avatarURL({ dynamic: true, size: 4096 }))
|
||||
const embed = new EmbedBuilder()
|
||||
.setAuthor({name: `Top ${duration} tracks for ${nickname}`, iconURL: user.user.avatarURL({ dynamic: true, size: 4096 })})
|
||||
.setThumbnail(tracks[0].cover)
|
||||
.setColor(15780145)
|
||||
let tracksInfo = "";
|
||||
|
|
|
@ -14,7 +14,10 @@ module.exports = function (user) {
|
|||
details = `Artist: ${user.presence.activities[0].state}\nAlbum: ${user.presence.activities[0].details}\nSong: ${user.presence.activities[0].assets.largeText}\n`
|
||||
break;
|
||||
case "Custom Status":
|
||||
details = `"${user.presence.activities[0].state}"\n`
|
||||
if(user.presence.activities[0].state !== null)
|
||||
details = `"${user.presence.activities[0].state}"\n`
|
||||
else
|
||||
details = "";
|
||||
break;
|
||||
case "Code":
|
||||
if(user.presence.activities[0].details != null)
|
||||
|
|
|
@ -25,7 +25,7 @@ module.exports = function ({presenceText, presenceType, client}) {
|
|||
}
|
||||
|
||||
try {
|
||||
client.user.setActivity(presenceText, { type: presenceType });
|
||||
client.user.setPresence({ activities: [{ name: presenceText, type: presenceType }]});
|
||||
}catch(e){
|
||||
console.error(`${convertDateToISOString(new Date)}\n${e}`);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue