Skip to content

Commit

Permalink
Update to Discord.js v13 embed structure
Browse files Browse the repository at this point in the history
  • Loading branch information
Derek committed Aug 20, 2021
1 parent c153f62 commit 9134545
Show file tree
Hide file tree
Showing 63 changed files with 1,324 additions and 655 deletions.
120 changes: 63 additions & 57 deletions bot.js
Original file line number Diff line number Diff line change
@@ -1,143 +1,149 @@
// Copyright 2020 Cytrus-RE Developers
// You may use the code, but please do credit us.

"use strict";
"use strict"

// Check if the Node version is 12+
if (Number(process.version.slice(1).split(".")[0]) < 12) throw new Error("Tsuyo requires Node 12 or higher. Re-run the bot with Node 12 or higher.");
if (Number(process.version.slice(1).split(".")[0]) < 16) throw new Error("Tsuyo requires Node v16 or higher. Re-run the bot with Node v16 or higher.")
require("dotenv").config({
path: ".env"
})
if (process.env.PREBOOT) eval(process.env.PREBOOT); // Execute anything in the preboot variable
if (process.env.PREBOOT) eval(process.env.PREBOOT) // Execute anything in the preboot variable

// Define NPM modules
const Discord = require("discord.js");
const Enmap = require("enmap");
const {
Client,
Collection,
Intents
} = require("discord.js")

const Enmap = require("enmap")
const {
ReactionRole
} = require("reaction-role");
} = require("reaction-role")

// Define client
const client = new Discord.Client({
const client = new Client({
disableEveryone: true,
disabledEvents: ["TYPING_START"]
});
disabledEvents: ["TYPING_START"],
intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES]
})

// Define time of startup
client.starttime = new Date();
client.starttime = new Date()

// Define databases/objects
client.profiles = new Enmap({
name: "profiles"
});
})
client.logins = new Enmap({
name: "logins"
});
})
client.spotify = new Enmap({
name: "spotify"
});
})
client.settings = new Enmap({
name: "settings"
});
})
client.notes = new Enmap({
name: "notes"
});
})
client.bugs = new Enmap({
name: "bugreports"
});
})
client.starboard = new Enmap({
name: "starboardmid"
});
})
client.warns = new Enmap({
name: "warns"
});
})
client.tags = new Enmap({
name: "tags"
});
})
client.points = new Enmap({
name: "points"
});
})
client.pings = new Enmap({
name: "pings"
});
})
client.pingwords = new Enmap({
name: "pingwords"
});
})
client.inventory = new Enmap({
name: "inventory"
});
})
client.garden = new Enmap({
name: "garden"
});
})
client.money = new Enmap({
name: "money"
});
})
client.cooldown = new Enmap({
name: "cooldown"
});
})
client.badges = new Enmap({
name: "badges"
});
})
client.reputation = new Enmap({
name: "reputation"
});
})
client.fish = new Enmap({
name: "fish"
});
})
client.flags = new Enmap({
name: "flags"
});
})
client.badges = new Enmap({
name: "badges"
});
})
client.money = new Enmap({
name: "money"
});
})
client.profile = new Enmap({
name: "profile"
});
})
client.life = new Enmap({
name: "life"
});
})
client.tags = new Enmap({
name: "tags"
});
})
client.uses = new Enmap({
name: "commandpop"
});
})

client.commands = new Discord.Collection();
client.aliases = new Discord.Collection();
client.liusers = new Discord.Collection();
client.music = {};
client.levelCache = {};
client.commands = new Collection()
client.aliases = new Collection()
//client.users = new Collection()
client.music = {}
client.levelCache = {}

// Import files
client.logger = require("./modules/logger");
client.config = require("./config");
client.errors = require("./modules/errors");
client.logger = require("./modules/logger")
client.config = require("./config")
client.errors = require("./modules/errors")

require("./modules/commands")(client); // Import command module
require("./modules/events")(client); // Import events module
require("./modules/_functions")(client); // Import functions
require("./modules/webhooks")(client); // Import functions
require("./modules/commands")(client) // Import command module
require("./modules/events")(client) // Import events module
require("./modules/_functions")(client) // Import functions
require("./modules/webhooks")(client) // Import functions

// Cache the permissions
for (let i = 0; i < client.config.permLevels.length; i++) {
let currentlevel = client.config.permLevels[i];
client.levelCache[currentlevel.name] = currentlevel.level;
let currentlevel = client.config.permLevels[i]
client.levelCache[currentlevel.name] = currentlevel.level
}

process.env.SESSION_SECRET = "";
process.env.SESSION_SECRET = ""
for (let i = 0; i <= 1500; i++) {
process.env.SESSION_SECRET +=
Math.random().toString(16).slice(2, 8).toUpperCase().slice(-6) + i;
Math.random().toString(16).slice(2, 8).toUpperCase().slice(-6) + i
}

client.login(process.env.BOT_TOKEN);
console.log("Logged into Discord API!");
client.login(process.env.BOT_TOKEN)
console.log("Logged into Discord API!")

const ReactionRoles = new ReactionRole(process.env.BOT_TOKEN, process.env.MONGODB_URI);
ReactionRoles.init();
//const ReactionRoles = new ReactionRole(process.env.BOT_TOKEN, process.env.MONGODB_URI)
//ReactionRoles.init()

module.exports = client;
module.exports = client
11 changes: 8 additions & 3 deletions commands/50.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
// WIP until Discord allows spoilers in embeds
const Discord = require('discord.js');
const {
MessageEmbed
} = require('discord.js');

const request = require('request');
const colors = require('../lib/colors.json');

Expand All @@ -12,12 +15,14 @@ exports.run = async (client, message, args, level) => {
if (message.channel.nsfw === false) return message.channel.send('You need to be in an NSFW channel to use this command.')

random('fiftyfifty').then(url => {
const embed = new Discord.MessageEmbed()
const embed = new MessageEmbed()
.setAuthor('Reddit 50/50', 'https://www.redditinc.com/assets/images/site/reddit-logo.png', url)
.setColor('#FF4300')
.setImage(`${url}`)

message.channel.send(embed);
message.channel.send({
embeds: [embed]
})
})
} catch (err) {
const errors = require('../modules/errors.js')
Expand Down
20 changes: 14 additions & 6 deletions commands/8ball.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
const Discord = require("discord.js");
const {
MessageEmbed
} = require("discord.js");

const colors = require("../lib/colors.json");
exports.run = async (client, message, args) => {
const language = client.getSettings(message.guild.id).language
Expand All @@ -12,14 +15,16 @@ exports.run = async (client, message, args) => {

if (!input) {
let command = client.commands.get("8ball")
const embed = new Discord.MessageEmbed()
const embed = new MessageEmbed()
.setColor(colors.red)
.setTitle(lang.InvalidSyntax)
.setDescription(`\`${prefix}${command.help.usage}\`\n\n${command.help.description}`)
.setFooter(`${lang.RespondingTo} ${message.author.tag}`, message.author.avatarURL())
.setTimestamp()

message.channel.send(embed);
message.channel.send({
embeds: [embed]
})
} else {
if (message.content.toLowerCase().includes("who") || message.content.toLowerCase().includes("whose")) {
if (message.channel.type === "dm") {
Expand All @@ -28,15 +33,18 @@ exports.run = async (client, message, args) => {
message.channel.send(`${result}`);
}
var member = message.guild.members.cache.random();
const embed = new Discord.MessageEmbed()
const embed = new MessageEmbed()
.setColor(colors.default)
.setThumbnail(member.avatarURL)
.addField(member.displayName, `<@${member.id}>`)
.setFooter(`${lang.RespondingTo} ${message.author.tag}`, message.author.avatarURL())
.setTimestamp()
message.channel.send(embed);

message.channel.send({
embeds: [embed]
})
} else {
message.channel.send(result);
message.channel.send(result)
}
}
} catch (err) {
Expand Down
18 changes: 13 additions & 5 deletions commands/avatar.js
Original file line number Diff line number Diff line change
@@ -1,32 +1,40 @@
const Discord = require('discord.js')
const {
MessageEmbed
} = require('discord.js')

const colors = require('../lib/colors.json')

exports.run = async (client, message, args, level) => {
const language = client.getSettings(message.guild.id).language
const lang = require("../lib/languages/" + language + ".json")

try {
const embed = new Discord.MessageEmbed()
const embed = new MessageEmbed()
.setColor(colors.default)
.setImage(`${message.author.displayAvatarURL()}`)
.addField(lang.YourAvatar, `[${lang.ImageURL}](${message.author.avatarURL()})`, true)
.setFooter(`${lang.RespondingTo} ${message.author.tag}`, message.author.avatarURL())
.setTimestamp()

if (!message.mentions.users.size) {
return message.channel.send(embed)
return message.channel.send({
embeds: [embed]
})
}

const user = message.mentions.users.first() || message.author
const embed2 = new Discord.MessageEmbed()

embed = new MessageEmbed()
.setColor(colors.default)
.setImage(`${user.avatarURL}`)
.setThumbnail(`${user.avatarURL}`)
.addField(`${user.username}${lang.UsersAvatar}`, `${user.avatarURL()}`, true)
.setFooter(`${lang.RespondingTo} ${message.author.tag}`, message.author.avatarURL())
.setTimestamp()

message.channel.send(embed2)
message.channel.send({
embeds: [embed]
})
} catch (err) {
const errors = require('../modules/errors.js')
errors.embedError(err, lang, message)
Expand Down
16 changes: 9 additions & 7 deletions commands/blackjack.wip
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const Discord = require('discord.js')
const { MessageEmbed } = require('discord.js')
const colors = require('../lib/colors.json')

const random = require('random');
Expand Down Expand Up @@ -47,7 +47,7 @@ exports.run = async (client, message, args) => {
let playerCardString;
let msgID;

let embed = new Discord.MessageEmbed()
let embed = new MessageEmbed()
.setAuthor('🃏 Blackjacker')
.setColor(colors.default)
.addField('Dealer\'s cards', dealerCardString + '\n(Score: ' + dealerScore + ')', false)
Expand All @@ -68,15 +68,17 @@ exports.run = async (client, message, args) => {
playerCards = [getNextCard(), getNextCard()];
showStatus();

embed = new Discord.MessageEmbed()
embed = new MessageEmbed()
.setAuthor('🃏 Blackjack')
.setColor(colors.default)
.addField('Dealer\'s cards', dealerCardString + '\n(Score: ' + dealerScore + ')', false)
.addField('Your cards', playerCardString + '\n(Score: ' + playerScore + ')', false)
.setFooter(`${lang.RespondingTo} ${message.author.tag}`, message.author.avatarURL())
.setTimestamp()

message.channel.send(embed).then(newMsg => {
message.channel.send({
embeds: [embed]
}).then(newMsg => {
msgID = newMsg.id
newMsg.react('👊').then(() => newMsg.react('🛑'));

Expand Down Expand Up @@ -113,7 +115,7 @@ exports.run = async (client, message, args) => {
checkForEndOfGame();
showStatus()

const newEmbed = new Discord.MessageEmbed()
const newEmbed = new MessageEmbed()
.setAuthor('🃏 Blackjack')
.setColor(colors.default)
.addField('Dealer\'s cards', dealerCardString + '\n(Score: ' + dealerScore + ')', false)
Expand All @@ -134,7 +136,7 @@ exports.run = async (client, message, args) => {
checkForEndOfGame();
showStatus();

const newEmbed = new Discord.MessageEmbed()
const newEmbed = new MessageEmbed()
.setAuthor('🃏 Blackjack')
.setColor(colors.default)
.addField('Dealer\'s cards', dealerCardString + '\n(Score: ' + dealerScore + ')', false)
Expand Down Expand Up @@ -310,4 +312,4 @@ exports.help = {
category: 'Economy',
description: 'Try and get as close to 21 as possible, however, if you go over 21, you lose.',
usage: 'blackjack <amount>'
}
}
Loading

0 comments on commit 9134545

Please sign in to comment.