Eliminacion de slashcommand automatico en caso de comandos redisuales
This commit is contained in:
@@ -23,8 +23,25 @@ export async function registeringCommands(): Promise<void> {
|
|||||||
const rest = new REST().setToken(process.env.TOKEN ?? "");
|
const rest = new REST().setToken(process.env.TOKEN ?? "");
|
||||||
|
|
||||||
try {
|
try {
|
||||||
console.log(`🚀 Registrando ${commandsToRegister.length} comandos slash...`);
|
console.log(`🧹 Limpiando comandos antiguos/residuales...`);
|
||||||
|
|
||||||
|
// Primero eliminamos TODOS los comandos existentes
|
||||||
|
await rest.put(
|
||||||
|
Routes.applicationGuildCommands(
|
||||||
|
process.env.CLIENT!,
|
||||||
|
process.env.guildTest!
|
||||||
|
),
|
||||||
|
{ body: [] } // Array vacío elimina todos los comandos
|
||||||
|
);
|
||||||
|
|
||||||
|
console.log(`✅ Comandos antiguos eliminados correctamente.`);
|
||||||
|
|
||||||
|
// Pequeña pausa para asegurar que Discord procese la eliminación
|
||||||
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
||||||
|
|
||||||
|
console.log(`🚀 Registrando ${commandsToRegister.length} comandos slash nuevos...`);
|
||||||
|
|
||||||
|
// Ahora registramos los comandos actuales
|
||||||
const data: any = await rest.put(
|
const data: any = await rest.put(
|
||||||
Routes.applicationGuildCommands(
|
Routes.applicationGuildCommands(
|
||||||
process.env.CLIENT!,
|
process.env.CLIENT!,
|
||||||
@@ -34,8 +51,51 @@ export async function registeringCommands(): Promise<void> {
|
|||||||
);
|
);
|
||||||
|
|
||||||
console.log(`✅ ${data.length} comandos registrados correctamente.`);
|
console.log(`✅ ${data.length} comandos registrados correctamente.`);
|
||||||
|
console.log(`🎉 Proceso completado: comandos antiguos limpiados y nuevos registrados.`);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("❌ Error registrando comandos:", error);
|
console.error("❌ Error en el proceso de comandos:", error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Función específica para eliminar TODOS los comandos slash (útil para limpieza)
|
||||||
|
*/
|
||||||
|
export async function clearAllCommands(): Promise<void> {
|
||||||
|
const rest = new REST().setToken(process.env.TOKEN ?? "");
|
||||||
|
|
||||||
|
try {
|
||||||
|
console.log(`🧹 Eliminando TODOS los comandos slash...`);
|
||||||
|
|
||||||
|
await rest.put(
|
||||||
|
Routes.applicationGuildCommands(
|
||||||
|
process.env.CLIENT!,
|
||||||
|
process.env.guildTest!
|
||||||
|
),
|
||||||
|
{ body: [] }
|
||||||
|
);
|
||||||
|
|
||||||
|
console.log(`✅ Todos los comandos han sido eliminados correctamente.`);
|
||||||
|
} catch (error) {
|
||||||
|
console.error("❌ Error eliminando comandos:", error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Función para limpiar comandos globales (si los hay)
|
||||||
|
*/
|
||||||
|
export async function clearGlobalCommands(): Promise<void> {
|
||||||
|
const rest = new REST().setToken(process.env.TOKEN ?? "");
|
||||||
|
|
||||||
|
try {
|
||||||
|
console.log(`🌍 Eliminando comandos globales...`);
|
||||||
|
|
||||||
|
await rest.put(
|
||||||
|
Routes.applicationCommands(process.env.CLIENT!),
|
||||||
|
{ body: [] }
|
||||||
|
);
|
||||||
|
|
||||||
|
console.log(`✅ Comandos globales eliminados correctamente.`);
|
||||||
|
} catch (error) {
|
||||||
|
console.error("❌ Error eliminando comandos globales:", error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user