mirror of
https://github.com/kirameki-cafe/Yumi.git
synced 2026-09-13 10:49:20 +00:00
Update Discord.ts
This commit is contained in:
@@ -1,10 +1,14 @@
|
|||||||
import {Client, Intents, TextChannel} from "discord.js";
|
import {Client, GuildMember, Intents, Interaction, Message, TextChannel} from "discord.js";
|
||||||
|
|
||||||
import Logger from "../libs/Logger";
|
import Logger from "../libs/Logger";
|
||||||
import Environment from "./Environment";
|
import Environment from "./Environment";
|
||||||
|
|
||||||
import Discord_Core from "../discord/core";
|
import Discord_Core from "../discord/Core";
|
||||||
import Discord_Ping from "../discord/ping";
|
import Discord_Ping from "../discord/Ping";
|
||||||
|
import Discord_Help from "../discord/Help";
|
||||||
|
import Discord_Invite from "../discord/Invite";
|
||||||
|
import Discord_Say from "../discord/Say";
|
||||||
|
import Discord_MembershipScreening from "../discord/MembershipScreening";
|
||||||
import Cache from "./Cache";
|
import Cache from "./Cache";
|
||||||
|
|
||||||
class Discord {
|
class Discord {
|
||||||
@@ -15,7 +19,7 @@ class Discord {
|
|||||||
constructor () {
|
constructor () {
|
||||||
this.client = new Client({
|
this.client = new Client({
|
||||||
partials: ['MESSAGE', 'CHANNEL', 'REACTION'],
|
partials: ['MESSAGE', 'CHANNEL', 'REACTION'],
|
||||||
intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES]
|
intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES, Intents.FLAGS.GUILD_MEMBERS]
|
||||||
});
|
});
|
||||||
this.loaded_module = {};
|
this.loaded_module = {};
|
||||||
}
|
}
|
||||||
@@ -24,8 +28,14 @@ class Discord {
|
|||||||
Logger.info('Logging in to discord');
|
Logger.info('Logging in to discord');
|
||||||
this.client.login(Environment.get().DISCORD_TOKEN);
|
this.client.login(Environment.get().DISCORD_TOKEN);
|
||||||
|
|
||||||
|
|
||||||
|
// TODO: Improve this
|
||||||
this.loaded_module["Core"] = new Discord_Core();
|
this.loaded_module["Core"] = new Discord_Core();
|
||||||
this.loaded_module["Ping"] = new Discord_Ping();
|
this.loaded_module["Ping"] = new Discord_Ping();
|
||||||
|
this.loaded_module["Discord_Help"] = new Discord_Help();
|
||||||
|
this.loaded_module["Discord_Invite"] = new Discord_Invite();
|
||||||
|
this.loaded_module["Discord_Say"] = new Discord_Say();
|
||||||
|
this.loaded_module["MembershipScreening"] = new Discord_MembershipScreening();
|
||||||
|
|
||||||
for(const module in this.loaded_module) {
|
for(const module in this.loaded_module) {
|
||||||
let thisModule = this.loaded_module[module];
|
let thisModule = this.loaded_module[module];
|
||||||
@@ -43,7 +53,25 @@ class Discord {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
this.client.on("messageCreate", message => {
|
this.client.on("guildMemberAdd", (member: GuildMember) => {
|
||||||
|
for(const module in this.loaded_module) {
|
||||||
|
let thisModule = this.loaded_module[module];
|
||||||
|
|
||||||
|
if (typeof thisModule.guildMemberAdd === "function")
|
||||||
|
thisModule.guildMemberAdd(member);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
this.client.on("interactionCreate", (interaction: Interaction) => {
|
||||||
|
for(const module in this.loaded_module) {
|
||||||
|
let thisModule = this.loaded_module[module];
|
||||||
|
|
||||||
|
if (typeof thisModule.interactionCreate === "function")
|
||||||
|
thisModule.interactionCreate(interaction);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
this.client.on("messageCreate", (message: Message) => {
|
||||||
for(const module in this.loaded_module) {
|
for(const module in this.loaded_module) {
|
||||||
let thisModule = this.loaded_module[module];
|
let thisModule = this.loaded_module[module];
|
||||||
|
|
||||||
@@ -53,11 +81,11 @@ class Discord {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Handling commands
|
// Handling commands
|
||||||
this.client.on("messageCreate", async (message) => {
|
this.client.on("messageCreate", async (message: Message) => {
|
||||||
|
|
||||||
// TODO: Handle DMs commands soon
|
// TODO: Handle DMs commands soon
|
||||||
if(!(message.channel instanceof TextChannel)) return;
|
if(!(message.channel instanceof TextChannel)) return;
|
||||||
if(message.author.bot) return;
|
//if(message.author.bot) return;
|
||||||
|
|
||||||
if(typeof message.guild?.id === 'undefined') return;
|
if(typeof message.guild?.id === 'undefined') return;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user