mirror of
https://github.com/kirameki-cafe/Yumi.git
synced 2026-09-13 18:59:19 +00:00
Moved commands to global commands
This commit is contained in:
@@ -12,7 +12,9 @@ import {
|
|||||||
} from '../utils/DiscordMessage';
|
} from '../utils/DiscordMessage';
|
||||||
import {
|
import {
|
||||||
registerAllGuildsCommands,
|
registerAllGuildsCommands,
|
||||||
unregisterAllGuildsCommands
|
registerAllGlobalCommands,
|
||||||
|
unregisterAllGuildsCommands,
|
||||||
|
unregisterAllGlobalCommands
|
||||||
} from '../utils/DiscordInteraction';
|
} from '../utils/DiscordInteraction';
|
||||||
|
|
||||||
const EMBEDS = {
|
const EMBEDS = {
|
||||||
@@ -23,7 +25,7 @@ const EMBEDS = {
|
|||||||
fields: [
|
fields: [
|
||||||
{
|
{
|
||||||
name: 'Available arguments',
|
name: 'Available arguments',
|
||||||
value: '``reloadAll``'
|
value: '``reloadAll`` ``unloadAll`` ``reloadglobal``'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
user: data instanceof Interaction ? data.user : data.author
|
user: data instanceof Interaction ? data.user : data.author
|
||||||
@@ -43,6 +45,19 @@ const EMBEDS = {
|
|||||||
user: data instanceof Interaction ? data.user : data.author
|
user: data instanceof Interaction ? data.user : data.author
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
UNLOADALL_SUCCESS: (data: Message | Interaction) => {
|
||||||
|
return makeSuccessEmbed({
|
||||||
|
title: 'Unloaded all Interaction',
|
||||||
|
user: data instanceof Interaction ? data.user : data.author
|
||||||
|
});
|
||||||
|
},
|
||||||
|
UNLOADALL_ERROR: (data: Message | Interaction, err: any) => {
|
||||||
|
return makeErrorEmbed({
|
||||||
|
title: 'An error occurred while trying to unload interaction',
|
||||||
|
description: '```' + err + '```',
|
||||||
|
user: data instanceof Interaction ? data.user : data.author
|
||||||
|
});
|
||||||
|
},
|
||||||
RELOADALL_SUCCESS: (data: Message | Interaction) => {
|
RELOADALL_SUCCESS: (data: Message | Interaction) => {
|
||||||
return makeSuccessEmbed({
|
return makeSuccessEmbed({
|
||||||
title: 'Reloaded all Interaction',
|
title: 'Reloaded all Interaction',
|
||||||
@@ -81,6 +96,75 @@ export default class InteractionManager extends DiscordModule {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const funct = {
|
const funct = {
|
||||||
|
unloadAll: async (data: HybridInteractionMessage) => {
|
||||||
|
let placeholder: HybridInteractionMessage | undefined;
|
||||||
|
|
||||||
|
let _placeholder = await sendHybridInteractionMessageResponse(data, {
|
||||||
|
embeds: [EMBEDS.PROCESSING(data.getRaw())]
|
||||||
|
});
|
||||||
|
if (_placeholder) placeholder = new HybridInteractionMessage(_placeholder);
|
||||||
|
|
||||||
|
try {
|
||||||
|
await unregisterAllGuildsCommands();
|
||||||
|
|
||||||
|
if (data && data.isMessage() && placeholder && placeholder.isMessage())
|
||||||
|
return placeholder
|
||||||
|
.getMessage()
|
||||||
|
.edit({ embeds: [EMBEDS.UNLOADALL_SUCCESS(data.getRaw())] });
|
||||||
|
else if (data.isSlashCommand())
|
||||||
|
return await sendHybridInteractionMessageResponse(
|
||||||
|
data,
|
||||||
|
{ embeds: [EMBEDS.UNLOADALL_SUCCESS(data.getRaw())] },
|
||||||
|
true
|
||||||
|
);
|
||||||
|
} catch (err) {
|
||||||
|
if (data && data.isMessage() && placeholder && placeholder.isMessage())
|
||||||
|
return placeholder
|
||||||
|
.getMessage()
|
||||||
|
.edit({ embeds: [EMBEDS.UNLOADALL_ERROR(data.getRaw(), err)] });
|
||||||
|
else if (data.isSlashCommand())
|
||||||
|
return await sendHybridInteractionMessageResponse(
|
||||||
|
data,
|
||||||
|
{ embeds: [EMBEDS.UNLOADALL_ERROR(data.getRaw(), err)] },
|
||||||
|
true
|
||||||
|
);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
reloadGlobal: async (data: HybridInteractionMessage) => {
|
||||||
|
let placeholder: HybridInteractionMessage | undefined;
|
||||||
|
|
||||||
|
let _placeholder = await sendHybridInteractionMessageResponse(data, {
|
||||||
|
embeds: [EMBEDS.PROCESSING(data.getRaw())]
|
||||||
|
});
|
||||||
|
if (_placeholder) placeholder = new HybridInteractionMessage(_placeholder);
|
||||||
|
|
||||||
|
try {
|
||||||
|
await unregisterAllGlobalCommands();
|
||||||
|
await registerAllGlobalCommands();
|
||||||
|
|
||||||
|
if (data && data.isMessage() && placeholder && placeholder.isMessage())
|
||||||
|
return placeholder
|
||||||
|
.getMessage()
|
||||||
|
.edit({ embeds: [EMBEDS.RELOADALL_SUCCESS(data.getRaw())] });
|
||||||
|
else if (data.isSlashCommand())
|
||||||
|
return await sendHybridInteractionMessageResponse(
|
||||||
|
data,
|
||||||
|
{ embeds: [EMBEDS.RELOADALL_SUCCESS(data.getRaw())] },
|
||||||
|
true
|
||||||
|
);
|
||||||
|
} catch (err) {
|
||||||
|
if (data && data.isMessage() && placeholder && placeholder.isMessage())
|
||||||
|
return placeholder
|
||||||
|
.getMessage()
|
||||||
|
.edit({ embeds: [EMBEDS.RELOADALL_ERROR(data.getRaw(), err)] });
|
||||||
|
else if (data.isSlashCommand())
|
||||||
|
return await sendHybridInteractionMessageResponse(
|
||||||
|
data,
|
||||||
|
{ embeds: [EMBEDS.RELOADALL_ERROR(data.getRaw(), err)] },
|
||||||
|
true
|
||||||
|
);
|
||||||
|
}
|
||||||
|
},
|
||||||
reloadAll: async (data: HybridInteractionMessage) => {
|
reloadAll: async (data: HybridInteractionMessage) => {
|
||||||
let placeholder: HybridInteractionMessage | undefined;
|
let placeholder: HybridInteractionMessage | undefined;
|
||||||
|
|
||||||
@@ -138,6 +222,10 @@ export default class InteractionManager extends DiscordModule {
|
|||||||
});
|
});
|
||||||
case 'reloadall':
|
case 'reloadall':
|
||||||
return await funct.reloadAll(data);
|
return await funct.reloadAll(data);
|
||||||
|
case 'reloadglobal':
|
||||||
|
return await funct.reloadGlobal(data);
|
||||||
|
case 'unloadall':
|
||||||
|
return await funct.unloadAll(data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,24 +3,59 @@ import { SlashCommandBuilder } from '@discordjs/builders';
|
|||||||
import DiscordProvider from '../providers/Discord';
|
import DiscordProvider from '../providers/Discord';
|
||||||
import Logger from '../libs/Logger';
|
import Logger from '../libs/Logger';
|
||||||
|
|
||||||
export const GLOBAL_COMMANDS: Object[] = [];
|
export const GLOBAL_COMMANDS: Object[] = [
|
||||||
export const GUILD_COMMANDS: Object[] = [];
|
new SlashCommandBuilder().setName('help').setDescription('Show help menu'),
|
||||||
|
new SlashCommandBuilder().setName('ping').setDescription('Measure network latency'),
|
||||||
GUILD_COMMANDS.push(new SlashCommandBuilder().setName('help').setDescription('Show help menu'));
|
new SlashCommandBuilder().setName('invite').setDescription('Invite me to your server!'),
|
||||||
GUILD_COMMANDS.push(
|
new SlashCommandBuilder().setName('stats').setDescription('Show the bot stats'),
|
||||||
new SlashCommandBuilder().setName('ping').setDescription('Measure network latency')
|
new SlashCommandBuilder().setName('skip').setDescription('Skip the current song'),
|
||||||
);
|
new SlashCommandBuilder()
|
||||||
GUILD_COMMANDS.push(
|
.setName('nowplaying')
|
||||||
new SlashCommandBuilder().setName('invite').setDescription('Invite me to your server!')
|
.setDescription('Show the current song information'),
|
||||||
);
|
new SlashCommandBuilder().setName('join').setDescription('Join the voice channel'),
|
||||||
GUILD_COMMANDS.push(
|
new SlashCommandBuilder().setName('leave').setDescription('Leave the voice channel'),
|
||||||
|
new SlashCommandBuilder().setName('resume').setDescription('Resume paused music'),
|
||||||
|
new SlashCommandBuilder().setName('pause').setDescription('Pause the current music'),
|
||||||
new SlashCommandBuilder()
|
new SlashCommandBuilder()
|
||||||
.setName('say')
|
.setName('say')
|
||||||
.setDescription('Make me say something')
|
.setDescription('Make me say something')
|
||||||
.addStringOption((option) =>
|
.addStringOption((option) =>
|
||||||
option.setName('message').setDescription('Message you want me to say').setRequired(true)
|
option.setName('message').setDescription('Message you want me to say').setRequired(true)
|
||||||
|
),
|
||||||
|
new SlashCommandBuilder()
|
||||||
|
.setName('osu')
|
||||||
|
.setDescription('Interact with the game osu!')
|
||||||
|
.addSubcommand((user) =>
|
||||||
|
user
|
||||||
|
.setName('user')
|
||||||
|
.setDescription('Get user information on osu!')
|
||||||
|
.addStringOption((user) =>
|
||||||
|
user.setName('user').setDescription('Username or User id').setRequired(true)
|
||||||
)
|
)
|
||||||
);
|
)
|
||||||
|
.addSubcommand((beatmap) =>
|
||||||
|
beatmap
|
||||||
|
.setName('beatmap')
|
||||||
|
.setDescription('Get beatmap information on osu!')
|
||||||
|
.addStringOption((user) =>
|
||||||
|
user.setName('beatmap').setDescription('Beatmap id').setRequired(true)
|
||||||
|
)
|
||||||
|
),
|
||||||
|
new SlashCommandBuilder()
|
||||||
|
.setName('userinfo')
|
||||||
|
.setDescription('Lookup discord user information')
|
||||||
|
.addSubcommand((user) =>
|
||||||
|
user
|
||||||
|
.setName('user')
|
||||||
|
.setDescription('Lookup discord user information')
|
||||||
|
.addUserOption((user) =>
|
||||||
|
user.setName('user').setDescription('Discord user to lookup').setRequired(true)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
];
|
||||||
|
export const GUILD_COMMANDS: Object[] = [];
|
||||||
|
|
||||||
|
/*
|
||||||
GUILD_COMMANDS.push(
|
GUILD_COMMANDS.push(
|
||||||
new SlashCommandBuilder()
|
new SlashCommandBuilder()
|
||||||
.setName('interaction')
|
.setName('interaction')
|
||||||
@@ -109,64 +144,7 @@ GUILD_COMMANDS.push(
|
|||||||
'Create greeting message for membership screening into the channel. A message for new commers to read'
|
'Create greeting message for membership screening into the channel. A message for new commers to read'
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
);
|
);*/
|
||||||
GUILD_COMMANDS.push(
|
|
||||||
new SlashCommandBuilder()
|
|
||||||
.setName('osu')
|
|
||||||
.setDescription('Interact with the game osu!')
|
|
||||||
.addSubcommand((user) =>
|
|
||||||
user
|
|
||||||
.setName('user')
|
|
||||||
.setDescription('Get user information on osu!')
|
|
||||||
.addStringOption((user) =>
|
|
||||||
user.setName('user').setDescription('Username or User id').setRequired(true)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
.addSubcommand((beatmap) =>
|
|
||||||
beatmap
|
|
||||||
.setName('beatmap')
|
|
||||||
.setDescription('Get beatmap information on osu!')
|
|
||||||
.addStringOption((user) =>
|
|
||||||
user.setName('beatmap').setDescription('Beatmap id').setRequired(true)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
GUILD_COMMANDS.push(
|
|
||||||
new SlashCommandBuilder()
|
|
||||||
.setName('userinfo')
|
|
||||||
.setDescription('Lookup discord user information')
|
|
||||||
.addSubcommand((user) =>
|
|
||||||
user
|
|
||||||
.setName('user')
|
|
||||||
.setDescription('Lookup discord user information')
|
|
||||||
.addUserOption((user) =>
|
|
||||||
user.setName('user').setDescription('Discord user to lookup').setRequired(true)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
);
|
|
||||||
|
|
||||||
GUILD_COMMANDS.push(
|
|
||||||
new SlashCommandBuilder().setName('stats').setDescription('Show the bot stats')
|
|
||||||
);
|
|
||||||
|
|
||||||
GUILD_COMMANDS.push(
|
|
||||||
new SlashCommandBuilder().setName('skip').setDescription('Skip the current song')
|
|
||||||
);
|
|
||||||
|
|
||||||
GUILD_COMMANDS.push(
|
|
||||||
new SlashCommandBuilder()
|
|
||||||
.setName('nowplaying')
|
|
||||||
.setDescription('Show the current song information')
|
|
||||||
);
|
|
||||||
|
|
||||||
GUILD_COMMANDS.push(
|
|
||||||
new SlashCommandBuilder().setName('join').setDescription('Join the voice channel')
|
|
||||||
);
|
|
||||||
|
|
||||||
GUILD_COMMANDS.push(
|
|
||||||
new SlashCommandBuilder().setName('leave').setDescription('Leave the voice channel')
|
|
||||||
);
|
|
||||||
|
|
||||||
export const registerAllGlobalCommands = async () => {
|
export const registerAllGlobalCommands = async () => {
|
||||||
Logger.log('info', `Registering all global interaction commands`);
|
Logger.log('info', `Registering all global interaction commands`);
|
||||||
|
|||||||
Reference in New Issue
Block a user