summaryrefslogtreecommitdiff
path: root/packages/gateway/src/commands/commandHandler.ts
blob: 5b99c16db57828eca9b665f538356b7aaa5ce2aa (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import { Client, Events, Message } from "discord.js";
import { handleSayCommand } from "./say";
import { handleSaycCommand } from "./sayc";
import { handleStartCommand } from "./start";
import { handleCrpCommand } from "./crp";
import { handleReactCommand } from "./react";
import { handleDeleteCommand } from "./delete";
import { handlePinCommand } from "./pin";
import { handleRoleCommand } from "./role";
import { handleVerbalGatesCommand } from "./verbalGates";

export const handleCommandHandler = (client: Client) => {
  client.on(Events.MessageCreate, async (message: Message) => {
    if (message.author.bot) return;

    const verbalGatesHandled = await handleVerbalGatesCommand(message);
    const saycHandled = await handleSaycCommand(message);

    (message as any).verbalGatesHandled = verbalGatesHandled;
    (message as any).saycHandled = saycHandled;

    await Promise.allSettled([
      handleSayCommand(message),
      handleStartCommand(message),
      handleCrpCommand(message),
      handleReactCommand(message),
      handleDeleteCommand(message),
      handlePinCommand(message),
      handleRoleCommand(message),
    ]);
  });
};