From 723adceb25172ef3dae088b35b4ea31d31027512 Mon Sep 17 00:00:00 2001 From: Kalista Payne Date: Mon, 6 Jan 2025 15:43:07 -0600 Subject: [PATCH 1/7] chore(migrations): cute default and updateOne --- migrations/users/full-gear.js | 4 ++-- migrations/users/full-stable.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/migrations/users/full-gear.js b/migrations/users/full-gear.js index e47b6f85399..1cc041d8851 100644 --- a/migrations/users/full-gear.js +++ b/migrations/users/full-gear.js @@ -27,13 +27,13 @@ async function updateUser (user) { if (count % progressCount === 0) console.warn(`${count} ${user._id}`); - return User.update({ _id: user._id }, { $set: set }).exec(); + return User.updateOne({ _id: user._id }, { $set: set }).exec(); } export default async function processUsers () { const query = { migration: { $ne: MIGRATION_NAME }, - 'auth.local.lowerCaseUsername': 'olson1', + 'auth.local.username': 'ExampleHabitican', }; const fields = { diff --git a/migrations/users/full-stable.js b/migrations/users/full-stable.js index 01d6e044645..78375052400 100644 --- a/migrations/users/full-stable.js +++ b/migrations/users/full-stable.js @@ -57,7 +57,7 @@ async function updateUser (user) { export default async function processUsers () { const query = { migration: { $ne: MIGRATION_NAME }, - 'auth.local.username': 'SabreTest', + 'auth.local.username': 'ExampleHabitican', }; const fields = { From 6676e94ef6e2a2d668ac24cfb0d6397075f6fbfa Mon Sep 17 00:00:00 2001 From: Weblate Date: Mon, 6 Jan 2025 22:52:42 +0100 Subject: [PATCH 2/7] Translated using Weblate (Spanish (Latin America)) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Currently translated at 100.0% (140 of 140 strings) Translated using Weblate (Spanish (Latin America)) Currently translated at 100.0% (140 of 140 strings) Translated using Weblate (Spanish (Latin America)) Currently translated at 100.0% (140 of 140 strings) Translated using Weblate (Spanish (Latin America)) Currently translated at 95.7% (134 of 140 strings) Translated using Weblate (Spanish (Latin America)) Currently translated at 100.0% (8 of 8 strings) Translated using Weblate (Italian) Currently translated at 9.4% (23 of 243 strings) Translated using Weblate (Italian) Currently translated at 99.3% (887 of 893 strings) Translated using Weblate (Italian) Currently translated at 99.3% (887 of 893 strings) Translated using Weblate (Russian) Currently translated at 91.4% (2978 of 3255 strings) Translated using Weblate (Portuguese) Currently translated at 97.2% (177 of 182 strings) Translated using Weblate (French) Currently translated at 100.0% (261 of 261 strings) Translated using Weblate (French) Currently translated at 99.2% (259 of 261 strings) Translated using Weblate (Spanish) Currently translated at 100.0% (261 of 261 strings) Translated using Weblate (Spanish) Currently translated at 100.0% (134 of 134 strings) Translated using Weblate (Spanish) Currently translated at 100.0% (3255 of 3255 strings) Co-authored-by: Chase7-Diaphragm0-Jeeringly7-Smartly2-Drainer5 Co-authored-by: Gabrielle Renoir Co-authored-by: Jaime Martí Co-authored-by: Kesabirria Co-authored-by: Oscar Rodríguez Díaz Co-authored-by: Raquel Pantojo de Souza Bachour Co-authored-by: Sophie LE MASLE Co-authored-by: Val <3qes0hnzh@mozmail.com> Co-authored-by: Vitaliia Reinberg Co-authored-by: Weblate Translate-URL: https://translate.habitica.com/projects/habitica/backgrounds/it/ Translate-URL: https://translate.habitica.com/projects/habitica/faq/it/ Translate-URL: https://translate.habitica.com/projects/habitica/front/pt/ Translate-URL: https://translate.habitica.com/projects/habitica/gear/es/ Translate-URL: https://translate.habitica.com/projects/habitica/gear/ru/ Translate-URL: https://translate.habitica.com/projects/habitica/npc/es/ Translate-URL: https://translate.habitica.com/projects/habitica/overview/es_419/ Translate-URL: https://translate.habitica.com/projects/habitica/subscriber/es/ Translate-URL: https://translate.habitica.com/projects/habitica/subscriber/fr/ Translate-URL: https://translate.habitica.com/projects/habitica/tasks/es_419/ Translation: Habitica/Backgrounds Translation: Habitica/Faq Translation: Habitica/Front Translation: Habitica/Gear Translation: Habitica/Npc Translation: Habitica/Overview Translation: Habitica/Subscriber Translation: Habitica/Tasks --- website/common/locales/es/gear.json | 4 ++-- website/common/locales/es/npc.json | 3 ++- website/common/locales/es/subscriber.json | 9 +++---- website/common/locales/es_419/overview.json | 3 ++- website/common/locales/es_419/tasks.json | 26 +++++++++++++-------- website/common/locales/fr/subscriber.json | 8 +++---- website/common/locales/it/backgrounds.json | 11 ++++++--- website/common/locales/it/faq.json | 17 ++++++++------ website/common/locales/pt/front.json | 2 +- website/common/locales/ru/gear.json | 12 ++++++++-- 10 files changed, 60 insertions(+), 35 deletions(-) diff --git a/website/common/locales/es/gear.json b/website/common/locales/es/gear.json index f7024bfee35..b8de8bc79c2 100644 --- a/website/common/locales/es/gear.json +++ b/website/common/locales/es/gear.json @@ -3248,10 +3248,10 @@ "shieldSpecialWinter2025HealerNotes": "El regalo perfecto te está esperando a que lo abras. ¿Que clase de brujería contendrá? Aumenta la Constitución en <%= con %>. Equipamiento de edición limitada Invierno 2024-2025.", "armorArmoireSnowyFluffTrimmedCoatNotes": "Cuando los primeros copos de nieve caigan a tu alrededor, este abrigo no solo te mantendrá calentito, sino que también te ayudará a mimetizarte perfectamente con el entorno nevado. ¡Deslízate sobre el hielo con estilo! Aumenta la fuerza y la inteligencia en <%= attrs %> cada una. Armario encantado: conjunto de sombrero de trampero nevado (artículo 2 de 2).", "armorArmoireSnowyFluffTrimmedCoatText": "Chaqueta de plumas con capucha", - "headMystery202501Text": "Sombrero de Aglutinador de escarcha", + "headMystery202501Text": "Sombrero de Vinculaescarcha Pálido", "headMystery202501Notes": "Este sombrero brillante genera un ambiente festivo y luminoso a tu alrededor en todo momento. No aporta ningún beneficio. Artículo para suscriptores de enero de 2025.", "headArmoireSnowyTrapperHatText": "Sombrero de trampero nevado", "headArmoireSnowyTrapperHatNotes": "Las orejas azules y congeladas serán cosa del pasado. ¡Disfruta de una calidez acogedora con estilo! Aumenta la Constitución y la Percepción en <%= attrs %> cada una. Armario encantado: conjunto de sombrero de trampero nevado (objeto 1 de 2).", - "shieldMystery202501Text": "Bastón del Aglutinador de escarcha", + "shieldMystery202501Text": "Bastón de Vinculaescarcha Pálido", "shieldMystery202501Notes": "Decora cualquier escenario al aire libre con una capa de diamante de escarcha brillante. No aporta ningún beneficio. Artículo para suscriptores de enero de 2025." } diff --git a/website/common/locales/es/npc.json b/website/common/locales/es/npc.json index 62ba1e2e4d4..85d71ab6671 100644 --- a/website/common/locales/es/npc.json +++ b/website/common/locales/es/npc.json @@ -131,5 +131,6 @@ "helpSupportHabitica": "Ayuda a apoyar a Habitica", "sellItems": "Vender objetos", "notAvailable": "Este artículo no está disponible.", - "customizationsShopText": "¿Necesitas un cambio de estilo? ¡Has llegado al lugar adecuado! Tenemos los complementos más actuales para que encajes en la temporada." + "customizationsShopText": "¿Necesitas un cambio de estilo? ¡Has llegado al lugar adecuado! Tenemos los complementos más actuales para que encajes en la temporada.", + "paymentYouSentSubscriptionG1G1": "Enviaste a <%- name %>
una suscripción a Habitica de <%= months %> mes(es), ¡y la misma suscripción se aplicó a tu cuenta para nuestra promoción Regala uno y llévate otro!" } diff --git a/website/common/locales/es/subscriber.json b/website/common/locales/es/subscriber.json index 33dd21c61b0..07d54930a5e 100644 --- a/website/common/locales/es/subscriber.json +++ b/website/common/locales/es/subscriber.json @@ -244,19 +244,20 @@ "recurringMonthly": "De forma recurrente por mes", "recurringNMonthly": "Recurrente cada <%= length %> meses", "earn2Gems": "Gana +2 Gemas por cada mes que estés suscrito", - "maxGemCap": "Máxima Capacidad de Gemas", + "maxGemCap": "Empieza con el máximo deCapacidad de Gemas", "monthlyGemsLabel": "Gemas Mensuales", "popular": "Habitual", "immediate12Hourglasses": "¡Obtén 12 Relojes de Arena místicos inmediatamente la primera vez que te suscribas por 12 meses!", "selectPayment": "Selecciona Pago", "monthlyMysticHourglass": "Reloj de arena Místico Mensual", - "unlockNGems": "Desbloquea <%= count %> Gemas al mes instantáneamente", + "unlockNGems": "Desbloquea <%= count %> Gemas al mes en el Mercado", "subscribe": "Suscribirse", "giftSubscriptionLeadText": "¡Elige una de las suscripciones que te gustaría regalar de las de abajo! Esta compra no se renovará de forma automática.", "oneMonthGift": "Por 1 mes", "nMonthsGift": "Por <%= months %> meses", "earn2GemsGift": "Ellos ganarán +2 Gemas cada mes que estén suscritos", "subscribeAgainContinueHourglasses": "Suscríbete de nuevo para seguir recibiendo Relojes de Arena místicos", - "unlockNGemsGift": "Ellos desbloquearan <%= count %> Gemas al mes instantáneamente", - "maxGemCapGift": "Ellos tendrán el máximo Capacidad de Gemas" + "unlockNGemsGift": "Ellos desbloquearan <%= count %> Gemas al mes en el mercado", + "maxGemCapGift": "Ellos tendrán el máximo Capacidad de Gemas", + "mysterySet202501": "Conjunto Vinculaescarcha Pálido" } diff --git a/website/common/locales/es_419/overview.json b/website/common/locales/es_419/overview.json index 3437203a2ef..b8393344bfa 100644 --- a/website/common/locales/es_419/overview.json +++ b/website/common/locales/es_419/overview.json @@ -5,5 +5,6 @@ "step2": "Paso 2: Gana Puntos Haciendo Cosas en la Vida Real", "webStep2Text": "Ahora, ¡empieza a trabajar en las metas de tu lista! A medida de que vayas completando tareas marcándolas en Habitica, ganarás [Experiencia](https://habitica.fandom.com/es/wiki/Puntos_de_Experiencia), que te ayudará a subir de nivel, y [Oro](https://habitica.fandom.com/es/wiki/Oro), que te permitirá adquirir Recompensas. Si caes en malos hábitos u olvidas tus Tareas Diarias, perderás [Salud](https://habitica.fandom.com/wiki/Health_Points). De esta forma, las barras de Experiencia y Salud de Habitica sirven como divertidos indicadores de progreso hacia tus metas. Empezarás a ver como tu vida real mejora a medida que tu personaje avanza en el juego.", "step3": "Paso 3: Personaliza y Explora Habitica", - "webStep3Text": "Una vez te hayas familiarizado con lo básico, puedes obtener aún más de Habitica con estas ingeniosas funciones:\n * Organiza tus tareas con [etiquetas](https://habitica.fandom.com/es/wiki/Etiquetas) (edita una Tarea para añadirlas).\n * Personaliza tu [Avatar](https://habitica.fandom.com/wiki/Avatar) haciendo click en el ícono de usuario en la esquina superior derecha.\n * Compra tu [Equipamiento](https://habitica.fandom.com/wiki/Equipment) en Recompensas o en las [Tiendas](<%= shopUrl %>), y cámbialo en [Inventario > Equipamiento](<%= equipUrl %>).\n * Conecta con otros usuarios en la [Taberna](https://habitica.fandom.com/wiki/Tavern).\n * Eclosiona [Mascotas](https://habitica.fandom.com/es/wiki/Mascotas) coleccionando [Huevos](https://habitica.fandom.com/es/wiki/Huevos) y [Pociones de Eclosión](https://habitica.fandom.com/es/wiki/Pociones_de_Eclosi%C3%B3n). [Aliméntalas](https://habitica.fandom.com/es/wiki/Comida) para crear [Monturas](https://habitica.fandom.com/es/wiki/Monturas).\n * En el nivel 10: Elige una [Clase](https://habitica.fandom.com/wiki/Class_System) particular y luego usa [Habilidades](https://habitica.fandom.com/wiki/Skills) específicas de cada una (niveles del 11 al 14).\n * Forma un Equipo con tus amigos (haciendo click en [Equipo](<%= partyUrl %>) en la barra de navegación) para mantenerse responsables y obtén un pergamino de Misión.\n * Derrota monstruos y colecciona objetos en [Misiones](https://habitica.fandom.com/wiki/Quests) (recibirás una misión en el nivel 15)." + "webStep3Text": "Una vez te hayas familiarizado con lo básico, puedes obtener aún más de Habitica con estas ingeniosas funciones:\n * Organiza tus tareas con [etiquetas](https://habitica.fandom.com/es/wiki/Etiquetas) (edita una Tarea para añadirlas).\n * Personaliza tu [Avatar](https://habitica.fandom.com/wiki/Avatar) haciendo click en el ícono de usuario en la esquina superior derecha.\n * Compra tu [Equipamiento](https://habitica.fandom.com/wiki/Equipment) en Recompensas o en las [Tiendas](<%= shopUrl %>), y cámbialo en [Inventario > Equipamiento](<%= equipUrl %>).\n * Conecta con otros usuarios con la [Herramienta para buscar equipo](https://habitica.com/looking-for-party).\n * Eclosiona [Mascotas](https://habitica.fandom.com/es/wiki/Mascotas) coleccionando [Huevos](https://habitica.fandom.com/es/wiki/Huevos) y [Pociones de Eclosión](https://habitica.fandom.com/es/wiki/Pociones_de_Eclosi%C3%B3n). [Aliméntalas](https://habitica.fandom.com/es/wiki/Comida) para crear [Monturas](https://habitica.fandom.com/es/wiki/Monturas).\n * En el nivel 10: Elige una [Clase](https://habitica.fandom.com/wiki/Class_System) particular y luego usa [Habilidades](https://habitica.fandom.com/wiki/Skills) específicas de cada una (niveles del 11 al 14).\n * Forma un Equipo con tus amigos (haciendo click en [Equipo](<%= partyUrl %>) en la barra de navegación) para mantenerse responsables y obtén un pergamino de Misión.\n * Derrota monstruos y colecciona objetos en [Misiones](https://habitica.fandom.com/wiki/Quests) (recibirás una misión en el nivel 15).", + "overviewQuestionsRevised": "¿Tienes preguntas? Consulta nuestras Preguntas frecuentes. Si tu duda persiste, puedes pedir ayuda utilizando este formulario: " } diff --git a/website/common/locales/es_419/tasks.json b/website/common/locales/es_419/tasks.json index 088f4e9867d..ef740e264b7 100644 --- a/website/common/locales/es_419/tasks.json +++ b/website/common/locales/es_419/tasks.json @@ -1,8 +1,8 @@ { "clearCompleted": "Borrar completados", - "clearCompletedDescription": "Las Tareas Pendientes completadas se eliminan después de 30 días para los no suscriptores y de 90 días para los suscriptores.", - "clearCompletedConfirm": "¿Estás seguro que quieres borrar tus Tareas Pendientes completadas?", - "addMultipleTip": "Tip: Para añadir múltiples <%= taskType %>, separa cada una con un salto de línea (Shift + Enter) y, luego, presiona \"Enter.\"", + "clearCompletedDescription": "Las Tareas completadas se eliminan después de 30 días para los no suscriptores y de 90 días para los suscriptores.", + "clearCompletedConfirm": "¿Estás seguro que quieres borrar tus Tareas completadas?", + "addMultipleTip": "Tip: Para añadir múltiples <%= taskType %>, separa cada una con un salto de línea (Shift + Enter) y, luego, presiona \"Enter\".", "addATask": "Agrega un/a <%= type %>", "editATask": "Editar <%= type %>", "createTask": "Crear <%= type %>", @@ -26,7 +26,7 @@ "notes": "Notas", "advancedSettings": "Opciones avanzadas", "difficulty": "Dificultad", - "difficultyHelp": "La Dificultad describe qué tan difícil es completar un Hábito, Tarea Diaria o Pendiente para ti. Una mayor dificultad resulta en mayores recompensas cuando completas una tarea pero, también, mayor daño cuando te saltas una Tarea Diaria o haces click en un Hábito negativo.", + "difficultyHelp": "La Dificultad describe qué tan difícil es completar un Hábito, Tarea Diaria o Tarea para ti. Una mayor dificultad resulta en mayores recompensas cuando completas una tarea pero, también, mayor daño cuando te saltas una Tarea Diaria o haces click en un Hábito negativo.", "trivial": "Trivial", "easy": "Fácil", "medium": "Intermedio", @@ -45,9 +45,9 @@ "days": "Días", "restoreStreak": "Ajustar Racha", "resetStreak": "Resetear Racha", - "todo": "Pendiente", - "todos": "Pendientes", - "todosDesc": "Las Pendientes sólo deben completarse una vez. Agrega listas a tus Pendientes para incrementar su valor.", + "todo": "Tarea", + "todos": "Tareas", + "todosDesc": "Las Tareas sólo deben completarse una vez. Agrega listas a tus Tareas para incrementar su valor.", "dueDate": "Fecha de vencimiento", "remaining": "Activas", "complete": "Hechas", @@ -85,7 +85,7 @@ "taskToTop": "Hacia arriba", "taskToBottom": "Hacia abajo", "taskAliasAlreadyUsed": "El alias de la tarea ya ha sido utilizado en otra.", - "invalidTaskType": "El tipo de tarea debe ser:\"Habitos\",\"Diarias\",\"Pendientes\" o \"Recompensas\".", + "invalidTaskType": "El tipo de tarea debe ser \"Hábito\", \"Tarea Diaria\", \"Tarea\" o \"Recompensa\".", "invalidTasksType": "El tipo de tarea debe ser uno de \"hábitos\", \"diarias\", \"pendientes\", \"recompensas\".", "invalidTasksTypeExtra": "El tipo de tarea debe ser uno de \"hábitos\", \"diarias\", \"pendientes\", \"recompensas\", \"pendientesCompletadas\".", "cantDeleteChallengeTasks": "Una tarea perteneciente a un desafio no puede ser eliminada.", @@ -95,7 +95,7 @@ "tagNotFound": "Ningun objeto de etiqueta fue encontrado con el id proporcionado.", "tagIdRequired": "\"tagId\" debe ser un UUID valido correspondiente a la etiqueta perteneciente al usuario.", "positionRequired": "\"position\" es requerida y debe ser un numero.", - "cantMoveCompletedTodo": "No se puede mover un pendiente completado.", + "cantMoveCompletedTodo": "No se puede mover una tarea completada.", "alreadyTagged": "La tarea ya esta etiquetada con la etiqueta proporcionada.", "taskRequiresApproval": "Esta tarea debe ser aprovada antes de que la puedas completar. La aprobación ya ha sido solicitada", "taskApprovalHasBeenRequested": "La aprobación ha sido solicitada", @@ -132,5 +132,11 @@ "counter": "Contador", "editTagsText": "Editar Etiquetas", "adjustCounter": "Ajustar Contador", - "resetCounter": "Reiniciar Contador" + "resetCounter": "Reiniciar Contador", + "taskAliasPopover": "El alias de tarea puede usarse al conectar con integraciones de terceros. Solo se admiten guiones, guiones bajos y caracteres alfanuméricos. El alias de la tarea debe ser único entre todas tus tareas.", + "taskAlias": "Alias de Tarea", + "taskAliasPlaceholder": "tú-alias-de-tarea-aquí", + "taskSummary": "<%= type %> Resumen", + "scoreUp": "Puntuar positivamente", + "scoreDown": "Puntuar negativamente" } diff --git a/website/common/locales/fr/subscriber.json b/website/common/locales/fr/subscriber.json index ad3c6890e1d..10e3fcd954d 100644 --- a/website/common/locales/fr/subscriber.json +++ b/website/common/locales/fr/subscriber.json @@ -169,7 +169,7 @@ "mysterySet202009": "Ensemble de mite merveilleuse", "supportHabitica": "Soutenir Habitica", "cancelSubInfoApple": "Veuillez suivre les instructions officielles d'Apple pour annuler votre abonnement, ou voir la date d'expiration de votre abonnement si vous l'avez déjà annulé. Cet écran ne pourra pas vous indiquer si votre abonnement a été annulé.", - "cancelSubInfoGoogle": "Pour annuler votre abonnement ou consulter la date de fin de celui-ci, merci d'utiliser le Google Play Store. Tous mois d'abonnement restants vous seront crédités après annulation.", + "cancelSubInfoGoogle": "Pour annuler votre abonnement ou consulter la date de fin de celui-ci, merci d'utiliser le Google Play Store. Les mois d'abonnement restants vous seront crédités après annulation.", "organization": "Organisation", "usuallyGems": "Généralement <%= originalGems %>", "mysterySet202010": "Ensemble de chauve-souris joyeuse", @@ -241,9 +241,9 @@ "monthlyMysticHourglass": "Sablier Mystique Mensuel", "resubscribeToPickUp": "Abonnez-vous de nouveau pour reprendre là où vous vous étiez arrêté·e !", "recurringMonthly": "Se répète tous les mois", - "unlockNGems": "Débloque immédiation <%= count %> Gemmes par mois", + "unlockNGems": "Débloque immédiatement <%= count %> Gemmes par mois", "earn2Gems": "Obtenez +2 Gemmes par mois d'abonnement", - "maxGemCap": "Limite de Gemmes Maximale", + "maxGemCap": "Commencez à la Limite maximale de Gemmes", "monthlyGemsLabel": "Gemmes Mensuelles", "popular": "Populaire", "immediate12Hourglasses": "Obtenez 12 Sabliers Mystiques immédiatement après vous être abonné·e la première fois pour 12 mois !", @@ -251,7 +251,7 @@ "selectPayment": "Choisir la Méthode de Paiement", "oneMonthGift": "Pour 1 mois", "nMonthsGift": "Pour <%= months %> mois", - "unlockNGemsGift": "Il·elle débloquera <%= count %> Gemmes par mois dès maintenant", + "unlockNGemsGift": "Il·elle débloquera <%= count %> Gemmes par mois au Marché", "earn2GemsGift": "Il·elle débloquera +2 Gemmes pour chaque mois d'abonnement", "maxGemCapGift": "Il·elle aura la Limite de Gemme maximale", "recurringNMonthly": "Se répète tous les <%= length %> mois", diff --git a/website/common/locales/it/backgrounds.json b/website/common/locales/it/backgrounds.json index 3f1af8c130a..519e729b705 100644 --- a/website/common/locales/it/backgrounds.json +++ b/website/common/locales/it/backgrounds.json @@ -749,7 +749,7 @@ "backgroundRimeIceText": "Brinata Scintillante", "backgroundRimeIceNotes": "Ammira la Brina Lucente.", "backgroundSnowyTempleText": "Templio Innevato", - "backgroundSnowyTempleNotes": "Osserva un Sereno Tempio Innevato.", + "backgroundSnowyTempleNotes": "Osserva un Tempio Sereno Innevato.", "backgroundWinterLakeWithSwansText": "Lago Invernale con i Cigni", "backgroundWinterLakeWithSwansNotes": "Goditi la natura presso un Lago Invernale con i Cigni.", "eventBackgrounds": "Sfondi Eventi", @@ -847,7 +847,7 @@ "backgroundSwanBoatText": "Barca a forma di Cigno", "backgroundHeartTreeTunnelText": "Tunnel nell'albero a forma di Cuore", "backgroundHeartTreeTunnelNotes": "Passa attraverso il Tunnel nell'albero a forma di Cuore.", - "backgrounds102024": "SET 124: Rilasciato Settembre 2024", + "backgrounds102024": "SET 124: Rilasciato Ottobre 2024", "backgroundSurroundedByGhostsText": "Circondato dai Fantasmi", "backgroundSurroundedByGhostsNotes": "Trascorri una serata lugubre circondato dai Fantasmi.", "backgroundAutumnTreeTunnelText": "Tunnel nell'albero Autunnale", @@ -880,5 +880,10 @@ "backgroundMaypoleNotes": "Balla intorno all'albero della cuccagna.", "backgroundPottersStudioText": "Studio del Vasaio", "backgroundPottersStudioNotes": "Crea arte nello studio del Vasaio.", - "monthlyBackgrounds": "Sfondi del Mese" + "monthlyBackgrounds": "Sfondi del Mese", + "backgroundFirstSnowForestText": "Prima neve nella foresta", + "backgrounds122024": "SET 127: rilasciato nel dicembre 2024", + "backgrounds012025": "SET 128: rilasciato nel gennaio 2025", + "backgroundFirstSnowForestNotes": "Calpesta la prima neve nella foresta.", + "backgrounds112024": "SET 126: Rilasciato a novembre 2024" } diff --git a/website/common/locales/it/faq.json b/website/common/locales/it/faq.json index a0ad0ddce78..e39ad6ec4f0 100644 --- a/website/common/locales/it/faq.json +++ b/website/common/locales/it/faq.json @@ -7,17 +7,20 @@ "faqQuestion25": "Quali sono i diversi tipi di attività?", "faqQuestion26": "Quali sono gli esempi di attività?", "faqQuestion27": "Perché le attività cambiano colore?", - "webFaqAnswer25": "Habitica usa tre diversi tipi di Attività per adattarsi alle tue necessità: Abitudini, Attività Giornaliere e Cose da Fare.\n\nLe Abitudini possono essere positive o negative e rappresentano qualcosa che potresti voler registrare più volte al giorno, o senza una pianificazione stabilita. Le Abitudini Positive ti faranno ricevere ricompense, come Oro ed Esperienza (Exp), mentre quelle Negative ti faranno perdere punti vita (HP).\n\nLe Attività giornaliere sono attività che si ripetono e che vuoi portare a compimento secondo una pianificazione più strutturata. Per esempio: una volta al giorno, tre volte a settimana, o quattro volte al mese. Non completare un'Attività Giornaliera ti farà perdere HP, ma più difficili sono, più grandi le ricompense!\n\nLe Cose da Fare sono attività da svolgere una volta soltanto che ti procureranno ricompense quando le avrai completate. Le Cose da Fare possono avere una data di scadenza, ma non perderai HP se non la rispetti.\n\nScegli il tipo di attività che più si addice a ciò che vuoi ottenere!", + "webFaqAnswer25": "Habitica utilizza tre diversi tipi di attività per soddisfare le tue esigenze: Abitudini, Quotidiane e Cose da fare.\n\nLe abitudini possono essere positive o negative e rappresentano qualcosa che potresti voler monitorare più volte al giorno o secondo un programma non definito. Le abitudini positive ti forniranno ricompense, come oro ed esperienza (Exp), mentre le abitudini negative ti faranno perdere punti salute (HP).\n\nLe quotidiane sono attività ripetute che desideri completare secondo un programma più strutturato. Per esempio. Una volta al giorno, tre volte alla settimana o quattro volte al mese. Le Dailies mancanti ti fanno perdere HP, ma più sono difficili, migliori saranno le ricompense!\n\nLe cose da fare sono attività una tantum che forniscono ricompense dopo averle completate. Le cose da fare possono avere una data di scadenza, ma non perderai HP se la perdi.\n\nScegli il tipo di attività che meglio si adatta a ciò che desideri ottenere!", "webFaqAnswer26": "Abitudini positive (Comportamenti che vuoi incoraggiare, dovrebbero avere un bottone \"più\")\n\n * Prendere vitamine\n * Usare il filo interdentale\n * Un'ora di studio\n\nAbitudini negative (Comportamenti che vuoi limitare o evitare; dovrebbero avere un bottone \"meno\")\n\n * Fumare\n * Passare troppo tempo online, concentrandosi su notizie negative\n * Mangiarsi le unghie\n\nAbitudini duali (Abitudini che hanno opzioni sia potivie che negativ; dovrebbero avere sia il bottone \"più\" che quello \"meno\")\n\n * Bere acqua oppure bere bevande zuccherate\n * Studiare oppure procastinare\n\nEsempi di Attività quotidiane (Attività che vuoi ripetere secondo una programmazione regolare)\n * Lavare i piatti\n * Innaffiare le piante\n * 30 minuti di attività fisica\n\nEsempi di Cose da fare (Attività che devi fare una volta sola)\n\n *Programmare un appuntamento\n * Riordinare lo sgabuzzino\n * Finire un saggio", - "webFaqAnswer27": "Il colore di una attività è una rappresentazione visuale del valore della stessa. Tutte le attività iniziano con il giallo, che sta per neutrale, blu è meglio, e rosso è peggio. Ecco come il tipo dell'attività determina il suo valore:\n\nLe Abitudini diventano più blu o rosse a seconda che tu prema il bottone \"più\" o \"meno\". Le Abitudinipositive o negative degradano verso il giallo con il passare del tempo se non le porti a termine. Le Abitudini duali cambiano colore solo secondo i tuoi input.\n\nLe Attività giornaliere cambiano colore a seconda di quanto spesso vengono completate, diventando più blu se vengono completate e più rosse se le tralasci.\n\nLe Cose da fare diventano gradualmente più rosse, tanto più quanto più a lungo restano senza essere completate.\n\nPiù rossa è l'attività, più Oro ed Esperinza otterrai se le completi, perciò assicurati di intraprendere anche le tue attività più difficili!", + "webFaqAnswer27": "Il colore di una attività è una rappresentazione visiva del suo valore: tutte le attività iniziano con il giallo, che rappresenta lo status neutrale, il blu rappresenta il miglioramento, e il rosso il peggioramento. Ecco come il tipo di attività determina il suo valore:\n\nLe Abitudini diventano più blu o rosse a seconda che tu prema il bottone \"più\" o \"meno\". Le Abitudini, positive o negative che siano, degradano verso il giallo con il passare del tempo se non le porti a termine. Le Abitudini che hanno sia natura positiva che negativa cambiano colore solo secondo i tuoi input.\n\nLe Attività giornaliere cambiano colore a seconda di quanto spesso vengono completate, diventando più blu se vengono completate e più rosse se le tralasci.\n\nLe Cose da fare diventano gradualmente più rosse, tanto più quanto più a lungo restano senza essere completate.\n\nPiù rossa è l'attività, più Oro ed Esperienza otterrai se le completi, perciò assicurati di intraprendere anche le tue attività più difficili!", "faqQuestion28": "Posso mettere in pausa le mie Attività giornaliere se ho bisogno di una pausa?", "faqQuestion29": "Come recupero HP?", - "webFaqAnswer29": "Puoi recuperare 15 HP comprando una Pozione di cura dalla sezione delle tue Ricompense per 25 Oro. In più, recupererai sempre tutti i tuoi HP salendo di livello!", + "webFaqAnswer29": "Puoi recuperare 15 HP comprando una \"Pozione di cura\" dalla sezione delle tue \"Ricompense\" per 25 monete d'oro. In più, recupererai sempre tutti i tuoi HP salendo di livello!", "faqQuestion30": "Cosa succede se non mi rimangono più HP?", - "webFaqAnswer30": "Se i tuoi HP raggiungono lo 0, perderai un livello, tutto il tuo Oro e un oggetto riacquistabile del tuo Equipaggiamento.", - "faqQuestion31": "Perché ho perso HP, pur non avendo interagito con con Abitudini Negative?", - "webFaqAnswer31": "Se hai completato un'attività e hai perso HP quando non avesti dovuto, ti sei imbattuto in un ritardo mentre il server sincronizza i progressi fatti su altre piattaforme. Per esempio, se hai usato Oro, Mana, o hai perso HP sull'applicazione per dispositivi mobili e poi hai completato un'attività sul sito, il server ha semplicemente bisogno di confermare che tutto sia sincronizzato.", + "webFaqAnswer30": "Se i tuoi HP raggiungono lo 0, scenderai di 1 livello, perderai tutto il tuo Oro e un oggetto del tuo Equipaggiamento (che però potrai riacquistare).", + "faqQuestion31": "Perché ho perso HP, pur non avendo interagito con Abitudini Negative?", + "webFaqAnswer31": "Se hai completato un'attività e hai perso HP quando non avesti dovuto, il server sincronizzando i progressi fatti su altre piattaforme ha avuto un ritardo. Per esempio, se hai usato Oro, Mana, o hai perso HP sull'applicazione per dispositivi mobili e poi hai completato un'attività sul sito, il server ha semplicemente bisogno di confermare che tutto sia sincronizzato.", "faqQuestion32": "Quando posso scegliere una Classe?", "webFaqAnswer32": "Ci sono quattro classi in Habitica: Guerriero, Mago, Ladro e Guaritore. Tutti i giocatori iniziano nella classe Guerriero finché non raggiungono il livello 10. Una volta raggiunto, potrai scegliere se selezionare una nuova classe o continuare come Guerriero.\n\nOgni classe ha un diverso Equipaggiamento e diverse Abilità. Se non vuoi scegliere una classe, puoi selezionare \"Non Scegliere\", Se decidi di non scegliere, potrai abilitare il sistema di Classi in un secondo momento dalle Impostazioni.", - "faqQuestion33": "Cos'è la barra blu che appare dopo il livello 10?" + "faqQuestion33": "Cos'è la barra blu che appare dopo il livello 10?", + "webFaqAnswer28": "Si! Il bottone \"Pausa Danno\" si può trovare nelle Impostazioni. Premerlo impedirà che tu perda HP per le Attività giornaliere mancate. Ciò è utile quando sei in vacanza, hai bisogno di riposo, o per qualsiasi altra ragione tu abbia bisogno di una pausa. Se stai partecipando ad una Missione, i tuoi progressi in attesa saranno messi in pausa, ma subirai ancora i danni derivanti dalle Attività giornaliere mancate della tua Squadra.\n\nPer mettere in pausa delle Attività giornaliere specifiche, puoi modificare la pianificazione e fissarla ogni 0 giorni fino a quando non ti sentirai pronto/a a ricominciarla.", + "webFaqAnswer33": "Dopo aver sbloccato le Classi, sblocchi anche Abilità che richiedono Mana per essere utilizzate. Il Mana dipende dalla statistica INT e può essere modificata attraverso Abilità e Equipaggiamento.", + "faqQuestion34": "Che tipo di cibo piace al mio animale domestico?" } diff --git a/website/common/locales/pt/front.json b/website/common/locales/pt/front.json index 7c2b3eb97c8..2926b8be074 100644 --- a/website/common/locales/pt/front.json +++ b/website/common/locales/pt/front.json @@ -112,7 +112,7 @@ "missingNewPassword": "Nova palavra-passe em falta.", "invalidEmailDomain": "Não pode registar com e-mails com os seguintes domínios : <%= domains %>", "wrongPassword": "Palavra-passe incorreta.", - "incorrectDeletePhrase": "Por favor escreva <%= magicWord %> em todas as letras maiúsculas para apagar a sua conta.", + "incorrectDeletePhrase": "Por favor, escreva <%= magicWord %> em todas as letras maiúsculas para apagar a sua conta.", "notAnEmail": "Endereço de e-mail inválido.", "emailTaken": "Endereço de email já está sendo usado em uma conta.", "newEmailRequired": "Novo endereço de e-mail em falta.", diff --git a/website/common/locales/ru/gear.json b/website/common/locales/ru/gear.json index 9c551b7b811..b50023ad883 100644 --- a/website/common/locales/ru/gear.json +++ b/website/common/locales/ru/gear.json @@ -5,7 +5,7 @@ "groupBy": "Сгруппировать по <%= type %>", "classBonus": "(Этот предмет совпадает с вашим классом, поэтому он получает дополнительный множитель характеристики 1.5)", "classArmor": "Доспехи класса", - "featuredset": "Рекомендуемый набор <%= name %>", + "featuredset": "Рекомендуемый набор: <%= name %>", "mysterySets": "Таинственный набор", "gearNotOwned": "У вас нет этого предмета.", "noGearItemsOfType": "Отсутствует что-либо из этой экипировки.", @@ -2969,5 +2969,13 @@ "weaponMystery202404Notes": "Этот посох подарит вам древнюю мудрость, нестареющую, как камни и деревья. Никакой пользы. Товар для подписчиков, апрель 2024 г.", "weaponArmoireOptimistsCloverText": "Четырехлистный клевер", "weaponArmoireHattersShearsText": "Острые ножницы", - "weaponArmoireHattersShearsNotes": "Избавьтесь от потрясений и осложнений. Разумеется, эти ножницы отлично справляются и с разрезанием ткани. Увеличивает силу на <%= str %>. Зачарованный шкаф: Набор Шляпника (предмет 3 из 4)." + "weaponArmoireHattersShearsNotes": "Избавьтесь от потрясений и осложнений. Разумеется, эти ножницы отлично справляются и с разрезанием ткани. Увеличивает силу на <%= str %>. Зачарованный шкаф: Набор Шляпника (предмет 3 из 4).", + "weaponSpecialSummer2024WarriorNotes": "Некоторые выпавшие акульи зубы превращаются в оружие, способное нанести урон с любой стороны. Увеличивает силу на <%= str %>. Ограниченное издание снаряжения Лета 2024.", + "gearItemsCompleted": "Вы владеете всем снаряжением класса <%= klass %>! Новое снаряжение выпускается во время сезонных Гала.", + "moreArmoireGearAvailable": "До тех пор остается ещё <%= armoireCount %> видов снаряжения в Зачарованном сундуке, которые вы можете найти!", + "moreArmoireGearComing": "Зачарованный сундук пополняется новыми вещами каждый месяц!", + "weaponSpecialSummer2024RogueText": "Трезубец Морского Слизня", + "weaponSpecialSummer2024RogueNotes": "Оберни острые укусы других против них самих! Увеличивает силу на <%= str %>. Ограниченное издание лета 2024.", + "weaponSpecialSummer2024WarriorText": "Резак из зуба Белой Акулы", + "weaponSpecialSummer2024MageText": "Жезл Морского Анемона" } From 9db5d4116dd7817f8a04750c4d7fe89216afe164 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Mon, 6 Jan 2025 22:57:57 +0100 Subject: [PATCH 3/7] Fix availability of december background (#15378) --- test/content/schedule.test.js | 26 +++++++++++++++++-- .../script/content/constants/schedule.js | 5 +++- 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/test/content/schedule.test.js b/test/content/schedule.test.js index da7c403804b..79038073866 100644 --- a/test/content/schedule.test.js +++ b/test/content/schedule.test.js @@ -272,6 +272,21 @@ describe('Content Schedule', () => { expect(matcher.match('backgroundkey072024')).to.be.true; }); + it('allows background matching the month for new backgrounds from multiple years', () => { + const date = new Date('2026-07-08'); + const matcher = getAllScheduleMatchingGroups(date).backgrounds; + expect(matcher.match('backgroundkey072024')).to.be.true; + expect(matcher.match('backgroundkey072025')).to.be.true; + expect(matcher.match('backgroundkey072026')).to.be.true; + }); + + it('allows background matching the previous month in the first week for new backgrounds', () => { + const date = new Date('2024-09-02'); + const matcher = getAllScheduleMatchingGroups(date).backgrounds; + expect(matcher.match('backgroundkey082024')).to.be.true; + expect(matcher.match('backgroundkey092024')).to.be.false; + }); + it('disallows background in the future', () => { const date = new Date('2024-07-08'); const matcher = getAllScheduleMatchingGroups(date).backgrounds; @@ -291,19 +306,26 @@ describe('Content Schedule', () => { expect(matcher.match('backgroundkey022021')).to.be.true; }); - it('allows background even yeared backgrounds in first half of year', () => { + it('allows even yeared backgrounds in first half of year', () => { const date = new Date('2025-02-08'); const matcher = getAllScheduleMatchingGroups(date).backgrounds; expect(matcher.match('backgroundkey022024')).to.be.true; expect(matcher.match('backgroundkey082022')).to.be.true; }); - it('allows background odd yeared backgrounds in second half of year', () => { + it('allows odd yeared backgrounds in second half of year', () => { const date = new Date('2024-08-08'); const matcher = getAllScheduleMatchingGroups(date).backgrounds; expect(matcher.match('backgroundkey022023')).to.be.true; expect(matcher.match('backgroundkey082021')).to.be.true; }); + + it('allows odd yeared backgrounds in beginning of january', () => { + const date = new Date('2025-01-06'); + const matcher = getAllScheduleMatchingGroups(date).backgrounds; + expect(matcher.match('backgroundkey122024'), 'backgroundkey122024').to.be.true; + expect(matcher.match('backgroundkey062023'), 'backgroundkey062022').to.be.true; + }); }); describe('timeTravelers matcher', () => { diff --git a/website/common/script/content/constants/schedule.js b/website/common/script/content/constants/schedule.js index c5ba2a72e07..37612ad71ea 100644 --- a/website/common/script/content/constants/schedule.js +++ b/website/common/script/content/constants/schedule.js @@ -18,7 +18,10 @@ function backgroundMatcher (month1, month2, oddYear) { const month = parseInt(key.substring(keyLength - 6, keyLength - 4), 10); const year = parseInt(key.substring(keyLength - 4, keyLength), 10); if (isAfterNewSchedule(year, month)) { - return month === month1 && date.getFullYear() >= year && (date.getMonth() + 1) >= month; + if (date.getMonth() === 0 && month1 === 12) { + return month === month1 && (date.getFullYear() - 1) >= year; + } + return month === month1 && date.getFullYear() >= year; } return (month === month1 || month === month2) && year % 2 === (oddYear ? 1 : 0); }; From 99790c05f4527c968a83683db1f399e07f8771de Mon Sep 17 00:00:00 2001 From: Kalista Payne Date: Mon, 6 Jan 2025 16:22:26 -0600 Subject: [PATCH 4/7] 5.32.4 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 488cf4ede0e..af335baf1b2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "habitica", - "version": "5.32.3", + "version": "5.32.4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "habitica", - "version": "5.32.3", + "version": "5.32.4", "hasInstallScript": true, "dependencies": { "@babel/core": "^7.22.10", diff --git a/package.json b/package.json index 98e942b0e25..7d512145059 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "habitica", "description": "A habit tracker app which treats your goals like a Role Playing Game.", - "version": "5.32.3", + "version": "5.32.4", "main": "./website/server/index.js", "dependencies": { "@babel/core": "^7.22.10", From a0383c785a05fcf7973003b9f87a0be7e9f91b72 Mon Sep 17 00:00:00 2001 From: Kalista Payne Date: Wed, 8 Jan 2025 15:18:06 -0600 Subject: [PATCH 5/7] Squashed commit of the following: commit 5d3713008dc3041f63b23b22196e1ed79fab45bd Author: Kalista Payne Date: Wed Jan 8 14:39:27 2025 -0600 fix(text): pet Pet commit 3ff5d7afeb517ae3d0933d8e18045b24575bb90b Author: Kalista Payne Date: Wed Jan 8 14:34:02 2025 -0600 fix(links): remove unnecessary style and icon commit 5023dd9258aa0f9416daa212ed1249db2e5d5fe4 Author: Kalista Payne Date: Wed Jan 8 09:43:17 2025 -0600 fix(links): update task modal markdown help commit 81ebb279cd881d1c560668c3cb03600d85b9f5b9 Author: Kalista Payne Date: Wed Jan 8 09:26:11 2025 -0600 fix(misc): clean up some layout and one more link commit 2fd216f01531052aa769738f8fe1956ca6943822 Author: Kalista Payne Date: Tue Jan 7 16:09:28 2025 -0600 fix(links): remove/revise some outdated wiki links --- website/client/src/components/appFooter.vue | 7 ----- website/client/src/components/header/menu.vue | 5 ---- .../components/inventory/equipment/index.vue | 2 +- .../src/components/shared/inventoryDrawer.vue | 27 ++++--------------- .../client/src/components/tasks/taskModal.vue | 2 +- website/client/src/components/ui/drawer.vue | 6 +++++ website/common/locales/en/generic.json | 2 +- website/common/locales/en/groups.json | 2 +- website/common/locales/en/pets.json | 4 +-- 9 files changed, 17 insertions(+), 40 deletions(-) diff --git a/website/client/src/components/appFooter.vue b/website/client/src/components/appFooter.vue index b099b4bdf21..1a08d291a66 100644 --- a/website/client/src/components/appFooter.vue +++ b/website/client/src/components/appFooter.vue @@ -131,13 +131,6 @@ >{{ $t('requestFeature') }} -
  • - {{ $t('wiki') }} - -
  • diff --git a/website/client/src/components/header/menu.vue b/website/client/src/components/header/menu.vue index 3292277d4cd..12bd9f8af7e 100644 --- a/website/client/src/components/header/menu.vue +++ b/website/client/src/components/header/menu.vue @@ -334,11 +334,6 @@ href="https://docs.google.com/forms/d/e/1FAIpQLScPhrwq_7P1C6PTrI3lbvTsvqGyTNnGzp1ugi1Ml0PFee_p5g/viewform?usp=sf_link" target="_blank" >{{ $t('requestFeature') }} - {{ $t('wiki') }} diff --git a/website/client/src/components/inventory/equipment/index.vue b/website/client/src/components/inventory/equipment/index.vue index fb921fbbe4c..4b3ad2427c7 100644 --- a/website/client/src/components/inventory/equipment/index.vue +++ b/website/client/src/components/inventory/equipment/index.vue @@ -106,7 +106,7 @@
    -
    +
    -
    - {{ $t('petLikeToEat') + ' ' }} - -
    - -
    -
    + {{ $t('petLikeToEat') }} +
    @@ -80,7 +68,6 @@ import _filter from 'lodash/filter'; import { mapState } from '@/libs/store'; import inventoryUtils from '@/mixins/inventoryUtils'; -import svgInformation from '@/assets/svg/information.svg'; import Drawer from '@/components/ui/drawer'; import DrawerSlider from '@/components/ui/drawerSlider'; @@ -127,10 +114,6 @@ export default { }, ], selectedDrawerTab: this.defaultSelectedTab, - - icons: Object.freeze({ - information: svgInformation, - }), }; }, computed: { diff --git a/website/client/src/components/tasks/taskModal.vue b/website/client/src/components/tasks/taskModal.vue index 80a22ecc570..7577990f552 100644 --- a/website/client/src/components/tasks/taskModal.vue +++ b/website/client/src/components/tasks/taskModal.vue @@ -86,7 +86,7 @@ > {{ $t('markdownHelpLink') }} diff --git a/website/client/src/components/ui/drawer.vue b/website/client/src/components/ui/drawer.vue index 7143e562a2a..9db570181bb 100644 --- a/website/client/src/components/ui/drawer.vue +++ b/website/client/src/components/ui/drawer.vue @@ -129,6 +129,12 @@ padding-top: 6px; padding-left: 24px; padding-right: 24px; + + a { + line-height: 1.33; + color: $gray-500; + font-weight: normal; + } } .drawer-tab { diff --git a/website/common/locales/en/generic.json b/website/common/locales/en/generic.json index 0b9649db8bf..d5f180c58d1 100644 --- a/website/common/locales/en/generic.json +++ b/website/common/locales/en/generic.json @@ -30,7 +30,7 @@ "user": "User", "market": "Market", "newSubscriberItem": "You have new Mystery Items", - "subscriberItemText": "Each month, subscribers will receive a mystery item. It becomes available at the beginning of the month. See the wiki's 'Mystery Item' page for more information.", + "subscriberItemText": "Subscribers receive a new mystery gear set at the beginning of each month!", "all": "All", "none": "None", "more": "<%= count %> more", diff --git a/website/common/locales/en/groups.json b/website/common/locales/en/groups.json index 35cfe5f40ad..60ee1db9431 100644 --- a/website/common/locales/en/groups.json +++ b/website/common/locales/en/groups.json @@ -288,7 +288,7 @@ "guildSummaryPlaceholder": "Write a short explanation of your Group. What is the main purpose of the Group and what will its members do?", "groupDescription": "Description", "guildDescriptionPlaceholder": "Use this section to go into more detail about everything that members should know about your Group. Useful tips, helpful links, and encouraging statements all go here!", - "markdownFormattingHelp": "[Markdown formatting help](https://habitica.fandom.com/wiki/Markdown_Cheat_Sheet)", + "markdownFormattingHelp": "[Markdown formatting help](https://github.com/HabitRPG/habitica/wiki/Markdown-in-Habitica)", "partyDescriptionPlaceholder": "This is our Party's description. It describes what we do in this Party. If you want to learn more about what we do in this Party, read the description. Party on.", "guildGemCostInfo": "A Gem cost promotes high quality Guilds and is transferred into your Guild's bank.", "noGuildsTitle": "You aren't a member of any Guilds.", diff --git a/website/common/locales/en/pets.json b/website/common/locales/en/pets.json index a49c93ff2ba..e3f4d12ce83 100644 --- a/website/common/locales/en/pets.json +++ b/website/common/locales/en/pets.json @@ -90,8 +90,8 @@ "mountsReleased": "Mounts released", "welcomeStable": "Welcome to your Pets and Mounts!", "welcomeStableText": "Welcome to the stable! I’m Matt, the beastmaster. Every time you complete a task, you'll have a random chance at receiving an Egg or a Hatching Potion to hatch Pets. When you hatch a Pet, it will appear here! Click a Pet's image to add it to your Avatar. Feed them with the Pet Food you find and they'll grow into hardy Mounts.", - "petLikeToEat": "What does my pet like to eat?", - "petLikeToEatText": "Pets will grow no matter what you feed them, but they'll grow faster if you feed them the one Pet Food that they like best. Experiment to find out the pattern, or see the answers here:
    https://habitica.fandom.com/wiki/Food_Preferences", + "petLikeToEat": "What does my Pet like to eat?", + "petLikeToEatText": "Pets will grow no matter what you feed them, but they'll grow faster if you feed them the one Pet Food that they like best. Experiment to find out the pattern, or see the answers here:
    https://habitica.com/static/faq#pet-foods", "filterByStandard": "Standard", "filterByMagicPotion": "Magic Potion", "filterByQuest": "Quest", From 3bb6c391af987137ac6ae9e3ca2c61c0da361979 Mon Sep 17 00:00:00 2001 From: Weblate Date: Thu, 9 Jan 2025 14:46:54 +0100 Subject: [PATCH 6/7] Translated using Weblate (German) Currently translated at 98.0% (3190 of 3255 strings) Translated using Weblate (German) Currently translated at 97.8% (3185 of 3255 strings) Translated using Weblate (German) Currently translated at 97.7% (3181 of 3255 strings) Translated using Weblate (German) Currently translated at 100.0% (261 of 261 strings) Translated using Weblate (German) Currently translated at 97.5% (3176 of 3255 strings) Co-authored-by: Katharina Co-authored-by: Toro Mor Co-authored-by: Weblate Translate-URL: https://translate.habitica.com/projects/habitica/gear/de/ Translate-URL: https://translate.habitica.com/projects/habitica/subscriber/de/ Translation: Habitica/Gear Translation: Habitica/Subscriber --- website/common/locales/de/gear.json | 31 ++++++++++++++++++++++- website/common/locales/de/subscriber.json | 6 ++--- 2 files changed, 33 insertions(+), 4 deletions(-) diff --git a/website/common/locales/de/gear.json b/website/common/locales/de/gear.json index 235fd475c63..e35e4ae71b1 100644 --- a/website/common/locales/de/gear.json +++ b/website/common/locales/de/gear.json @@ -3160,5 +3160,34 @@ "shieldArmoireBasketballText": "Basketball", "backMystery202301Text": "Fünf Schweife der Tapferkeit", "shieldArmoirePaintersPaletteText": "Malerpalette", - "shieldSpecialSpring2023HealerText": "Lilienmieder" + "shieldSpecialSpring2023HealerText": "Lilienmieder", + "shieldSpecialWinter2023HealerNotes": "Dein Lied von Frost und Schnee besänftigt die Geister aller, die es hören. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2022-2023 Winterausrüstung.", + "shieldMystery202409Notes": "Der leuchtende Rubin auf diesem Stab bezieht seine Kraft aus der Spätsommersonne. Gewährt keinen Attributbonus. September 2024 Abonnentengegenstand.", + "backMystery202410Text": "Kandiszucker-Schweif", + "headAccessoryMystery202410Text": "Kandiszucker-Ohren", + "headAccessoryMystery202410Notes": "Sind das die Geräusche von „Süßes-oder-Saures“-Kindern an deiner Tür? Gewährt keinen Attributbonus. Oktober 2024 Abonnentengegenstand.", + "bodyMystery202411Text": "Stachelige Schulterplatten", + "headArmoireFestiveHelperHatNotes": "Urlaubstipp Nr. 27: Halten Sie einen Helferhut bereit. Dieser ist groß genug, um ein Notfallspielzeug darunter zu verstecken! Erhöht Intelligenz um <%= int %>. Verzauberter Schrank: Festliches Helferset (Gegenstand 1 von 2)", + "shieldMystery202501Notes": "Dekoriere jede Außenumgebung mit einer diamantenen Schicht aus schimmerndem Frost. Gewährt keinen Attributbonus. Jänner 2025 Abonnentengegenstand.", + "shieldSpecialWinter2025WarriorNotes": "Blocke alle unerwünschten Ablenkungen mit diesem Schild, das so stark wie ein Elch ist. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Winterausrüstung 2024-2025.", + "backMystery202410Notes": "Dieser Schweif wird bei der Erwähnung von gruseligen Leckereien aktiv. Gewährt keinen Attributbonus. Oktober 2024 Abonnentengegenstand.", + "shieldArmoireSafetyFlashlightNotes": "Warte, hast du das Geräusch gehört? Schnell! Leuchte mit deiner Taschenlampe in den Schatten dort drüben. Hmmm. Sieht aus, als wäre es nur der Wind gewesen. Oder war es...? Erhöht Ausdauer um <%= con %>. Verzauberter Schrank: Gruselnacht-Set (Gegenstand 1 von 2)", + "bodyMystery202411Notes": "Die furchterregenden Stacheln auf diesen Schulterplatten sind perfekt, um deine Aufgabenliste in Angriff zu nehmen. Gewährt keinen Attributbonus. November 2024 Abonnentengegenstand.", + "shieldSpecialSpring2023WarriorNotes": "Sammle die schönsten Blumen des Frühlings in diesem farbenfrohen Blumenstrauß. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Frühlingsausrüstung.", + "shieldSpecialWinter2023HealerText": "Coole Lieder", + "shieldSpecialSpring2023HealerNotes": "Ein Beitrag zu einem Genesungsbesuch oder Teil eines Rituals für einen Frühlingstanz! Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Frühlingsausrüstung.", + "shieldSpecialWinter2024WarriorNotes": "Du bist ein tougher Keks, der niemals bröselt! Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Winter 2023-2024 Ausrüstung.", + "shieldSpecialSummer2023HealerNotes": "Du verbirgst und beschützt es. Es hält neugierige Monster davon ab, zu nahe zu kommen. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Sommerausrüstung.", + "shieldSpecialFall2023RogueNotes": "Mit den stärksten Zaubern verstärkt, um mächtige Tränke zu halten. Erhöht Stärke um <%= str %>. Limitierte Ausgabe 2023 Herbstausrüstung.", + "shieldSpecialFall2023WarriorNotes": "Perfekt, um es dir bequem zu machen, während du einen Horrorfilm genießt... Aber wir verraten es niemand, wenn du es bei den grusligen Szenen in den Arm nehmen musst! Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Herbstausrüstung.", + "shieldSpecialSummer2023WarriorNotes": "Beschwöre diesen Goldfischgeist für einen extra Schub Bestärkung und Begleitung während eines Kampfes. Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Sommerausrüstung.", + "shieldSpecialWinter2024HealerNotes": "Wie praktisch, dass du beim Einfrieren eisschmelzende Materialien dabei hattest! Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Winter 2023-2024 Ausrüstung.", + "shieldSpecialSummer2024WarriorNotes": "Zu denen, die behaupten, du könntest deine Ziele nicht erreichen, sag einfach: Sprich zu meiner Hand, äh, Flosse! Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Sommer 2024 Ausrüstung.", + "shieldSpecialSummer2024HealerNotes": "Dieses glänzende Schild ist sogar stärker als ein Meeresschneckenstab. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Sommer 2024 Ausrüstung.", + "shieldSpecialFall2023HealerNotes": "Mit seinem festen Kern und dem weichen Bezug ist er ideal, um ihn auf Feinde zu schleudern oder um sich darauf zu setzen, wenn man eine Pause von seinen Abenteuern braucht. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Herbstausrüstung.", + "shieldSpecialFall2024HealerNotes": "Neue Aufgaben, die nach deiner Aufmerksamkeit greifen, prallen ab, bis du deine aktuelle Mission erledigt hast. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Herbstausrüstung 2024.", + "shieldSpecialFall2024WarriorNotes": "Komplikationen bei Aufgaben werden von deinem Schild absorbiert und machen dich entschlossener. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Herbstausrüstung 2024.", + "shieldSpecialFallRogue2024Notes": "Die Aufgaben selbst werden von den Wirbeln und Spiralen dieser hypnotischen Waffe überwältigt. Erhöht Stärke um <%= str %>. Limitierte Ausgabe Herbstausrüstung 2024.", + "headAccessoryMystery202212Notes": "Mit dieser verschnörkelten goldenen Tiara werden deine Herzlichkeit und Freundschaft neue Höhen erreichen. Gewährt keinen Attributbonus. Dezember 2022 Abonnentengegenstand.", + "headAccessoryMystery202212Text": "Eis-Tiara" } diff --git a/website/common/locales/de/subscriber.json b/website/common/locales/de/subscriber.json index f927da9ed1f..a1741eff58c 100644 --- a/website/common/locales/de/subscriber.json +++ b/website/common/locales/de/subscriber.json @@ -240,8 +240,8 @@ "monthlyMysticHourglass": "Monatliche Mystische Sanduhr", "recurringMonthly": "Monatlich wiederkehrend", "recurringNMonthly": "Alle <%= length %> Monate wiederkehrend", - "unlockNGems": "Schalte sofort <%= count %> Edelsteine pro Monat frei", - "maxGemCap": "Maximale Edelsteinobergrenze", + "unlockNGems": "Schalte <%= count %> Edelsteine pro Monat im Markt frei", + "maxGemCap": "Starte automatisch mit der maximalen Edelsteinobergrenze", "monthlyGemsLabel": "Monatliche Edelsteine", "popular": "Beliebt", "immediate12Hourglasses": "Erhalte 12 Mystische Sanduhren unmittelbar nach deinem ersten 12-Monats-Abonnement!", @@ -250,7 +250,7 @@ "giftSubscriptionLeadText": "Wähle unten das Abonnement aus, das du verschenken willst! Dieser Kauf erneuert sich nicht automatisch.", "oneMonthGift": "Für 1 Monat", "nMonthsGift": "Für <%= months %> Monate", - "unlockNGemsGift": "Sie schalten sofort <%= count %> Edelsteine pro Monat frei", + "unlockNGemsGift": "Sie schalten <%= count %> Edelsteine pro Monat im Markt frei", "earn2GemsGift": "Sie verdienen +2 Edelsteine für jeden Monat, in dem sie abonniert haben", "maxGemCapGift": "Sie werden die maximale Edelsteinobergrenze haben", "mysterySet202412": "Zuckerstangen-Waldkaninchen-Set", From 30f1820a49d32c5cd4771e80d83f0e9bcea66854 Mon Sep 17 00:00:00 2001 From: Kalista Payne Date: Thu, 9 Jan 2025 09:02:14 -0600 Subject: [PATCH 7/7] 5.32.5 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index af335baf1b2..f10b042b293 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "habitica", - "version": "5.32.4", + "version": "5.32.5", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "habitica", - "version": "5.32.4", + "version": "5.32.5", "hasInstallScript": true, "dependencies": { "@babel/core": "^7.22.10", diff --git a/package.json b/package.json index 7d512145059..18435891647 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "habitica", "description": "A habit tracker app which treats your goals like a Role Playing Game.", - "version": "5.32.4", + "version": "5.32.5", "main": "./website/server/index.js", "dependencies": { "@babel/core": "^7.22.10",