diff --git a/lang/lang/es-MX.json b/lang/lang/es-MX.json new file mode 100644 index 0000000..8ca3e2b --- /dev/null +++ b/lang/lang/es-MX.json @@ -0,0 +1,144 @@ +{ + "title": "WPlace Auto-Imagen", + "toggleOverlay": "Alternar superposición", + "scanColors": "Escanear colores", + "uploadImage": "Subir imagen", + "resizeImage": "Cambiar tamaño de imagen", + "selectPosition": "Seleccionar posición", + "startPainting": "Iniciar pintado", + "stopPainting": "Detener pintado", + "checkingColors": "🔍 Verificando colores disponibles...", + "noColorsFound": "❌ ¡Abre la paleta de colores en el sitio e inténtalo de nuevo!", + "colorsFound": "✅ Se encontraron {count} colores disponibles. Listo para subir.", + "loadingImage": "🖼️ Cargando imagen...", + "imageLoaded": "✅ Imagen cargada con {count} píxeles válidos", + "imageError": "❌ Error al cargar la imagen", + "selectPositionAlert": "¡Pinta el primer píxel en la ubicación donde quieres que comience el arte!", + "waitingPosition": "👆 Esperando que pintes el píxel de referencia...", + "positionSet": "✅ ¡Posición establecida con éxito!", + "positionTimeout": "❌ Tiempo de espera para seleccionar la posición agotado", + "startPaintingMsg": "🎨 Iniciando pintado...", + "paintingProgress": "🧱 Progreso: {painted}/{total} píxeles...", + "noCharges": "⌛ Sin cargas. Esperando {time}...", + "paintingStopped": "⏹️ Pintado detenido por el usuario", + "paintingComplete": "✅ ¡Pintado completo! Se pintaron {count} píxeles.", + "paintingError": "❌ Error durante el pintado", + "missingRequirements": "❌ Primero carga una imagen y selecciona una posición", + "progress": "Progreso", + "pixels": "Píxeles", + "charges": "Cargas", + "estimatedTime": "Tiempo estimado", + "initMessage": "Haz clic en 'Subir imagen' para comenzar", + "waitingInit": "Esperando inicialización...", + "initializingToken": "🔧 Inicializando generador de token Turnstile...", + "tokenReady": "✅ ¡Generador de token listo! Ya puedes empezar a pintar.", + "tokenRetryLater": "⚠️ El generador de token volverá a intentarlo cuando sea necesario", + "resizeSuccess": "✅ Imagen redimensionada a {width}x{height}", + "paintingPaused": "⏸️ Pintado pausado en la posición X: {x}, Y: {y}", + "captchaNeeded": "❗ Falló la generación de token. Por favor, inténtalo de nuevo en un momento.", + "saveData": "Guardar progreso", + "loadData": "Cargar progreso", + "saveToFile": "Guardar en archivo", + "loadFromFile": "Cargar desde archivo", + "dataManager": "Gestor de datos", + "autoSaved": "✅ Progreso guardado automáticamente", + "dataLoaded": "✅ Progreso cargado con éxito", + "fileSaved": "✅ Progreso guardado en archivo con éxito", + "fileLoaded": "✅ Progreso cargado desde archivo con éxito", + "noSavedData": "❌ No se encontró progreso guardado", + "savedDataFound": "✅ ¡Se encontró progreso guardado! ¿Cargar para continuar?", + "savedDate": "Guardado el: {date}", + "clickLoadToContinue": "Haz clic en 'Cargar progreso' para continuar.", + "fileError": "❌ Error al procesar el archivo", + "invalidFileFormat": "❌ Formato de archivo inválido", + "paintingSpeed": "Velocidad de pintado", + "pixelsPerSecond": "píxeles/segundo", + "speedSetting": "Velocidad: {speed} píxeles/seg", + "settings": "Ajustes", + "botSettings": "Ajustes del bot", + "close": "Cerrar", + "language": "Idioma", + "themeSettings": "Ajustes de tema", + "themeSettingsDesc": "Elige tu tema de color preferido para la interfaz.", + "languageSelectDesc": "Selecciona tu idioma preferido. Los cambios se aplicarán inmediatamente.", + "autoCaptcha": "Solucionador automático de CAPTCHA (Turnstile)", + "autoCaptchaDesc": "Genera automáticamente tokens de Turnstile usando el generador integrado. Utiliza la automatización del navegador como alternativa si es necesario.", + "applySettings": "Aplicar ajustes", + "settingsSaved": "✅ ¡Ajustes guardados con éxito!", + "speedOn": "Activado", + "speedOff": "Desactivado", + "cooldownSettings": "Ajustes de tiempo de espera", + "waitCharges": "Esperar hasta que las cargas lleguen a", + "captchaSolving": "🔑 Generando token de Turnstile...", + "captchaFailed": "❌ Falló la generación de token de Turnstile. Probando método alternativo...", + "automation": "Automatización", + "noChargesThreshold": "⌛ Esperando que las cargas lleguen a {threshold}. Actual: {current}. Siguiente en {time}...", + "tokenCapturedSuccess": "¡Token capturado con éxito! Ya puedes iniciar el bot.", + "notificationsNotSupported": "Las notificaciones no son compatibles con este navegador.", + "chargesReadyNotification": "WPlace — Cargas listas", + "chargesReadyMessage": "Cargas listas: {current} / {max}. Umbral: {threshold}.", + "testNotificationTitle": "WPlace — Prueba", + "testNotificationMessage": "Esta es una notificación de prueba.", + "showStats": "Mostrar estadísticas", + "compactMode": "Modo compacto", + "refreshCharges": "Actualizar cargas", + "closeStats": "Cerrar estadísticas", + "zoomOut": "Alejar", + "zoomIn": "Acercar", + "fitToView": "Ajustar a la vista", + "actualSize": "Tamaño real (100%)", + "panMode": "Desplazamiento (arrastra para mover la vista)", + "clearIgnoredPixels": "Limpiar todos los píxeles ignorados", + "invertMask": "Invertir máscara", + "waitingSetupComplete": "🔄 Esperando que se complete la configuración inicial...", + "waitingTokenGenerator": "🔄 Esperando que se inicialice el generador de tokens...", + "uploadImageFirst": "Sube una imagen primero para capturar los colores disponibles", + "pleaseWaitInitialSetup": "🔄 Por favor, espera a que se complete la configuración inicial antes de cargar el progreso.", + "pleaseWaitFileSetup": "🔄 Por favor, espera a que se complete la configuración inicial antes de cargar desde un archivo.", + "errorSavingProgress": "❌ Error al guardar el progreso", + "errorLoadingProgress": "❌ Error al cargar el progreso", + "fileOperationsAvailable": "📂 ¡Las operaciones de archivo (Cargar/Subir) ya están disponibles!", + "tokenGeneratorReady": "🔑 ¡Generador de tokens listo!", + "paintingStats": "Estadísticas de pintado", + "enablePaintingSpeedLimit": "Activar límite de velocidad de pintado (control de lotes)", + "enableNotifications": "Activar notificaciones", + "notifyOnChargesThreshold": "Notificar cuando las cargas alcancen el umbral", + "onlyWhenNotFocused": "Solo cuando la pestaña no esté en foco", + "repeatEvery": "Repetir cada", + "minutesPl": "minuto(s)", + "grantPermission": "Otorgar permiso", + "test": "Probar", + "showAllColorsIncluding": "Mostrar todos los colores (incluidos los no disponibles)", + "chromaWeight": "Peso de croma", + "downloadPreview": "Descargar vista previa", + "apply": "Aplicar", + "cancel": "Cancelar", + "fit": "Ajustar", + "hundred": "100%", + "clear": "Limpiar", + "invert": "Invertir", + "reprocessingOverlay": "Reprocesando superposición...", + "overlayUpdated": "¡Superposición actualizada!", + "notificationsEnabled": "Notificaciones activadas.", + "notificationsPermissionDenied": "Permiso de notificaciones denegado.", + "overlayEnabled": "Superposición activada.", + "overlayDisabled": "Superposición desactivada.", + "tokenSourceSet": "Fuente de token establecida en: {source}", + "batchModeSet": "Modo por lotes establecido en: {mode}", + "randomRange": "Rango aleatorio", + "normalFixedSize": "Tamaño fijo normal", + "advancedColorSettingsReset": "Ajustes de color avanzados restablecidos.", + "shiftRowAltColumn": "Shift = Fila • Alt = Columna", + "hideTurnstileBtn": "Ocultar", + "turnstileInstructions": "Cloudflare Turnstile — por favor, completa la verificación si se muestra", + "uploadImageFirstColors": "Por favor, sube una imagen primero para capturar los colores disponibles", + "availableColors": "Colores disponibles ({count})", + "colorTooltip": "ID: {id}\nRGB: {rgb}", + "expandMode": "Modo expandido", + "minimize": "Minimizar", + "restore": "Restaurar", + "hideStats": "Ocultar estadísticas", + "paintOptions": "Opciones de pintado", + "paintWhitePixels": "Pintar píxeles blancos", + "paintTransparentPixels": "Pintar píxeles transparentes" +}