Update bot to discord.js v13 (#125)
* Update bot to discord.js v13 * Remove debug code
This commit is contained in:
parent
2ca9a40458
commit
39c06fbc8e
22 changed files with 125 additions and 92 deletions
|
@ -25,8 +25,8 @@ export class CoreClient extends Client {
|
|||
return this._eventItems;
|
||||
}
|
||||
|
||||
constructor(devmode: boolean = false) {
|
||||
super();
|
||||
constructor(intents: number[], devmode: boolean = false) {
|
||||
super({ intents: intents });
|
||||
dotenv.config();
|
||||
|
||||
DefaultValues.useDevPrefix = devmode;
|
||||
|
@ -49,7 +49,9 @@ export class CoreClient extends Client {
|
|||
return;
|
||||
});
|
||||
|
||||
super.on("message", (message) => this._events.onMessage(message, this._commandItems));
|
||||
super.on("message", (message) => {
|
||||
this._events.onMessage(message, this._commandItems)
|
||||
});
|
||||
super.on("ready", this._events.onReady);
|
||||
|
||||
super.login(process.env.BOT_TOKEN);
|
||||
|
|
|
@ -11,9 +11,9 @@ export default class About extends Command {
|
|||
|
||||
public override execute(context: ICommandContext): ICommandReturnContext {
|
||||
const embed = new PublicEmbed(context, "About", "")
|
||||
.addField("Version", process.env.BOT_VER)
|
||||
.addField("Author", process.env.BOT_AUTHOR)
|
||||
.addField("Date", process.env.BOT_DATE);
|
||||
.addField("Version", process.env.BOT_VER!)
|
||||
.addField("Author", process.env.BOT_AUTHOR!)
|
||||
.addField("Date", process.env.BOT_DATE!);
|
||||
|
||||
embed.SendToCurrentChannel();
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ export default class Ban extends Command {
|
|||
};
|
||||
}
|
||||
|
||||
const targetMember = context.message.guild?.member(targetUser);
|
||||
const targetMember = context.message.guild?.members.cache.find(x => x.user.id == targetUser.id);
|
||||
|
||||
if (!targetMember) {
|
||||
const embed = new ErrorEmbed(context, "User is not in this server");
|
||||
|
|
|
@ -1,9 +1,6 @@
|
|||
import { CommandResponse } from "../constants/CommandResponse";
|
||||
import { ICommandContext } from "../contracts/ICommandContext";
|
||||
import ErrorEmbed from "../helpers/embeds/ErrorEmbed";
|
||||
import PublicEmbed from "../helpers/embeds/PublicEmbed";
|
||||
import SettingsHelper from "../helpers/SettingsHelper";
|
||||
import StringTools from "../helpers/StringTools";
|
||||
import { Command } from "../type/command";
|
||||
|
||||
export default class Disable extends Command {
|
||||
|
|
|
@ -29,7 +29,7 @@ export default class Kick extends Command {
|
|||
};
|
||||
}
|
||||
|
||||
const targetMember = context.message.guild?.member(targetUser);
|
||||
const targetMember = context.message.guild?.members.cache.find(x => x.user.id == targetUser.id);
|
||||
|
||||
if (!targetMember) {
|
||||
const embed = new ErrorEmbed(context, "User is not in this server");
|
||||
|
|
|
@ -29,7 +29,7 @@ export default class Mute extends Command {
|
|||
};
|
||||
}
|
||||
|
||||
const targetMember = context.message.guild?.member(targetUser);
|
||||
const targetMember = context.message.guild?.members.cache.find(x => x.user.id == targetUser.id);
|
||||
|
||||
if (!targetMember) {
|
||||
const embed = new ErrorEmbed(context, "User is not in this server");
|
||||
|
|
|
@ -49,14 +49,14 @@ export default class Poll extends Command {
|
|||
|
||||
const embed = new PublicEmbed(context, title, description.join("\n"));
|
||||
|
||||
const message = await context.message.channel.send(embed);
|
||||
const message = await context.message.channel.send({ embeds: [ embed ]});
|
||||
|
||||
description.forEach(async (value, index) => {
|
||||
await message.react(reactionEmojis[index]);
|
||||
});
|
||||
|
||||
if (context.message.deletable) {
|
||||
await context.message.delete({ reason: "Poll command" });
|
||||
await context.message.delete();
|
||||
}
|
||||
|
||||
return {
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
import { ICommandContext } from "../contracts/ICommandContext";
|
||||
import ICommandReturnContext from "../contracts/ICommandReturnContext";
|
||||
import Server from "../entity/Server";
|
||||
import ErrorEmbed from "../helpers/embeds/ErrorEmbed";
|
||||
import PublicEmbed from "../helpers/embeds/PublicEmbed";
|
||||
|
|
|
@ -29,7 +29,7 @@ export default class Unmute extends Command {
|
|||
};
|
||||
}
|
||||
|
||||
const targetMember = context.message.guild?.member(targetUser);
|
||||
const targetMember = context.message.guild?.members.cache.find(x => x.user.id == targetUser.id);
|
||||
|
||||
if (!targetMember) {
|
||||
const embed = new ErrorEmbed(context, "User is not in this server");
|
||||
|
|
|
@ -28,7 +28,7 @@ export default class Warn extends Command {
|
|||
};
|
||||
}
|
||||
|
||||
const member = context.message.guild?.member(user);
|
||||
const member = context.message.guild?.members.cache.find(x => x.user.id == user.id);
|
||||
|
||||
if (!member) {
|
||||
const errorEmbed = new ErrorEmbed(context, "User is not in this server");
|
||||
|
|
|
@ -12,8 +12,8 @@ export default class MemberEvents extends Event {
|
|||
public override async guildMemberAdd(member: GuildMember): Promise<IEventReturnContext> {
|
||||
const embed = new EventEmbed(member.guild, "Member Joined");
|
||||
embed.AddUser("User", member.user, true);
|
||||
embed.addField("Created", member.user.createdAt);
|
||||
embed.setFooter(`Id: ${member.user.id}`);
|
||||
embed.addField("Created", member.user.createdAt.toISOString());
|
||||
embed.setFooter({ text: `Id: ${member.user.id}` });
|
||||
|
||||
await embed.SendToMemberLogsChannel();
|
||||
|
||||
|
@ -25,8 +25,8 @@ export default class MemberEvents extends Event {
|
|||
public override async guildMemberRemove(member: GuildMember): Promise<IEventReturnContext> {
|
||||
const embed = new EventEmbed(member.guild, "Member Left");
|
||||
embed.AddUser("User", member.user, true);
|
||||
embed.addField("Joined", member.joinedAt);
|
||||
embed.setFooter(`Id: ${member.user.id}`);
|
||||
embed.addField("Joined", member.joinedAt?.toISOString() || "n/a");
|
||||
embed.setFooter({ text: `Id: ${member.user.id}` });
|
||||
|
||||
await embed.SendToMemberLogsChannel();
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ export default class GuildMemberUpdate {
|
|||
embed.AddUser("User", this.newMember.user, true);
|
||||
embed.addField("Before", oldNickname, true);
|
||||
embed.addField("After", newNickname, true);
|
||||
embed.setFooter(`Id: ${this.newMember.user.id}`);
|
||||
embed.setFooter({ text: `Id: ${this.newMember.user.id}` });
|
||||
|
||||
await embed.SendToMemberLogsChannel();
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ export default class MessageEvents extends Event {
|
|||
|
||||
const embed = new EventEmbed(message.guild, "Message Deleted");
|
||||
embed.AddUser("User", message.author, true);
|
||||
embed.addField("Channel", message.channel, true);
|
||||
embed.addField("Channel", message.channel.toString(), true);
|
||||
embed.addField("Content", `\`\`\`${message.content || "*none*"}\`\`\``);
|
||||
|
||||
if (message.attachments.size > 0) {
|
||||
|
@ -60,7 +60,7 @@ export default class MessageEvents extends Event {
|
|||
|
||||
const embed = new EventEmbed(newMessage.guild, "Message Edited");
|
||||
embed.AddUser("User", newMessage.author, true);
|
||||
embed.addField("Channel", newMessage.channel, true);
|
||||
embed.addField("Channel", newMessage.channel.toString(), true);
|
||||
embed.addField("Before", `\`\`\`${oldMessage.content || "*none*"}\`\`\``);
|
||||
embed.addField("After", `\`\`\`${newMessage.content || "*none*"}\`\`\``);
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ import { ICommandContext } from "../../contracts/ICommandContext";
|
|||
export default class ErrorEmbed extends MessageEmbed {
|
||||
public context: ICommandContext;
|
||||
|
||||
constructor(context: ICommandContext, message: String) {
|
||||
constructor(context: ICommandContext, message: string) {
|
||||
super();
|
||||
|
||||
super.setColor(0xd52803);
|
||||
|
@ -14,6 +14,6 @@ export default class ErrorEmbed extends MessageEmbed {
|
|||
}
|
||||
|
||||
public SendToCurrentChannel() {
|
||||
this.context.message.channel.send(this);
|
||||
this.context.message.channel.send({ embeds: [ this ]});
|
||||
}
|
||||
}
|
|
@ -23,7 +23,7 @@ export default class EventEmbed extends MessageEmbed {
|
|||
}
|
||||
}
|
||||
|
||||
public AddReason(message: String) {
|
||||
public AddReason(message: string) {
|
||||
this.addField("Reason", message || "*none*");
|
||||
}
|
||||
|
||||
|
@ -37,7 +37,7 @@ export default class EventEmbed extends MessageEmbed {
|
|||
return;
|
||||
}
|
||||
|
||||
channel.send(this);
|
||||
channel.send({embeds: [ this ]});
|
||||
}
|
||||
|
||||
public async SendToMessageLogsChannel() {
|
||||
|
|
|
@ -25,13 +25,13 @@ export default class LogEmbed extends MessageEmbed {
|
|||
}
|
||||
}
|
||||
|
||||
public AddReason(message: String) {
|
||||
public AddReason(message: string) {
|
||||
this.addField("Reason", message || "*none*");
|
||||
}
|
||||
|
||||
// Send methods
|
||||
public SendToCurrentChannel() {
|
||||
this.context.message.channel.send(this);
|
||||
this.context.message.channel.send({ embeds: [ this ]});
|
||||
}
|
||||
|
||||
public SendToChannel(name: string) {
|
||||
|
@ -44,7 +44,7 @@ export default class LogEmbed extends MessageEmbed {
|
|||
return;
|
||||
}
|
||||
|
||||
channel.send(this);
|
||||
channel.send({ embeds: [ this ]});
|
||||
}
|
||||
|
||||
public async SendToMessageLogsChannel() {
|
||||
|
|
|
@ -15,12 +15,12 @@ export default class PublicEmbed extends MessageEmbed {
|
|||
}
|
||||
|
||||
// Detail methods
|
||||
public AddReason(message: String) {
|
||||
public AddReason(message: string) {
|
||||
this.addField("Reason", message || "*none*");
|
||||
}
|
||||
|
||||
// Send methods
|
||||
public SendToCurrentChannel() {
|
||||
this.context.message.channel.send(this);
|
||||
this.context.message.channel.send({ embeds: [ this ]});
|
||||
}
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
import { Channel, Guild, User, GuildMember, Message, PartialDMChannel, PartialGuildMember, PartialMessage } from "discord.js";
|
||||
import { Channel, Guild, GuildMember, Message, PartialDMChannel, PartialGuildMember, PartialMessage, GuildBan } from "discord.js";
|
||||
|
||||
export class Event {
|
||||
public channelCreate(channel: Channel) {
|
||||
|
@ -13,11 +13,11 @@ export class Event {
|
|||
|
||||
}
|
||||
|
||||
public guildBanAdd(guild: Guild, user: User) {
|
||||
public guildBanAdd(ban: GuildBan) {
|
||||
|
||||
}
|
||||
|
||||
public guildBanRemove(guild: Guild, user: User) {
|
||||
public guildBanRemove(ban: GuildBan) {
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import { CoreClient } from "./client/client";
|
||||
import * as dotenv from "dotenv";
|
||||
import registry from "./registry";
|
||||
import { Intents } from "discord.js";
|
||||
|
||||
dotenv.config();
|
||||
|
||||
|
@ -20,7 +21,11 @@ requiredConfigs.forEach(config => {
|
|||
|
||||
const devmode = process.argv.find(x => x.toLowerCase() == "--dev") != null;
|
||||
|
||||
const client = new CoreClient(devmode);
|
||||
const client = new CoreClient([
|
||||
Intents.FLAGS.GUILDS,
|
||||
Intents.FLAGS.GUILD_MESSAGES,
|
||||
Intents.FLAGS.GUILD_MEMBERS,
|
||||
], devmode);
|
||||
|
||||
registry.RegisterCommands(client);
|
||||
registry.RegisterEvents(client);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue