mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-02-27 06:28:30 +00:00
* move: locales files to `/public` (from `/src`) * install: i18next-http-backend module * implement: i18next language lazy-loading * remove: all `config.ts` files (for locales) * disable: enConfig import in i18next.d.ts * remove: console.log from utils.camelCaseToKebabCase() * remove localization tests we don't need to test if i18next is working. This is the job of i18next itself * mock i18next for tests * fix: tests that have to use the i18next key now instead of the english translation * fix: absolute-avarice-encounter test * fix: loading mystery-encounter translations with lazy-load * fix: 2 mystery encounter translation loading * replace: i18next mocks any vi.fn() calls * fix: new namespace usage in ME tests now using "mysteryEncounters/..." * fix: delibirdy encounter not being language specific the encounter was checking if the modifier name includes `Berry` which is only true for english. Instead it has to check if the modifier is an instance of BerryModifier * fix: the-expert-pokemon-breeder the new i18n pattern requires a different namespacing which has been adopted * fix: GTS encounter tests * add: `MockText.on()` * fix: berries abound test * chore: apply review suggestion from @DayKev * update i18next.d.ts * chore: fix i18next.d.ts * fix: `dialogue-misc` switchup between `en` and `ja` * move: `SpeciesFormKey` into enum there was an issue with circular dependencies * replace: `#app/enums/` with `#enums/` for `SpeciesFormKey` imports * re-sync locales from `beta` * rename: `ca_ES` -> `ca-ES` * rename: `pt_BR` -> `pt-BR` * rename: `zh_CN` -> `zh-CN` * rename: `zh_TW` -> `zh-TW` * fix loading Species-Form-Key in poemon-evo. * update: i18next `supporterLngs` ... and remove `nonExplicitSupportedLngs` * fix: `${namespace}.` -> `${namespace}:` thanks @MokaStitcher
76 lines
5.7 KiB
JSON
76 lines
5.7 KiB
JSON
{
|
||
"hitWithRecoil": "{{pokemonName}} est blessé par le contrecoup !",
|
||
"cutHpPowerUpMove": "{{pokemonName}} sacrifie des PV\net augmente la puissance de ses capacités !",
|
||
"absorbedElectricity": "{{pokemonName}} absorbe de l’électricité !",
|
||
"switchedStatChanges": "{{pokemonName}} permute\nles changements de stats avec ceux de sa cible !",
|
||
"switchedTwoStatChanges": "{{pokemonName}} permute les changements de {{firstStat}} et de {{secondStat}} avec ceux de sa cible !",
|
||
"switchedStat": "{{pokemonName}} et sa cible échangent leur {{stat}} !",
|
||
"sharedGuard": "{{pokemonName}} additionne sa garde à celle de sa cible et redistribue le tout équitablement !",
|
||
"sharedPower": "{{pokemonName}} additionne sa force à celle de sa cible et redistribue le tout équitablement !",
|
||
"shiftedStats": "{{pokemonName}} échange {{statToSwitch}} et {{statToSwitchWith}} !",
|
||
"goingAllOutForAttack": "{{pokemonName}} a pris\ncette capacité au sérieux !",
|
||
"regainedHealth": "{{pokemonName}}\nrécupère des PV !",
|
||
"keptGoingAndCrashed": "{{pokemonName}}\ns’écrase au sol !",
|
||
"fled": "{{pokemonName}}\nprend la fuite !",
|
||
"cannotBeSwitchedOut": "Impossible de rappeler {{pokemonName}}\nau combat.",
|
||
"swappedAbilitiesWithTarget": "{{pokemonName}} et sa cible\néchangent leurs talents !",
|
||
"coinsScatteredEverywhere": "Il pleut des pièces !",
|
||
"attackedByItem": "{{pokemonName}} est attaqué\npar son propre objet {{itemName}} !",
|
||
"whippedUpAWhirlwind": "{{pokemonName}}se prépare\nà lancer une bourrasque !",
|
||
"flewUpHigh": "{{pokemonName}} s’envole !",
|
||
"tookInSunlight": "{{pokemonName}}\nabsorbe la lumière !",
|
||
"dugAHole": "{{pokemonName}}\nse cache dans le sol !",
|
||
"loweredItsHead": "{{pokemonName}}\nbaisse la tête !",
|
||
"isGlowing": "{{pokemonName}} est entouré\nd’une lumière intense !",
|
||
"bellChimed": "Un grelot sonne !",
|
||
"foresawAnAttack": "{{pokemonName}}\nprévoit une attaque !",
|
||
"isTighteningFocus": "{{pokemonName}} se concentre\nau maximum !",
|
||
"hidUnderwater": "{{pokemonName}}\nse cache sous l’eau !",
|
||
"soothingAromaWaftedThroughArea": "Une odeur apaisante flotte dans l’air !",
|
||
"sprangUp": "{{pokemonName}}\nse propulse dans les airs !",
|
||
"choseDoomDesireAsDestiny": "{{pokemonName}}souhaite\nle déclenchement de la capacité Vœu Destructeur !",
|
||
"vanishedInstantly": "{{pokemonName}}\ndisparait instantanément !",
|
||
"tookTargetIntoSky": "{{pokemonName}} emporte\n{{targetName}} haut dans le ciel !",
|
||
"becameCloakedInFreezingLight": "{{pokemonName}} est baigné\nd’une lumière blafarde !",
|
||
"becameCloakedInFreezingAir": "{{pokemonName}} est entouré\nd’un air glacial !",
|
||
"isChargingPower": "{{pokemonName}}\nconcentre son énergie !",
|
||
"burnedItselfOut": "Le feu intérieur de {{pokemonName}}\ns’est entièrement consumé !",
|
||
"startedHeatingUpBeak": "{{pokemonName}}\nfait chauffer son bec !",
|
||
"setUpShellTrap": "{{pokemonName}} déclenche\nle Carapiège !",
|
||
"isOverflowingWithSpacePower": "La puissance du cosmos afflue dans le corps\nde {{pokemonName}} !",
|
||
"usedUpAllElectricity": "{{pokemonName}}a utilisé\ntoute son électricité !",
|
||
"stoleItem": "{{pokemonName}} vole\nl’objet {{itemName}} de {{targetName}} !",
|
||
"incineratedItem": "{{pokemonName}} brule\nla {{itemName}} de {{targetName}} !",
|
||
"knockedOffItem": "{{pokemonName}} fait tomber\nl’objet {{itemName}} de {{targetName}} !",
|
||
"tookMoveAttack": "{{pokemonName}}\nsubit l’attaque {{moveName}} !",
|
||
"cutOwnHpAndMaximizedStat": "{{pokemonName}} sacrifie des PV\net monte son {{statName}} au maximum !",
|
||
"copiedStatChanges": "{{pokemonName}} copie\nles changements de stats de {{targetName}} !",
|
||
"magnitudeMessage": "Ampleur {{magnitude}} !",
|
||
"tookAimAtTarget": "{{pokemonName}} vise\n{{targetName}} !",
|
||
"transformedIntoType": "{{pokemonName}} prend\nle type {{typeName}} !",
|
||
"copiedMove": "{{pokemonName}} copie\nla capacité {{moveName}} !",
|
||
"sketchedMove": "{{pokemonName}} utilise Gribouille\npour copier {{moveName}} !",
|
||
"acquiredAbility": "Le talent de {{pokemonName}}\ndevient {{abilityName}} !",
|
||
"copiedTargetAbility": "{{pokemonName}} copie le talent\n{{abilityName}} de {{targetName}} !",
|
||
"transformedIntoTarget": "{{pokemonName}} prend\nl’apparence de {{targetName}} !",
|
||
"tryingToTakeFoeDown": "{{pokemonName}} veut entrainer\nson assaillant dans sa chute !",
|
||
"addType": "{{pokemonName}} gagne\nle type {{typeName}}.",
|
||
"cannotUseMove": "{{pokemonName}} ne peut pas\nutiliser la capacité {{moveName}} !",
|
||
"healHp": "{{pokemonName}}\nrécupère des PV !",
|
||
"sacrificialFullRestore": "Le Vœu Soin est exaucé et profite\nà {{pokemonName}} !",
|
||
"invertStats": "Les changements de stats\nde {{pokemonName}} sont inversés !",
|
||
"resetStats": "Les changements de stats\nde {{pokemonName}} ont tous été annulés !",
|
||
"statEliminated": "Les changements de stats ont tous été annulés !",
|
||
"faintCountdown": "{{pokemonName}}\nsera K.O. dans {{turnCount}} tours !",
|
||
"copyType": "{{pokemonName}} prend le type\nde {{targetPokemonName}} !",
|
||
"suppressAbilities": "Le talent de {{pokemonName}}\na été rendu inactif !",
|
||
"revivalBlessing": "{{pokemonName}} a repris connaissance\net est prêt à se battre de nouveau !",
|
||
"swapArenaTags": "Les effets affectant chaque côté du terrain\nont été échangés par {{pokemonName}} !",
|
||
"chillyReception": "{{pokemonName}} s’apprête\nà faire un mauvais jeu de mots…",
|
||
"exposedMove": "{{targetPokemonName}} est identifié\npar {{pokemonName}} !",
|
||
"safeguard": "{{targetName}} est protégé\npar la capacité Rune Protect !",
|
||
"substituteOnOverlap": "{{pokemonName}} a déjà\nun clone !",
|
||
"substituteNotEnoughHp": "Mais il est trop faible\npour créer un clone !",
|
||
"afterYou": "{{targetName}} accepte\navec joie !"
|
||
}
|