Merge pull request #75 from MiguVT/main

Add Spanish language support for slash commands
This commit is contained in:
Choco
2025-08-20 22:19:30 +08:00
committed by GitHub
4 changed files with 487 additions and 14 deletions

235
local_langs/es-419.json Normal file
View File

@@ -0,0 +1,235 @@
{
"connect": "conectar",
"Connect to a voice channel.": "Conectar a un canal de voz.",
"channel": "canal",
"Provide a channel to connect.": "Proporciona un canal para conectar.",
"play": "reproducir",
"Loads your input and added it to the queue.": "Carga tu entrada y la agrega a la cola.",
"query": "consulta",
"Input a query or a searchable link.": "Ingresa una consulta o un enlace de búsqueda.",
"search": "buscar",
"Input the name of the song.": "Ingresa el nombre de la canción.",
"platform": "plataforma",
"Select the platform you want to search.": "Selecciona la plataforma en la que quieres buscar.",
"Youtube": "YouTube",
"Youtube Music": "YouTube Music",
"Spotify": "Spotify",
"SoundCloud": "SoundCloud",
"Apple Music": "Apple Music",
"playtop": "reproducir_primero",
"Adds a song with the given url or query on the top of the queue.": "Agrega una canción con la URL o consulta al principio de la cola.",
"forceplay": "forzar_reproducir",
"Enforce playback using the given URL or query.": "Fuerza la reproducción usando la URL o consulta especificada.",
"pause": "pausar",
"Pause the music.": "Pausar la música.",
"resume": "reanudar",
"Resume the music.": "Reanudar la música.",
"skip": "saltar",
"Skips to the next song or skips to the specified song.": "Salta a la siguiente canción o a la canción especificada.",
"index": "indice",
"Enter a index that you want to skip to.": "Ingresa un índice al que quieras saltar.",
"back": "anterior",
"Skips back to the previous song or skips to the specified previous song.": "Regresa a la canción anterior o a la canción anterior especificada.",
"Enter a index that you want to skip back to.": "Ingresa un índice al que quieras regresar.",
"seek": "buscar_tiempo",
"Change the player position.": "Cambiar la posición del reproductor.",
"position": "posicion",
"Input position. Exmaple: 1:20.": "Ingresa posición. Ejemplo: 1:20.",
"queue": "cola",
"Display the players queue songs in your queue.": "Muestra las canciones en tu cola de reproducción.",
"export": "exportar",
"Exports the entire queue to a text file": "Exporta toda la cola a un archivo de texto.",
"import": "importar",
"Imports the text file and adds the track to the current queue.": "Importa el archivo de texto y agrega las pistas a la cola actual.",
"attachment": "adjunto",
"history": "historial",
"Display the players queue songs in your history queue.": "Muestra las canciones del historial de tu cola.",
"leave": "desconectar",
"Disconnects the bot from your voice channel and chears the queue.": "Desconecta el bot de tu canal de voz y limpia la cola.",
"nowplaying": "reproduciendo",
"Shows details of the current track.": "Muestra detalles de la pista actual.",
"loop": "bucle",
"Changes Loop mode.": "Cambia el modo de bucle.",
"mode": "modo",
"Choose a looping mode.": "Elige un modo de bucle.",
"Off": "Desactivado",
"Track": "Pista",
"Queue": "Cola",
"clear": "limpiar",
"Remove all the tracks in your queue or history queue.": "Elimina todas las pistas de tu cola o historial.",
"Choose a queue that you want to clear.": "Elige una cola que quieras limpiar.",
"History": "Historial",
"remove": "eliminar",
"Removes specified track or a range of tracks from the queue.": "Elimina la pista especificada o un rango de pistas de la cola.",
"position1": "posicion1",
"Input a position from the queue to be removed.": "Ingresa una posición de la cola para eliminar.",
"position2": "posicion2",
"Set the range of the queue to be removed.": "Establece el rango de la cola a eliminar.",
"member": "miembro",
"Remove tracks requested by a specific member.": "Elimina pistas solicitadas por un miembro específico.",
"forward": "adelantar",
"Forwards by a certain amount of time in the current track. The default is 10 seconds.": "Adelanta una cantidad de tiempo en la pista actual. Por defecto son 10 segundos.",
"Input an amount that you to forward to. Exmaple: 1:20": "Ingresa una cantidad a adelantar. Ejemplo: 1:20",
"rewind": "retroceder",
"Rewind by a certain amount of time in the current track. The default is 10 seconds.": "Retrocede una cantidad de tiempo en la pista actual. Por defecto son 10 segundos.",
"Input an amount that you to rewind to. Exmaple: 1:20": "Ingresa una cantidad a retroceder. Ejemplo: 1:20",
"replay": "repetir",
"Reset the progress of the current song.": "Reinicia el progreso de la canción actual.",
"shuffle": "aleatorio",
"Randomizes the tracks in the queue.": "Aleatoriza las pistas en la cola.",
"swap": "intercambiar",
"Swaps the specified song to the specified song.": "Intercambia la canción especificada con otra especificada.",
"The track to swap. Example: 2": "La pista a intercambiar. Ejemplo: 2",
"The track to swap with position1. Exmaple: 1": "La pista a intercambiar con posición1. Ejemplo: 1",
"move": "mover",
"Moves the specified song to the specified position.": "Mueve la canción especificada a la posición especificada.",
"target": "objetivo",
"The track to move. Example: 2": "La pista a mover. Ejemplo: 2",
"to": "a",
"The new position to move the track to. Exmaple: 1": "La nueva posición donde mover la pista. Ejemplo: 1",
"lyrics": "letra",
"Displays lyrics for the playing track.": "Muestra la letra de la pista en reproducción.",
"title": "titulo",
"Searches for your query and displays the reutned lyrics.": "Busca tu consulta y muestra la letra encontrada.",
"artist": "artista",
"swapdj": "cambiar_dj",
"Transfer dj to another.": "Transfiere el DJ a otro.",
"Choose a member to transfer the dj role.": "Elige un miembro para transferir el rol de DJ.",
"autoplay": "reproduccion_auto",
"Toggles autoplay mode, it will automatically queue the best songs to play.": "Activa la reproducción automática, agregará automáticamente las mejores canciones.",
"help": "ayuda",
"Lists all the commands in Vocard.": "Lista todos los comandos en Vocard.",
"category": "categoria",
"Test if the bot is alive, and see the delay between your commands and my response.": "Prueba si el bot está activo y ve el retraso entre tus comandos y mi respuesta.",
"playlist": "lista_reproduccion",
"Play all songs from your favorite playlist.": "Reproduce todas las canciones de tu lista de reproducción favorita.",
"name": "nombre",
"Input the name of your custom playlist": "Ingresa el nombre de tu lista de reproducción personalizada",
"value": "valor",
"Play the specific track from your custom playlist.": "Reproduce la pista específica de tu lista de reproducción personalizada.",
"view": "ver",
"List all your playlist and all songs in your favourite playlist.": "Lista todas tus listas de reproducción y canciones en tu lista favorita.",
"create": "crear",
"Create your custom playlist.": "Crea tu lista de reproducción personalizada.",
"Give a name to your playlist.": "Dale un nombre a tu lista de reproducción.",
"link": "enlace",
"Provide a playlist link if you are creating link playlist.": "Proporciona un enlace de lista si estás creando una lista vinculada.",
"delete": "borrar",
"Delete your custom playlist.": "Borra tu lista de reproducción personalizada.",
"The name of the playlist.": "El nombre de la lista de reproducción.",
"share": "compartir",
"Share your custom playlist with your friends.": "Comparte tu lista de reproducción personalizada con tus amigos.",
"The user id of your friend.": "El ID de usuario de tu amigo.",
"The name of the playlist that you want to share.": "El nombre de la lista de reproducción que quieres compartir.",
"rename": "renombrar",
"Rename your custom playlist.": "Renombra tu lista de reproducción personalizada.",
"The name of your playlist.": "El nombre de tu lista de reproducción.",
"newname": "nuevo_nombre",
"The new name of your playlist.": "El nuevo nombre de tu lista de reproducción.",
"inbox": "bandeja_entrada",
"Show your playlist invitation.": "Muestra tu invitación de lista de reproducción.",
"add": "agregar",
"Add tracks in to your custom playlist.": "Agrega pistas a tu lista de reproducción personalizada.",
"Remove song from your favorite playlist.": "Elimina canción de tu lista de reproducción favorita.",
"Input a position from the playlist to be removed.": "Ingresa una posición de la lista para eliminar.",
"Remove all songs from your favorite playlist.": "Elimina todas las canciones de tu lista de reproducción favorita.",
"Exports the entire playlist to a text file": "Exporta toda la lista de reproducción a un archivo de texto.",
"settings": "configuracion",
"prefix": "prefijo",
"Change the default prefix for message commands.": "Cambia el prefijo por defecto para comandos de mensaje.",
"language": "idioma",
"You can choose your preferred language, the bot message will change to the language you set.": "Puedes elegir tu idioma preferido, los mensajes del bot cambiarán al idioma que configures.",
"Set a DJ role or remove DJ role.": "Establece un rol de DJ o elimina el rol de DJ.",
"role": "rol",
"Change to another type of queue mode.": "Cambia a otro tipo de modo de cola.",
"FairQueue": "Cola_Justa",
"Toggles 24/7 mode, which disables automatic inactivity-based disconnects.": "Activa el modo 24/7, que desactiva las desconexiones automáticas por inactividad.",
"bypassvote": "saltar_votacion",
"Toggles voting system.": "Activa el sistema de votación.",
"Show all the bot settings in your server.": "Muestra toda la configuración del bot en tu servidor.",
"volume": "volumen",
"Set the player's volume.": "Establece el volumen del reproductor.",
"Input a integer.": "Ingresa un número entero.",
"toggleController": "alternar_controlador",
"Toggles the music controller.": "Alterna el controlador de música.",
"duplicatetrack": "pista_duplicada",
"Toggle Vocard to prevent duplicate songs from queuing.": "Activa Vocard para prevenir que se agreguen canciones duplicadas a la cola.",
"customcontroller": "controlador_personalizado",
"Customizes music controller embeds.": "Personaliza los embeds del controlador de música.",
"controllermsg": "mensaje_controlador",
"silentmsg": "mensaje_silencioso",
"Toggles to send a message when clicking the button in the music controller.": "Activa enviar un mensaje al hacer clic en el botón del controlador de música.",
"Toggle silent messaging to send discreet messages without alerting recipients.": "Activa mensajería silenciosa para enviar mensajes discretos sin alertar a los destinatarios.",
"debug": "depurar",
"speed": "velocidad",
"Sets the player's playback speed": "Establece la velocidad de reproducción del reproductor.",
"The value to set the speed to. Default is `1.0`": "El valor para establecer la velocidad. Por defecto es `1.0`.",
"karaoke": "karaoke",
"Uses equalization to eliminate part of a band, usually targeting vocals.": "Usa ecualización para eliminar parte de una banda, normalmente las voces.",
"level": "nivel",
"The level of the karaoke. Default is `1.0`": "El nivel del karaoke. Por defecto es `1.0`.",
"monolevel": "nivel_mono",
"The monolevel of the karaoke. Default is `1.0`": "El nivel mono del karaoke. Por defecto es `1.0`.",
"filterband": "banda_filtro",
"The filter band of the karaoke. Default is `220.0`": "La banda de filtro del karaoke. Por defecto es `220.0`.",
"filterwidth": "ancho_filtro",
"The filter band of the karaoke. Default is `100.0`": "El ancho de filtro del karaoke. Por defecto es `100.0`.",
"tremolo": "tremolo",
"Uses amplification to create a shuddering effect, where the volume quickly oscillates.": "Usa amplificación para crear un efecto de vibración donde el volumen oscila rápidamente.",
"frequency": "frecuencia",
"The frequency of the tremolo. Default is `2.0`": "La frecuencia del tremolo. Por defecto es `2.0`.",
"depth": "profundidad",
"The depth of the tremolo. Default is `0.5`": "La profundidad del tremolo. Por defecto es `0.5`.",
"vibrato": "vibrato",
"Similar to tremolo. While tremolo oscillates the volume, vibrato oscillates the pitch.": "Similar al tremolo. Mientras el tremolo oscila el volumen, el vibrato oscila el tono.",
"The frequency of the vibrato. Default is `2.0`": "La frecuencia del vibrato. Por defecto es `2.0`.",
"The Depth of the vibrato. Default is `0.5`": "La profundidad del vibrato. Por defecto es `0.5`.",
"rotation": "rotacion",
"Rotates the sound around the stereo channels/user headphones aka Audio Panning.": "Rota el sonido alrededor de los canales estéreo/auriculares del usuario (panorámica de audio).",
"hertz": "hertz",
"The hertz of the rotation. Default is `0.2`": "Los hertz de la rotación. Por defecto es `0.2`.",
"distortion": "distorsion",
"Distortion effect. It can generate some pretty unique audio effects.": "Efecto de distorsión. Puede generar efectos de audio bastante únicos.",
"lowpass": "paso_bajo",
"Filter which supresses higher frequencies and allows lower frequencies to pass.": "Filtro que suprime frecuencias altas y permite que pasen las frecuencias bajas.",
"smoothing": "suavizado",
"The level of the lowPass. Default is `20.0`": "El nivel del paso bajo. Por defecto es `20.0`.",
"channelmix": "mezcla_canales",
"Filter which manually adjusts the panning of the audio.": "Filtro que ajusta manualmente la panorámica del audio.",
"left_to_left": "izq_a_izq",
"Sounds from left to left. Default is `1.0`": "Sonido de izquierda a izquierda. Por defecto es `1.0`.",
"right_to_right": "der_a_der",
"Sounds from right to right. Default is `1.0`": "Sonido de derecha a derecha. Por defecto es `1.0`.",
"left_to_right": "izq_a_der",
"Sounds from left to right. Default is `0.0`": "Sonido de izquierda a derecha. Por defecto es `0.0`.",
"right_to_left": "der_a_izq",
"Sounds from right to left. Default is `0.0`": "Sonido de derecha a izquierda. Por defecto es `0.0`.",
"nightcore": "nightcore",
"Add nightcore filter into your player.": "Agrega el filtro nightcore a tu reproductor.",
"Add 8D filter into your player.": "Agrega el filtro 8D a tu reproductor.",
"vaporwave": "vaporwave",
"Add vaporwave filter into your player.": "Agrega el filtro vaporwave a tu reproductor.",
"cleareffect": "limpiar_efectos",
"Clear all or specific sound effects.": "Limpia todos o efectos de sonido específicos.",
"effect": "efecto",
"Remove a specific sound effects.": "Elimina efectos de sonido específicos.",
"start": "inicio",
"end": "fin",
"Specify a time you would like to start, e.g. 1:00": "Especifica la hora a la que quieres empezar, ej. 1:00.",
"Specify a time you would like to end, e.g. 4:00": "Especifica la hora a la que quieres terminar, ej. 4:00.",
"list": "lista",
"Customize the channel topic template": "Personaliza la plantilla del tema del canal.",
"template": "plantilla",
"setupchannel": "configurar_canal",
"Sets up a dedicated channel for song requests in your server.": "Configura un canal dedicado para peticiones de canciones en tu servidor.",
"Provide a request channel. If not, a text channel will be generated.": "Proporciona un canal de peticiones. Si no, se generará un canal de texto.",
"ping": "ping",
"…": "...",
"8d": "8d",
"dj": "dj",
"247": "247",
"stageannounce": "anuncio_escenario",
"Soundcloud": "Soundcloud",
"Fairqueue":"ColaJusta",
"togglecontroller":"cambiarcontrolador"
}

235
local_langs/es-ES.json Normal file
View File

@@ -0,0 +1,235 @@
{
"connect": "conectar",
"Connect to a voice channel.": "Conectar a un canal de voz.",
"channel": "canal",
"Provide a channel to connect.": "Proporciona un canal para conectar.",
"play": "reproducir",
"Loads your input and added it to the queue.": "Carga tu entrada y la añade a la cola.",
"query": "consulta",
"Input a query or a searchable link.": "Introduce una consulta o un enlace de búsqueda.",
"search": "buscar",
"Input the name of the song.": "Introduce el nombre de la canción.",
"platform": "plataforma",
"Select the platform you want to search.": "Selecciona la plataforma en la que quieres buscar.",
"Youtube": "YouTube",
"Youtube Music": "YouTube Music",
"Spotify": "Spotify",
"SoundCloud": "SoundCloud",
"Apple Music": "Apple Music",
"playtop": "reproducir_primero",
"Adds a song with the given url or query on the top of the queue.": "Añade una canción con la URL o consulta al principio de la cola.",
"forceplay": "forzar_reproducir",
"Enforce playback using the given URL or query.": "Fuerza la reproducción usando la URL o consulta especificada.",
"pause": "pausar",
"Pause the music.": "Pausar la música.",
"resume": "reanudar",
"Resume the music.": "Reanudar la música.",
"skip": "saltar",
"Skips to the next song or skips to the specified song.": "Salta a la siguiente canción o a la canción especificada.",
"index": "indice",
"Enter a index that you want to skip to.": "Introduce un índice al que quieras saltar.",
"back": "anterior",
"Skips back to the previous song or skips to the specified previous song.": "Vuelve a la canción anterior o a la canción anterior especificada.",
"Enter a index that you want to skip back to.": "Introduce un índice al que quieras volver.",
"seek": "buscar_tiempo",
"Change the player position.": "Cambiar la posición del reproductor.",
"position": "posicion",
"Input position. Exmaple: 1:20.": "Introduce posición. Ejemplo: 1:20.",
"queue": "cola",
"Display the players queue songs in your queue.": "Muestra las canciones en tu cola de reproducción.",
"export": "exportar",
"Exports the entire queue to a text file": "Exporta toda la cola a un archivo de texto.",
"import": "importar",
"Imports the text file and adds the track to the current queue.": "Importa el archivo de texto y añade las pistas a la cola actual.",
"attachment": "adjunto",
"history": "historial",
"Display the players queue songs in your history queue.": "Muestra las canciones del historial de tu cola.",
"leave": "desconectar",
"Disconnects the bot from your voice channel and chears the queue.": "Desconecta el bot de tu canal de voz y limpia la cola.",
"nowplaying": "reproduciendo",
"Shows details of the current track.": "Muestra detalles de la pista actual.",
"loop": "bucle",
"Changes Loop mode.": "Cambia el modo de bucle.",
"mode": "modo",
"Choose a looping mode.": "Elige un modo de bucle.",
"Off": "Desactivado",
"Track": "Pista",
"Queue": "Cola",
"clear": "limpiar",
"Remove all the tracks in your queue or history queue.": "Elimina todas las pistas de tu cola o historial.",
"Choose a queue that you want to clear.": "Elige una cola que quieras limpiar.",
"History": "Historial",
"remove": "eliminar",
"Removes specified track or a range of tracks from the queue.": "Elimina la pista especificada o un rango de pistas de la cola.",
"position1": "posicion1",
"Input a position from the queue to be removed.": "Introduce una posición de la cola para eliminar.",
"position2": "posicion2",
"Set the range of the queue to be removed.": "Establece el rango de la cola a eliminar.",
"member": "miembro",
"Remove tracks requested by a specific member.": "Elimina pistas solicitadas por un miembro específico.",
"forward": "adelantar",
"Forwards by a certain amount of time in the current track. The default is 10 seconds.": "Adelanta una cantidad de tiempo en la pista actual. Por defecto son 10 segundos.",
"Input an amount that you to forward to. Exmaple: 1:20": "Introduce una cantidad a adelantar. Ejemplo: 1:20",
"rewind": "retroceder",
"Rewind by a certain amount of time in the current track. The default is 10 seconds.": "Retrocede una cantidad de tiempo en la pista actual. Por defecto son 10 segundos.",
"Input an amount that you to rewind to. Exmaple: 1:20": "Introduce una cantidad a retroceder. Ejemplo: 1:20",
"replay": "repetir",
"Reset the progress of the current song.": "Reinicia el progreso de la canción actual.",
"shuffle": "aleatorio",
"Randomizes the tracks in the queue.": "Aleatoriza las pistas en la cola.",
"swap": "intercambiar",
"Swaps the specified song to the specified song.": "Intercambia la canción especificada con otra especificada.",
"The track to swap. Example: 2": "La pista a intercambiar. Ejemplo: 2",
"The track to swap with position1. Exmaple: 1": "La pista a intercambiar con posición1. Ejemplo: 1",
"move": "mover",
"Moves the specified song to the specified position.": "Mueve la canción especificada a la posición especificada.",
"target": "objetivo",
"The track to move. Example: 2": "La pista a mover. Ejemplo: 2",
"to": "a",
"The new position to move the track to. Exmaple: 1": "La nueva posición donde mover la pista. Ejemplo: 1",
"lyrics": "letra",
"Displays lyrics for the playing track.": "Muestra la letra de la pista en reproducción.",
"title": "titulo",
"Searches for your query and displays the reutned lyrics.": "Busca tu consulta y muestra la letra encontrada.",
"artist": "artista",
"swapdj": "cambiar_dj",
"Transfer dj to another.": "Transfiere el DJ a otro.",
"Choose a member to transfer the dj role.": "Elige un miembro para transferir el rol de DJ.",
"autoplay": "reproduccion_auto",
"Toggles autoplay mode, it will automatically queue the best songs to play.": "Activa la reproducción automática, añadirá automáticamente las mejores canciones.",
"help": "ayuda",
"Lists all the commands in Vocard.": "Lista todos los comandos en Vocard.",
"category": "categoria",
"Test if the bot is alive, and see the delay between your commands and my response.": "Prueba si el bot está activo y ve el retraso entre tus comandos y mi respuesta.",
"playlist": "lista_reproduccion",
"Play all songs from your favorite playlist.": "Reproduce todas las canciones de tu lista de reproducción favorita.",
"name": "nombre",
"Input the name of your custom playlist": "Introduce el nombre de tu lista de reproducción personalizada",
"value": "valor",
"Play the specific track from your custom playlist.": "Reproduce la pista específica de tu lista de reproducción personalizada.",
"view": "ver",
"List all your playlist and all songs in your favourite playlist.": "Lista todas tus listas de reproducción y canciones en tu lista favorita.",
"create": "crear",
"Create your custom playlist.": "Crea tu lista de reproducción personalizada.",
"Give a name to your playlist.": "Dale un nombre a tu lista de reproducción.",
"link": "enlace",
"Provide a playlist link if you are creating link playlist.": "Proporciona un enlace de lista si estás creando una lista vinculada.",
"delete": "borrar",
"Delete your custom playlist.": "Borra tu lista de reproducción personalizada.",
"The name of the playlist.": "El nombre de la lista de reproducción.",
"share": "compartir",
"Share your custom playlist with your friends.": "Comparte tu lista de reproducción personalizada con tus amigos.",
"The user id of your friend.": "El ID de usuario de tu amigo.",
"The name of the playlist that you want to share.": "El nombre de la lista de reproducción que quieres compartir.",
"rename": "renombrar",
"Rename your custom playlist.": "Renombra tu lista de reproducción personalizada.",
"The name of your playlist.": "El nombre de tu lista de reproducción.",
"newname": "nuevo_nombre",
"The new name of your playlist.": "El nuevo nombre de tu lista de reproducción.",
"inbox": "bandeja_entrada",
"Show your playlist invitation.": "Muestra tu invitación de lista de reproducción.",
"add": "anadir",
"Add tracks in to your custom playlist.": "Añade pistas a tu lista de reproducción personalizada.",
"Remove song from your favorite playlist.": "Elimina canción de tu lista de reproducción favorita.",
"Input a position from the playlist to be removed.": "Introduce una posición de la lista para eliminar.",
"Remove all songs from your favorite playlist.": "Elimina todas las canciones de tu lista de reproducción favorita.",
"Exports the entire playlist to a text file": "Exporta toda la lista de reproducción a un archivo de texto.",
"settings": "configuracion",
"prefix": "prefijo",
"Change the default prefix for message commands.": "Cambia el prefijo por defecto para comandos de mensaje.",
"language": "idioma",
"You can choose your preferred language, the bot message will change to the language you set.": "Puedes elegir tu idioma preferido, los mensajes del bot cambiarán al idioma que configures.",
"Set a DJ role or remove DJ role.": "Establece un rol de DJ o elimina el rol de DJ.",
"role": "rol",
"Change to another type of queue mode.": "Cambia a otro tipo de modo de cola.",
"FairQueue": "Cola_Justa",
"Toggles 24/7 mode, which disables automatic inactivity-based disconnects.": "Activa el modo 24/7, que desactiva las desconexiones automáticas por inactividad.",
"bypassvote": "saltar_votacion",
"Toggles voting system.": "Activa el sistema de votación.",
"Show all the bot settings in your server.": "Muestra toda la configuración del bot en tu servidor.",
"volume": "volumen",
"Set the player's volume.": "Establece el volumen del reproductor.",
"Input a integer.": "Introduce un número entero.",
"toggleController": "alternar_controlador",
"Toggles the music controller.": "Alterna el controlador de música.",
"duplicatetrack": "pista_duplicada",
"Toggle Vocard to prevent duplicate songs from queuing.": "Activa Vocard para prevenir que se añadan canciones duplicadas a la cola.",
"customcontroller": "controlador_personalizado",
"Customizes music controller embeds.": "Personaliza los embeds del controlador de música.",
"controllermsg": "mensaje_controlador",
"silentmsg": "mensaje_silencioso",
"Toggles to send a message when clicking the button in the music controller.": "Activa enviar un mensaje al hacer clic en el botón del controlador de música.",
"Toggle silent messaging to send discreet messages without alerting recipients.": "Activa mensajería silenciosa para enviar mensajes discretos sin alertar a los destinatarios.",
"debug": "depurar",
"speed": "velocidad",
"Sets the player's playback speed": "Establece la velocidad de reproducción del reproductor.",
"The value to set the speed to. Default is `1.0`": "El valor para establecer la velocidad. Por defecto es `1.0`.",
"karaoke": "karaoke",
"Uses equalization to eliminate part of a band, usually targeting vocals.": "Usa ecualización para eliminar parte de una banda, normalmente las voces.",
"level": "nivel",
"The level of the karaoke. Default is `1.0`": "El nivel del karaoke. Por defecto es `1.0`.",
"monolevel": "nivel_mono",
"The monolevel of the karaoke. Default is `1.0`": "El nivel mono del karaoke. Por defecto es `1.0`.",
"filterband": "banda_filtro",
"The filter band of the karaoke. Default is `220.0`": "La banda de filtro del karaoke. Por defecto es `220.0`.",
"filterwidth": "ancho_filtro",
"The filter band of the karaoke. Default is `100.0`": "El ancho de filtro del karaoke. Por defecto es `100.0`.",
"tremolo": "tremolo",
"Uses amplification to create a shuddering effect, where the volume quickly oscillates.": "Usa amplificación para crear un efecto de vibración donde el volumen oscila rápidamente.",
"frequency": "frecuencia",
"The frequency of the tremolo. Default is `2.0`": "La frecuencia del tremolo. Por defecto es `2.0`.",
"depth": "profundidad",
"The depth of the tremolo. Default is `0.5`": "La profundidad del tremolo. Por defecto es `0.5`.",
"vibrato": "vibrato",
"Similar to tremolo. While tremolo oscillates the volume, vibrato oscillates the pitch.": "Similar al tremolo. Mientras el tremolo oscila el volumen, el vibrato oscila el tono.",
"The frequency of the vibrato. Default is `2.0`": "La frecuencia del vibrato. Por defecto es `2.0`.",
"The Depth of the vibrato. Default is `0.5`": "La profundidad del vibrato. Por defecto es `0.5`.",
"rotation": "rotacion",
"Rotates the sound around the stereo channels/user headphones aka Audio Panning.": "Rota el sonido alrededor de los canales estéreo/auriculares del usuario (panorámica de audio).",
"hertz": "hertz",
"The hertz of the rotation. Default is `0.2`": "Los hertz de la rotación. Por defecto es `0.2`.",
"distortion": "distorsion",
"Distortion effect. It can generate some pretty unique audio effects.": "Efecto de distorsión. Puede generar efectos de audio bastante únicos.",
"lowpass": "paso_bajo",
"Filter which supresses higher frequencies and allows lower frequencies to pass.": "Filtro que suprime frecuencias altas y permite que pasen las frecuencias bajas.",
"smoothing": "suavizado",
"The level of the lowPass. Default is `20.0`": "El nivel del paso bajo. Por defecto es `20.0`.",
"channelmix": "mezcla_canales",
"Filter which manually adjusts the panning of the audio.": "Filtro que ajusta manualmente la panorámica del audio.",
"left_to_left": "izq_a_izq",
"Sounds from left to left. Default is `1.0`": "Sonido de izquierda a izquierda. Por defecto es `1.0`.",
"right_to_right": "der_a_der",
"Sounds from right to right. Default is `1.0`": "Sonido de derecha a derecha. Por defecto es `1.0`.",
"left_to_right": "izq_a_der",
"Sounds from left to right. Default is `0.0`": "Sonido de izquierda a derecha. Por defecto es `0.0`.",
"right_to_left": "der_a_izq",
"Sounds from right to left. Default is `0.0`": "Sonido de derecha a izquierda. Por defecto es `0.0`.",
"nightcore": "nightcore",
"Add nightcore filter into your player.": "Añade el filtro nightcore a tu reproductor.",
"Add 8D filter into your player.": "Añade el filtro 8D a tu reproductor.",
"vaporwave": "vaporwave",
"Add vaporwave filter into your player.": "Añade el filtro vaporwave a tu reproductor.",
"cleareffect": "limpiar_efectos",
"Clear all or specific sound effects.": "Limpia todos o efectos de sonido específicos.",
"effect": "efecto",
"Remove a specific sound effects.": "Elimina efectos de sonido específicos.",
"start": "inicio",
"end": "fin",
"Specify a time you would like to start, e.g. 1:00": "Especifica la hora a la que quieres empezar, ej. 1:00.",
"Specify a time you would like to end, e.g. 4:00": "Especifica la hora a la que quieres terminar, ej. 4:00.",
"list": "lista",
"Customize the channel topic template": "Personaliza la plantilla del tema del canal.",
"template": "plantilla",
"setupchannel": "configurar_canal",
"Sets up a dedicated channel for song requests in your server.": "Configura un canal dedicado para peticiones de canciones en tu servidor.",
"Provide a request channel. If not, a text channel will be generated.": "Proporciona un canal de peticiones. Si no, se generará un canal de texto.",
"ping": "ping",
"…": "...",
"8d": "8d",
"dj": "dj",
"247": "247",
"stageannounce": "anuncio_escenario",
"Soundcloud": "Soundcloud",
"Fairqueue":"ColaJusta",
"togglecontroller":"cambiarcontrolador"
}

View File

@@ -229,5 +229,7 @@
"dj": "dj",
"247": "247",
"stageannounce": "舞台公告",
"Soundcloud": "Soundcloud"
"Soundcloud": "Soundcloud",
"Fairqueue": "公平隊列",
"togglecontroller": "切換控制器"
}

27
main.py
View File

@@ -45,7 +45,7 @@ class Translator(discord.app_commands.Translator):
async def translate(self, string: discord.app_commands.locale_str, locale: discord.Locale, context: discord.app_commands.TranslationContext):
locale_key = str(locale)
if locale_key in func.LOCAL_LANGS:
translated_text = func.LOCAL_LANGS[locale_key].get(string.message)
@@ -53,9 +53,9 @@ class Translator(discord.app_commands.Translator):
missing_translations = func.MISSING_TRANSLATOR.setdefault(locale_key, [])
if string.message not in missing_translations:
missing_translations.append(string.message)
return translated_text
return None
class Vocard(commands.Bot):
@@ -89,13 +89,13 @@ class Vocard(commands.Bot):
elif message.attachments:
for attachment in message.attachments:
await cmd(ctx, query=attachment.url)
except Exception as e:
await func.send(ctx, str(e), ephemeral=True)
finally:
return await message.delete()
await self.process_commands(message)
async def connect_db(self) -> None:
@@ -110,19 +110,19 @@ class Vocard(commands.Bot):
except Exception as e:
func.logger.error("Not able to connect MongoDB! Reason:", exc_info=e)
exit()
func.SETTINGS_DB = func.MONGO_DB[db_name]["Settings"]
func.USERS_DB = func.MONGO_DB[db_name]["Users"]
async def setup_hook(self) -> None:
func.langs_setup()
# Connecting to MongoDB
await self.connect_db()
# Set translator
await self.tree.set_translator(Translator())
# Loading all the module in `cogs` folder
for module in os.listdir(func.ROOT_DIR + '/cogs'):
if module.endswith('.py'):
@@ -139,6 +139,7 @@ class Vocard(commands.Bot):
except Exception as e:
func.logger.error(f"Cannot connected to dashboard! - Reason: {e}")
# Update version tracking
if not func.settings.version or func.settings.version != update.__version__:
await self.tree.sync()
func.update_json("settings.json", new_data={"version": update.__version__})
@@ -162,7 +163,7 @@ class Vocard(commands.Bot):
error = getattr(exception, 'original', exception)
if ctx.interaction:
error = getattr(error, 'original', error)
if isinstance(error, (commands.CommandNotFound, aiohttp.client_exceptions.ClientOSError, discord.errors.NotFound)):
return
@@ -184,7 +185,7 @@ class Vocard(commands.Bot):
elif not issubclass(error.__class__, voicelink.VoicelinkException):
error = await func.get_lang(ctx.guild.id, "unknownException") + func.settings.invite_link
func.logger.error(f"An unexpected error occurred in the {ctx.command.name} command on the {ctx.guild.name}({ctx.guild.id}).", exc_info=exception)
try:
return await ctx.reply(error, ephemeral=True)
except:
@@ -225,7 +226,7 @@ if (LOG_FILE := LOG_SETTINGS.get("file", {})).get("enable", True):
for log_name, log_level in LOG_SETTINGS.get("level", {}).items():
_logger = logging.getLogger(log_name)
_logger.setLevel(log_level)
# Setup the bot object
intents = discord.Intents.default()
intents.message_content = False if func.settings.bot_prefix is None else True
@@ -244,4 +245,4 @@ bot = Vocard(
if __name__ == "__main__":
update.check_version(with_msg=True)
bot.run(func.settings.token, root_logger=True)
bot.run(func.settings.token, root_logger=True)