From b189289890e84f15c36997a2d35b4dfb6ed7d9b1 Mon Sep 17 00:00:00 2001 From: Alessandro Bruzzese <69127023+Bruzzii@users.noreply.github.com> Date: Mon, 13 May 2024 17:52:31 +0200 Subject: [PATCH 01/15] Updated italian localization (#815) Updated: - `it/fight-ui-handler` - `it/growth` - `it/nature` --- src/locales/it/fight-ui-handler.ts | 2 +- src/locales/it/growth.ts | 12 ++++---- src/locales/it/nature.ts | 48 +++++++++++++++--------------- 3 files changed, 31 insertions(+), 31 deletions(-) diff --git a/src/locales/it/fight-ui-handler.ts b/src/locales/it/fight-ui-handler.ts index 94cb41f72..e6dacf48f 100644 --- a/src/locales/it/fight-ui-handler.ts +++ b/src/locales/it/fight-ui-handler.ts @@ -3,5 +3,5 @@ import { SimpleTranslationEntries } from "#app/plugins/i18n"; export const fightUiHandler: SimpleTranslationEntries = { "pp": "PP", "power": "Potenza", - "accuracy": "Accuracy", + "accuracy": "Precisione", } as const; \ No newline at end of file diff --git a/src/locales/it/growth.ts b/src/locales/it/growth.ts index a0d1cb5ee..f761b25a2 100644 --- a/src/locales/it/growth.ts +++ b/src/locales/it/growth.ts @@ -1,10 +1,10 @@ import { SimpleTranslationEntries } from "#app/plugins/i18n"; export const growth: SimpleTranslationEntries = { - "Erratic": "Erratic", - "Fast": "Fast", - "Medium_Fast": "Medium Fast", - "Medium_Slow": "Medium Slow", - "Slow": "Slow", - "Fluctuating": "Fluctuating" + "Erratic": "Irregolare", + "Fast": "Veloce", + "Medium_Fast": "Medio-Veloce", + "Medium_Slow": "Medio-Lenta", + "Slow": "Lenta", + "Fluctuating": "Fluttuante" } as const; \ No newline at end of file diff --git a/src/locales/it/nature.ts b/src/locales/it/nature.ts index f29917ff6..2ca867451 100644 --- a/src/locales/it/nature.ts +++ b/src/locales/it/nature.ts @@ -1,29 +1,29 @@ import { SimpleTranslationEntries } from "#app/plugins/i18n"; export const nature: SimpleTranslationEntries = { - "Hardy": "Hardy", - "Lonely": "Lonely", - "Brave": "Brave", - "Adamant": "Adamant", - "Naughty": "Naughty", - "Bold": "Bold", + "Hardy": "Ardita", + "Lonely": "Schiva", + "Brave": "Audace", + "Adamant": "Decisa", + "Naughty": "Birbona", + "Bold": "Sicura", "Docile": "Docile", - "Relaxed": "Relaxed", - "Impish": "Impish", - "Lax": "Lax", - "Timid": "Timid", - "Hasty": "Hasty", - "Serious": "Serious", - "Jolly": "Jolly", - "Naive": "Naive", - "Modest": "Modest", - "Mild": "Mild", - "Quiet": "Quiet", - "Bashful": "Bashful", - "Rash": "Rash", - "Calm": "Calm", - "Gentle": "Gentle", - "Sassy": "Sassy", - "Careful": "Careful", - "Quirky": "Quirky" + "Relaxed": "Placida", + "Impish": "Scaltra", + "Lax": "Fiacca", + "Timid": "Timida", + "Hasty": "Lesta", + "Serious": "Seria", + "Jolly": "Allegra", + "Naive": "Ingenuaa", + "Modest": "Modesta", + "Mild": "Mite", + "Quiet": "Quieta", + "Bashful": "Ritrosa", + "Rash": "Ardente", + "Calm": "Calma", + "Gentle": "Gentile", + "Sassy": "Vivace", + "Careful": "Cauta", + "Quirky": "Furba" } as const; \ No newline at end of file From e4d3f73dee44d92c37721523af380f2de1248292 Mon Sep 17 00:00:00 2001 From: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Date: Mon, 13 May 2024 18:06:26 +0200 Subject: [PATCH 02/15] ToggleSize is now dependend on language + added some missing german translations (#797) --- src/locales/de/fight-ui-handler.ts | 6 ++--- src/locales/de/growth.ts | 12 +++++----- src/ui/starter-select-ui-handler.ts | 36 ++++++++++++++++++++++++++--- 3 files changed, 42 insertions(+), 12 deletions(-) diff --git a/src/locales/de/fight-ui-handler.ts b/src/locales/de/fight-ui-handler.ts index 7546e9af6..4d94d24f3 100644 --- a/src/locales/de/fight-ui-handler.ts +++ b/src/locales/de/fight-ui-handler.ts @@ -1,7 +1,7 @@ import { SimpleTranslationEntries } from "#app/plugins/i18n"; export const fightUiHandler: SimpleTranslationEntries = { - "pp": "PP", - "power": "Power", - "accuracy": "Accuracy", + "pp": "AP", + "power": "Stärke", + "accuracy": "Genauigkeit", } as const; \ No newline at end of file diff --git a/src/locales/de/growth.ts b/src/locales/de/growth.ts index a0d1cb5ee..28dcf8de4 100644 --- a/src/locales/de/growth.ts +++ b/src/locales/de/growth.ts @@ -1,10 +1,10 @@ import { SimpleTranslationEntries } from "#app/plugins/i18n"; export const growth: SimpleTranslationEntries = { - "Erratic": "Erratic", - "Fast": "Fast", - "Medium_Fast": "Medium Fast", - "Medium_Slow": "Medium Slow", - "Slow": "Slow", - "Fluctuating": "Fluctuating" + "Erratic": "Unregelmäßig", + "Fast": "Schnell", + "Medium_Fast": "Schneller", + "Medium_Slow": "Langsamer", + "Slow": "Langsam", + "Fluctuating": "Schwankend" } as const; \ No newline at end of file diff --git a/src/ui/starter-select-ui-handler.ts b/src/ui/starter-select-ui-handler.ts index 2daec8c70..2f33481d6 100644 --- a/src/ui/starter-select-ui-handler.ts +++ b/src/ui/starter-select-ui-handler.ts @@ -551,7 +551,35 @@ export default class StarterSelectUiHandler extends MessageUiHandler { this.starterSelectContainer.add(this.pokemonEggMovesContainer); - this.instructionsText = addTextObject(this.scene, 4, 156, '', TextStyle.PARTY, { fontSize: '42px' }); + + + let instructionTextSize = '42px'; + // The font size should be set per language + const currentLanguage = i18next.language; + switch (currentLanguage) { + case 'en': + instructionTextSize = '42px'; + break; + case 'es': + instructionTextSize = '35px'; + break; + case 'fr': + instructionTextSize = '42px'; + break; + case 'de': + instructionTextSize = '35px'; + break; + case 'it': + instructionTextSize = '38px'; + break; + case 'zh_CN': + instructionTextSize = '42px'; + break; + + } + + + this.instructionsText = addTextObject(this.scene, 4, 156, '', TextStyle.PARTY, { fontSize: instructionTextSize }); this.starterSelectContainer.add(this.instructionsText); this.starterSelectMessageBoxContainer = this.scene.add.container(0, this.scene.game.canvas.height / 6); @@ -1137,6 +1165,8 @@ export default class StarterSelectUiHandler extends MessageUiHandler { cycleInstructionLines[0] += ' | ' + cycleInstructionLines.splice(1, 1); if (cycleInstructionLines.length > 2) cycleInstructionLines[1] += ' | ' + cycleInstructionLines.splice(2, 1); + if (cycleInstructionLines.length > 2) + cycleInstructionLines[2] += ' | ' + cycleInstructionLines.splice(3, 1); } for (let cil of cycleInstructionLines) @@ -1301,7 +1331,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { growthReadable = i18next.t("growth:"+ growthAux as any) } this.pokemonGrowthRateText.setText(growthReadable); - + this.pokemonGrowthRateText.setColor(getGrowthRateColor(species.growthRate)); this.pokemonGrowthRateText.setShadowColor(getGrowthRateColor(species.growthRate, true)); this.pokemonGrowthRateLabelText.setVisible(true); @@ -1588,7 +1618,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { }) as StarterMoveset; const speciesForm = getPokemonSpeciesForm(species.speciesId, formIndex); - + const formText = species?.forms[formIndex]?.formKey.split('-'); for (let i = 0; i < formText?.length; i++) formText[i] = formText[i].charAt(0).toUpperCase() + formText[i].substring(1); From 6d73500aebfd18330c16038470c4495cc87bdcdc Mon Sep 17 00:00:00 2001 From: Alvin Zou <59787978+happinyz@users.noreply.github.com> Date: Mon, 13 May 2024 09:08:55 -0700 Subject: [PATCH 03/15] Update Frisk descriptions (#784) --- src/locales/en/ability.ts | 2 +- src/locales/es/ability.ts | 2 +- src/locales/fr/ability.ts | 2 +- src/locales/it/ability.ts | 2 +- src/locales/zh_CN/ability.ts | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/locales/en/ability.ts b/src/locales/en/ability.ts index 8360c0c08..a39208ae9 100644 --- a/src/locales/en/ability.ts +++ b/src/locales/en/ability.ts @@ -475,7 +475,7 @@ export const ability: AbilityTranslationEntries = { }, frisk: { name: "Frisk", - description: "When it enters a battle, the Pokémon can check an opposing Pokémon's held item.", + description: "When it enters a battle, the Pokémon can check an opposing Pokémon's Ability.", }, reckless: { name: "Reckless", diff --git a/src/locales/es/ability.ts b/src/locales/es/ability.ts index 3010a14d6..cb6e4836e 100644 --- a/src/locales/es/ability.ts +++ b/src/locales/es/ability.ts @@ -475,7 +475,7 @@ export const ability: AbilityTranslationEntries = { }, "frisk": { name: "Cacheo", - description: "Puede ver el objeto que lleva el rival al entrar en combate." + description: "Cuando entra en combate, el Pokémon puede comprobar la habilidad de un Pokémon rival." }, "reckless": { name: "Audaz", diff --git a/src/locales/fr/ability.ts b/src/locales/fr/ability.ts index a0c7f2d1b..292467fca 100644 --- a/src/locales/fr/ability.ts +++ b/src/locales/fr/ability.ts @@ -475,7 +475,7 @@ export const ability: AbilityTranslationEntries = { }, frisk: { name: "Fouille", - description: "Permet de connaitre l’objet tenu par l’adversaire quand le combat commence.", + description: "Lorsqu'il entre en combat, le Pokémon peut vérifier la capacité d'un Pokémon adverse.", }, reckless: { name: "Téméraire", diff --git a/src/locales/it/ability.ts b/src/locales/it/ability.ts index 4955813c4..73b50a07d 100644 --- a/src/locales/it/ability.ts +++ b/src/locales/it/ability.ts @@ -475,7 +475,7 @@ export const ability: AbilityTranslationEntries = { }, frisk: { name: "Indagine", - description: "Quando il Pokémon entra in campo, rivela lo strumento del nemico.", + description: "Quando entra in battaglia, il Pokémon può controllare il Potere di un Pokémon avversario.", }, reckless: { name: "Temerarietà", diff --git a/src/locales/zh_CN/ability.ts b/src/locales/zh_CN/ability.ts index f23e30933..248596687 100644 --- a/src/locales/zh_CN/ability.ts +++ b/src/locales/zh_CN/ability.ts @@ -475,7 +475,7 @@ export const ability: AbilityTranslationEntries = { }, frisk: { name: "察觉", - description: "出场时,可以察觉对手的持\n有物。", + description: "进入战斗时,神奇宝贝可以检查对方神奇宝贝的能力。", }, reckless: { name: "舍身", From 2a32189ea14589885f93f5729f7a3aeaa5b8121b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Ricardo=20Fleury=20Oliveira?= Date: Mon, 13 May 2024 13:18:24 -0300 Subject: [PATCH 04/15] Added Portuguese (Brazil) translations (#766) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add support for Portuguese (Brazil) locale, except for moves and abilities. * All ptBR translations, names of moves and abilities maintained in english. * Small fixes * Updated Frisk and fixed Plus and Minus descriptions * Changed the settings label to "Português (BR)" --- src/locales/pt_BR/ability.ts | 1241 ++++++ src/locales/pt_BR/battle.ts | 53 + src/locales/pt_BR/command-ui-handler.ts | 9 + src/locales/pt_BR/config.ts | 32 + src/locales/pt_BR/fight-ui-handler.ts | 7 + src/locales/pt_BR/growth.ts | 10 + src/locales/pt_BR/menu-ui-handler.ts | 23 + src/locales/pt_BR/menu.ts | 46 + src/locales/pt_BR/move.ts | 3812 +++++++++++++++++ src/locales/pt_BR/nature.ts | 29 + src/locales/pt_BR/pokeball.ts | 10 + src/locales/pt_BR/pokemon-stat.ts | 16 + src/locales/pt_BR/pokemon.ts | 1086 +++++ .../pt_BR/starter-select-ui-handler.ts | 32 + src/locales/pt_BR/tutorial.ts | 43 + src/plugins/i18n.ts | 6 +- src/system/settings.ts | 46 +- 17 files changed, 6479 insertions(+), 22 deletions(-) create mode 100644 src/locales/pt_BR/ability.ts create mode 100644 src/locales/pt_BR/battle.ts create mode 100644 src/locales/pt_BR/command-ui-handler.ts create mode 100644 src/locales/pt_BR/config.ts create mode 100644 src/locales/pt_BR/fight-ui-handler.ts create mode 100644 src/locales/pt_BR/growth.ts create mode 100644 src/locales/pt_BR/menu-ui-handler.ts create mode 100644 src/locales/pt_BR/menu.ts create mode 100644 src/locales/pt_BR/move.ts create mode 100644 src/locales/pt_BR/nature.ts create mode 100644 src/locales/pt_BR/pokeball.ts create mode 100644 src/locales/pt_BR/pokemon-stat.ts create mode 100644 src/locales/pt_BR/pokemon.ts create mode 100644 src/locales/pt_BR/starter-select-ui-handler.ts create mode 100644 src/locales/pt_BR/tutorial.ts diff --git a/src/locales/pt_BR/ability.ts b/src/locales/pt_BR/ability.ts new file mode 100644 index 000000000..060a8b761 --- /dev/null +++ b/src/locales/pt_BR/ability.ts @@ -0,0 +1,1241 @@ +import { AbilityTranslationEntries } from "#app/plugins/i18n.js"; + +export const ability: AbilityTranslationEntries = { + stench: { + name: "Stench", + description: "Liberando um forte odor enquanto ataca, este Pokémon pode fazer o alvo hesitar.", + }, + drizzle: { + name: "Drizzle", + description: "O Pokémon faz chover ao entrar em batalha.", + }, + speedBoost: { + name: "Speed Boost", + description: "Seu atributo de Velocidade é aumentado a cada turno.", + }, + battleArmor: { + name: "Battle Armor", + description: "Uma forte armadura protege o Pokémon de golpes críticos.", + }, + sturdy: { + name: "Sturdy", + description: "Impede que seja nocauteado com apenas um golpe, se estiver com seus PS ao máximo. Também evita que movimentos de golpes fatais o derrubem.", + }, + damp: { + name: "Damp", + description: "Previne o uso de movimentos explosivos, como a Autodestruição, aumentando a umidade dos arredores.", + }, + limber: { + name: "Limber", + description: "Seu corpo maleável protege o Pokémon da paralisia.", + }, + sandVeil: { + name: "Sand Veil", + description: "Aumenta a evasão do Pokémon durante as tempestades de areia.", + }, + static: { + name: "Static", + description: "O Pokémon é carregado com energia estática, então entrar em contato com ele pode causar paralisia.", + }, + voltAbsorb: { + name: "Volt Absorb", + description: "Se for atingido por um movimento do tipo Elétrico, ele restaura seus PS ao invés de receber dano.", + }, + waterAbsorb: { + name: "Water Absorb", + description: "Se for atingido por um movimento do tipo Água, ele restaura seus PS ao invés de receber dano.", + }, + oblivious: { + name: "Oblivious", + description: "Sua indiferença impede que o Pokémon fique apaixonado ou seja provocado por outro Pokémon.", + }, + cloudNine: { + name: "Cloud Nine", + description: "Anula todos os efeitos climáticos na batalha.", + }, + compoundEyes: { + name: "Compound Eyes", + description: "O olho preciso do Pokémon aumenta sua precisão.", + }, + insomnia: { + name: "Insomnia", + description: "Este Pokémon está sofrendo com insônia e não pode adormecer.", + }, + colorChange: { + name: "Color Change", + description: "Este Pokémon se torna do tipo do último ataque que sofreu.", + }, + immunity: { + name: "Immunity", + description: "O sistema imunológico deste Pokémon impede que ele seja envenenado.", + }, + flashFire: { + name: "Flash Fire", + description: "Fortalece movimentos do tipo Fogo quando atingido por um.", + }, + shieldDust: { + name: "Shield Dust", + description: "A poeira desse Pokémon bloqueia efeitos adicionais dos ataques recebidos.", + }, + ownTempo: { + name: "Own Tempo", + description: "Este Pokémon tem seu próprio ritmo, que o impede de ficar confuso.", + }, + suctionCups: { + name: "Suction Cups", + description: "Este Pokémon usa sua ventosas para fixar-se no lugar, negando todos os movimentos e itens que o obriguem a recuar.", + }, + intimidate: { + name: "Intimidate", + description: "Quando entra em batalha, este Pokémon intimida o Pokémon adversário, diminuindo seu Ataque.", + }, + shadowTag: { + name: "Shadow Tag", + description: "Este Pokémon pisa na sombra do Pokémon adversário, impedindo que ele escape da batalha.", + }, + roughSkin: { + name: "Rough Skin", + description: "Quando recebe um ataque direto, usa sua pele áspera para infligir dano ao Pokémon atacante.", + }, + wonderGuard: { + name: "Wonder Guard", + description: "Devido seu misterioso poder, apenas movimentos supereficazes acertam esse Pokémon.", + }, + levitate: { + name: "Levitate", + description: "Através da levitação esse Pokémon se torna completamente imune a movimentos do tipo Terra.", + }, + effectSpore: { + name: "Effect Spore", + description: "Contato direto com o Pokémon pode infligir paralisia, sono ou envenenamento ao atacante.", + }, + synchronize: { + name: "Synchronize", + description: "O atacante sofrerá a mesma mudança de estado se causar queima, envenenamento ou paralisia ao Pokémon.", + }, + clearBody: { + name: "Clear Body", + description: "Previne que Habilidades e movimentos de outros Pokémon diminuam os atributos deste Pokémon.", + }, + naturalCure: { + name: "Natural Cure", + description: "Quando este Pokémon recua, todas mudanças de estado são curadas.", + }, + lightningRod: { + name: "Lightning Rod", + description: "O Pokémon absorve todos os movimentos do tipo Elétrico e, ao invés de sofrer dano, aumenta seu Ataque Esp.", + }, + sereneGrace: { + name: "Serene Grace", + description: "Aumenta a probabilidade de ocorrerem efeitos adicionais ao atacar.", + }, + swiftSwim: { + name: "Swift Swim", + description: "A Velocidade do Pokémon é aumentada quando chove.", + }, + chlorophyll: { + name: "Chlorophyll", + description: "A Velocidade do Pokémon é aumentada sob sol forte.", + }, + illuminate: { + name: "Illuminate", + description: "Ilumina os arredores, aumentado a possibilidade de encontrar Pokémon selvagens.", + }, + trace: { + name: "Trace", + description: "Quando entra em batalha, o Pokémon copia a Habilidade de um Pokémon adversário.", + }, + hugePower: { + name: "Huge Power", + description: "Dobra o Ataque do Pokémon.", + }, + poisonPoint: { + name: "Poison Point", + description: "Contato direto com o Pokémon pode envenenar o atacante.", + }, + innerFocus: { + name: "Inner Focus", + description: "O foco extraordinário do Pokémon o impede de hesitar.", + }, + magmaArmor: { + name: "Magma Armor", + description: "O magma escaldante que cobre o Pokémon previne seu congelamento.", + }, + waterVeil: { + name: "Water Veil", + description: "O véu de água que cobre o Pokémon previne que ele seja queimado.", + }, + magnetPull: { + name: "Magnet Pull", + description: "Impede que Pokémon do tipo Aço escapem através da utilização de sua força magnética.", + }, + soundproof: { + name: "Soundproof", + description: "Antirruído dá ao Pokémon imunidade completa a todos movimentos baseados em som.", + }, + rainDish: { + name: "Rain Dish", + description: "O Pokémon recupera PS gradualmente na chuva.", + }, + sandStream: { + name: "Sand Stream", + description: "Quando entra em batalha o Pokémon conjura uma tempestade de areia.", + }, + pressure: { + name: "Pressure", + description: "Pressionando o Pokémon adversário, ele aumenta o custo de PP para o adversário usar um movimento.", + }, + thickFat: { + name: "Thick Fat", + description: "Movimentos dos tipos Fogo e Água têm seu dano reduzido pela metade devido à grossa camada de gordura que protege o Pokémon.", + }, + earlyBird: { + name: "Early Bird", + description: "O Pokémon acorda duas vezes mais rápido que outros Pokémon.", + }, + flameBody: { + name: "Flame Body", + description: "Contato direto com o Pokémon pode queimar o atacante.", + }, + runAway: { + name: "Run Away", + description: "Torna a fuga de encontros com Pokémon selvagem garantida.", + }, + keenEye: { + name: "Keen Eye", + description: "Seu olhar extremamente aguçado evita que outros Pokémon diminuam sua Precisão.", + }, + hyperCutter: { + name: "Hyper Cutter", + description: "Suas poderosas pinças enchem o Pokémon de orgulho. Elas impedem que outros Pokémon diminuam seu atributo de Ataque.", + }, + pickup: { + name: "Pickup", + description: "Durante a batalha, o Pokémon pode tomar o item do Pokémon adversário. Fora de batalha pode encontrar itens pelo chão.", + }, + truant: { + name: "Truant", + description: "Se utilizar um movimento, o Pokémon precisará descansar no turno seguinte.", + }, + hustle: { + name: "Hustle", + description: "Aumenta seu Ataque em troca de diminuir a precisão.", + }, + cuteCharm: { + name: "Cute Charm", + description: "Contato direto com o Pokémon pode causar paixão ao atacante.", + }, + plus: { + name: "Plus", + description: "Aumenta o Ataque Esp. do Pokémon se estiver em batalha com um aliado que tenha as Habilidades Plus ou Minus.", + }, + minus: { + name: "Minus", + description: "Aumenta o Ataque Esp. do Pokémon se estiver em batalha com um aliado que tenha as Habilidades Mais ou Menos.", + }, + forecast: { + name: "Forecast", + description: "O tipo do Pokémon altera-se para Água, Fogo ou Gelo, dependendo do clima.", + }, + stickyHold: { + name: "Sticky Hold", + description: "Outros Pokémon não podem remover itens que este Pokémon esteja segurando.", + }, + shedSkin: { + name: "Shed Skin", + description: "O Pokémon pode curar-se de mudanças de estado através da troca de pele.", + }, + guts: { + name: "Guts", + description: "É tão corajoso que ser afetado por uma mudança de estado aumenta seu Ataque.", + }, + marvelScale: { + name: "Marvel Scale", + description: "Se for afetado por uma mudança de estado, as escamas maravilhosas do Pokémon aumentarão sua Defesa.", + }, + liquidOoze: { + name: "Liquid Ooze", + description: "Exala uma substância tóxica com fedor terrível que causa dano a qualquer atacante que use um movimento de dreno.", + }, + overgrow: { + name: "Overgrow", + description: "Fortalece os movimentos do tipo Planta quando o Pokémon está com poucos PS.", + }, + blaze: { + name: "Blaze", + description: "Fortalece os movimentos do tipo Fogo quando o Pokémon está com poucos PS.", + }, + torrent: { + name: "Torrent", + description: "Fortalece os movimentos do tipo Água quando o Pokémon está com poucos PS.", + }, + swarm: { + name: "Swarm", + description: "Fortalece os movimentos do tipo Inseto quando o Pokémon está com poucos PS.", + }, + rockHead: { + name: "Rock Head", + description: "Protege o Pokémon de dano colateral.", + }, + drought: { + name: "Drought", + description: "Intensifica a luz solar quando o Pokémon entra em batalha.", + }, + arenaTrap: { + name: "Arena Trap", + description: "Impede que Pokémon adversários fujam.", + }, + vitalSpirit: { + name: "Vital Spirit", + description: "Sua determinação o impede de adormecer.", + }, + whiteSmoke: { + name: "White Smoke", + description: "O Pokémon é protegido por sua fumaça branca que previne que outros Pokémon diminuam seus atributos.", + }, + purePower: { + name: "Pure Power", + description: "O Pokémon dobra seu Ataque usando seu poder puro.", + }, + shellArmor: { + name: "Shell Armor", + description: "A robusta couraça que protege o Pokémon bloqueia os golpes críticos.", + }, + airLock: { + name: "Air Lock", + description: "Elimina efeitos climáticos.", + }, + tangledFeet: { + name: "Tangled Feet", + description: "Sua evasão aumenta se estiver confuso.", + }, + motorDrive: { + name: "Motor Drive", + description: "O Pokémon absorve todos os movimentos do tipo Elétrico e, ao invés de sofrer dano, aumenta seu atributo de Velocidade.", + }, + rivalry: { + name: "Rivalry", + description: "Sua competitividade faz com que cause mais dano a Pokémon do mesmo gênero, enquanto causa dano reduzido a Pokémon do gênero oposto.", + }, + steadfast: { + name: "Steadfast", + description: "A determinação do Pokémon faz com que sua Velocidade aumente cada vez que ele hesita.", + }, + snowCloak: { + name: "Snow Cloak", + description: "Aumenta a evasão numa tempestade de granizo.", + }, + gluttony: { + name: "Gluttony", + description: "Se estiver segurando uma fruta, a consumirá quando seus PS caírem abaixo da metade, o que é mais cedo que o usual.", + }, + angerPoint: { + name: "Anger Point", + description: "Quando recebe um golpe crítico se enraivece, e com isso, aumenta seu Ataque.", + }, + unburden: { + name: "Unburden", + description: "Se o item que o Pokémon estiver segurando for usado ou perdido, sua Velocidade aumentará.", + }, + heatproof: { + name: "Heatproof", + description: "O corpo a prova de calor desse Pokémon corta pela metade o dano de ataques do tipo Fogo que o acertam.", + }, + simple: { + name: "Simple", + description: "Duplica as mudanças de atributos do Pokémon.", + }, + drySkin: { + name: "Dry Skin", + description: "Durante chuva ou se for atingido por movimentos de Água, recupera PS. Durante sol forte tem seus PS máximo reduzido e leva dano aumentado do tipo Fogo.", + }, + download: { + name: "Download", + description: "Compara Defesa e Defesa Esp. do Pokémon adversário antes de aumentar seu próprio Ataque Esp. ou Ataque, a depender de qual será mais efetivo.", + }, + ironFist: { + name: "Iron Fist", + description: "Fortalece movimentos de soco.", + }, + poisonHeal: { + name: "Poison Heal", + description: "Se o Pokémon estiver envenenado, recuperará PS ao invés de perdê-los.", + }, + adaptability: { + name: "Adaptability", + description: "Fortalece movimentos do mesmo tipo do Pokémon.", + }, + skillLink: { + name: "Skill Link", + description: "Faz com que movimentos de repetição acertem sempre o máximo de vezes possível.", + }, + hydration: { + name: "Hydration", + description: "Cura mudanças de estado durante a chuva.", + }, + solarPower: { + name: "Solar Power", + description: "Aumenta o Ataque Esp. durante o sol forte, entretanto perde um pouco de PS a cada turno.", + }, + quickFeet: { + name: "Quick Feet", + description: "Aumenta a Velocidade se o Pokémon sofrer uma mudança de estado.", + }, + normalize: { + name: "Normalize", + description: "Todos os movimentos do Pokémon se tornam do tipo Normal. Aumenta um pouco o poder desses movimentos.", + }, + sniper: { + name: "Sniper", + description: "Aumenta o poder dos ataques caso sejam críticos.", + }, + magicGuard: { + name: "Magic Guard", + description: "O Pokémon só recebe dano de movimentos de ataque.", + }, + noGuard: { + name: "No Guard", + description: "Para garantir que todos os ataques atinjam o oponente, o Pokémon adota uma estratégia de desguarnecimento, porém, isso faz com que todos ataques o atinjam.", + }, + stall: { + name: "Stall", + description: "O Pokémon age somente após todos os outros agirem.", + }, + technician: { + name: "Technician", + description: "Aumenta o poder dos ataques mais fracos do Pokémon.", + }, + leafGuard: { + name: "Leaf Guard", + description: "Previne mudanças de estado sob o sol forte.", + }, + klutz: { + name: "Klutz", + description: "O Pokémon não pode usar nenhum item que esteja segurando.", + }, + moldBreaker: { + name: "Mold Breaker", + description: "Movimentos podem atingir independentemente da Habilidade do alvo.", + }, + superLuck: { + name: "Super Luck", + description: "O Pokémon é tão sortudo que tem a sua probabilidade de realizar golpes críticos aumentada.", + }, + aftermath: { + name: "Aftermath", + description: "Caso o Pokémon seja derrotado em decorrência de um movimento de contato, o atacante recebe dano.", + }, + anticipation: { + name: "Anticipation", + description: "O Pokémon pode sentir movimentos perigosos vindos do Pokémon adversário.", + }, + forewarn: { + name: "Forewarn", + description: "Quando entra em batalha, o Pokémon pode dizer um dos movimentos do Pokémon adversário.", + }, + unaware: { + name: "Unaware", + description: "Quando está atacando, o Pokémon ignora mudanças de atributos do Pokémon adversário.", + }, + tintedLens: { + name: "Tinted Lens", + description: "Movimentos que seriam “pouco eficazes” causam dano normalmente quando usados pelo Pokémon.", + }, + filter: { + name: "Filter", + description: "Ataques supereficazes recebidos dão menos dano.", + }, + slowStart: { + name: "Slow Start", + description: "O Ataque e a Velocidade do Pokémon são cortados pela metade por cinco turnos.", + }, + scrappy: { + name: "Scrappy", + description: "O Pokémon pode atingir Pokémon do tipo Fantasma com ataques dos tipos Normal e Lutador.", + }, + stormDrain: { + name: "Storm Drain", + description: "Atrai todos movimentos do tipo Água para si. Ao invés de receber dano desses ataques, tem seu Ataque Esp. aumentado.", + }, + iceBody: { + name: "Ice Body", + description: "O Pokémon recupera PS gradualmente durante as tempestades de granizo.", + }, + solidRock: { + name: "Solid Rock", + description: "Reduz o dano recebido de ataques supereficazes.", + }, + snowWarning: { + name: "Snow Warning", + description: "O Pokémon conjura uma tempestade de granizo quando entra em batalha.", + }, + honeyGather: { + name: "Honey Gather", + description: "O Pokémon pode coletar Mel ao final de uma batalha.", + }, + frisk: { + name: "Frisk", + description: "Quando entra em batalha, o Pokémon pode checar a Habilidade do adversário.", + }, + reckless: { + name: "Reckless", + description: "Fortalece movimentos que têm dano colateral.", + }, + multitype: { + name: "Multitype", + description: "Altera o tipo do Pokémon para o mesmo da Placa ou Cristal Z em sua posse.", + }, + flowerGift: { + name: "Flower Gift", + description: "Sob sol forte, o Ataque e a Defesa Esp. do Pokémon e de seus aliados são aumentados.", + }, + badDreams: { + name: "Bad Dreams", + description: "Reduz os PS de Pokémon adversários que estiverem dormindo.", + }, + pickpocket: { + name: "Pickpocket", + description: "Rouba o item de um atacante que tenha feito contato direto.", + }, + sheerForce: { + name: "Sheer Force", + description: "Aumenta o poder de seus movimentos quando ataca, em detrimento de seus efeitos adicionais que são anulados.", + }, + contrary: { + name: "Contrary", + description: "Faz as mudanças de atributos terem efeito contrário.", + }, + unnerve: { + name: "Unnerve", + description: "Enerva Pokémon adversários, impossibilitando que eles consumam Frutas.", + }, + defiant: { + name: "Defiant", + description: "Aumenta bruscamente o Ataque do Pokémon quando seus atributos são diminuídos pelo adversário.", + }, + defeatist: { + name: "Defeatist", + description: "Quando fica com metade ou menos dos PS totais, corta o Ataque e Ataque Esp. do Pokémon pela metade.", + }, + cursedBody: { + name: "Cursed Body", + description: "Pode desabilitar um movimento utilizado no Pokémon.", + }, + healer: { + name: "Healer", + description: "Às vezes cura mudanças de estado de um aliado.", + }, + friendGuard: { + name: "Friend Guard", + description: "Reduz o dano causado em aliados.", + }, + weakArmor: { + name: "Weak Armor", + description: "Ataques físicos ao Pokémon diminuem sua Defesa, mas aumenta bruscamente sua Velocidade.", + }, + heavyMetal: { + name: "Heavy Metal", + description: "Dobra o peso do Pokémon.", + }, + lightMetal: { + name: "Light Metal", + description: "Divide o peso do Pokémon pela metade.", + }, + multiscale: { + name: "Multiscale", + description: "Reduz o dano que o Pokémon recebe quando está com os PS cheios.", + }, + toxicBoost: { + name: "Toxic Boost", + description: "Fortalece ataques físicos quando o Pokémon está envenenado.", + }, + flareBoost: { + name: "Flare Boost", + description: "Fortalece ataques especiais quando o Pokémon está queimado.", + }, + harvest: { + name: "Harvest", + description: "Pode criar outra Fruta após consumir uma.", + }, + telepathy: { + name: "Telepathy", + description: "Prevê os ataques de um aliado em combate e desvia de todos eles.", + }, + moody: { + name: "Moody", + description: "Aumenta bruscamente um atributo e diminui outro a cada turno.", + }, + overcoat: { + name: "Overcoat", + description: "Protege o Pokémon de coisas como areia, geada e pó.", + }, + poisonTouch: { + name: "Poison Touch", + description: "Pode envenenar um alvo quando o Pokémon faz contato.", + }, + regenerator: { + name: "Regenerator", + description: "Recupera um pouco de PS quando recua da batalha.", + }, + bigPecks: { + name: "Big Pecks", + description: "Protege o Pokémon de efeitos que diminuam a Defesa.", + }, + sandRush: { + name: "Sand Rush", + description: "Aumenta a Velocidade do Pokémon durante uma tempestade de areia.", + }, + wonderSkin: { + name: "Wonder Skin", + description: "Torna movimentos de atributos mais suscetíveis ao erro.", + }, + analytic: { + name: "Analytic", + description: "Aumenta o poder do movimento quando o Pokémon age por último.", + }, + illusion: { + name: "Illusion", + description: "Entra em batalha disfarçado, na forma do Pokémon que ocupar o último lugar na equipe.", + }, + imposter: { + name: "Imposter", + description: "O Pokémon se transforma no Pokémon que está enfrentando.", + }, + infiltrator: { + name: "Infiltrator", + description: "Ignora barreiras, substitutos e coisas do tipo utilizadas pelo Pokémon adversário e ataca normalmente.", + }, + mummy: { + name: "Mummy", + description: "Contato direto com o Pokémon altera a Habilidade do atacante para Múmia.", + }, + moxie: { + name: "Moxie", + description: "O Pokémon demonstra arrogância, e isso faz com que seu Ataque aumente após derrotar qualquer Pokémon.", + }, + justified: { + name: "Justified", + description: "Ser atingido por movimentos do tipo Sombrio aumenta o Ataque do Pokémon, por justiça.", + }, + rattled: { + name: "Rattled", + description: "Movimentos dos tipos Sombrio, Fantasma e Inseto assustam o Pokémon, aumentando sua Velocidade", + }, + magicBounce: { + name: "Magic Bounce", + description: "Ao invés de ser atingido por movimentos de atributos, reflete-os.", + }, + sapSipper: { + name: "Sap Sipper", + description: "Se for atingido por um movimento do tipo Planta, ao invés de receber dano, aumenta seu Ataque.", + }, + prankster: { + name: "Prankster", + description: "Dá prioridade a movimentos de estado.", + }, + sandForce: { + name: "Sand Force", + description: "Fortalece o poder dos movimentos do tipo Pedra, Terra e Aço em uma tempestade de areia.", + }, + ironBarbs: { + name: "Iron Barbs", + description: "Os espinhos de ferro infligem dano a um atacante que fizer contato direto.", + }, + zenMode: { + name: "Zen Mode", + description: "Quando o Pokémon tem seus PS reduzidos à metade ou menos, muda de forma.", + }, + victoryStar: { + name: "Victory Star", + description: "Aumenta a Precisão sua e de seus aliados.", + }, + turboblaze: { + name: "Turboblaze", + description: "Movimentos podem atingir independentemente da Habilidade do alvo.", + }, + teravolt: { + name: "Teravolt", + description: "Movimentos podem atingir independentemente da Habilidade do alvo.", + }, + aromaVeil: { + name: "Aroma Veil", + description: "Protege a si mesmo e a seus aliados de ataques que limitem a escolha de movimentos.", + }, + flowerVeil: { + name: "Flower Veil", + description: "Pokémon aliados do tipo Planta são protegidos de mudanças de estado e diminuição de seus atributos.", + }, + cheekPouch: { + name: "Cheek Pouch", + description: "Quando o Pokémon consome uma Fruta, também recupera um pouco de PS.", + }, + protean: { + name: "Protean", + description: "Muda o tipo do Pokémon para o tipo do movimento que ele vai utilizar.", + }, + furCoat: { + name: "Fur Coat", + description: "Reduz o dano de movimentos físicos pela metade.", + }, + magician: { + name: "Magician", + description: "O Pokémon rouba o item que um Pokémon alvo estiver segurando quando acerta um movimento.", + }, + bulletproof: { + name: "Bulletproof", + description: "Protege o Pokémon de alguns movimentos de bola e bomba.", + }, + competitive: { + name: "Competitive", + description: "Aumenta bruscamente o Ataque Esp. quando um atributo é diminuído.", + }, + strongJaw: { + name: "Strong Jaw", + description: "A poderosa mandíbula do Pokémon aumenta o poder dos seus movimentos de mordida.", + }, + refrigerate: { + name: "Refrigerate", + description: "Movimentos do tipo Normal se tornam do tipo Gelo. Aumenta um pouco o poder desses movimentos.", + }, + sweetVeil: { + name: "Sweet Veil", + description: "Previne a si e a Pokémon aliados de caírem no sono.", + }, + stanceChange: { + name: "Stance Change", + description: "O Pokemon muda para Forma Espada quando usa um movimento de ataque, e muda para a Forma Escudo quando usa o movimento Escudo do Rei.", + }, + galeWings: { + name: "Gale Wings", + description: "Quando o Pokémon está com os PS cheios, dá prioridade a movimentos do tipo Voador.", + }, + megaLauncher: { + name: "Mega Launcher", + description: "Fortalece movimentos de aura e pulso.", + }, + grassPelt: { + name: "Grass Pelt", + description: "Aumenta a Defesa do Pokémon em Terreno de Grama.", + }, + symbiosis: { + name: "Symbiosis", + description: "O Pokémon entrega seu item para um aliado que já tiver utilizado seu próprio item.", + }, + toughClaws: { + name: "Tough Claws", + description: "Fortalece movimentos que façam contato direto.", + }, + pixilate: { + name: "Pixilate", + description: "Movimentos do tipo Normal se tornam do tipo Fada. Aumenta um pouco o poder desses movimentos.", + }, + gooey: { + name: "Gooey", + description: "Contato direto com o Pokémon diminui o atributo de Velocidade do atacante.", + }, + aerilate: { + name: "Aerilate", + description: "Movimentos do tipo Normal se tornam do tipo Voador. Aumenta um pouco o poder desses movimentos.", + }, + parentalBond: { + name: "Parental Bond", + description: "Une suas forças com sua cria para atacar duas vezes.", + }, + darkAura: { + name: "Dark Aura", + description: "Fortalece movimentos do tipo Sombrio de todos os Pokémon.", + }, + fairyAura: { + name: "Fairy Aura", + description: "Fortalece movimentos do tipo Fada de todos os Pokémon.", + }, + auraBreak: { + name: "Aura Break", + description: "Os efeitos de Habilidades de “Aura” são revertidos para diminuir o poder de movimentos afetados.", + }, + primordialSea: { + name: "Primordial Sea", + description: "O Pokémon muda o clima para neutralizar ataques do tipo Fogo.", + }, + desolateLand: { + name: "Desolate Land", + description: "O Pokémon muda o clima para neutralizar ataques do tipo Água.", + }, + deltaStream: { + name: "Delta Stream", + description: "O Pokémon muda o clima para eliminar todas as vulnerabilidades do tipo Voador.", + }, + stamina: { + name: "Stamina", + description: "Aumenta a Defesa quando atingido por um ataque.", + }, + wimpOut: { + name: "Wimp Out", + description: "Quando fica com metade ou menos de seus PS, recua covardemente da batalha.", + }, + emergencyExit: { + name: "Emergency Exit", + description: "Quando fica com metade ou menos de seus PS, sentindo que está em perigo, o Pokémon recua da batalha.", + }, + waterCompaction: { + name: "Water Compaction", + description: "Aumenta bruscamente a Defesa do Pokémon quando atingido por um movimento do tipo Água.", + }, + merciless: { + name: "Merciless", + description: "Os ataques do Pokémon se tornam críticos se o alvo estiver envenenado.", + }, + shieldsDown: { + name: "Shields Down", + description: "Quando fica com metade ou menos de seus PS, o Pokémon quebra sua carapaça e se torna agressivo.", + }, + stakeout: { + name: "Stakeout", + description: "Caso o alvo recue da batalha, dobra o dano causado ao Pokémon suplente.", + }, + waterBubble: { + name: "Water Bubble", + description: "Diminui o poder de movimentos do tipo Fogo usados contra o Pokémon e o impede de ficar queimado.", + }, + steelworker: { + name: "Steelworker", + description: "Fortalece os movimentos do tipo Aço.", + }, + berserk: { + name: "Berserk", + description: "Quando é atingido por um movimento que deixa seus PS na metade ou menos, aumenta seu Ataque Esp..", + }, + slushRush: { + name: "Slush Rush", + description: "Aumenta a Velocidade do Pokémon em uma tempestade de granizo.", + }, + longReach: { + name: "Long Reach", + description: "O Pokémon usa seus movimentos sem fazer contato direto com o alvo.", + }, + liquidVoice: { + name: "Liquid Voice", + description: "Todos os movimentos baseados em som se tornam do tipo Água.", + }, + triage: { + name: "Triage", + description: "Concede prioridade para movimentos de cura.", + }, + galvanize: { + name: "Galvanize", + description: "Movimentos do tipo Normal se transformam em movimentos do tipo Elétrico. Aumenta um pouco o poder desses movimentos.", + }, + surgeSurfer: { + name: "Surge Surfer", + description: "Dobra a Velocidade do Pokémon em Terreno Elétrico.", + }, + schooling: { + name: "Schooling", + description: "Quando está com bastante PS, o Pokémon forma um poderoso cardume, que se desfaz quando seus PS ficam baixos.", + }, + disguise: { + name: "Disguise", + description: "Uma vez por batalha, a mortalha que cobre o Pokémon pode protegê-lo de um ataque.", + }, + battleBond: { + name: "Battle Bond", + description: "Derrotar um Pokémon adversário fortalece os laços entre Pokémon e Treinador, fazendo com que se torne Greninja do Ash, e fortalecendo o ataque Shuriken de Água.", + }, + powerConstruct: { + name: "Power Construct", + description: "Quando seus PS ficam da metade para baixo, outras Células se agrupam para auxiliá-lo, fazendo com que o Pokémon mude para sua Forma Completa.", + }, + corrosion: { + name: "Corrosion", + description: "O Pokémon pode envenenar o alvo mesmo que ele seja dos tipos Aço ou Venenoso.", + }, + comatose: { + name: "Comatose", + description: "Está sempre cochilando e nunca acordará, entretanto, pode atacar sem acordar.", + }, + queenlyMajesty: { + name: "Queenly Majesty", + description: "Sua magnificência pressiona o Pokémon adversário, impossibilitando-o de utilizar movimentos de prioridade.", + }, + innardsOut: { + name: "Innards Out", + description: "Ao ser nocauteado, inflige dano ao adversário igual ao valor de PS que possuía antes de ser atacado.", + }, + dancer: { + name: "Dancer", + description: "Quando outro Pokémon usa um movimento de dança, pode usar um movimento de dança na sequência independentemente de sua Velocidade.", + }, + battery: { + name: "Battery", + description: "Fortalece os movimentos especiais dos Pokémon aliados.", + }, + fluffy: { + name: "Fluffy", + description: "Corta pela metade o dano recebido de movimentos que fazem contato direto, porém, dobra o dano dos ataques do tipo Fogo.", + }, + dazzling: { + name: "Dazzling", + description: "Surpreende o Pokémon adversário, impedindo-o de atacar usando movimentos de prioridade.", + }, + soulHeart: { + name: "Soul-Heart", + description: "Aumenta seu atributo de Ataque Esp. toda vez que um Pokémon desmaia.", + }, + tanglingHair: { + name: "Tangling Hair", + description: "Contato direto com o Pokémon diminui o atributo de Velocidade do atacante.", + }, + receiver: { + name: "Receiver", + description: "O Pokémon copia a Habilidade de um aliado derrotado.", + }, + powerOfAlchemy: { + name: "Power of Alchemy", + description: "O Pokémon copia a Habilidade de um aliado derrotado.", + }, + beastBoost: { + name: "Beast Boost", + description: "O Pokémon aumentará seu melhor atributo sempre que derrotar outro Pokémon.", + }, + rksSystem: { + name: "RKS System", + description: "Troca o tipo do Pokémon para igualar com o disco de memória que ele tiver instalado.", + }, + electricSurge: { + name: "Electric Surge", + description: "Quando o Pokémon entra em batalha, altera o terreno para Terreno Elétrico.", + }, + psychicSurge: { + name: "Psychic Surge", + description: "Quando o Pokémon entra em batalha, altera o terreno para Terreno Psíquico.", + }, + mistySurge: { + name: "Misty Surge", + description: "Quando o Pokémon entra em batalha, altera o terreno para Terreno Enevoado.", + }, + grassySurge: { + name: "Grassy Surge", + description: "Quando o Pokémon entra em batalha, altera o terreno para Terreno de Grama.", + }, + fullMetalBody: { + name: "Full Metal Body", + description: "Previne que as Habilidades e movimentos de outros Pokémon diminuam os atributos deste Pokémon.", + }, + shadowShield: { + name: "Shadow Shield", + description: "Reduz a quantidade de dano que o Pokémon recebe enquanto estiver com seus PS ao máximo.", + }, + prismArmor: { + name: "Prism Armor", + description: "Reduz o dano recebido por movimentos supereficazes.", + }, + intrepidSword: { + name: "Intrepid Sword", + description: "Aumenta o atributo de Ataque ao entrar em batalha.", + }, + dauntlessShield: { + name: "Dauntless Shield", + description: "Aumenta o atributo de Defesa ao entrar em batalha.", + }, + libero: { + name: "Libero", + description: "Muda o tipo do Pokémon para o tipo do movimento que ele estiver prestes a usar.", + }, + ballFetch: { + name: "Ball Fetch", + description: "Se o Pokémon não estiver segurando nenhum item, ele irá buscar a primeira Poké Bola que falhou em capturar um Pokémon na batalha.", + }, + cottonDown: { + name: "Cotton Down", + description: "Quando o Pokémon é atingido por um ataque, ele espalha algodão à volta, diminuindo o atributo de Velocidade de todos os Pokémon, exceto ele mesmo.", + }, + propellerTail: { + name: "Propeller Tail", + description: "Ignora os efeitos de Habilidades e movimentos de Pokémon adversários que redirecionam e atraem movimentos para si.", + }, + mirrorArmor: { + name: "Mirror Armor", + description: "Devolve apenas os efeitos redutores de atributos que o Pokémon recebe.", + }, + gulpMissile: { + name: "Gulp Missile", + description: "Quando o Pokémon usa Surf ou Dive, volta com uma presa. Quando recebe dano, cospe a presa no atacante.", + }, + stalwart: { + name: "Stalwart", + description: "Ignora os efeitos de Habilidades e movimentos de Pokémon adversários que redirecionam e atraem movimentos para si.", + }, + steamEngine: { + name: "Steam Engine", + description: "Aumenta drasticamente a Velocidade, se for atingido por um movimento do tipo Água ou Fogo.", + }, + punkRock: { + name: "Punk Rock", + description: "Aumenta o poder dos movimentos baseados em som. O Pokémon também recebe metade do dano desses tipos de movimentos.", + }, + sandSpit: { + name: "Sand Spit", + description: "O Pokémon cria uma tempestade de areia quando é atingido por um ataque.", + }, + iceScales: { + name: "Ice Scales", + description: "As gélidas escamas que rodeiam seu corpo reduzem à metade o dano recebido por movimentos especiais.", + }, + ripen: { + name: "Ripen", + description: "Amadurece Frutas e dobram seus efeitos.", + }, + iceFace: { + name: "Ice Face", + description: "Sua cabeça de gelo pode receber ataques físicos como substituto, mas faz com que a aparência do Pokémon mude. O gelo é restaurado no granizo.", + }, + powerSpot: { + name: "Power Spot", + description: "O simples fato de estar próximo ao Pokémon fortalece o poder de movimentos.", + }, + mimicry: { + name: "Mimicry", + description: "Muda o tipo do Pokémon dependendo do terreno.", + }, + screenCleaner: { + name: "Screen Cleaner", + description: "Quando o Pokémon entra em batalha os efeitos de Tela de Luz, Refletir e Véu Aurora são anulados, tanto para Pokémon aliados quanto para oponentes.", + }, + steelySpirit: { + name: "Steely Spirit", + description: "Fortalece o poder dos movimentos do tipo Aço de Pokémon aliados.", + }, + perishBody: { + name: "Perish Body", + description: "Quando for atingido por um ataque que cause contato direto, tanto o Pokémon quanto o atacante desmaiarão após três turnos, a não ser que recuem da batalha.", + }, + wanderingSpirit: { + name: "Wandering Spirit", + description: "O Pokémon troca de Habilidade com um Pokémon que o atinja com um movimento que faz contato direto.", + }, + gorillaTactics: { + name: "Gorilla Tactics", + description: "Aumenta o Ataque do Pokémon, entretanto, só permite que ele utilize o primeiro movimento escolhido.", + }, + neutralizingGas: { + name: "Neutralizing Gas", + description: "Se o Pokémon com Gás Neutralizador está na batalha, os efeitos das Habilidades de todos os Pokémon serão anuladas ou não serão ativados.", + }, + pastelVeil: { + name: "Pastel Veil", + description: "Protege o Pokémon e seu aliado de serem envenenados.", + }, + hungerSwitch: { + name: "Hunger Switch", + description: "O Pokémon troca sua forma, alternando entre o Modo Satisfeito e Modo Voraz ao fim de cada turno.", + }, + quickDraw: { + name: "Quick Draw", + description: "Permite que o Pokémon aja primeiro ocasionalmente.", + }, + unseenFist: { + name: "Unseen Fist", + description: "Se o Pokémon utilizar movimentos que façam contato direto, pode atacar seu alvo mesmo que ele tenha se protegido.", + }, + curiousMedicine: { + name: "Curious Medicine", + description: "Quando o Pokémon entra em uma batalha, espalha medicamentos de sua concha que removem de aliados todas mudanças de estado.", + }, + transistor: { + name: "Transistor", + description: "Fortalece movimentos do tipo Elétrico.", + }, + dragonsMaw: { + name: "Dragon's Maw", + description: "Fortalece movimentos do tipo Dragão.", + }, + chillingNeigh: { + name: "Chilling Neigh", + description: "Quando o Pokémon derrota um alvo, emite um relincho assustador que aumenta seu Ataque.", + }, + grimNeigh: { + name: "Grim Neigh", + description: "Quando o Pokémon derrota um alvo, emite um relincho assustador que aumenta seu Ataque Esp.", + }, + asOneGlacier: { + name: "As One", + description: "Essa Habilidade combina os efeitos das Habilidades Enervar de Calyrex e Relincho Branco de Glastrier.", + }, + asOneSpectrier: { + name: "As One", + description: "Essa Habilidade combina os efeitos das Habilidades Enervar de Calyrex e Relincho Negro de Spectrier.", + }, + lingeringAroma: { + name: "Lingering Aroma", + description: "O contato com o Pokémon muda a Habilidade do atacante para Lingering Aroma.", + }, + seedSower: { + name: "Seed Sower", + description: "Transforma o solo em Terreno de Grama quando o Pokémon é atingido por um ataque.", + }, + thermalExchange: { + name: "Thermal Exchange", + description: "Aumenta o atributo de Ataque quando o Pokémon é atingido por um movimento do tipo Fogo. O Pokémon também não pode ser queimado.", + }, + angerShell: { + name: "Anger Shell", + description: "Quando um ataque faz com que seu HP caia para metade ou menos, o Pokémon se enfurece. Isso reduz seus atributos de Defesa e Defesa Especial, mas aumenta seus atributos de Ataque, Ataque Especial e Velocidade.", + }, + purifyingSalt: { + name: "Purifying Salt", + description: "O sal puro do Pokémon o protege de condições de estado e reduz pela metade o dano recebido de movimentos do tipo Fantasma.", + }, + wellBakedBody: { + name: "Well-Baked Body", + description: "O Pokémon não recebe dano quando atingido por movimentos do tipo Fogo. Em vez disso, seu atributo de Defesa é aumentado drasticamente.", + }, + windRider: { + name: "Wind Rider", + description: "Aumenta o atributo de Ataque do Pokémon se o Vento de Cauda tiver efeito ou se o Pokémon for atingido por um movimento de vento. O Pokémon também não recebe dano de movimentos de vento.", + }, + guardDog: { + name: "Guard Dog", + description: "Aumenta o atributo de Ataque do Pokémon se intimidado. Movimentos e itens que forçariam o Pokémon a trocar também falham em funcionar.", + }, + rockyPayload: { + name: "Rocky Payload", + description: "Aumenta o poder dos movimentos do tipo Pedra.", + }, + windPower: { + name: "Wind Power", + description: "O Pokémon fica carregado quando é atingido por um movimento de vento, aumentando o poder do próximo movimento do tipo Elétrico que o Pokémon usa.", + }, + zeroToHero: { + name: "Zero to Hero", + description: "O Pokémon se transforma em sua Forma Herói quando é trocado.", + }, + commander: { + name: "Commander", + description: "Quando o Pokémon entra em batalha, ele entra na boca de um Dondozo aliado se ele estiver no campo. O Pokémon então emite comandos de lá.", + }, + electromorphosis: { + name: "Electromorphosis", + description: "O Pokémon fica carregado quando sofre dano, aumentando o poder do próximo movimento do tipo Elétrico que o Pokémon usa.", + }, + protosynthesis: { + name: "Protosynthesis", + description: "Aumenta o atributo mais proficiente do Pokémon sob sol intenso ou se o Pokémon estiver segurando Booster Energy.", + }, + quarkDrive: { + name: "Quark Drive", + description: "Aumenta o atributo mais proficiente do Pokémon em Terreno Elétrico ou se o Pokémon estiver segurando Booster Energy.", + }, + goodAsGold: { + name: "Good as Gold", + description: "Um corpo de ouro puro dá ao Pokémon imunidade completa aos movimentos de status de outros Pokémon.", + }, + vesselOfRuin: { + name: "Vessel of Ruin", + description: "O poder do recipiente de ruínas do Pokémon reduz os atributos de Ataque Especial de todos os Pokémon exceto o dele.", + }, + swordOfRuin: { + name: "Sword of Ruin", + description: "O poder da espada de ruínas do Pokémon reduz os atributos de Defesa de todos os Pokémon exceto o dele.", + }, + tabletsOfRuin: { + name: "Tablets of Ruin", + description: "O poder das tábuas de ruínas do Pokémon reduz os atributos de Ataque de todos os Pokémon exceto o dele.", + }, + beadsOfRuin: { + name: "Beads of Ruin", + description: "O poder das contas de ruínas do Pokémon reduz os atributos de Defesa Especial de todos os Pokémon exceto o dele.", + }, + orichalcumPulse: { + name: "Orichalcum Pulse", + description: "Torna a luz solar intensa quando o Pokémon entra em batalha. O antigo pulso vibrante do Pokémon também aumenta seu atributo de Ataque sob sol intenso.", + }, + hadronEngine: { + name: "Hadron Engine", + description: "Transforma o solo em Terreno Elétrico quando o Pokémon entra em batalha. O motor futurista dentro do Pokémon também aumenta seu atributo de Ataque Especial em Terreno Elétrico.", + }, + opportunist: { + name: "Opportunist", + description: "Se um atributo de um oponente for aumentado, o Pokémon aproveita a oportunidade para aumentar o mesmo atributo para si mesmo.", + }, + cudChew: { + name: "Cud Chew", + description: "Quando o Pokémon come uma Berry, ele a regurgita no final do próximo turno e come novamente.", + }, + sharpness: { + name: "Sharpness", + description: "Aumenta o poder dos movimentos de corte.", + }, + supremeOverlord: { + name: "Supreme Overlord", + description: "Quando o Pokémon entra em batalha, seus atributos de Ataque e Ataque Especial são levemente aumentados para cada um dos aliados em sua equipe que já foram derrotados.", + }, + costar: { + name: "Costar", + description: "Quando o Pokémon entra em batalha, ele copia as mudanças de atributos de um aliado.", + }, + toxicDebris: { + name: "Toxic Debris", + description: "Espalha espinhos venenosos aos pés da equipe adversária quando o Pokémon sofre dano de movimentos físicos.", + }, + armorTail: { + name: "Armor Tail", + description: "A cauda misteriosa que cobre a cabeça do Pokémon impede que oponentes usem movimentos de prioridade contra o Pokémon ou seus aliados.", + }, + earthEater: { + name: "Earth Eater", + description: "Se for atingido por um movimento do tipo Terra, o Pokémon restaura seu HP em vez de sofrer dano.", + }, + myceliumMight: { + name: "Mycelium Might", + description: "O Pokémon sempre agirá mais lentamente quando usar movimentos de status, mas esses movimentos não serão impedidos pela Habilidade do alvo.", + }, + mindsEye: { + name: "Mind's Eye", + description: "O Pokémon ignora mudanças na evasividade dos oponentes, sua precisão não pode ser reduzida, e ele pode atingir tipos Fantasma com movimentos dos tipos Normal e Lutador.", + }, + supersweetSyrup: { + name: "Supersweet Syrup", + description: "Um aroma doce e enjoativo se espalha pelo campo na primeira vez que o Pokémon entra em batalha, reduzindo a evasividade dos Pokémon oponentes.", + }, + hospitality: { + name: "Hospitality", + description: "Quando o Pokémon entra em batalha, ele banha seu aliado com hospitalidade, restaurando uma pequena quantidade do HP do aliado.", + }, + toxicChain: { + name: "Toxic Chain", + description: "O poder da cadeia tóxica do Pokémon pode envenenar gravemente qualquer alvo que o Pokémon atinja com um movimento.", + }, + embodyAspectTeal: { + name: "Embody Aspect", + description: "O coração do Pokémon se enche de memórias, fazendo com que a Máscara Teal brilhe e aumente o atributo de Velocidade do Pokémon.", + }, + embodyAspectWellspring: { + name: "Embody Aspect", + description: "O coração do Pokémon se enche de memórias, fazendo com que a Máscara Wellspring brilhe e aumente o atributo de Defesa Especial do Pokémon.", + }, + embodyAspectHearthflame: { + name: "Embody Aspect", + description: "O coração do Pokémon se enche de memórias, fazendo com que a Máscara Hearthflame brilhe e aumente o atributo de Ataque do Pokémon.", + }, + embodyAspectCornerstone: { + name: "Embody Aspect", + description: "O coração do Pokémon se enche de memórias, fazendo com que a Máscara Cornerstone brilhe e aumente o atributo de Defesa do Pokémon.", + }, + teraShift: { + name: "Tera Shift", + description: "Quando o Pokémon entra em batalha, ele absorve a energia ao seu redor e se transforma em sua Forma Terastal.", + }, + teraShell: { + name: "Tera Shell", + description: "A casca do Pokémon contém os poderes de cada tipo. Todos os movimentos que causam dano que atingem o Pokémon quando seu HP está cheio não serão muito eficazes.", + }, + teraformZero: { + name: "Teraform Zero", + description: "Quando Terapagos muda para sua Forma Estelar, ele usa seus poderes ocultos para eliminar todos os efeitos do clima e do terreno, reduzindo-os a zero.", + }, + poisonPuppeteer: { + name: "Poison Puppeteer", + description: "Pokémon envenenados pelos movimentos de Pecharunt também ficarão confusos.", + }, + +} as const; diff --git a/src/locales/pt_BR/battle.ts b/src/locales/pt_BR/battle.ts new file mode 100644 index 000000000..6891e3b2e --- /dev/null +++ b/src/locales/pt_BR/battle.ts @@ -0,0 +1,53 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +export const battle: SimpleTranslationEntries = { + "bossAppeared": "{{bossName}} apareceu.", + "trainerAppeared": "{{trainerName}}\nquer batalhar!", + "singleWildAppeared": "Um {{pokemonName}} selvagem apareceu!", + "multiWildAppeared": "Um {{pokemonName1}} e um {{pokemonName2}} selvagens\napareceram!", + "playerComeBack": "{{pokemonName}}, retorne!", + "trainerComeBack": "{{trainerName}} retirou {{pokemonName}} da batalha!", + "playerGo": "{{pokemonName}}, eu escolho você!", + "trainerGo": "{{trainerName}} enviou {{pokemonName}}!", + "switchQuestion": "Quer trocar\n{{pokemonName}}?", + "trainerDefeated": "Você derrotou\n{{trainerName}}!", + "pokemonCaught": "{{pokemonName}} foi capturado!", + "pokemon": "Pokémon", + "sendOutPokemon": "{{pokemonName}}, eu escolho você!!", + "hitResultCriticalHit": "Um golpe crítico!", + "hitResultSuperEffective": "É supereficaz!", + "hitResultNotVeryEffective": "É pouco eficaz...", + "hitResultNoEffect": "Isso não afeta {{pokemonName}}!", + "hitResultOneHitKO": "Foi um nocaute de um golpe!", + "attackFailed": "Mas falhou!", + "attackHitsCount": `Acertou {{count}} vezes.`, + "expGain": "{{pokemonName}} ganhou\n{{exp}} pontos de experiência.", + "levelUp": "{{pokemonName}} subiu para \nNv. {{level}}!", + "learnMove": "{{pokemonName}} aprendeu {{moveName}}!", + "learnMovePrompt": "{{pokemonName}} quer aprender\n{{moveName}}.", + "learnMoveLimitReached": "Porém, {{pokemonName}} já sabe\nquatro movimentos.", + "learnMoveReplaceQuestion": "Quer substituir um de seus movimentos por {{moveName}}?", + "learnMoveStopTeaching": "Você não quer aprender\n{{moveName}}?", + "learnMoveNotLearned": "{{pokemonName}} não aprendeu {{moveName}}.", + "learnMoveForgetQuestion": "Qual movimento quer esquecer?", + "learnMoveForgetSuccess": "{{pokemonName}} esqueceu como usar {{moveName}}.", + "levelCapUp": "O nível máximo aumentou\npara {{levelCap}}!", + "moveNotImplemented": "{{moveName}} ainda não foi implementado e não pode ser usado.", + "moveNoPP": "Não há mais PP\npara esse movimento!", + "moveDisabled": "Não se pode usar {{moveName}} porque foi desabilitado!", + "noPokeballForce": "Uma força misteriosa\nte impede de usar Poké Bolas.", + "noPokeballTrainer": "Não se pode capturar\nPokémon dos outros!", + "noPokeballMulti": "Não se pode lançar Poké Bolas\nquando há mais de um Pokémon!", + "noPokeballStrong": "Este Pokémon é forte demais para ser capturado!\nÉ preciso enfraquecê-lo primeiro!", + "noEscapeForce": "Uma força misteriosa\nte impede de fugir.", + "noEscapeTrainer": "Não se pode fugir de\nbatalhas contra treinadores!", + "noEscapePokemon": "O movimento {{moveName}} de {{pokemonName}} te impede de fugir!", + "runAwaySuccess": "Você fugiu com sucesso", + "runAwayCannotEscape": "Você nao conseguiu fugir!", + "escapeVerbSwitch": "trocar", + "escapeVerbFlee": "fugir", + "notDisabled": "O movimento {{moveName}}\nnão está mais desabilitado!", + "skipItemQuestion": "Tem certeza de que não quer escolher um item?", + "eggHatching": "Opa?", + "ivScannerUseQuestion": "Quer usar o Scanner de IVs em {{pokemonName}}?" +} as const; \ No newline at end of file diff --git a/src/locales/pt_BR/command-ui-handler.ts b/src/locales/pt_BR/command-ui-handler.ts new file mode 100644 index 000000000..1df44c49e --- /dev/null +++ b/src/locales/pt_BR/command-ui-handler.ts @@ -0,0 +1,9 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +export const commandUiHandler: SimpleTranslationEntries = { + "fight": "Lutar", + "ball": "Bolas", + "pokemon": "Pokémon", + "run": "Fugir", + "actionMessage": "O que {{pokemonName}}\ndeve fazer?", +} as const; \ No newline at end of file diff --git a/src/locales/pt_BR/config.ts b/src/locales/pt_BR/config.ts new file mode 100644 index 000000000..fc58d45ce --- /dev/null +++ b/src/locales/pt_BR/config.ts @@ -0,0 +1,32 @@ +import { ability } from "./ability"; +import { battle } from "./battle"; +import { commandUiHandler } from "./command-ui-handler"; +import { fightUiHandler } from "./fight-ui-handler"; +import { growth } from "./growth"; +import { menu } from "./menu"; +import { menuUiHandler } from "./menu-ui-handler"; +import { move } from "./move"; +import { nature } from "./nature"; +import { pokeball } from "./pokeball"; +import { pokemon } from "./pokemon"; +import { pokemonStat } from "./pokemon-stat"; +import { starterSelectUiHandler } from "./starter-select-ui-handler"; +import { tutorial } from "./tutorial"; + + +export const ptBrConfig = { + ability: ability, + battle: battle, + commandUiHandler: commandUiHandler, + fightUiHandler: fightUiHandler, + menuUiHandler: menuUiHandler, + menu: menu, + move: move, + pokeball: pokeball, + pokemonStat: pokemonStat, + pokemon: pokemon, + starterSelectUiHandler: starterSelectUiHandler, + tutorial: tutorial, + nature: nature, + growth: growth +} \ No newline at end of file diff --git a/src/locales/pt_BR/fight-ui-handler.ts b/src/locales/pt_BR/fight-ui-handler.ts new file mode 100644 index 000000000..7b8c5aab8 --- /dev/null +++ b/src/locales/pt_BR/fight-ui-handler.ts @@ -0,0 +1,7 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +export const fightUiHandler: SimpleTranslationEntries = { + "pp": "PP", + "power": "Poder", + "accuracy": "Precisão", +} as const; diff --git a/src/locales/pt_BR/growth.ts b/src/locales/pt_BR/growth.ts new file mode 100644 index 000000000..70848b606 --- /dev/null +++ b/src/locales/pt_BR/growth.ts @@ -0,0 +1,10 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +export const growth: SimpleTranslationEntries = { + "Erratic": "Instável", + "Fast": "Rápido", + "Medium_Fast": "Meio Rápido", + "Medium_Slow": "Meio Lento", + "Slow": "Lento", + "Fluctuating": "Flutuante" +} as const; \ No newline at end of file diff --git a/src/locales/pt_BR/menu-ui-handler.ts b/src/locales/pt_BR/menu-ui-handler.ts new file mode 100644 index 000000000..2e4d798cf --- /dev/null +++ b/src/locales/pt_BR/menu-ui-handler.ts @@ -0,0 +1,23 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +export const menuUiHandler: SimpleTranslationEntries = { + "GAME_SETTINGS": 'Configurações', + "ACHIEVEMENTS": "Conquistas", + "STATS": "Estatísticas", + "VOUCHERS": "Vouchers", + "EGG_LIST": "Incubadora", + "EGG_GACHA": "Gacha de Ovos", + "MANAGE_DATA": "Gerenciar Dados", + "COMMUNITY": "Comunidade", + "RETURN_TO_TITLE": "Voltar ao Início", + "LOG_OUT": "Logout", + "slot": "Slot {{slotNumber}}", + "importSession": "Importar Sessão", + "importSlotSelect": "Selecione um slot para importar.", + "exportSession": "Exportar Sessão", + "exportSlotSelect": "Selecione um slot para exportar.", + "importData": "Importar Dados", + "exportData": "Exportar Dados", + "cancel": "Cancelar", + "losingProgressionWarning": "Você vai perder todo o progresso desde o início da batalha. Confirmar?" +} as const; \ No newline at end of file diff --git a/src/locales/pt_BR/menu.ts b/src/locales/pt_BR/menu.ts new file mode 100644 index 000000000..474ac867e --- /dev/null +++ b/src/locales/pt_BR/menu.ts @@ -0,0 +1,46 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +/** + * The menu namespace holds most miscellaneous text that isn't directly part of the game's + * contents or directly related to Pokemon data. This includes menu navigation, settings, + * account interactions, descriptive text, etc. + */ +export const menu: SimpleTranslationEntries = { + "cancel": "Cancelar", + "continue": "Continuar", + "dailyRun": "Desafio diário (Beta)", + "loadGame": "Carregar Jogo", + "newGame": "Novo Jogo", + "selectGameMode": "Escolha um modo de jogo.", + "logInOrCreateAccount": "Inicie uma sessão ou crie uma conta para começar. Não é necessário email!", + "username": "Nome de Usuário", + "password": "Senha", + "login": "Iniciar sessão", + "register": "Registrar-se", + "emptyUsername": "Nome de usuário vazio", + "invalidLoginUsername": "Nome de usuário inválido", + "invalidRegisterUsername": "O nome de usuário só pode conter letras, números e sublinhados", + "invalidLoginPassword": "Senha inválida", + "invalidRegisterPassword": "A senha deve ter pelo menos 6 caracteres", + "usernameAlreadyUsed": "Esse nome de usuário já está em uso", + "accountNonExistent": "Esse nome de usuário não existe", + "unmatchingPassword": "Senha incorreta", + "passwordNotMatchingConfirmPassword": "As senhas não coincidem", + "confirmPassword": "Confirmar senha", + "registrationAgeWarning": "Se registrando, você confirma que tem pelo menos 13 anos de idade.", + "backToLogin": "Voltar ao Login", + "failedToLoadSaveData": "Não foi possível carregar os dados de salvamento. Por favor, recarregue a página.\nSe a falha persistir, contate o administrador.", + "sessionSuccess": "Sessão carregada com sucesso.", + "failedToLoadSession": "Não foi possível carregar os dados da sua sessão.\nEles podem estar corrompidos.", + "boyOrGirl": "Você é um menino ou uma menina?", + "boy": "Menino", + "girl": "Menina", + "dailyRankings": "Classificação Diária", + "weeklyRankings": "Classificação Semanal", + "noRankings": "Sem Classificação", + "loading": "Carregando…", + "playersOnline": "Jogadores Ativos", + "empty": "Vazio", + "yes": "Sim", + "no": "Não", +} as const; \ No newline at end of file diff --git a/src/locales/pt_BR/move.ts b/src/locales/pt_BR/move.ts new file mode 100644 index 000000000..11fa8a240 --- /dev/null +++ b/src/locales/pt_BR/move.ts @@ -0,0 +1,3812 @@ +import { MoveTranslationEntries } from "#app/plugins/i18n"; + +export const move: MoveTranslationEntries = { + "pound": { + name: "Pound", + effect: "O alvo é golpeado com uma pata, uma cauda longa, ou com algo desse tipo." + }, + "karateChop": { + name: "Karate Chop", + effect: "O alvo é atacado com um golpe cortante. Golpes críticos ocorrem mais facilmente." + }, + "doubleSlap": { + name: "Double Slap", + effect: "O alvo é estapeado repetidamente, de duas a cinco vezes seguidas." + }, + "cometPunch": { + name: "Comet Punch", + effect: "O alvo é atingido com uma sequência de socos que acertam de duas a cinco vezes seguidas." + }, + "megaPunch": { + name: "Mega Punch", + effect: "O alvo é atingido por um soco desferido com grande força muscular." + }, + "payDay": { + name: "Pay Day", + effect: "Várias moedas são lançadas no alvo para causar dano. O Treinador recebe o dinheiro após a batalha." + }, + "firePunch": { + name: "Fire Punch", + effect: "O alvo é atingido por um punho flamejante. Isso pode deixar o alvo queimado." + }, + "icePunch": { + name: "Ice Punch", + effect: "O alvo é atingido por um punho gelado. Isso pode deixar o alvo congelado." + }, + "thunderPunch": { + name: "Thunder Punch", + effect: "O alvo é atingido por um punho eletrificado. Isso também pode deixar o alvo paralisado." + }, + "scratch": { + name: "Scratch", + effect: "Garras duras, pontiagudas e afiadas rasgam o alvo para causar dano." + }, + "viceGrip": { + name: "Vice Grip", + effect: "O alvo é agarrado pelos lados e espremido." + }, + "guillotine": { + name: "Guillotine", + effect: "Um ataque violento e destruidor com grandes pinças. Se o golpe acertar, o alvo desmaiará instantaneamente." + }, + "razorWind": { + name: "Razor Wind", + effect: "Neste ataque de dois turnos, lâminas de vento golpeiam Pokémon adversários no segundo turno. Golpes críticos ocorrem mais facilmente." + }, + "swordsDance": { + name: "Swords Dance", + effect: "Uma dança frenética para elevar o espírito de luta. Aumenta bruscamente o Ataque do usuário." + }, + "cut": { + name: "Cut", + effect: "O alvo é cortado com uma foice ou garra." + }, + "gust": { + name: "Gust", + effect: "Uma rajada de vento é levantada por asas e lançada no alvo para causar dano." + }, + "wingAttack": { + name: "Wing Attack", + effect: "O alvo é atingido por asas grandes e imponentes, amplamente abertas para causar dano." + }, + "whirlwind": { + name: "Whirlwind", + effect: "O alvo é soprado para fora da batalha, dando lugar a outro Pokémon. Em batalhas selvagens, a batalha termina caso seja contra um único Pokémon." + }, + "fly": { + name: "Fly", + effect: "O usuário levanta vôo e ataca o alvo no próximo turno." + }, + "bind": { + name: "Bind", + effect: "Um longo corpo ou tentáculos são utilizados para prender o alvo e espremê-lo por quatro ou cinco turnos." + }, + "slam": { + name: "Slam", + effect: "O alvo é atingido com uma longa cauda, vinhas ou algo parecido para infligir dano." + }, + "vineWhip": { + name: "Vine Whip", + effect: "O usuário utiliza-se de vinhas finas como chicote para infligir dano." + }, + "stomp": { + name: "Stomp", + effect: "O alvo é pisoteado por um grande pé. Isso também pode fazer o alvo hesitar." + }, + "doubleKick": { + name: "Double Kick", + effect: "O alvo é atingido rapidamente com um chute duas vezes seguidas usando ambos os pés." + }, + "megaKick": { + name: "Mega Kick", + effect: "O alvo é atingido por um chute desferido com grande força muscular." + }, + "jumpKick": { + name: "Jump Kick", + effect: "O usuário pula alto, depois golpeia com um chute. Se o chute erra, o usuário se fere." + }, + "rollingKick": { + name: "Rolling Kick", + effect: "O usuário desfere um rápido chute giratório. Isso também pode fazer o alvo hesitar." + }, + "sandAttack": { + name: "Sand Attack", + effect: "Areia é lançada no rosto do alvo, reduzindo sua Precisão." + }, + "headbutt": { + name: "Headbutt", + effect: "O usuário direciona sua cabeça e ataca, avançando diretamente sobre o alvo. Isso também pode fazer o alvo hesitar." + }, + "hornAttack": { + name: "Horn Attack", + effect: "O alvo é perfurado por um chifre pontudo e afiado para infligir dano." + }, + "furyAttack": { + name: "Fury Attack", + effect: "O alvo é perfurado repetidamente por um chifre ou bico, de duas a cinco vezes seguidas." + }, + "hornDrill": { + name: "Horn Drill", + effect: "O usuário perfura o alvo com um chifre que gira como uma broca. Se o golpe acertar, o alvo desmaia instantaneamente." + }, + "tackle": { + name: "Tackle", + effect: "Um ataque físico cujo o usuário vai para cima do alvo e lhe atinge com todo o seu corpo." + }, + "bodySlam": { + name: "Body Slam", + effect: "O usuário se lança para cima do alvo com todo o peso de seu corpo. Isso pode deixar o alvo paralisado." + }, + "wrap": { + name: "Wrap", + effect: "Um longo corpo, vinhas ou algo assim, são usados para embrulhar e apertar o alvo por quatro ou cinco turnos." + }, + "takeDown": { + name: "Take Down", + effect: "Uma investida corporal imprudente para golpear o alvo. Isso também fere um pouco o usuário." + }, + "thrash": { + name: "Thrash", + effect: "O usuário fica furioso e ataca com violência de dois a três turnos. O usuário então se torna confuso." + }, + "double-Edge": { + name: "Double-Edge", + effect: "Uma investida imprudente e muito perigosa. Isso também fere bastante o usuário." + }, + "tailWhip": { + name: "Tail Whip", + effect: "O usuário balança sua cauda de maneira fofa, baixando a guarda do Pokémon adversário e diminuindo sua Defesa." + }, + "poisonSting": { + name: "Poison Sting", + effect: "O usuário perfura o alvo com um ferrão venenoso. Isso também pode envenenar o alvo." + }, + "twineedle": { + name: "Twineedle", + effect: "O usuário causa dano duas vezes seguidas, perfurando o alvo com dois ferrões. Isso também pode envenenar o alvo." + }, + "pinMissile": { + name: "Pin Missile", + effect: "Espinhos afiados são lançados no alvo em rápida sucessão. Eles acertam de duas a cinco vezes seguidas." + }, + "leer": { + name: "Leer", + effect: "O usuário lança um olhar intimidador no Pokémon oponente, reduzindo sua Defesa." + }, + "bite": { + name: "Bite", + effect: "O alvo é mordido ferozmente com presas afiadas. Isso também pode fazer o alvo hesitar." + }, + "growl": { + name: "Growl", + effect: "O usuário rosna de maneira agradável, baixando a guarda do Pokémon adversário. Isso diminui o Ataque do oponente." + }, + "roar": { + name: "Roar", + effect: "O alvo se assusta, retorna para a sua Poké Bola e um outro Pokémon toma o seu lugar. O combate é encerrado contra um único Pokémon selvagem." + }, + "sing": { + name: "Sing", + effect: "Uma suave canção de ninar é cantada com uma voz calma, colocando o alvo em sono profundo." + }, + "supersonic": { + name: "Supersonic", + effect: "O usuário gera estranhas ondas sonoras de seu corpo que confundem o alvo." + }, + "sonicBoom": { + name: "Sonic Boom", + effect: "O alvo é atingido com uma onda de choque destrutiva que sempre causa dano de 20 PS." + }, + "disable": { + name: "Disable", + effect: "Por quatro turnos, este movimento impede que o alvo utilize o último movimento usado por ele." + }, + "acid": { + name: "Acid", + effect: "Os Pokémon adversários são atacados com um jato de um forte ácido. Isso pode diminuir a Defesa Especial." + }, + "ember": { + name: "Ember", + effect: "O alvo é atacado com pequenas chamas. Também pode deixar o alvo com uma queimadura." + }, + "flamethrower": { + name: "Flamethrower", + effect: "O usuário queima o alvo com uma grande explosão de fogo. Também pode deixar o alvo com uma queimadura." + }, + "mist": { + name: "Mist", + effect: "O usuário esconde a si mesmo e seus aliados em uma neblina branca que impede que seus atributos sejam reduzidos por cinco turnos." + }, + "waterGun": { + name: "Water Gun", + effect: "O alvo é atingido por um disparo forte de água." + }, + "hydroPump": { + name: "Hydro Pump", + effect: "O alvo é atingido por um enorme volume de água lançado sob uma forte pressão." + }, + "surf": { + name: "Surf", + effect: "O usuário ataca tudo ao seu redor, inundando os arredores com uma onda gigante." + }, + "iceBeam": { + name: "Ice Beam", + effect: "O alvo é atingido por um raio de energia congelante. Isso também pode deixar o alvo congelado." + }, + "blizzard": { + name: "Blizzard", + effect: "Uma enorme nevasca é invocada para atacar o Pokémon oponente. Também pode deixar o alvo congelado." + }, + "psybeam": { + name: "Psybeam", + effect: "O alvo é atacado por um feixe peculiar. Isso também pode deixar o alvo confuso." + }, + "bubbleBeam": { + name: "Bubble Beam", + effect: "Um jato de bolhas é borrifado com intensidade no alvo. Isso também pode diminuir a Velocidade do alvo." + }, + "auroraBeam": { + name: "Aurora Beam", + effect: "O alvo é atingido por um raio colorido como o arco-íris. Isso também pode diminuir o Ataque do alvo." + }, + "hyperBeam": { + name: "Hyper Beam", + effect: "O alvo é atingido por um raio poderoso. O usuário não poderá se mover no próximo turno." + }, + "peck": { + name: "Peck", + effect: "O alvo é atingido por um bico ou chifre pontudo." + }, + "drillPeck": { + name: "Drill Peck", + effect: "Um ataque giratório com um bico afiado que age como uma broca." + }, + "submission": { + name: "Submission", + effect: "O usuário agarra o alvo e, imprudentemente, mergulha em direção ao chão. Isso também fere um pouco o usuário." + }, + "lowKick": { + name: "Low Kick", + effect: "Um poderoso chute baixo que derruba o alvo. Quanto mais pesado o alvo for, maior o poder do movimento." + }, + "counter": { + name: "Counter", + effect: "Um movimento de retaliação que neutraliza qualquer ataque físico, causando o dobro do dano recebido." + }, + "seismicToss": { + name: "Seismic Toss", + effect: "O alvo é lançado usando o poder da gravidade. Isso causa dano igual ao nível do usuário." + }, + "strength": { + name: "Strength", + effect: "O alvo é atingido por um soco dado com o máximo de força." + }, + "absorb": { + name: "Absorb", + effect: "Um ataque que drena nutrientes. O usuário recupera PS pela metade do dano infligido ao alvo." + }, + "megaDrain": { + name: "Mega Drain", + effect: "Um ataque que drena nutrientes. O usuário recupera PS pela metade do dano infligido ao alvo." + }, + "leechSeed": { + name: "Leech Seed", + effect: "Uma semente é plantada no alvo. Isso rouba alguns pontos de PS do alvo a cada turno." + }, + "growth": { + name: "Growth", + effect: "O corpo do usuário cresce de uma vez só, aumentando seu Ataque e Ataque Especial." + }, + "razorLeaf": { + name: "Razor Leaf", + effect: "Folhas superafiadas são lançadas para cortar os Pokémon adversários. Golpes críticos ocorrem mais facilmente." + }, + "solarBeam": { + name: "Solar Beam", + effect: "Neste ataque de dois turnos, o usuário absorve luz, então dispara um raio focalizado no próximo turno." + }, + "poisonPowder": { + name: "Poison Powder", + effect: "O usuário espalha uma nuvem de poeira tóxica que envenena o alvo." + }, + "stunSpore": { + name: "Stun Spore", + effect: "O usuário espalha uma nuvem de esporos entorpecentes que paralisam o alvo." + }, + "sleepPowder": { + name: "Sleep Powder", + effect: "O usuário espalha uma grande nuvem de pó sonífero ao redor do alvo." + }, + "petalDance": { + name: "Petal Dance", + effect: "O usuário ataca o alvo espalhando pétalas de dois a três turnos. O usuário então fica confuso." + }, + "stringShot": { + name: "String Shot", + effect: "O Pokémon adversário é enrolado com uma seda expelida da boca do usuário, o que reduz duramente sua Velocidade." + }, + "dragonRage": { + name: "Dragon Rage", + effect: "Este ataque atinge o alvo com uma onda de choque de pura fúria. Este ataque sempre causa 40 PS de dano." + }, + "fireSpin": { + name: "Fire Spin", + effect: "O alvo fica preso dentro de um vórtice feroz de fogo que se prolonga por quatro ou cinco turnos." + }, + "thunderShock": { + name: "Thunder Shock", + effect: "Um choque elétrico que cai sobre o alvo causando dano. Isso também pode deixar o alvo paralisado." + }, + "thunderbolt": { + name: "Thunderbolt", + effect: "Uma forte explosão elétrica que cai sobre o alvo. Também pode deixar o alvo com paralisia." + }, + "thunderWave": { + name: "Thunder Wave", + effect: "O usuário lança um choque elétrico fraco que paralisa o alvo." + }, + "thunder": { + name: "Thunder", + effect: "Um raio cruel despenca no alvo para causar dano. Isso também pode deixar o alvo com paralisia." + }, + "rockThrow": { + name: "Rock Throw", + effect: "Para atacar, o usuário pega uma pequena rocha e joga no alvo." + }, + "earthquake": { + name: "Earthquake", + effect: "O usuário desencadeia um terremoto que atinge todos os Pokémon ao seu redor." + }, + "fissure": { + name: "Fissure", + effect: "O usuário abre uma fissura no chão e joga o alvo nela. O alvo desmaiará instantaneamente se esse ataque acertar." + }, + "dig": { + name: "Dig", + effect: "O usuário se entoca, então ataca no próximo turno." + }, + "toxic": { + name: "Toxic", + effect: "Um movimento que deixa o alvo seriamente envenenado. Seu dano venenoso aumenta a cada turno." + }, + "confusion": { + name: "Confusion", + effect: "O alvo é atingido por uma força telecinética fraca. Isso também pode deixar o alvo confuso." + }, + "psychic": { + name: "Psychic", + effect: "O alvo é atingido por uma força telecinética poderosa. Isso também pode diminuir a Defesa Especial do alvo." + }, + "hypnosis": { + name: "Hypnosis", + effect: "O usuário implanta uma sugestão hipnótica para fazer o alvo cair em um sono profundo." + }, + "meditate": { + name: "Meditate", + effect: "O usuário medita para despertar o poder profundo do seu corpo para aumentar seu Ataque." + }, + "agility": { + name: "Agility", + effect: "O usuário relaxa o corpo para se mover rapidamente. Isso aumenta bruscamente sua Velocidade." + }, + "quickAttack": { + name: "Quick Attack", + effect: "O usuário ataca o alvo em uma velocidade que o torna quase invisível. Esse movimento tem prioridade." + }, + "rage": { + name: "Rage", + effect: "Enquanto este movimento estiver em uso, o poder da ira aumenta o Ataque toda vez que o usuário for atingido em batalha." + }, + "teleport": { + name: "Teleport", + effect: "Use para fugir de qualquer Pokémon selvagem." + }, + "nightShade": { + name: "Night Shade", + effect: "O usuário faz com que o alvo veja uma miragem assustadora. Isso causa dano igual ao nível do usuário." + }, + "mimic": { + name: "Mimic", + effect: "O usuário copia o último movimento do alvo. O movimento pode ser usado durante a batalha até que o Pokémon seja trocado." + }, + "screech": { + name: "Screech", + effect: "Um grito estridente que reduz duramente o atributo de Defesa do alvo." + }, + "doubleTeam": { + name: "Double Team", + effect: "Movendo-se rapidamente, o usuário faz cópias ilusórias para aumentar sua Evasão." + }, + "recover": { + name: "Recover", + effect: "Restaurando suas células, o usuário restaura metade do seu máximo de PS." + }, + "harden": { + name: "Harden", + effect: "O usuário enrijece todos os músculos do seu corpo para aumentar seu atributo de Defesa." + }, + "minimize": { + name: "Minimize", + effect: "O usuário comprime seu corpo para se parecer menor, o que aumenta bruscamente sua Evasão." + }, + "smokescreen": { + name: "Smokescreen", + effect: "O usuário lança uma nuvem obscura de fumaça ou tinta. Isso diminui a Precisão do alvo." + }, + "confuseRay": { + name: "Confuse Ray", + effect: "O alvo é exposto a um raio sinistro que leva à confusão." + }, + "withdraw": { + name: "Withdraw", + effect: "O usuário retrai seu corpo para dentro de seu casco duro, aumentando o seu atributo de Defesa." + }, + "defenseCurl": { + name: "Defense Curl", + effect: "O usuário se enrola para esconder os pontos fracos e aumentar seu atributo de Defesa." + }, + "barrier": { + name: "Barrier", + effect: "O usuário ergue uma barreira robusta que aumenta bruscamente a sua Defesa." + }, + "lightScreen": { + name: "Light Screen", + effect: "Uma incrível parede de luz é erguida para reduzir o dano de ataques especiais por cinco turnos." + }, + "haze": { + name: "Haze", + effect: "O usuário cria uma névoa que elimina todas as alterações de atributos de todos os Pokémon em batalha." + }, + "reflect": { + name: "Reflect", + effect: "Uma incrível parede de luz é erguida para reduzir o dano de ataques físicos por cinco turnos." + }, + "focusEnergy": { + name: "Focus Energy", + effect: "O usuário respira fundo e concentra-se para que golpes críticos ocorram mais facilmente." + }, + "bide": { + name: "Bide", + effect: "O usuário resiste a ataques por dois turnos, e revida causando o dobro do dano recebido." + }, + "metronome": { + name: "Metronome", + effect: "O usuário balança um dedo e estimula seu cérebro para usar aleatoriamente quase qualquer movimento." + }, + "mirrorMove": { + name: "Mirror Move", + effect: "O usuário contra-ataca o alvo imitando seu último movimento utilizado." + }, + "self-Destruct": { + name: "Self-Destruct", + effect: "O usuário ataca tudo ao seu redor causando uma explosão. O usuário desmaia por usar esse golpe." + }, + "eggBomb": { + name: "Egg Bomb", + effect: "Um ovo grande é arremessado contra o alvo com força máxima para causar dano." + }, + "lick": { + name: "Lick", + effect: "O alvo é lambido com uma língua comprida, causando dano. Isso também pode deixar o alvo paralisado." + }, + "smog": { + name: "Smog", + effect: "O alvo é atacado com uma descarga de gases poluentes. Isso também pode envenenar o alvo." + }, + "sludge": { + name: "Sludge", + effect: "Lodo insalubre é no arremessado no alvo. Isso também pode causar envenenamento." + }, + "boneClub": { + name: "Bone Club", + effect: "O usuário golpeia o alvo com um osso. Isso também pode o fazer o alvo hesitar." + }, + "fireBlast": { + name: "Fire Blast", + effect: "O alvo é atacado com uma intensa explosão de fogo consumidor. Isso também pode deixar o alvo com uma queimadura." + }, + "waterfall": { + name: "Waterfall", + effect: "O usuário investe no alvo e pode fazê-lo hesitar." + }, + "clamp": { + name: "Clamp", + effect: "O alvo é apertado e imprensado pela concha densa e robusta do usuário por quatro ou cinco turnos." + }, + "swift": { + name: "Swift", + effect: "Raios em formato de estrela são disparados no Pokémon adversário. Esse ataque nunca erra." + }, + "skullBash": { + name: "Skull Bash", + effect: "O usuário retrai sua cabeça para aumentar a Defesa no primeiro turno e depois se choca com o alvo no próximo turno." + }, + "spikeCannon": { + name: "Spike Cannon", + effect: "Espinhos afiados são lançados no alvo em rápida sucessão. Eles acertam de duas a cinco vezes seguidas." + }, + "constrict": { + name: "Constrict", + effect: "O alvo é atacado com longos e sorrateiros tentáculos ou vinhas. Isso também pode diminuir a Velocidade do alvo." + }, + "amnesia": { + name: "Amnesia", + effect: "O usuário esvazia sua mente para esquecer suas preocupações. Aumenta bruscamente a Defesa Especial." + }, + "kinesis": { + name: "Kinesis", + effect: "O usuário distrai o alvo entortando uma colher. Isso diminui a Precisão do alvo." + }, + "soft-Boiled": { + name: "Soft-Boiled", + effect: "O usuário restaura os próprios PS pela metade dos seus PS máximos." + }, + "highJumpKick": { + name: "High Jump Kick", + effect: "O alvo é atacado com uma joelhada de um pulo. Caso erre, o usuário se machuca." + }, + "glare": { + name: "Glare", + effect: "O usuário intimida o alvo com o padrão em sua barriga para causar paralisia." + }, + "dreamEater": { + name: "Dream Eater", + effect: "O usuário se alimenta dos sonhos de um alvo adormecido. Ele absorve metade do dano causado para curar seus PS." + }, + "poisonGas": { + name: "Poison Gas", + effect: "Uma nuvem de gás venenoso é assoprada no rosto do Pokémon adversário. Isso pode envenenar os alvos." + }, + "barrage": { + name: "Barrage", + effect: "Objetos redondos são lançados no alvo para acertar de duas a cinco vezes seguidas." + }, + "leechLife": { + name: "Leech Life", + effect: "O usuário drena o sangue do alvo. Os PS do usuário são restaurados pela metade do dano recebido pelo alvo." + }, + "lovelyKiss": { + name: "Lovely Kiss", + effect: "Com uma face assustadora, o usuário tenta beijar o alvo à força. Se conseguir, o alvo cai no sono." + }, + "skyAttack": { + name: "Sky Attack", + effect: "Um movimento de dois turnos onde golpes críticos ocorrem mais facilmente. Também pode fazer o alvo hesitar." + }, + "transform": { + name: "Transform", + effect: "O usuário transforma-se em uma cópia do alvo, conseguindo os mesmos movimentos do adversário." + }, + "bubble": { + name: "Bubble", + effect: "Um jato de incontáveis bolhas é disparado no Pokémon adversário. Isso também pode diminuir a velocidade do alvo." + }, + "dizzyPunch": { + name: "Dizzy Punch", + effect: "O alvo é atingido com socos dados ritmicamente. Isso também pode deixar alvo confuso." + }, + "spore": { + name: "Spore", + effect: "O usuário espalha rajadas de esporos que induzem sono ao alvo." + }, + "flash": { + name: "Flash", + effect: "O usuário pisca uma luz brilhante que reduz a Precisão do alvo." + }, + "psywave": { + name: "Psywave", + effect: "O alvo é atacado com uma estranha onda psíquica. O ataque varia de intensidade." + }, + "splash": { + name: "Splash", + effect: "O usuário apenas debate-se no chão e espirra água ao seu redor sem efeito algum..." + }, + "acidArmor": { + name: "Acid Armor", + effect: "O usuário altera sua estrutura celular para se liquefazer, aumentando bruscamente o seu atributo de Defesa." + }, + "crabhammer": { + name: "Crabhammer", + effect: "O alvo é martelado com uma grande pinça. Golpes críticos acertam mais facilmente." + }, + "explosion": { + name: "Explosion", + effect: "O usuário ataca tudo o que estiver à sua volta causando uma tremenda explosão. O usuário desmaia ao usar esse movimento." + }, + "furySwipes": { + name: "Fury Swipes", + effect: "O alvo é atacado com garras afiadas ou foices rapidamente, de duas a cinco vezes seguidas." + }, + "bonemerang": { + name: "Bonemerang", + effect: "O usuário arremessa o osso que segura. O osso gira, atingindo o alvo duas vezes, indo e voltando." + }, + "rest": { + name: "Rest", + effect: "O usuário dorme por dois turnos. Isso restaura completamente os PS do usuário e cura quaisquer condições negativas." + }, + "rockSlide": { + name: "Rock Slide", + effect: "Pedras grandes são arremessadas no Pokémon oponente para causar dano. Isso também pode fazer o Pokémon oponente hesitar." + }, + "hyperFang": { + name: "Hyper Fang", + effect: "O usuário morde o alvo com força, usando as suas afiadas presas frontais. Isso também pode fazer o alvo hesitar." + }, + "sharpen": { + name: "Sharpen", + effect: "O usuário abaixa o número de polígonos, ficando mais pontiagudo. Isso aumenta o seu atributo de Ataque." + }, + "conversion": { + name: "Conversion", + effect: "O usuário muda seu tipo para o mesmo tipo do movimento no topo da lista dos movimentos que conhece no momento." + }, + "triAttack": { + name: "Tri Attack", + effect: "O usuário golpeia com um ataque de três raios simultâneos. Também pode queimar, congelar ou paralisar o alvo." + }, + "superFang": { + name: "Super Fang", + effect: "O usuário mastiga com força o alvo usando suas afiadas presas frontais. Isso corta os PS do alvo pela metade." + }, + "slash": { + name: "Slash", + effect: "O alvo é atacado com um açoite de garras ou lâminas. Golpes críticos ocorrem mais facilmente." + }, + "substitute": { + name: "Substitute", + effect: "O usuário faz uma cópia de si mesmo usando parte de seus PS. A cópia serve como uma isca para o usuário." + }, + "struggle": { + name: "Struggle", + effect: "Um ataque usado em desespero, apenas se o usuário não tiver PP. Isso também causa um pouco de dano no usuário." + }, + "sketch": { + name: "Sketch", + effect: "Permite que o usuário aprenda permanentemente o último movimento usado pelo alvo. Assim que for usado, o Esboço desaparece." + }, + "tripleKick": { + name: "Triple Kick", + effect: "Um ataque de três chutes consecutivos que se fortalece a cada golpe acertado." + }, + "thief": { + name: "Thief", + effect: "O usuário ataca e rouba o item segurado por seu alvo simultaneamente. O usuário não pode roubar algo se ele já segurar um item." + }, + "spiderWeb": { + name: "Spider Web", + effect: "O usuário enlaça o alvo com uma teia fina e grudenta, para que ele não possa fugir da batalha." + }, + "mindReader": { + name: "Mind Reader", + effect: "O usuário pressente os movimentos do alvo com sua mente para ter certeza que o seu próximo ataque não o erre." + }, + "nightmare": { + name: "Nightmare", + effect: "Um alvo que dorme terá um pesadelo que causará dano a cada turno." + }, + "flameWheel": { + name: "Flame Wheel", + effect: "O usuário se envolve em fogo e dispara em direção ao alvo. Isso também pode causar queimaduras no oponente." + }, + "snore": { + name: "Snore", + effect: "Um ataque que só pode ser usado se o usuário estiver dormindo. O barulho alto pode fazer o alvo hesitar." + }, + "curse": { + name: "Curse", + effect: "Um movimento que funciona diferente com o tipo Fantasma do que com outros tipos." + }, + "flail": { + name: "Flail", + effect: "O usuário agita os membros sem rumo para atacar. Quanto menores forem os PS do usuário, melhor será o movimento." + }, + "conversion2": { + name: "Conversion 2", + effect: "O usuário muda a própria tipagem para se fazer resistente ao tipo do último ataque usado pelo oponente." + }, + "aeroblast": { + name: "Aeroblast", + effect: "Um vortex de vento é atirado em direção ao alvo para causar dano. Golpes críticos ocorrem mais facilmente." + }, + "cottonSpore": { + name: "Cotton Spore", + effect: "O usuário solta esporos de algodão que grudam no Pokémon adversário. Isso prejudica bruscamente a Velocidade do oponente." + }, + "reversal": { + name: "Reversal", + effect: "Um ataque total que fica mais forte quanto menos PS o usuário possuir." + }, + "spite": { + name: "Spite", + effect: "O usuário libera todo o seu rancor no último movimento usado pelo oponente, cortando 4 PP do mesmo." + }, + "powderSnow": { + name: "Powder Snow", + effect: "O usuário ataca com uma brisa congelante de Neve em Pó. Isso talvez possa congelar o Pokémon adversário." + }, + "protect": { + name: "Protect", + effect: "Permite que o usuário desvie de todos os ataques. A sua chance de falhar aumenta, caso seja usado em sucessão." + }, + "machPunch": { + name: "Mach Punch", + effect: "O usuário soca numa velocidade incompreensível. Esse movimento tem prioridade." + }, + "scaryFace": { + name: "Scary Face", + effect: "O usuário assusta o alvo com uma cara assustadora para prejudicar duramente a velocidade do oponente." + }, + "feintAttack": { + name: "Feint Attack", + effect: "O usuário se aproxima do alvo amigavelmente, então ataca com um soco inesperado. Esse ataque nunca erra." + }, + "sweetKiss": { + name: "Sweet Kiss", + effect: "O usuário beija o alvo com uma fofura doce e angelical, causando confusão." + }, + "bellyDrum": { + name: "Belly Drum", + effect: "O usuário maximiza seu Ataque em troca de PS igual à metade do seu PS máximo." + }, + "sludgeBomb": { + name: "Sludge Bomb", + effect: "Lodo insalubre é no arremessado no alvo. Isso também pode causar envenenamento." + }, + "mud-Slap": { + name: "Mud-Slap", + effect: "O usuário arremessa lama no rosto do adversário para causar dano e prejudicar sua precisão." + }, + "octazooka": { + name: "Octazooka", + effect: "O usuário ataca jogando tinta no rosto ou nos olhos do alvo. Isso pode prejudicar a Precisão do alvo." + }, + "spikes": { + name: "Spikes", + effect: "O usuário lança armadilhas de espinhos nos pés da equipe adversária. As armadilhas ferem os Pokémon que são trocados em batalha." + }, + "zapCannon": { + name: "Zap Cannon", + effect: "O usuário atira uma explosão elétrica como um canhão para infligir dano e causar paralisia." + }, + "foresight": { + name: "Foresight", + effect: "Permite que um alvo do tipo Fantasma seja atingido por ataques do tipo Normal e Lutador. Isso também permite que um alvo evasivo seja acertado." + }, + "destinyBond": { + name: "Destiny Bond", + effect: "Quando esse movimento é usado, caso o usuário desmaie, o Pokémon que acertou o nocaute também desmaiará. A chance de falhar aumenta se usado em sucessão." + }, + "perishSong": { + name: "Perish Song", + effect: "Qualquer Pokémon que ouvir essa Canção desmaiará em três turnos, a não ser que ele seja retirado da batalha." + }, + "icyWind": { + name: "Icy Wind", + effect: "O usuário ataca com uma rajada de ar arrepiante. Isso também prejudica a Velocidade do Pokémon adversário." + }, + "detect": { + name: "Detect", + effect: "Permite que o usuário desvie de todos os ataques. A sua chance de falhar aumenta, caso seja usado em sucessão." + }, + "boneRush": { + name: "Bone Rush", + effect: "O usuário atinge o alvo com um osso duro de duas a cinco vezes seguidas." + }, + "lock-On": { + name: "Lock-On", + effect: "O usuário foca sua mira no alvo. Isso garante que o próximo ataque não erre o alvo." + }, + "outrage": { + name: "Outrage", + effect: "O usuário fica furioso e ataca com violência de dois a três turnos. O usuário então se torna confuso." + }, + "sandstorm": { + name: "Sandstorm", + effect: "Uma tempestade de areia é invocada durante 5 turnos para ferir todos os combatentes, exceto os tipos Pedra, Terra e Aço. Isso aumenta a Defesa Especial dos tipo Pedra." + }, + "gigaDrain": { + name: "Giga Drain", + effect: "Um ataque que drena nutrientes. O usuário recupera PS pela metade do dano infligido ao alvo." + }, + "endure": { + name: "Endure", + effect: "O usuário resiste a qualquer ataque com pelo menos 1 PS. A chance de falhar aumenta caso seja usado em sucessão." + }, + "charm": { + name: "Charm", + effect: "O usuário contempla o alvo com um olhar charmoso, fazendo-o ficar menos atento. Isso prejudica duramente o Ataque do oponente." + }, + "rollout": { + name: "Rollout", + effect: "O usuário rola continuamente em direção ao alvo por cinco turnos. O ataque fica mais forte a cada acerto." + }, + "falseSwipe": { + name: "False Swipe", + effect: "Um ataque moderado que previne que o alvo desmaie. O alvo é deixado com pelo menos 1 de PS." + }, + "swagger": { + name: "Swagger", + effect: "O usuário enfurece e confunde o alvo. Entretanto, isso também aumenta bruscamente o Ataque do alvo." + }, + "milkDrink": { + name: "Milk Drink", + effect: "O usuário restaura os próprios PS pela metade dos seus PS máximos." + }, + "spark": { + name: "Spark", + effect: "O usuário direciona uma investida carregada com eletricidade no alvo. Isso pode paralisar o alvo." + }, + "furyCutter": { + name: "Fury Cutter", + effect: "O alvo é cortado com foices ou garras. Esse ataque se torna mais poderoso se usado em sucessão." + }, + "steelWing": { + name: "Steel Wing", + effect: "O alvo é atingido com asas de aço. Isso também pode aumentar a Defesa do usuário." + }, + "meanLook": { + name: "Mean Look", + effect: "O usuário encara o alvo com um olhar sombrio e opressor. O alvo se torna incapaz de fugir." + }, + "attract": { + name: "Attract", + effect: "Caso o adversário seja do gênero oposto ao usuário, o alvo se apaixona e se torna menos suscetível a atacar." + }, + "sleepTalk": { + name: "Sleep Talk", + effect: "Enquanto está dormindo, o usuário usa aleatoriamente um dos movimentos que tem conhecimento." + }, + "healBell": { + name: "Heal Bell", + effect: "O usuário toca um sino calmante para curar condições de estados de todos os Pokémon aliados na equipe." + }, + "return": { + name: "Return", + effect: "Um ataque poderoso que fica mais poderoso à medida que o usuário gosta de seu Treinador." + }, + "present": { + name: "Present", + effect: "O usuário ataca o alvo entregando um presente com uma armadilha oculta. Entretanto, às vezes cura os PS do alvo." + }, + "frustration": { + name: "Frustration", + effect: "Um ataque poderoso que fica mais poderoso à medida que o usuário desgosta de seu Treinador." + }, + "safeguard": { + name: "Safeguard", + effect: "O usuário cria um campo protetor que previne condições de estado por cinco turnos." + }, + "painSplit": { + name: "Pain Split", + effect: "O usuário adiciona os próprios PS aos PS do alvo, então compartilha igualmente os PS combinados com o alvo." + }, + "sacredFire": { + name: "Sacred Fire", + effect: "O usuário é arrasado com uma rajada de fogo místico de grande intensidade. Isso pode deixar o alvo queimado." + }, + "magnitude": { + name: "Magnitude", + effect: "O usuário ataca tudo ao seu redor com um grande tremor. Seu poder varia." + }, + "dynamicPunch": { + name: "Dynamic Punch", + effect: "O usuário soca o alvo com sua força totalmente concentrada. Em caso de acerto, confundirá o alvo." + }, + "megahorn": { + name: "Megahorn", + effect: "Usando seu impressionante chifre resistente, o usuário golpeia o alvo sem trégua." + }, + "dragonBreath": { + name: "Dragon Breath", + effect: "O usuário sopra uma poderosa rajada que causa dano. Isso também pode paralisar o alvo." + }, + "batonPass": { + name: "Baton Pass", + effect: "O usuário troca de lugar com um Pokémon da equipe em espera e passa para ele quaisquer mudanças de atributos." + }, + "encore": { + name: "Encore", + effect: "O usuário enaltece o alvo para que ele continue usando o movimento que ele usou por último durante três turnos." + }, + "pursuit": { + name: "Pursuit", + effect: "Um ataque que causa o dobro do dano caso seja usado em um alvo que esteja sendo trocado para fora da batalha." + }, + "rapidSpin": { + name: "Rapid Spin", + effect: "Um ataque giratório que pode anular movimentos como Enlaçar, Embrulho, Sanguessuga e Espinhos." + }, + "sweetScent": { + name: "Sweet Scent", + effect: "Um aroma doce que prejudica duramente a Evasão do Pokémon adversário." + }, + "ironTail": { + name: "Iron Tail", + effect: "O alvo é esmagado com uma cauda dura como aço. Isso também pode prejudicar a Defesa do alvo." + }, + "metalClaw": { + name: "Metal Claw", + effect: "O alvo é cortado com garras de metal. Isso também pode aumentar o Ataque do usuário." + }, + "vitalThrow": { + name: "Vital Throw", + effect: "O usuário sempre ataca por último. Em troca, esse arremesso nunca erra." + }, + "morningSun": { + name: "Morning Sun", + effect: "O usuário restaura os próprios PS. A quantidade de PS recuperada varia conforme o clima." + }, + "synthesis": { + name: "Synthesis", + effect: "O usuário restaura os próprios PS. A quantidade de PS recuperada varia conforme o clima." + }, + "moonlight": { + name: "Moonlight", + effect: "O usuário restaura os próprios PS. A quantidade de PS recuperada varia conforme o clima." + }, + "hiddenPower": { + name: "Hidden Power", + effect: "Um ataque único que varia em tipo dependendo do Pokémon que está utilizando." + }, + "crossChop": { + name: "Cross Chop", + effect: "O usuário dá um golpe duplo com seus antebraços cruzados. Golpes críticos ocorrem mais facilmente." + }, + "twister": { + name: "Twister", + effect: "O usuário rapidamente cria um tornado vicioso para rasgar os Pokémon adversários. Isso pode fazê-los hesitar." + }, + "rainDance": { + name: "Rain Dance", + effect: "O usuário invoca uma chuva intensa que continua caindo por cinco turnos, fortalecendo os movimentos do tipo Água. Também enfraquece os movimentos do tipo fogo." + }, + "sunnyDay": { + name: "Sunny Day", + effect: "O usuário intensifica o sol por cinco turnos, fortalecendo os ataques do tipo Fogo. Também enfraquece os movimentos do tipo água." + }, + "crunch": { + name: "Crunch", + effect: "O usuário mastiga o alvo com presas afiadas. Isso também pode prejudicar a Defesa do alvo." + }, + "mirrorCoat": { + name: "Mirror Coat", + effect: "Um movimento de retaliação que contra-ataca qualquer ataque especial, infligindo o dobro do dano recebido." + }, + "psychUp": { + name: "Psych Up", + effect: "O usuário hipnotiza a si mesmo para copiar qualquer mudança de atributo feita pelo alvo." + }, + "extremeSpeed": { + name: "Extreme Speed", + effect: "O usuário ataca o alvo numa velocidade invisível ao olho nu. Esse movimento tem prioridade." + }, + "ancientPower": { + name: "Ancient Power", + effect: "O usuário ataca com um poder pré-histórico. Isso também pode fortalecer todos os atributos do usuário de uma vez." + }, + "shadowBall": { + name: "Shadow Ball", + effect: "O usuário arremessa uma esfera sombria no alvo. Isso também pode prejudicar a Defesa Especial do alvo." + }, + "futureSight": { + name: "Future Sight", + effect: "Dois turnos após esse movimento ser usado, uma grande quantidade de energia psíquica atinge o alvo." + }, + "rockSmash": { + name: "Rock Smash", + effect: "O usuário ataca com um soco. Isso também pode prejudicar o atributo de Defesa do alvo." + }, + "whirlpool": { + name: "Whirlpool", + effect: "O usuário prende o alvo num violento redemoinho por quatro ou cinco turnos." + }, + "beatUp": { + name: "Beat Up", + effect: "O usuário reúne todos os Pokémon da equipe para atacar o alvo. Quanto maior o número de Pokémon na equipe, maior será o número de ataques." + }, + "fakeOut": { + name: "Fake Out", + effect: "Um ataque que acerta primeiro e faz o alvo hesitar. Só funciona no primeiro turno do usuário em batalha." + }, + "uproar": { + name: "Uproar", + effect: "O usuário ataca gritando por três turnos. Durante esse tempo, ninguém pode cair no sono." + }, + "stockpile": { + name: "Stockpile", + effect: "O usuário carrega seu poder e fortalece a Defesa e a Defesa Especial. O movimento pode ser usado três vezes." + }, + "spitUp": { + name: "Spit Up", + effect: "O poder carregado usando o movimento Estocagem é liberado de uma só vez em um ataque. Quanto mais poder é armazenado, maior a força do movimento." + }, + "swallow": { + name: "Swallow", + effect: "O poder carregado usando o movimento Estocagem é absorvido pelo usuário para curar PS. Quanto mais poder for armazenado, mais PS serão recuperados." + }, + "heatWave": { + name: "Heat Wave", + effect: "O usuário ataca exalando um sopro ardente nos Pokémon adversários. Isso também pode deixar esses Pokémon queimados." + }, + "hail": { + name: "Hail", + effect: "O usuário invoca uma tempestade de granizo durante cinco turnos. Isso fere todos os Pokémon, exceto os tipo Gelo." + }, + "torment": { + name: "Torment", + effect: "O usuário atormenta o alvo, fazendo-o incapaz de usar o mesmo movimento duas vezes seguidas." + }, + "flatter": { + name: "Flatter", + effect: "Bajulação é usada para confundir o oponente. Entretanto, isso também fortalece o Ataque Especial do alvo." + }, + "will-O-Wisp": { + name: "Will-O-Wisp", + effect: "O usuário atira uma sinistra chama azulada no alvo para causar uma queimadura." + }, + "memento": { + name: "Memento", + effect: "O usuário desmaia quando usa esse movimento. Em troca, prejudica duramente o Ataque e o Ataque Especial do alvo." + }, + "facade": { + name: "Facade", + effect: "Um ataque que dobra de poder caso o usuário esteja envenenado, queimado ou paralisado." + }, + "focusPunch": { + name: "Focus Punch", + effect: "O usuário foca sua mente antes de dar um soco. Esse ataque falhará caso o usuário seja atingido antes de executá-lo." + }, + "smellingSalts": { + name: "Smelling Salts", + effect: "Esse ataque causa o dobro do dano em um alvo paralisado. Entretanto, isso também cura a paralisia do alvo." + }, + "followMe": { + name: "Follow Me", + effect: "O usuário chama a atenção para si mesmo, fazendo todos os alvos mirarem apenas nele." + }, + "naturePower": { + name: "Nature Power", + effect: "Um ataque que faz uso do poder da natureza. Seus efeitos variam dependendo do ambiente ao redor do usuário." + }, + "charge": { + name: "Charge", + effect: "O usuário fortalece o poder do golpe do tipo Elétrico usado no próximo turno. Isso também fortalece a Defesa Especial do usuário." + }, + "taunt": { + name: "Taunt", + effect: "O alvo é provocado e fica em fúria, fazendo-o usar apenas movimentos de ataque por três turnos." + }, + "helpingHand": { + name: "Helping Hand", + effect: "O usuário auxilia um aliado, fortalecendo o poder do ataque desse aliado." + }, + "trick": { + name: "Trick", + effect: "O usuário pega o alvo de surpresa e faz uma troca de itens com o alvo." + }, + "rolePlay": { + name: "Role Play", + effect: "O usuário imita o alvo completamente, copiando a Habilidade natural do alvo." + }, + "wish": { + name: "Wish", + effect: "Um turno após esse movimento ter sido usado, os PS do usuário ou de seu substituinte são restaurados pela metade dos PS máximos do usuário." + }, + "assist": { + name: "Assist", + effect: "O usuário na pressa usa aleatoriamente um dos movimentos conhecidos pelos outros Pokémon na equipe." + }, + "ingrain": { + name: "Ingrain", + effect: "O usuário planta suas raízes para curar seus PS por turno. Devido ao enraizamento, ele não pode sair da batalha." + }, + "superpower": { + name: "Superpower", + effect: "O usuário ataca o alvo com grande poder. Entretanto, isso também prejudica o Ataque e Defesa do usuário." + }, + "magicCoat": { + name: "Magic Coat", + effect: "Uma barreira que reflete de volta ao alvo movimentos como Semente Drenante e movimentos que reduzem atributos." + }, + "recycle": { + name: "Recycle", + effect: "O usuário recicla um item segurado que já foi usado em batalha para que possa ser usado de novo." + }, + "revenge": { + name: "Revenge", + effect: "Um movimento atacante que inflige o dobro do dano se o usuário foi ferido pelo adversário no mesmo turno." + }, + "brickBreak": { + name: "Brick Break", + effect: "O usuário ataca com um corte veloz. Isso também quebra barreiras como Tela de Luz e Refletir." + }, + "yawn": { + name: "Yawn", + effect: "O usuário dá um grande e preguiçoso bocejo que acalma o alvo, fazendo-o cair no sono no próximo turno." + }, + "knockOff": { + name: "Knock Off", + effect: "O usuário dá um tapa no item segurado pelo alvo e esse item não poderá mais ser usado naquela batalha. Caso possua um item, o alvo receberá mais dano." + }, + "endeavor": { + name: "Endeavor", + effect: "Um movimento de ataque que corta os PS do alvo para que se equalize aos PS do usuário." + }, + "eruption": { + name: "Eruption", + effect: "O usuário ataca o Pokémon adversário com uma fúria explosiva. Quanto menor for os PS do usuário, menor será o poder do movimento." + }, + "skillSwap": { + name: "Skill Swap", + effect: "O usuário utiliza seu poder psíquico para trocar de Habilidade com o alvo." + }, + "imprison": { + name: "Imprison", + effect: "Se os Pokémon adversários conhecerem algum movimento também conhecido pelo usuário, eles não poderão usá-lo." + }, + "refresh": { + name: "Refresh", + effect: "O usuário descansa para curar a si mesmo de envenenamentos, queimaduras ou paralisias." + }, + "grudge": { + name: "Grudge", + effect: "Se o usuário desmaiar, o rancor do usuário vai esgotar completamente os PP do movimento que o nocauteou." + }, + "snatch": { + name: "Snatch", + effect: "O usuário rouba o efeito de qualquer tentativa de usar um movimento de cura ou mudança de atributo." + }, + "secretPower": { + name: "Secret Power", + effect: "Os efeitos adicionais deste movimento variam dependendo do ambiente ao redor do usuário." + }, + "dive": { + name: "Dive", + effect: "Mergulhando no primeiro turno, o usuário emerge e ataca no próximo turno." + }, + "armThrust": { + name: "Arm Thrust", + effect: "O usuário solta uma sequência de golpes braçais com as palmas abertas, de duas a cinco vezes seguidas." + }, + "camouflage": { + name: "Camouflage", + effect: "O tipo do usuário é mudado dependendo do ambiente ao seu redor, como na margem da água, rodeado por grama ou dentro de uma caverna." + }, + "tailGlow": { + name: "Tail Glow", + effect: "O usuário direciona seu olhar à luzes piscantes para focar sua mente, aumentando drasticamente o seu Ataque Especial." + }, + "lusterPurge": { + name: "Luster Purge", + effect: "O usuário libera uma explosão de luz letal. Isso pode prejudicar a Defesa Especial do alvo." + }, + "mistBall": { + name: "Mist Ball", + effect: "Um amalgamado de penas nevoentas envolvem e ferem o alvo. Isso pode prejudicar o Ataque Especial do alvo." + }, + "featherDance": { + name: "Feather Dance", + effect: "O usuário cobre o corpo do alvo com uma grande massa de penas que prejudicam duramente o Ataque do alvo." + }, + "teeterDance": { + name: "Teeter Dance", + effect: "O usuário performa uma dança desajeitada que confunde os Pokémon ao seu redor." + }, + "blazeKick": { + name: "Blaze Kick", + effect: "O usuário lança um chute que acerta golpes críticos com mais facilidade. Isso também pode deixar o alvo queimado." + }, + "mudSport": { + name: "Mud Sport", + effect: "O usuário chuta lama ao redor do campo de batalha. Isso enfraquece os golpes do tipo Elétrico por cinco turnos." + }, + "iceBall": { + name: "Ice Ball", + effect: "O usuário ataca continuamente por cinco turnos. O ataque se torna mais forte cada vez que acerta." + }, + "needleArm": { + name: "Needle Arm", + effect: "O usuário ataca selvagemente balançando seus braços pontiagudos. Isso pode fazer o alvo hesitar." + }, + "slackOff": { + name: "Slack Off", + effect: "O usuário relaxa, restaurando os próprios PS pela metade dos seus PS máximos." + }, + "hyperVoice": { + name: "Hyper Voice", + effect: "O usuário libera um horrível grito estridente com o poder de infligir dano." + }, + "poisonFang": { + name: "Poison Fang", + effect: "O usuário morde o alvo com suas presas tóxicas. Isso pode envenenar seriamente o alvo." + }, + "crushClaw": { + name: "Crush Claw", + effect: "O usuário retalha o alvo com garras duras e afiadas. Isso pode prejudicar a Defesa do alvo." + }, + "blastBurn": { + name: "Blast Burn", + effect: "O alvo é arrasado por uma ardente explosão. O usuário não pode se mover no próximo turno." + }, + "hydroCannon": { + name: "Hydro Cannon", + effect: "O alvo é acertado por uma explosão aquática. O usuário não pode se mover no próximo turno." + }, + "meteorMash": { + name: "Meteor Mash", + effect: "O alvo é acertado por um soco forte disparado como um meteoro. Isso pode fortalecer o Ataque do usuário." + }, + "astonish": { + name: "Astonish", + effect: "O usuário ataca o alvo enquanto grita de forma alarmante. Isso pode fazer o alvo hesitar." + }, + "weatherBall": { + name: "Weather Ball", + effect: "Um ataque que varia de poder e tipo dependendo do clima." + }, + "aromatherapy": { + name: "Aromatherapy", + effect: "O usuário lança uma fragrância calmante que cura todos os estados negativos afetando a equipe do usuário." + }, + "fakeTears": { + name: "Fake Tears", + effect: "O usuário finge chorar para perturbar o alvo, duramente prejudicando a sua Defesa Especial." + }, + "airCutter": { + name: "Air Cutter", + effect: "O usuário lança uma rajada de vento afiado para cortar seus oponentes. Golpes críticos ocorrem mais facilmente." + }, + "overheat": { + name: "Overheat", + effect: "O usuário ataca o alvo com seu poder máximo; contudo, o efeito colateral diminui o Ataque Especial do usuário." + }, + "odorSleuth": { + name: "Odor Sleuth", + effect: "Permite que um alvo do tipo Fantasma seja atingido por ataques do tipo Normal e Lutador. Isso também permite que um alvo evasivo seja acertado." + }, + "rockTomb": { + name: "Rock Tomb", + effect: "Rochas são arremessadas no alvo. Isso também diminui a Velocidade do alvo, impedindo que se movimente." + }, + "silverWind": { + name: "Silver Wind", + effect: "O alvo é atacado com escamas pulverulentas sopradas pelo vento. Isso pode aumentar todos os atributos do usuário." + }, + "metalSound": { + name: "Metal Sound", + effect: "Um som horrível que lembra metal sendo raspado, isso prejudica duramente a Defesa Especial do alvo." + }, + "grassWhistle": { + name: "Grass Whistle", + effect: "O usuário toca uma agradável melodia que acalma o alvo, fazendo-o entrar em sono profundo." + }, + "tickle": { + name: "Tickle", + effect: "O usuário faz cócegas no alvo, o fazendo rir, reduzindo seus atributos de Ataque e Defesa." + }, + "cosmicPower": { + name: "Cosmic Power", + effect: "O usuário absorve energia mística do espaço para aumentar sua Defesa e Defesa Especial." + }, + "waterSpout": { + name: "Water Spout", + effect: "O usuário jorra água para ferir os Pokémon oponentes. Quanto menos PS o usuário tiver, menor será o poder do movimento." + }, + "signalBeam": { + name: "Signal Beam", + effect: "O usuário ataca com um raio de luz sinistro. Isso também pode confundir o alvo." + }, + "shadowPunch": { + name: "Shadow Punch", + effect: "O usuário dispara um soco dentre as sombras. Esse ataque nunca erra." + }, + "extrasensory": { + name: "Extrasensory", + effect: "O usuário ataca com um poder estranho e incompreensível. Isso também pode fazer o alvo hesitar." + }, + "skyUppercut": { + name: "Sky Uppercut", + effect: "O usuário ataca o alvo com um gancho de direita poderoso direcionado ao céu." + }, + "sandTomb": { + name: "Sand Tomb", + effect: "O usuário prende o alvo dentro de uma violenta tempestade de areia por quatro ou cinco turnos." + }, + "sheerCold": { + name: "Sheer Cold", + effect: "O alvo desmaia instantaneamente. É mais difícil de acertar se o usuário não for um tipo Gelo." + }, + "muddyWater": { + name: "Muddy Water", + effect: "O usuário ataca atirando água barrenta nos Pokémon adversários. Isso também pode diminuir a Precisão deles." + }, + "bulletSeed": { + name: "Bullet Seed", + effect: "O usuário atira sementes com grande força no alvo de duas a cinco vezes seguidas." + }, + "aerialAce": { + name: "Aerial Ace", + effect: "O usuário confunde o alvo com sua velocidade e então ataca. Esse ataque nunca erra." + }, + "icicleSpear": { + name: "Icicle Spear", + effect: "O usuário arremessa lanças afiadas de gelo no alvo de duas a cinco vezes seguidas." + }, + "ironDefense": { + name: "Iron Defense", + effect: "O usuário endurece a superfície de seu corpo como aço, bruscamente fortalecendo sua Defesa." + }, + "block": { + name: "Block", + effect: "O usuário bloqueia o caminho do alvo com seus braços amplamente abertos para prevenir escapatória." + }, + "howl": { + name: "Howl", + effect: "O usuário uiva alto para fortalecer seu espirito, o que aumenta seu Ataque." + }, + "dragonClaw": { + name: "Dragon Claw", + effect: "O usuário corta o alvo com grandes garras afiadas." + }, + "frenzyPlant": { + name: "Frenzy Plant", + effect: "O usuário esmaga o alvo com uma enorme árvore. O usuário não pode se mover no próximo turno." + }, + "bulkUp": { + name: "Bulk Up", + effect: "O usuário flexiona os seus músculos para fortalecer seu corpo, aumentando os seus atributos de Ataque e Defesa." + }, + "bounce": { + name: "Bounce", + effect: "O usuário pula alto e então cai em cima do alvo no segundo turno. Isso também pode deixar o alvo com paralisia." + }, + "mudShot": { + name: "Mud Shot", + effect: "O usuário ataca arremessando uma bola de lama ao alvo. Isso também diminui a Velocidade do alvo." + }, + "poisonTail": { + name: "Poison Tail", + effect: "O usuário acerta o alvo com sua cauda. Isso também pode envenenar o alvo. Golpes críticos ocorrem mais facilmente." + }, + "covet": { + name: "Covet", + effect: "O usuário, despretensiosamente, se aproxima do alvo e então rouba o item segurado pelo alvo." + }, + "voltTackle": { + name: "Volt Tackle", + effect: "O usuário eletrifica a si próprio e então ataca. Isso também fere muito o usuário. Pode deixar o alvo com paralisia." + }, + "magicalLeaf": { + name: "Magical Leaf", + effect: "O usuário espalha folhas peculiares que perseguem o alvo. Esse ataque nunca erra." + }, + "waterSport": { + name: "Water Sport", + effect: "O usuário encharca o campo de batalha. Isso enfraquece os movimentos do tipo Fogo por cinco turnos." + }, + "calmMind": { + name: "Calm Mind", + effect: "O usuário silenciosamente focaliza sua mente e acalma o seu espírito para aumentar ambos os atributos especiais." + }, + "leafBlade": { + name: "Leaf Blade", + effect: "O usuário empunha uma folha afiada como uma espada e ataca cortando o alvo. Golpes críticos acertam mais facilmente." + }, + "dragonDance": { + name: "Dragon Dance", + effect: "O usuário, energicamente, performa uma dança mística e poderosa para aumentar seu Ataque e Velocidade." + }, + "rockBlast": { + name: "Rock Blast", + effect: "O usuário arremessa rochas duras no alvo. Duas a cinco rochas são lançadas em sequência." + }, + "shockWave": { + name: "Shock Wave", + effect: "O usuário atinge o alvo com um repentino ataque de eletricidade. Esse ataque nunca erra." + }, + "waterPulse": { + name: "Water Pulse", + effect: "O usuário ataca o alvo com uma pulsante explosão de água. Talvez isso confunda o alvo." + }, + "doomDesire": { + name: "Doom Desire", + effect: "Dois turnos após esse movimento ter sido usado, o usuário explode o alvo com um feixe de luz concentrado." + }, + "psychoBoost": { + name: "Psycho Boost", + effect: "O usuário ataca o alvo com poder máximo. O efeito colateral do ataque prejudica duramente o Ataque Especial do usuário." + }, + "roost": { + name: "Roost", + effect: "O usuário pousa e descansa seu corpo. Isso restaura os PS do usuário pela metade do seu máximo de PS." + }, + "gravity": { + name: "Gravity", + effect: "Permite que Pokémon do tipo Voador ou Pokémon com a Habilidade Levitação possam ser atingidos por golpes do tipo Terra. Golpes que envolvam voar ficam inutilizados." + }, + "miracleEye": { + name: "Miracle Eye", + effect: "Permite que um alvo tipo Sombrio seja atingido por ataques do tipo Psíquico. Isso também permite que um alvo evasivo possa ser atingido." + }, + "wake-UpSlap": { + name: "Wake-Up Slap", + effect: "Esse ataque causa muito dano em um alvo que estiver dormindo; entretanto, isso também acorda o alvo." + }, + "hammerArm": { + name: "Hammer Arm", + effect: "O usuário balança seus braços e atinge com seus fortes e pesados punhos. Isso diminui a Velocidade do usuário." + }, + "gyroBall": { + name: "Gyro Ball", + effect: "O alvo é acertado com um giro em alta velocidade. Quanto mais lento for o usuário comparado ao alvo, maior será o poder do movimento." + }, + "healingWish": { + name: "Healing Wish", + effect: "O usuário desmaia. Em troca, o Pokémon que tomará seu lugar terá seus PS restaurados e condições negativas curadas." + }, + "brine": { + name: "Brine", + effect: "Se os PS do alvo estiverem pela metade ou menos, esse ataque terá o dobro do poder." + }, + "naturalGift": { + name: "Natural Gift", + effect: "O usuário canaliza o poder para atacar usando a Fruta que está segurando. A Fruta determina o tipo e o poder do movimento." + }, + "feint": { + name: "Feint", + effect: "Um ataque que acerta um alvo usando Proteção ou Detectar. Isso também extingue os efeitos desses movimentos." + }, + "pluck": { + name: "Pluck", + effect: "O usuário bica o alvo. Caso o alvo esteja segurando uma Fruta, o usuário a come e ganha seu efeito." + }, + "tailwind": { + name: "Tailwind", + effect: "O usuário forma um turbulento redemoinho que aumenta a Velocidade do usuário e de seus seus aliados por quatro turnos." + }, + "acupressure": { + name: "Acupressure", + effect: "O usuário aplica pressão em pontos de estresse, bruscamente fortalecendo um de seus atributos ou de seus aliados." + }, + "metalBurst": { + name: "Metal Burst", + effect: "O usuário revida com muito mais força contra o alvo que lhe infligiu dano por ultimo." + }, + "u-Turn": { + name: "U-turn", + effect: "Depois de fazer o seu ataque, o usuário corre de volta para trocar de lugar com um Pokémon da própria equipe." + }, + "closeCombat": { + name: "Close Combat", + effect: "O usuário luta com o alvo de perto sem se defender. Isso diminui a Defesa e Defesa Especial do usuário." + }, + "payback": { + name: "Payback", + effect: "O usuário acumula poder, então ataca. Se o usuário se mover depois do alvo, o poder deste ataque será dobrado." + }, + "assurance": { + name: "Assurance", + effect: "Caso o alvo já tenha recebido dano no mesmo turno, o poder desse ataque é dobrado." + }, + "embargo": { + name: "Embargo", + effect: "Este movimento previne que o alvo use o seu item por cinco turnos. Seu Treinador também estará restrito de usar itens nele." + }, + "fling": { + name: "Fling", + effect: "O usuário arremessa seu item no alvo para atacar. O poder e o efeito deste movimento dependem do item utilizado." + }, + "psychoShift": { + name: "Psycho Shift", + effect: "Usando seu poder psíquico da sugestão, o usuário transfere suas condições de estado para o alvo." + }, + "trumpCard": { + name: "Trump Card", + effect: "Quanto menos PP este movimento tiver, maior será sua força." + }, + "healBlock": { + name: "Heal Block", + effect: "Por cinco turnos, o usuário previne que a equipe adversária use quaisquer movimentos, Habilidades, ou itens segurados para recuperar PS." + }, + "wringOut": { + name: "Wring Out", + effect: "O usuário torce o alvo com força bruta. Quando mais PS o alvo possuir, maior será o poder do movimento." + }, + "powerTrick": { + name: "Power Trick", + effect: "O usuário usufrui de seu poder psíquico para trocar os atributos de seu Ataque com sua Defesa." + }, + "gastroAcid": { + name: "Gastro Acid", + effect: "O usuário arremessa os ácidos de seu estômago no alvo. O fluido elimina o efeito da habilidade do alvo." + }, + "luckyChant": { + name: "Lucky Chant", + effect: "O usuário recita um encantamento em direção ao céu, prevenindo que os Pokémon oponentes acertem golpes críticos." + }, + "meFirst": { + name: "Me First", + effect: "O usuário corta a ação do alvo para roubar seu movimento e usá-lo com maior poder. Esse movimento falha caso não seja usado primeiro." + }, + "copycat": { + name: "Copycat", + effect: "O usuário imita o movimento imediatamente usado antes dele. O movimento falha caso nenhum outro movimento tenha sido usado." + }, + "powerSwap": { + name: "Power Swap", + effect: "O usuário usufrui de seu poder psíquico para trocar mudanças de atributos feitas ao seu Ataque e Ataque Especial com os do alvo." + }, + "guardSwap": { + name: "Guard Swap", + effect: "O usuário usufrui de seu poder psíquico para trocar mudanças de atributos feitas à sua Defesa e Defesa Especial com as do alvo." + }, + "punishment": { + name: "Punishment", + effect: "Quanto mais os atributos do alvo estiverem fortalecidos, maior será o poder desse movimento." + }, + "lastResort": { + name: "Last Resort", + effect: "Este movimento somente pode ser usado depois de o usuário ter usado todos os outros movimentos que ele conhece em batalha." + }, + "worrySeed": { + name: "Worry Seed", + effect: "Uma semente que causa preocupação é plantada no alvo. Isso previne o sono, fazendo a Habilidade do alvo se tornar Insônia." + }, + "suckerPunch": { + name: "Sucker Punch", + effect: "Esse movimento permite que o usuário ataque primeiro. Esse ataque falha caso o alvo não esteja preparando um ataque." + }, + "toxicSpikes": { + name: "Toxic Spikes", + effect: "O usuário planta uma armadilha de espinhos venenosos nos pés da equipe adversária. Os espinhos envenenam os Pokémon que entram em batalha." + }, + "heartSwap": { + name: "Heart Swap", + effect: "O usuário usufrui de seu poder psíquico para trocar mudanças de atributos com o oponente." + }, + "aquaRing": { + name: "Aqua Ring", + effect: "O usuário envolve-se em um véu feito de água. Ele recupera um pouco de PS a cada turno." + }, + "magnetRise": { + name: "Magnet Rise", + effect: "O usuário levita usando magnetismo gerado por eletricidade por cinco turnos." + }, + "flareBlitz": { + name: "Flare Blitz", + effect: "O usuário cobre o próprio corpo com chamas e avança no alvo. Isso também fere muito o usuário e pode deixar o alvo com uma queimadura." + }, + "forcePalm": { + name: "Force Palm", + effect: "O alvo é atacado com uma onda de choque. Isso também pode deixar o alvo com paralisia." + }, + "auraSphere": { + name: "Aura Sphere", + effect: "O usuário libera uma explosão de poder da aura de seu corpo no alvo. Esse ataque nunca erra." + }, + "rockPolish": { + name: "Rock Polish", + effect: "O usuário pule seu corpo para reduzir entraves. Isso pode aumentar bruscamente a Velocidade." + }, + "poisonJab": { + name: "Poison Jab", + effect: "O alvo é perfurado com um tentáculo ou braço banhado com veneno. Isso também pode envenenar o alvo." + }, + "darkPulse": { + name: "Dark Pulse", + effect: "O usuário descarrega uma horrível aura imbuída com pensamentos obscuros. Isso também pode fazer o alvo hesitar." + }, + "nightSlash": { + name: "Night Slash", + effect: "O usuário retalha o alvo no instante que surge uma oportunidade. Golpes críticos ocorrem mais facilmente." + }, + "aquaTail": { + name: "Aqua Tail", + effect: "O usuário ataca balançando sua cauda como se fosse uma violenta e furiosa tempestade." + }, + "seedBomb": { + name: "Seed Bomb", + effect: "O usuário atira uma barragem de sementes de casca dura acertando o alvo por cima." + }, + "airSlash": { + name: "Air Slash", + effect: "O usuário ataca com uma lâmina de ar que corta até mesmo o céu. Isso pode fazer o alvo hesitar." + }, + "x-Scissor": { + name: "X-Scissor", + effect: "O usuário cutila o alvo cruzando suas foices ou garras como se elas fossem um par de tesouras." + }, + "bugBuzz": { + name: "Bug Buzz", + effect: "O usuário gera uma dolorosa onda de som. Isso também pode diminuir o atributo de Defesa Especial do alvo." + }, + "dragonPulse": { + name: "Dragon Pulse", + effect: "O alvo é atacado com uma onda de choque gerada pela boca aberta do usuário." + }, + "dragonRush": { + name: "Dragon Rush", + effect: "O usuário ataca o alvo enquanto demonstra uma ameaça esmagadora. Isso também pode fazer o alvo hesitar." + }, + "powerGem": { + name: "Power Gem", + effect: "O usuário ataca com um raio de luz que brilha como se fosse feito de pedras preciosas." + }, + "drainPunch": { + name: "Drain Punch", + effect: "Um soco que drena energia. Os PS do usuário são curados pela metade do dano infligido ao alvo." + }, + "vacuumWave": { + name: "Vacuum Wave", + effect: "O usuário rodopia seus punhos para lançar uma onda de vácuo puro no alvo. Esse movimento tem prioridade." + }, + "focusBlast": { + name: "Focus Blast", + effect: "O usuário eleva seu foco mental e libera o seu poder. Isso também pode diminuir a Defesa Especial do alvo." + }, + "energyBall": { + name: "Energy Ball", + effect: "O usuário extrai o poder da natureza e dispara no alvo. Isso também pode diminuir a Defesa Especial do alvo." + }, + "braveBird": { + name: "Brave Bird", + effect: "O usuário dobra suas asas e avança de uma baixa altitude. Isso também fere muito o usuário." + }, + "earthPower": { + name: "Earth Power", + effect: "O usuário faz o solo debaixo do alvo emergir com poder. Isso também pode diminuir a Defesa Especial do alvo." + }, + "switcheroo": { + name: "Switcheroo", + effect: "O usuário troca de itens com o alvo mais rápido do que os olhos podem acompanhar." + }, + "gigaImpact": { + name: "Giga Impact", + effect: "O usuário investe no alvo usando absolutamente todo o seu poder. O usuário não poderá se mover no próximo turno." + }, + "nastyPlot": { + name: "Nasty Plot", + effect: "O usuário estimula seu cérebro com pensamentos malvados. Isso bruscamente aumenta o Ataque Especial do usuário." + }, + "bulletPunch": { + name: "Bullet Punch", + effect: "O usuário atinge o alvo com socos fortes tão rápidos como tiros. Esse movimento tem prioridade." + }, + "avalanche": { + name: "Avalanche", + effect: "Um ataque que inflige o dobro do dano caso o usuário já tenha sido ferido pelo alvo no mesmo turno." + }, + "iceShard": { + name: "Ice Shard", + effect: "O usuário congela rapidamente cristais de gelo e os arremessa no alvo. Esse movimento tem prioridade." + }, + "shadowClaw": { + name: "Shadow Claw", + effect: "O usuário corta com uma garra afiada feita de sombras. Golpes críticos ocorrem mais facilmente." + }, + "thunderFang": { + name: "Thunder Fang", + effect: "O usuário morde com presas eletrificadas. Isso também pode fazer o alvo hesitar ou deixá-lo paralisado." + }, + "iceFang": { + name: "Ice Fang", + effect: "O usuário morde com presas infundidas com gelo. Isso também pode fazer o alvo hesitar ou deixá-lo congelado." + }, + "fireFang": { + name: "Fire Fang", + effect: "O usuário morde com presas cobertas de fogo. Isso também pode fazer o alvo hesitar ou deixá-lo queimado." + }, + "shadowSneak": { + name: "Shadow Sneak", + effect: "O usuário estende a própria sombra e ataca o alvo por trás. Esse movimento tem prioridade." + }, + "mudBomb": { + name: "Mud Bomb", + effect: "O usuário lança uma bola concentrada de lama para atacar. Isso também pode diminuir a Precisão do alvo." + }, + "psychoCut": { + name: "Psycho Cut", + effect: "O usuário corta o alvo com lâminas materializadas com poder psíquico. Golpes críticos ocorrem mais facilmente." + }, + "zenHeadbutt": { + name: "Zen Headbutt", + effect: "O usuário foca sua força de vontade em sua cabeça e ataca o alvo. Isso também pode fazer o alvo hesitar." + }, + "mirrorShot": { + name: "Mirror Shot", + effect: "O usuário libera um clarão de energia vindo de seu corpo polido no alvo. Isso pode diminuir a Precisão do alvo." + }, + "flashCannon": { + name: "Flash Cannon", + effect: "O usuário reúne toda a sua energia de luz e lança de uma só vez. Isso também pode diminuir a Defesa Especial do alvo." + }, + "rockClimb": { + name: "Rock Climb", + effect: "O usuário ataca o alvo o esmagando com uma incrível força bruta. Isso pode confundir o alvo." + }, + "defog": { + name: "Defog", + effect: "Um vento forte que dispersa as barreiras do alvo como Refletir ou Tela de Luz. Isso também diminui a Evasiva do oponente." + }, + "trickRoom": { + name: "Trick Room", + effect: "O usuário cria uma área bizarra onde Pokémon mais lentos se movem primeiro por cinco turnos." + }, + "dracoMeteor": { + name: "Draco Meteor", + effect: "Cometas são invocados do céu e caem sobre o alvo. O efeito colateral do ataque duramente prejudica o atributo de Ataque Especial do usuário." + }, + "discharge": { + name: "Discharge", + effect: "O usuário atinge tudo ao seu redor liberando uma explosão de eletricidade. Isso também pode causar paralisia." + }, + "lavaPlume": { + name: "Lava Plume", + effect: "O usuário queima tudo ao seu redor com um inferno de chamas escarlate. Isso também pode causar uma queimadura em alvos atingidos." + }, + "leafStorm": { + name: "Leaf Storm", + effect: "O usuário cria uma tempestade de folhas ao redor do alvo. Isso diminui duramente o Ataque Especial do usuário." + }, + "powerWhip": { + name: "Power Whip", + effect: "O usuário rodopia suas vinhas ou tentáculos com vigor para chicotear o alvo cruelmente." + }, + "rockWrecker": { + name: "Rock Wrecker", + effect: "O usuário lança uma grande rocha no alvo. O usuário não pode se mover no próximo turno." + }, + "crossPoison": { + name: "Cross Poison", + effect: "Um ataque cortante com uma lâmina envenenada que pode envenenar o alvo. Golpes críticos ocorrem mais facilmente." + }, + "gunkShot": { + name: "Gunk Shot", + effect: "O usuário atira lixo repugnante no alvo. Isso também pode envenenar o alvo." + }, + "ironHead": { + name: "Iron Head", + effect: "O usuário acerta o alvo com sua cabeça dura como aço. Isso também pode fazer o alvo hesitar." + }, + "magnetBomb": { + name: "Magnet Bomb", + effect: "O usuário lança bombas de aço que grudam no alvo. Esse ataque nunca erra." + }, + "stoneEdge": { + name: "Stone Edge", + effect: "O usuário perfura o alvo por baixo com pedras afiadas. Golpes críticos ocorrem mais facilmente." + }, + "captivate": { + name: "Captivate", + effect: "Se algum dos Pokémon oponentes forem do gênero oposto do usuário, ele se encanta, o que diminui duramente o seu Ataque Especial." + }, + "stealthRock": { + name: "Stealth Rock", + effect: "O usuário planta armadilhas de pedras levitantes ao redor da equipe oponente. A armadilha fere os Pokémon oponentes que entrarem em campo." + }, + "grassKnot": { + name: "Grass Knot", + effect: "O usuário planta uma armadilha com grama e o alvo tropeça nela. Quanto mais pesado o alvo for, maior é o poder do movimento." + }, + "chatter": { + name: "Chatter", + effect: "O usuário ataca o alvo com ondas de som vindas de sua tagarelagem ensurdecedora. Isso confunde o alvo." + }, + "judgment": { + name: "Judgment", + effect: "O usuário libera incontáveis tiros de luz no alvo. A tipagem desse movimento varia dependendo do tipo de Placa que o usuário está segurando." + }, + "bugBite": { + name: "Bug Bite", + effect: "O usuário morde o alvo. Caso o alvo esteja segurando uma Fruta, o usuário a come e ganha seu efeito." + }, + "chargeBeam": { + name: "Charge Beam", + effect: "O usuário ataca com uma carga elétrica. O usuário pode usar a eletricidade que sobrar para fortalecer seu Ataque Especial." + }, + "woodHammer": { + name: "Wood Hammer", + effect: "O usuário usa seu corpo rígido para golpear o alvo. Isso também fere muito o usuário." + }, + "aquaJet": { + name: "Aqua Jet", + effect: "O usuário ataca o alvo em uma velocidade que o torna quase invisível. Esse movimento tem prioridade." + }, + "attackOrder": { + name: "Attack Order", + effect: "O usuário ordena que seus subordinados ataquem o alvo. Golpes críticos ocorrem mais facilmente." + }, + "defendOrder": { + name: "Defend Order", + effect: "O usuário ordena que seus subordinados protejam seu corpo, aumentando seus atributos de Defesa e Defesa Especial." + }, + "healOrder": { + name: "Heal Order", + effect: "O usuário ordena que seus subordinados o curem. O usuário restaura até metade de seus PS máximos." + }, + "headSmash": { + name: "Head Smash", + effect: "O usuário usa toda a sua força para acertar uma perigosa cabeçada destrutiva no alvo. Isso também fere terrivelmente o usuário." + }, + "doubleHit": { + name: "Double Hit", + effect: "O usuário golpeia o alvo com uma longa cauda, vinhas, ou um tentáculo. O alvo é acertado duas vezes seguidas." + }, + "roarOfTime": { + name: "Roar of Time", + effect: "O usuário bombardeia o alvo com tamanho poder que distorce até mesmo o tempo; porém, não se moverá no próximo turno." + }, + "spacialRend": { + name: "Spacial Rend", + effect: "O usuário rasga a existência do alvo junto com o espaço ao seu redor. Golpes críticos ocorrem mais facilmente." + }, + "lunarDance": { + name: "Lunar Dance", + effect: "O usuário desmaia. Em troca, o Pokémon que tomará seu lugar terá suas condições negativas e PS restaurados." + }, + "crushGrip": { + name: "Crush Grip", + effect: "O alvo é esmagado com grande força. Quanto mais PS o alvo possuir, maior será o poder desse movimento." + }, + "magmaStorm": { + name: "Magma Storm", + effect: "O alvo é preso dentro de um turbilhão de fogo que arde de quatro a cinco turnos." + }, + "darkVoid": { + name: "Dark Void", + effect: "Pokémon oponentes são sugados para dentro de um mundo de total escuridão que os faz dormir." + }, + "seedFlare": { + name: "Seed Flare", + effect: "O usuário emite uma onda de choque de seu corpo para atacar o alvo. Isso também pode diminuir duramente a Defesa Especial do alvo." + }, + "ominousWind": { + name: "Ominous Wind", + effect: "O usuário ataca o alvo com uma rajada de vento repulsivo. Talvez aumente todos os atributos do usuário de uma vez." + }, + "shadowForce": { + name: "Shadow Force", + effect: "O usuário desaparece, então atinge o alvo no próximo turno. Esse movimento acerta o alvo mesmo que ele proteja a si mesmo." + }, + "honeClaws": { + name: "Hone Claws", + effect: "O usuário afia suas garras para fortalecer seu Ataque e sua Precisão." + }, + "wideGuard": { + name: "Wide Guard", + effect: "O usuário e seus aliados são protegidos de ataques de longo alcance por um turno." + }, + "guardSplit": { + name: "Guard Split", + effect: "O usuário usufrui de seu poder psíquico para equalizar seus atributos de Defesa e Defesa Especial com o alvo." + }, + "powerSplit": { + name: "Power Split", + effect: "O usuário usufrui de seu poder psíquico para igualar seus atributos de Ataque e Ataque Especial com o alvo." + }, + "wonderRoom": { + name: "Wonder Room", + effect: "O usuário cria uma área bizarra onde os atributos de Defesa e Defesa Especial dos Pokémon são trocados por cinco turnos." + }, + "psyshock": { + name: "Psyshock", + effect: "O usuário materializa uma estranha onda psíquica para atacar o alvo. Esse ataque inflige dano físico." + }, + "venoshock": { + name: "Venoshock", + effect: "O usuário encharca o alvo com um líquido venenoso especial. O poder desse movimento dobra se o alvo estiver envenenado." + }, + "autotomize": { + name: "Autotomize", + effect: "O usuário perde parte de seu corpo para se tornar mais leve e bruscamente aumentar seu atributo de Velocidade." + }, + "ragePowder": { + name: "Rage Powder", + effect: "O usuário espalha uma nuvem de pó irritante para chamar a atenção para si mesmo. Oponentes miram apenas no usuário." + }, + "telekinesis": { + name: "Telekinesis", + effect: "O usuário faz o alvo flutuar usando o seu poder psíquico. O alvo fica propício a ser atingido por três turnos." + }, + "magicRoom": { + name: "Magic Room", + effect: "O usuário cria uma área bizarra onde os itens dos Pokémon perdem seus efeitos por cinco turnos." + }, + "smackDown": { + name: "Smack Down", + effect: "O usuário atira uma pedra ou algum projétil similar para atacar o oponente. Um Pokémon voador irá cair no chão quando for acertado." + }, + "stormThrow": { + name: "Storm Throw", + effect: "O usuário atinge o alvo com um golpe poderoso. Esse ataque sempre resulta em um golpe critico." + }, + "flameBurst": { + name: "Flame Burst", + effect: "O usuário ataca o alvo com uma chama explosiva. A explosão da chama também fere os Pokémon próximos ao alvo." + }, + "sludgeWave": { + name: "Sludge Wave", + effect: "O usuário atinge tudo à volta inundando a área com uma grande onda de sedimentos. Isso também pode envenenar os atingidos." + }, + "quiverDance": { + name: "Quiver Dance", + effect: "O usuário delicadamente executa uma linda dança mística. Isso fortalece os atributos de Ataque Especial, Defesa Especial e Velocidade do usuário." + }, + "heavySlam": { + name: "Heavy Slam", + effect: "O usuário golpeia o alvo com seu corpo pesado. Quanto mais pesado o usuário for comparado ao alvo, maior será o poder do movimento." + }, + "synchronoise": { + name: "Synchronoise", + effect: "Usando uma estranha onda de choque, o usuário inflige dano em qualquer Pokémon do mesmo tipo na área ao seu redor." + }, + "electroBall": { + name: "Electro Ball", + effect: "O usuário arremessa uma orbe elétrica no alvo. Quanto mais rápido for o usuário comparado ao alvo, maior será o poder do movimento." + }, + "soak": { + name: "Soak", + effect: "O usuário atira uma corrente de água no alvo e muda a tipagem do alvo para Água." + }, + "flameCharge": { + name: "Flame Charge", + effect: "Ocultando-se nas chamas, o usuário ataca. Então, concentrando mais poder, o usuário aumenta sua Velocidade." + }, + "coil": { + name: "Coil", + effect: "O usuário enrola seu corpo e se concentra. Isso aumenta seus atributos de Ataque, Defesa e Precisão." + }, + "lowSweep": { + name: "Low Sweep", + effect: "O usuário faz um ataque repentino nas pernas do alvo, diminuindo a Velocidade dele." + }, + "acidSpray": { + name: "Acid Spray", + effect: "O usuário cospe um fluido corrosivo no alvo. Isso duramente diminui a Defesa Especial do alvo." + }, + "foulPlay": { + name: "Foul Play", + effect: "O usuário vira o poder do alvo contra ele. Quanto maior for o atributo de Ataque do alvo, maior será o poder do movimento." + }, + "simpleBeam": { + name: "Simple Beam", + effect: "Essa misteriosa onda psíquica produzida pelo usuário muda a Habilidade do alvo para “Simples”." + }, + "entrainment": { + name: "Entrainment", + effect: "O usuário dança em um ritmo estranho que contagia o alvo que o imita, fazendo a Habilidade do alvo tornar-se a mesma que a do usuário." + }, + "afterYou": { + name: "After You", + effect: "O usuário auxilia o alvo e o faz usar seu movimento exatamente após o usuário." + }, + "round": { + name: "Round", + effect: "O usuário ataca o alvo com uma música. Outros podem entrar na Ronda e fazer o ataque dar um dano ainda maior." + }, + "echoedVoice": { + name: "Echoed Voice", + effect: "O usuário ataca o alvo com uma voz ecoante. Se esse movimento for usado um turno após o outro, ele infligirá dano maior." + }, + "chipAway": { + name: "Chip Away", + effect: "Procurando por uma brecha, o usuário ataca consistentemente. As mudanças de atributos do alvo não afetam o dano desse movimento." + }, + "clearSmog": { + name: "Clear Smog", + effect: "O usuário ataca arremessando um amontoado de lama especial. Todas as mudanças de atributos voltam ao normal." + }, + "storedPower": { + name: "Stored Power", + effect: "O usuário ataca o alvo com seu poder armazenado. Quanto mais os atributos do usuário estiverem fortalecidos, maior será o poder do movimento." + }, + "quickGuard": { + name: "Quick Guard", + effect: "O usuário protege a si mesmo e seus aliados de golpes de prioridade." + }, + "allySwitch": { + name: "Ally Switch", + effect: "O usuário teletransporta usando um estranho poder e troca de lugar com um de seus aliados." + }, + "scald": { + name: "Scald", + effect: "O usuário atira água fervente no seu alvo. Isso também pode deixar o alvo com queimadura." + }, + "shellSmash": { + name: "Shell Smash", + effect: "O usuário quebra a própria concha, diminuindo sua Defesa e Defesa Especial, mas bruscamente aumentando Ataque, Ataque Especial e Velocidade." + }, + "healPulse": { + name: "Heal Pulse", + effect: "O usuário emite um pulso curativo que restaura os PS do alvo pela metade de seus PS máximos." + }, + "hex": { + name: "Hex", + effect: "Esse ataque cruel inflige dano massivo a um alvo afetado por condições negativas." + }, + "skyDrop": { + name: "Sky Drop", + effect: "O usuário leva o alvo para o céu, então o solta durante o próximo turno. O alvo não pode atacar enquanto estiver no céu." + }, + "shiftGear": { + name: "Shift Gear", + effect: "O usuário roda suas engrenagens, aumentando seu Ataque e bruscamente aumentando sua Velocidade." + }, + "circleThrow": { + name: "Circle Throw", + effect: "O alvo é arremessado, e um Pokémon diferente é trazido para a batalha. Na natureza, isso termina uma batalha contra um único Pokémon." + }, + "incinerate": { + name: "Incinerate", + effect: "O usuário ataca o Pokémon oponente com fogo. Se um Pokémon estiver segurando um certo item, como uma Fruta, o item será queimado e inutilizado." + }, + "quash": { + name: "Quash", + effect: "O usuário reprime o alvo e o faz se mover por último." + }, + "acrobatics": { + name: "Acrobatics", + effect: "O usuário atinge o alvo rapidamente. Se o usuário não estiver segurando um item, esse ataque causa um dano massivo." + }, + "reflectType": { + name: "Reflect Type", + effect: "O usuário reflete o tipo do alvo, fazendo-o ter o mesmo tipo do alvo." + }, + "retaliate": { + name: "Retaliate", + effect: "O usuário se vinga por um aliado desmaiado. Se um aliado desmaiou no turno anterior, esse movimento ficará mais poderoso." + }, + "finalGambit": { + name: "Final Gambit", + effect: "O usuário arrisca tudo para atacar seu alvo. O usuário desmaia porém inflige dano igual aos seus PS perdidos." + }, + "bestow": { + name: "Bestow", + effect: "O usuário passa seu item ao alvo se o alvo não estiver segurando um item." + }, + "inferno": { + name: "Inferno", + effect: "O usuário ataca engolindo o alvo em intensas chamas. intense fire. Isso deixa o alvo com uma queimadura." + }, + "waterPledge": { + name: "Water Pledge", + effect: "Um pilar de água atinge o alvo. Quando combinado com seu equivalente do tipo fogo, seu dano aumenta e um arco-íris é formado." + }, + "firePledge": { + name: "Fire Pledge", + effect: "Um pilar de fogo atinge o alvo. Quando combinado com seu equivalente do tipo Planta, seu dano aumenta e um vasto mar de fogo aparece." + }, + "grassPledge": { + name: "Grass Pledge", + effect: "Um pilar de grama acerta o alvo. Quando combinado com seu equivalente do tipo Água, seu dano aumenta e um vasto pântano surge." + }, + "voltSwitch": { + name: "Volt Switch", + effect: "Depois de fazer o seu ataque, o usuário corre de volta para trocar de lugar com um Pokémon da própria equipe." + }, + "struggleBug": { + name: "Struggle Bug", + effect: "Enquanto resiste, o usuário ataca o Pokémon oponente. Isso diminui o Ataque Especial daqueles atingidos." + }, + "bulldoze": { + name: "Bulldoze", + effect: "O usuário atinge a todos ao seu redor pisoteando o chão. Isso diminui a Velocidade daqueles atingidos." + }, + "frostBreath": { + name: "Frost Breath", + effect: "O usuário sopra sua respiração gelada no alvo. Esse ataque sempre resulta em um golpe crítico." + }, + "dragonTail": { + name: "Dragon Tail", + effect: "O alvo é arremessado e um Pokémon diferente é trazido para o combate. Em batalhas selvagens, isso encerra a batalha contra um único Pokémon." + }, + "workUp": { + name: "Work Up", + effect: "O usuário se agita e seus atributos de Ataque e Ataque Especial são fortalecidos." + }, + "electroweb": { + name: "Electroweb", + effect: "O usuário ataca e captura os Pokémon adversários usando uma rede elétrica. Isso diminui a Velocidade deles." + }, + "wildCharge": { + name: "Wild Charge", + effect: "O usuário se cobre de eletricidade e colide com o seu alvo. Isso também fere um pouco o usuário." + }, + "drillRun": { + name: "Drill Run", + effect: "O usuário colide com seu alvo enquanto rotaciona seu corpo como uma broca. Golpes críticos acertam mais facilmente." + }, + "dualChop": { + name: "Dual Chop", + effect: "O usuário ataca o seu alvo o acertando com golpes brutais. O alvo é atingido duas vezes seguidas." + }, + "heartStamp": { + name: "Heart Stamp", + effect: "O usuário libera sua fúria em um golpe violento após enganar o alvo com sua atuação fofa. Isso também pode fazer o alvo hesitar." + }, + "hornLeech": { + name: "Horn Leech", + effect: "O usuário drena a energia do alvo com seus chifres. Os PS do usuário são restaurados pela metade do dano recebido pelo alvo." + }, + "sacredSword": { + name: "Sacred Sword", + effect: "O usuário ataca cortando com um longo chifre. As mudanças de atributos do alvo não afetam o dano desse ataque." + }, + "razorShell": { + name: "Razor Shell", + effect: "O usuário corta seu alvo com conchas afiadas. Isso pode também diminuir o atributo de Defesa do alvo." + }, + "heatCrash": { + name: "Heat Crash", + effect: "O usuário golpeia seu alvo com seu corpo envolto em chamas. Quanto mais pesado o usuário for comparado ao alvo, maior será o poder do movimento." + }, + "leafTornado": { + name: "Leaf Tornado", + effect: "O usuário ataca seu alvo cercando-o com folhas afiadas. Isso também pode diminuir a precisão do alvo." + }, + "steamroller": { + name: "Steamroller", + effect: "O usuário esmaga seu alvo rolando sobre ele com seu corpo enrolado como uma bola. Isso também pode fazer o alvo hesitar." + }, + "cottonGuard": { + name: "Cotton Guard", + effect: "O usuário protege a si mesmo envolvendo seu corpo em algodão macio, o que drasticamente aumenta o atributo de Defesa do usuário." + }, + "nightDaze": { + name: "Night Daze", + effect: "O usuário libera uma onda de choque escura como a noite no alvo. Isso também pode reduzir a Precisão do alvo." + }, + "psystrike": { + name: "Psystrike", + effect: "O usuário materializa uma estranha onda psíquica para atacar o alvo. Esse ataque inflige dano físico." + }, + "tailSlap": { + name: "Tail Slap", + effect: "O usuário ataca golpeando o alvo com sua cauda resistente. Isso acerta o alvo duas a cinco vezes seguidas." + }, + "hurricane": { + name: "Hurricane", + effect: "O usuário ataca prendendo seu oponente num violento turbilhão que voa alto no céu. Isso também pode confundir o alvo." + }, + "headCharge": { + name: "Head Charge", + effect: "O usuário ataca colidindo sua cabeça no alvo, usando sua pelagem protetora. Isso também fere um pouco o usuário." + }, + "gearGrind": { + name: "Gear Grind", + effect: "O usuário ataca arremessando engrenagens de aço no seu alvo duas vezes em sequência." + }, + "searingShot": { + name: "Searing Shot", + effect: "O usuário queima tudo ao seu redor com um inferno de chamas escarlate. Isso também pode causar uma queimadura em alvos atingidos." + }, + "technoBlast": { + name: "Techno Blast", + effect: "O usuário atira um raio de luz em seu alvo. O tipo do movimento muda dependendo do Disco que o usuário estiver segurando." + }, + "relicSong": { + name: "Relic Song", + effect: "O usuário canta uma antiga canção e ataca encantando o coração dos Pokémon adversários. Isso também pode induzir sono." + }, + "secretSword": { + name: "Secret Sword", + effect: "O usuário ataca cortando com seu longo chifre. O estranho poder contido no chifre inflige dano físico no alvo." + }, + "glaciate": { + name: "Glaciate", + effect: "O usuário ataca soprando ar congelante nos Pokémon oponentes. Isso diminui a Velocidade deles." + }, + "boltStrike": { + name: "Bolt Strike", + effect: "O usuário cobre a si mesmo com uma grande quantidade de eletricidade e avança no alvo. Isso também pode paralisar o alvo." + }, + "blueFlare": { + name: "Blue Flare", + effect: "O usuário ataca engolindo o alvo numa intensa, porém linda, chama azul. Isso também pode deixar o alvo com uma queimadura." + }, + "fieryDance": { + name: "Fiery Dance", + effect: "Coberto por chamas, o usuário dança e bate suas asas. Isso também pode aumentar o Ataque Especial do usuário." + }, + "freezeShock": { + name: "Freeze Shock", + effect: "No segundo turno, o usuário acerta o alvo com gelo eletricamente carregado. Isso também pode deixar o alvo paralisado." + }, + "iceBurn": { + name: "Ice Burn", + effect: "No segundo turno, um impiedoso vento gélido cerca o alvo. Isso pode deixar o alvo com uma queimadura." + }, + "snarl": { + name: "Snarl", + effect: "O usuário grita como se ele estivesse reclamando de algo, diminuindo a Defesa Especial do Pokémon oponente." + }, + "icicleCrash": { + name: "Icicle Crash", + effect: "O usuário ataca arremessando estacas de gelo no alvo violentamente. Isso também pode fazer o alvo hesitar." + }, + "v-Create": { + name: "V-create", + effect: "Com uma ardente chama em sua testa, o usuário joga seu corpo em direção ao alvo. Isso diminui a Defesa, Defesa Especial, e Velocidade do usuário." + }, + "fusionFlare": { + name: "Fusion Flare", + effect: "O usuário invoca uma chama gigante. Esse movimento é mais poderoso quando influenciado por um enorme raio." + }, + "fusionBolt": { + name: "Fusion Bolt", + effect: "O usuário conduz um raio gigantesco. Esse movimento é mais poderoso quando influenciado por uma enorme chama." + }, + "flyingPress": { + name: "Flying Press", + effect: "O usuário mergulha do céu em direção ao alvo. Esse movimento é simultaneamente do tipo Lutador e Voador." + }, + "matBlock": { + name: "Mat Block", + effect: "Usando uma esteira elevada como escudo, o usuário protege a si mesmo e a seus aliados de golpes que causam dano. Isso não previne condições negativas." + }, + "belch": { + name: "Belch", + effect: "O usuário expurga um arroto danificante no alvo. O usuário deve comer uma Fruta para usar esse movimento." + }, + "rototiller": { + name: "Rototiller", + effect: "O usuário ara o solo, facilitando o crescimento de plantas. Isso aumenta os atributos de Ataque e Ataque Especial dos Pokémon do tipo Planta." + }, + "stickyWeb": { + name: "Sticky Web", + effect: "O usuário tece uma teia viscosa ao redor da equipe adversária, o que diminui a Velocidade dos adversários após entrarem em campo." + }, + "fellStinger": { + name: "Fell Stinger", + effect: "Quando o usuário nocauteia um alvo com este movimento, o atributo de Ataque do usuário aumenta bruscamente." + }, + "phantomForce": { + name: "Phantom Force", + effect: "O usuário desaparece para algum lugar e então ataca o alvo no próximo turno. Esse movimento acerta mesmo se o alvo estiver se protegendo." + }, + "trick-Or-Treat": { + name: "Trick-or-Treat", + effect: "O usuário enche o alvo com o espírito do Halloween para celebrarem juntos. Isso adiciona o tipo Fantasma à tipagem do alvo." + }, + "nobleRoar": { + name: "Noble Roar", + effect: "Soltando um nobre rugido, o usuário intimida o alvo e diminui seus atributos de Ataque e Ataque Especial." + }, + "ionDeluge": { + name: "Ion Deluge", + effect: "O usuário dispersa partículas eletricamente carregadas, o que muda movimentos do tipo Normal para o tipo Elétrico." + }, + "parabolicCharge": { + name: "Parabolic Charge", + effect: "O usuário ataca tudo ao seu redor. Os PS do usuário são restaurados pela metade do dano recebido por aqueles que foram atingidos." + }, + "forest’SCurse": { + name: "Forest’s Curse", + effect: "O usuário conjura uma maldição da floresta no alvo. Isso adiciona o tipo Planta à tipagem do alvo." + }, + "petalBlizzard": { + name: "Petal Blizzard", + effect: "O usuário rotaciona uma violenta nevasca composta por pétalas e ataca tudo ao seu redor." + }, + "freeze-Dry": { + name: "Freeze-Dry", + effect: "O usuário rapidamente diminui a temperatura do alvo. Isso pode deixar o alvo congelado. Esse movimento é supereficaz contra tipos Água." + }, + "disarmingVoice": { + name: "Disarming Voice", + effect: "Liberando um grito encantador, o usuário inflige dano emocional nos Pokémon oponentes. Esse ataque nunca erra." + }, + "partingShot": { + name: "Parting Shot", + effect: "O usuário diminui os atributos de Ataque e Ataque Esp. do alvo com uma ameaça antes de ser trocado por outro Pokémon na equipe." + }, + "topsy-Turvy": { + name: "Topsy-Turvy", + effect: "Todas as mudanças de atributos afetando o alvo viram de cabeça para baixo e se tornam o oposto do que eram." + }, + "drainingKiss": { + name: "Draining Kiss", + effect: "O usuário rouba a energia do alvo com um beijo. Os PS do usuário são restaurados além da metade do dano recebido pelo alvo." + }, + "craftyShield": { + name: "Crafty Shield", + effect: "O usuário protege a si mesmo e seus aliados de condições negativas com um misterioso poder. Isso não previne golpes que inflijam dano." + }, + "flowerShield": { + name: "Flower Shield", + effect: "Usando um misterioso poder, o usuário aumenta o atributo de Defesa de todos os Pokémon tipo Planta em batalha." + }, + "grassyTerrain": { + name: "Grassy Terrain", + effect: "O usuário transforma o campo de batalha em grama por cinco turnos. Isso restaura os PS dos Pokémon no solo um pouco a cada turno e fortalece golpes do tipo Grama." + }, + "mistyTerrain": { + name: "Misty Terrain", + effect: "Isto protege os Pokémon no solo de condições de estado e corta pela metade o dano dos movimentos do tipo Dragão por cinco turnos." + }, + "electrify": { + name: "Electrify", + effect: "Caso o alvo tenha sido energizado antes de usar um movimento durante aquele turno, o movimento do alvo se tornará do tipo Elétrico." + }, + "playRough": { + name: "Play Rough", + effect: "O usuário joga duro com o alvo e o ataca. Isso também pode diminuir o atributo de Ataque do alvo." + }, + "fairyWind": { + name: "Fairy Wind", + effect: "O usuário rotaciona um vento de fada e ataca o alvo com ele." + }, + "moonblast": { + name: "Moonblast", + effect: "Canalizando o poder da lua, o usuário ataca o alvo. Isso também pode diminuir o atributo de Ataque Especial do alvo." + }, + "boomburst": { + name: "Boomburst", + effect: "O usuário ataca tudo ao seu redor com o poder destrutivo de um terrível som explosivo." + }, + "fairyLock": { + name: "Fairy Lock", + effect: "Bloqueando o campo de batalha, o usuário previne que todos os Pokémon fujam durante o próximo turno." + }, + "king’SShield": { + name: "King’s Shield", + effect: "O usuário assume uma posição defensiva enquanto protege a si mesmo de dano. Isto duramente diminui o Ataque de qualquer um que faça contato direto." + }, + "playNice": { + name: "Play Nice", + effect: "O usuário e o alvo se tornam amigos, fazendo com que o alvo perca sua vontade de lutar. Isso diminui o atributo de Ataque do alvo." + }, + "confide": { + name: "Confide", + effect: "O usuário conta um segredo para o alvo e o alvo perde sua habilidade de se concentrar. Isso diminui o Ataque Especial do alvo." + }, + "diamondStorm": { + name: "Diamond Storm", + effect: "O usuário provoca uma tempestade de diamantes para ferir os Pokémon oponentes. Isso também pode aumentar o atributo de Defesa do usuário." + }, + "steamEruption": { + name: "Steam Eruption", + effect: "O usuário imerge o alvo em vapor superaquecido. Isso também pode deixar o alvo com uma queimadura." + }, + "hyperspaceHole": { + name: "Hyperspace Hole", + effect: "Usando uma fenda espacial, o usuário aparece ao lado do alvo e ataca. Isso também acerta um alvo usando movimentos como Proteger ou Detectar." + }, + "waterShuriken": { + name: "Water Shuriken", + effect: "O usuário acerta o alvo jogando estrelas ninja de duas a cinco vezes seguidas. Esse movimento tem prioridade." + }, + "mysticalFire": { + name: "Mystical Fire", + effect: "O usuário ataca soprando um fogo ardente especial. Isso também diminui o Ataque Especial do alvo." + }, + "spikyShield": { + name: "Spiky Shield", + effect: "Além de proteger o alvo de ataques, este movimento também fere qualquer atacante que fizer contato direto." + }, + "aromaticMist": { + name: "Aromatic Mist", + effect: "Usando um misterioso aroma, o usuário aumenta o atributo de Defesa Especial de um Pokémon aliado." + }, + "eerieImpulse": { + name: "Eerie Impulse", + effect: "O corpo do usuário gera um impulso misterioso. O alvo exposto ao impulso tem seu Ataque Especial duramente diminuído." + }, + "venomDrench": { + name: "Venom Drench", + effect: "Pokémon oponentes são encharcados por um estranho líquido venenoso. Isso diminui o Ataque, Ataque Esp. e Velocidade de um alvo envenenado." + }, + "powder": { + name: "Powder", + effect: "O usuário cobre o alvo em pólvora. Se o alvo usar um movimento do tipo Fogo, a pólvora entra em combustão e causa dano ao alvo." + }, + "geomancy": { + name: "Geomancy", + effect: "O usuário absorve energia e bruscamente aumenta seus atributos de Ataque Especial, Defesa Especial e Velocidade no próximo turno." + }, + "magneticFlux": { + name: "Magnetic Flux", + effect: "O usuário manipula campos magnéticos, o que aumenta os atributos de Defesa e Defesa Especial de Pokémon aliados com as Habilidades “Mais” ou “Menos”." + }, + "happyHour": { + name: "Happy Hour", + effect: "Usar Happy Hour dobra a quantidade de prêmio em dinheiro recebido após a batalha." + }, + "electricTerrain": { + name: "Electric Terrain", + effect: "O usuário eletrifica o campo de batalha por cinco turnos, fortalecendo movimentos do tipo Elétrico. Pokémon no solo não podem mais cair no sono." + }, + "dazzlingGleam": { + name: "Dazzling Gleam", + effect: "O usuário causa dano ao Pokémon oponente emitindo um clarão poderoso." + }, + "celebrate": { + name: "Celebrate", + effect: "O Pokémon te dá parabéns pelo seu dia especial!" + }, + "holdHands": { + name: "Hold Hands", + effect: "O usuário e um aliado dão as mãos. Isso os deixam muito contentes." + }, + "baby-DollEyes": { + name: "Baby-Doll Eyes", + effect: "O usuário encara o alvo com seus olhos adoráveis, o que diminui seu atributo de Ataque. Esse movimento tem prioridade." + }, + "nuzzle": { + name: "Nuzzle", + effect: "O usuário ataca esfregando suas bochechas eletrizadas contra o alvo. Isso também deixa o alvo paralisado." + }, + "holdBack": { + name: "Hold Back", + effect: "O usuário pega leve quando ataca e o alvo é deixado com pelo menos 1 PS." + }, + "infestation": { + name: "Infestation", + effect: "O alvo é infestado e atacado de quatro a cinco turnos. O alvo não pode fugir durante esse período." + }, + "power-UpPunch": { + name: "Power-Up Punch", + effect: "Golpear oponentes repetidamente faz os punhos do usuário enrijecerem. Acertar um alvo aumenta o Ataque." + }, + "oblivionWing": { + name: "Oblivion Wing", + effect: "O usuário absorve os PS de seu alvo. Os PS do usuário são restaurados além da metade do dano recebido pelo usuário." + }, + "thousandArrows": { + name: "Thousand Arrows", + effect: "Este movimento também acerta Pokémon adversários que estão no ar. Esses Pokémon são derrubados e caem no chão." + }, + "thousandWaves": { + name: "Thousand Waves", + effect: "O usuário ataca com tremores que se dispersam pelo chão. Alvos atingidos não podem fugir da batalha." + }, + "land’SWrath": { + name: "Land’s Wrath", + effect: "O usuário reúne a energia da terra e foca esse poder nos Pokémon oponentes para causar dano." + }, + "lightOfRuin": { + name: "Light of Ruin", + effect: "Usufruindo do poder da flor eterna, o usuário atira um poderoso raio de luz. Isso também fere muito o usuário." + }, + "originPulse": { + name: "Origin Pulse", + effect: "O usuário ataca o Pokémon adversário com inúmeros raios de luz resplandescente que brilham em uma cor de profundo azul." + }, + "precipiceBlades": { + name: "Precipice Blades", + effect: "O usuário ataca o Pokémon adversário manifestando o poder terrestre em espadas de pedra assustadoras." + }, + "dragonAscent": { + name: "Dragon Ascent", + effect: "Depois de alcançar grandes alturas, o usuário ataca o alvo mergulhando do céu em alta velocidade, porém isso diminui sua própria Defesa e Defesa Especial." + }, + "hyperspaceFury": { + name: "Hyperspace Fury", + effect: "Usando seus diversos braços, o usuário libera golpes furiosos que ignoram efeitos de movimentos como Proteção e Detectar. Diminui a Defesa do usuário." + }, + "breakneckBlitzPhysical": { + name: "Breakneck Blitz", + effect: "Utilizando o Poder Z, o usuário intensifica seu ímpeto e atinge o alvo em alta velocidade. Seu poder varia dependendo do movimento original." + }, + "breakneckBlitzSpecial": { + name: "Breakneck Blitz", + effect: "Dummy Data" + }, + "allOutPummelingPhysical": { + name: "All-Out Pummeling", + effect: "Utilizando o Poder Z, o usuário cria e arremessa um orbe de energia no alvo com força total. Seu poder varia dependendo do movimento original." + }, + "allOutPummelingSpecial": { + name: "All-Out Pummeling", + effect: "Dummy Data" + }, + "supersonicSkystrikePhysical": { + name: "Supersonic Skystrike", + effect: "Utilizando o Poder Z, o usuário ascende e mergulha em direção ao alvo em alta velocidade. Seu poder varia dependendo do movimento original." + }, + "supersonicSkystrikeSpecial": { + name: "Supersonic Skystrike", + effect: "Dummy Data" + }, + "acidDownpourPhysical": { + name: "Acid Downpour", + effect: "Utilizando o Poder Z, o usuário cria um pântano venenoso e afoga o alvo com toda sua força. Seu poder varia dependendo do movimento original." + }, + "acidDownpourSpecial": { + name: "Acid Downpour", + effect: "Dummy Data" + }, + "tectonicRagePhysical": { + name: "Tectonic Rage", + effect: "Utilizando o Poder Z, o usuário abre uma cratera e mergulha nela com o alvo com força total. Seu poder varia dependendo do movimento original." + }, + "tectonicRageSpecial": { + name: "Tectonic Rage", + effect: "Dummy Data" + }, + "continentalCrushPhysical": { + name: "Continental Crush", + effect: "Utilizando o Poder Z, o usuário cria um meteoro que cai do céu em direção ao alvo com força total. Seu poder varia dependendo do movimento original." + }, + "continentalCrushSpecial": { + name: "Continental Crush", + effect: "Dummy Data" + }, + "savageSpinOutPhysical": { + name: "Savage Spin-Out", + effect: "Utilizando o Poder Z, o usuário restringe o alvo em um casulo de seda e ataca ele com força total. Seu poder varia dependendo do movimento original." + }, + "savageSpinOutSpecial": { + name: "Savage Spin-Out", + effect: "Dummy Data" + }, + "never-EndingNightmarePhysical": { + name: "Never-Ending Nightmare", + effect: "Utilizando o Poder Z, o usuário invoca espectros rancorosos que sufocam o alvo. Seu poder varia dependendo do movimento original." + }, + "never-EndingNightmareSpecial": { + name: "Never-Ending Nightmare", + effect: "Dummy Data" + }, + "corkscrewCrashPhysical": { + name: "Corkscrew Crash", + effect: "Utilizando o Poder Z, o usuário gira rapidamente e ataca o alvo com força total. Seu poder varia dependendo do movimento original." + }, + "corkscrewCrashSpecial": { + name: "Corkscrew Crash", + effect: "Dummy Data" + }, + "infernoOverdrivePhysical": { + name: "Inferno Overdrive", + effect: "Utilizando o Poder Z, o usuário cospe uma enorme labareda ardente contra o alvo com força total. Seu poder varia dependendo do movimento original." + }, + "infernoOverdriveSpecial": { + name: "Inferno Overdrive", + effect: "Dummy Data" + }, + "hydroVortexPhysical": { + name: "Hydro Vortex", + effect: "Utilizando o Poder Z, o usuário cria um intenso turbilhão que engole o alvo com força total. Seu poder varia dependendo do movimento original." + }, + "hydroVortexSpecial": { + name: "Hydro Vortex", + effect: "Dummy Data" + }, + "bloomDoomPhysical": { + name: "Bloom Doom", + effect: "Utilizando o Poder Z, o usuário absorve a energia vital do ambiente e ataca o alvo com força total. Seu poder varia dependendo do movimento original." + }, + "bloomDoomSpecial": { + name: "Bloom Doom", + effect: "Dummy Data" + }, + "gigavoltHavocPhysical": { + name: "Gigavolt Havoc", + effect: "Utilizando o Poder Z, o usuário concentra uma corrente elétrica carregada e atinge o alvo. Seu poder varia dependendo do movimento original." + }, + "gigavoltHavocSpecial": { + name: "Gigavolt Havoc", + effect: "Dummy Data" + }, + "shatteredPsychePhysical": { + name: "Shattered Psyche", + effect: "Utilizando o Poder Z, o usuário manipula a cabeça do alvo e destrói-o mentalmente. Seu poder varia dependendo do movimento original." + }, + "shatteredPsycheSpecial": { + name: "Shattered Psyche", + effect: "Dummy Data" + }, + "subzeroSlammerPhysical": { + name: "Subzero Slammer", + effect: "Utilizando o Poder Z, o usuário lança um raio de gelo que reduz a temperatura do alvo a zero. Seu poder varia dependendo do movimento original." + }, + "subzeroSlammerSpecial": { + name: "Subzero Slammer", + effect: "Dummy Data" + }, + "devastatingDrakePhysical": { + name: "Devastating Drake", + effect: "Utilizando o Poder Z, o usuário materializa sua aura, que ataca o alvo com força total. Seu poder varia dependendo do movimento original." + }, + "devastatingDrakeSpecial": { + name: "Devastating Drake", + effect: "Dummy Data" + }, + "blackHoleEclipsePhysical": { + name: "Black Hole Eclipse", + effect: "Utilizando o Poder Z, o usuário cria um buraco negro que engole o alvo. Seu poder varia dependendo do movimento original." + }, + "blackHoleEclipseSpecial": { + name: "Black Hole Eclipse", + effect: "Dummy Data" + }, + "twinkleTacklePhysical": { + name: "Twinkle Tackle", + effect: "Utilizando o Poder Z, o usuário cria uma dimensão graciosa que deixa o alvo a sua mercê. Seu poder varia dependendo do movimento original." + }, + "twinkleTackleSpecial": { + name: "Twinkle Tackle", + effect: "Dummy Data" + }, + "catastropika": { + name: "Catastropika", + effect: "Utilizando seu Poder Z, Pikachu acumula o máximo de eletricidade que seu corpo suporta e pula no alvo com força total." + }, + "shoreUp": { + name: "Shore Up", + effect: "Recupera metade dos PS do usuário. Durante uma Tempestade de Areia, recupera um pouco mais." + }, + "firstImpression": { + name: "First Impression", + effect: "Embora esse movimento seja poderoso, ele funciona apenas na primeira rodada em que o usuário está em batalha." + }, + "banefulBunker": { + name: "Baneful Bunker", + effect: "Além de proteger o usuário de ataques, este movimento também envenena qualquer um que fizer contato direto." + }, + "spiritShackle": { + name: "Spirit Shackle", + effect: "O usuário ataca enquanto fisga simultaneamente a sombra do alvo e impede ele de escapar." + }, + "darkestLariat": { + name: "Darkest Lariat", + effect: "O usuário balança os dois braços e acerta o alvo. As mudanças de atributos do alvo não afetam o dano deste ataque." + }, + "sparklingAria": { + name: "Sparkling Aria", + effect: "Libera borbulhas ao cantar. Se um Pokémon estiver queimado, ele será curado pelo toque das bolhas." + }, + "iceHammer": { + name: "Ice Hammer", + effect: "O usuário gira seu corpo e bate com seus fortes e pesados punhos. Isso diminui a Velocidade do usuário." + }, + "floralHealing": { + name: "Floral Healing", + effect: "O usuário restaura os PS do alvo até metade a dos seus PS máximo. Ele restaura mais HP quando o terreno é de grama." + }, + "highHorsepower": { + name: "High Horsepower", + effect: "O usuário ataca ferozmente o alvo usando todo o seu corpo." + }, + "strengthSap": { + name: "Strength Sap", + effect: "O usuário restaura seus PS em uma quantidade igual ao atributo de Ataque do alvo. Também diminui o atributo de Ataque do alvo." + }, + "solarBlade": { + name: "Solar Blade", + effect: "O usuário absorve luz e concentra-a em forma de lâmina com a energia absorvida no primeiro turno e atacando o alvo no próximo turno." + }, + "leafage": { + name: "Leafage", + effect: "O usuário ataca lançando folhas no alvo." + }, + "spotlight": { + name: "Spotlight", + effect: "O usuário direciona o foco no alvo para que apenas ele seja atacado durante o turno." + }, + "toxicThread": { + name: "Toxic Thread", + effect: "O usuário dispara fios venenosos para envenenar o alvo e diminuir sua Velocidade." + }, + "laserFocus": { + name: "Laser Focus", + effect: "O usuário se concentra intensamente. O ataque no próximo turno sempre resultará em um golpe crítico." + }, + "gearUp": { + name: "Gear Up", + effect: "O usuário engata suas engrenagens para aumentar os atributos de Ataque e Ataque Esp. de Pokémon aliados com as Habilidades Mais ou Menos." + }, + "throatChop": { + name: "Throat Chop", + effect: "O usuário acerta a garganta do alvo, e a dor resultante impede que o alvo use movimentos que emitam som por dois turnos." + }, + "pollenPuff": { + name: "Pollen Puff", + effect: "O usuário ataca o inimigo com uma bola de pólen explosiva. Se o alvo for um aliado, ele recebe uma bola de pólen que restaura seus PS em vez disso." + }, + "anchorShot": { + name: "Anchor Shot", + effect: "O usuário revolve o alvo com a corrente de sua âncora enquanto ataca. O alvo se torna incapaz de fugir." + }, + "psychicTerrain": { + name: "Psychic Terrain", + effect: "Protege o Pokémon no terreno de movimentos de prioridade e aumenta o poder dos movimentos do tipo Psíquico por cinco turnos." + }, + "lunge": { + name: "Lunge", + effect: "O usuário faz uma estocada no alvo, atacando com força total. Isso também diminui o Ataque do alvo." + }, + "fireLash": { + name: "Fire Lash", + effect: "O usuário atinge o alvo com um chicote em chamas. Também diminui a Defesa do alvo." + }, + "powerTrip": { + name: "Power Trip", + effect: "O usuário ostenta sua força e ataca o alvo. Quanto mais os atributos do usuário forem aumentados, maior será o poder do movimento." + }, + "burnUp": { + name: "Burn Up", + effect: "Para infligir um dano massivo, o usuário se exaure. Após usar esse movimento, o usuário não será mais do tipo Fogo." + }, + "speedSwap": { + name: "Speed Swap", + effect: "O usuário troca os atributos de Velocidade com o alvo." + }, + "smartStrike": { + name: "Smart Strike", + effect: "O usuário perfura o alvo com um chifre afiado. Esse ataque nunca erra." + }, + "purify": { + name: "Purify", + effect: "O usuário cura a condição de estado do alvo. Se o movimento for bem-sucedido, também recupera os PS do usuário." + }, + "revelationDance": { + name: "Revelation Dance", + effect: "O usuário ataca o alvo dançando intensamente. O tipo do usuário determina o tipo deste movimento." + }, + "coreEnforcer": { + name: "Core Enforcer", + effect: "Se os Pokémon nos quais o usuário causou dano já tiverem usado seus movimentos, esse movimento elimina o efeito da Habilidade do alvo." + }, + "tropKick": { + name: "Trop Kick", + effect: "O usuário desfere um chute intenso de origens tropicais no alvo. Também diminui o Ataque do alvo." + }, + "instruct": { + name: "Instruct", + effect: "O usuário instrui o alvo a usar novamente o seu último movimento usado." + }, + "beakBlast": { + name: "Beak Blast", + effect: "O usuário aquece o bico e depois ataca o alvo. Fazer contato direto com o Pokémon enquanto ele aquece o bico resultará em queimadura." + }, + "clangingScales": { + name: "Clanging Scales", + effect: "O usuário esfrega as escamas de todo o seu corpo e faz um estrondo para machucar o Pokémon oponente. A Defesa do usuário diminui após o ataque." + }, + "dragonHammer": { + name: "Dragon Hammer", + effect: "O usuário usa seu corpo como um martelo para atacar o alvo e causar dano." + }, + "brutalSwing": { + name: "Brutal Swing", + effect: "O usuário balança o corpo violentamente para infligir dano a tudo em seu redor." + }, + "auroraVeil": { + name: "Aurora Veil", + effect: "Esse movimento reduz o dano de movimentos físicos e especiais por cinco turnos. Só pode ser usado durante uma tempestade de granizo." + }, + "sinisterArrowRaid": { + name: "Sinister Arrow Raid", + effect: "Utilizando o Poder Z, Decidueye cria incontáveis flechas e dispara-as contra o alvo com força total." + }, + "maliciousMoonsault": { + name: "Malicious Moonsault", + effect: "Utilizando o Poder Z, Incineroar fortalece seu corpo e pula no alvo com força total." + }, + "oceanicOperetta": { + name: "Oceanic Operetta", + effect: "Utilizando o Poder Z, Primarina convoca uma quantidade massiva de água e lança contra o alvo com força total." + }, + "guardianOfAlola": { + name: "Guardian of Alola", + effect: "Utilizando o Poder Z, o Espírito Nativo canaliza a energia de Alola e ataca o alvo com força total. Reduz muito os PS do alvo." + }, + "soul-Stealing7-StarStrike": { + name: "Soul-Stealing 7-Star Strike", + effect: "Quando um Marshadow obtém o Poder Z, ele ataca o alvo consecutivamente com socos e chutes usando força total." + }, + "stokedSparksurfer": { + name: "Stoked Sparksurfer", + effect: "Quando um Raichu de Alola obtém o Poder Z, ele lança um ataque contra o alvo com força total. Este movimento deixa o alvo paralisado." + }, + "pulverizingPancake": { + name: "Pulverizing Pancake", + effect: "O Poder Z desperta as capacidades máximas de seu Snorlax. O Pokémon movimenta seu enorme corpo velozmente e ataca o alvo com força total." + }, + "extremeEvoboost": { + name: "Extreme Evoboost", + effect: "Quando um Eevee obtém o Poder Z, ele absorve energia dos seus amigos evoluídos e aumenta os seus atributos bruscamente." + }, + "genesisSupernova": { + name: "Genesis Supernova", + effect: "Quando um Mew obtém o Poder Z, ele ataca o alvo com força total. O terreno será carregado com energia psíquica." + }, + "shellTrap": { + name: "Shell Trap", + effect: "O usuário arma uma cilada explosiva. Se o usuário for atingido fisicamente, a cilada irá explodir e causar de dano ao Pokémon oponente." + }, + "fleurCannon": { + name: "Fleur Cannon", + effect: "O usuário dispara um raio poderoso. O efeito colateral do ataque prejudica duramente o Ataque Especial do usuário." + }, + "psychicFangs": { + name: "Psychic Fangs", + effect: "O usuário morde o alvo com suas capacidades psíquicas. Pode destruir Tela de Luz e Refletir." + }, + "stompingTantrum": { + name: "Stomping Tantrum", + effect: "Guiado pela frustração, o usuário ataca o alvo. Se o movimento anterior falhou, o poder do movimento é dobrado." + }, + "shadowBone": { + name: "Shadow Bone", + effect: "O usuário ataca o alvo com um osso que contém um espírito. Pode diminuir a Defesa do alvo." + }, + "accelerock": { + name: "Accelerock", + effect: "O usuário colide contra o alvo em alta velocidade. Esse movimento sempre ataca primeiro." + }, + "liquidation": { + name: "Liquidation", + effect: "O usuário dispara no alvo um jato d'água poderoso. Diminui a Defesa do alvo." + }, + "prismaticLaser": { + name: "Prismatic Laser", + effect: "O usuário dispara lasers poderosos usando o poder de um prisma. O usuário não pode se mover no próximo turno." + }, + "spectralThief": { + name: "Spectral Thief", + effect: "O usuário se esconde na sombra do alvo, rouba seus aumentos de atributos e então, ataca-o." + }, + "sunsteelStrike": { + name: "Sunsteel Strike", + effect: "O usuário atinge o alvo com a força de um meteoro. Esse movimento pode ser usado no alvo independentemente de sua Habilidade." + }, + "moongeistBeam": { + name: "Moongeist Beam", + effect: "O usuário emite um raio pavoroso para atacar o alvo. Esse movimento pode ser usado no alvo independentemente de sua Habilidade." + }, + "tearfulLook": { + name: "Tearful Look", + effect: "O usuário fica manhoso e o alvo perde a vontade de lutar. Diminui o Ataque e o Ataque Esp. do alvo." + }, + "zingZap": { + name: "Zing Zap", + effect: "Uma forte explosão elétrica que cai sobre o alvo, eletrocutando-o e podendo fazê-lo hesitar." + }, + "nature’SMadness": { + name: "Nature’s Madness", + effect: "O usuário atinge o alvo com a força da natureza. Reduz os PS do alvo pela metade." + }, + "multi-Attack": { + name: "Multi-Attack", + effect: "Se envolvendo em energia concentrada, o usuário acerta o alvo. A memória segurada determina o tipo do movimento." + }, + "10,000,000VoltThunderbolt": { + name: "10,000,000 Volt Thunderbolt", + effect: "Usando seu Poder Z, o Pikachu de boné acumula eletricidade e despeja-a. Golpes críticos acertam mais facilmente." + }, + mindBlown: { + name: "Mind Blown", + effect: "O usuário ataca tudo ao seu redor fazendo sua própria cabeça explodir. Isso também causa dano ao usuário." + }, + plasmaFists: { + name: "Plasma Fists", + effect: "O usuário ataca com punhos carregados eletricamente. Este movimento transforma movimentos do tipo Normal em movimentos do tipo Elétrico." + }, + photonGeyser: { + name: "Photon Geyser", + effect: "O usuário ataca o alvo com um pilar de luz. Este movimento causa dano de Ataque ou Ataque Especial—o que for maior para o usuário." + }, + lightThatBurnsTheSky: { + name: "Light That Burns the Sky", + effect: "Este ataque causa dano de Ataque ou Ataque Especial—o que for maior para o usuário, Necrozma. Este movimento ignora a Habilidade do alvo." + }, + searingSunrazeSmash: { + name: "Searing Sunraze Smash", + effect: "Após obter o Z-Power, o usuário, Solgaleo, ataca o alvo com força total. Este movimento pode ignorar o efeito da Habilidade do alvo." + }, + menacingMoonrazeMaelstrom: { + name: "Menacing Moonraze Maelstrom", + effect: "Após obter o Z-Power, o usuário, Lunala, ataca o alvo com força total. Este movimento pode ignorar o efeito da Habilidade do alvo." + }, + letsSnuggleForever: { + name: "Let's Snuggle Forever", + effect: "Após obter o Z-Power, o usuário, Mimikyu, soca o alvo com força total." + }, + splinteredStormshards: { + name: "Splintered Stormshards", + effect: "Após obter o Z-Power, o usuário, Lycanroc, ataca o alvo com força total. Este movimento nega o efeito no campo de batalha." + }, + clangorousSoulblaze: { + name: "Clangorous Soulblaze", + effect: "Após obter o Z-Power, o usuário, Kommo-o, ataca os Pokémon adversários com força total. Este movimento aumenta os atributos do usuário." + }, + zippyZap: { + name: "Zippy Zap", + effect: "O usuário ataca o alvo com rajadas de eletricidade em alta velocidade. Este movimento sempre ataca primeiro e resulta em um golpe crítico." + }, + splishySplash: { + name: "Splishy Splash", + effect: "O usuário carrega uma onda enorme com eletricidade e atinge os Pokémon adversários com a onda. Isso também pode deixar os Pokémon adversários paralisados." + }, + floatyFall: { + name: "Floaty Fall", + effect: "O usuário flutua no ar e então mergulha em um ângulo íngreme para atacar o alvo. Isso também pode fazer o alvo hesitar." + }, + pikaPapow: { + name: "Pika Papow", + effect: "Quanto mais o Pikachu ama seu Treinador, maior o poder do movimento. Nunca erra." + }, + bouncyBubble: { + name: "Bouncy Bubble", + effect: "O usuário ataca atirando bolhas de água no alvo. Em seguida, absorve água e restaura seu HP pela metade do dano causado ao alvo." + }, + buzzyBuzz: { + name: "Buzzy Buzz", + effect: "O usuário dispara um choque de eletricidade para atacar o alvo. Isso também deixa o alvo paralisado." + }, + sizzlySlide: { + name: "Sizzly Slide", + effect: "O usuário se envolve em fogo e carrega contra o alvo. Isso também deixa o alvo queimado." + }, + glitzyGlow: { + name: "Glitzy Glow", + effect: "O usuário bombardeia o alvo com força telecinética. Uma parede maravilhosa de luz é erguida para enfraquecer o poder dos movimentos especiais dos Pokémon adversários." + }, + baddyBad: { + name: "Baddy Bad", + effect: "O usuário age mal e ataca o alvo. Uma parede maravilhosa de luz é erguida para enfraquecer o poder dos movimentos físicos dos Pokémon adversários." + }, + sappySeed: { + name: "Sappy Seed", + effect: "O usuário cresce um caule gigantesco que espalha sementes para atacar o alvo. As sementes drenam o HP do alvo a cada turno." + }, + freezyFrost: { + name: "Freezy Frost", + effect: "O usuário ataca com um cristal feito de névoa congelada fria. Isso elimina todas as mudanças de atributo entre todos os Pokémon envolvidos na batalha." + }, + sparklySwirl: { + name: "Sparkly Swirl", + effect: "O usuário ataca o alvo envolvendo-o com um redemoinho de um aroma esmagador. Isso também cura todas as condições de status do grupo do usuário." + }, + veeveeVolley: { + name: "Veevee Volley", + effect: "Quanto mais o Eevee ama seu Treinador, maior o poder do movimento. Nunca erra." + }, + doubleIronBash: { + name: "Double Iron Bash", + effect: "O usuário gira, centrando a porca hexagonal em seu peito e depois ataca com seus braços duas vezes seguidas. Isso também pode fazer o alvo hesitar." + }, + maxGuard: { + name: "Max Guard", + effect: "Este movimento permite ao usuário proteger-se de todos os ataques. Sua chance de falhar aumenta se for usado em sucessão." + }, + dynamaxCannon: { + name: "Dynamax Cannon", + effect: "O usuário libera um forte feixe de seu núcleo. Este movimento causa o dobro do dano se o alvo estiver acima do nível 200." + }, + snipeShot: { + name: "Snipe Shot", + effect: "O usuário ignora os efeitos dos movimentos e Habilidades dos Pokémon adversários que atraem movimentos, permitindo que este movimento atinja o alvo escolhido." + }, + jawLock: { + name: "Jaw Lock", + effect: "Este movimento impede o usuário e o alvo de trocarem de lugar até que um deles desmaie. O efeito desaparece se qualquer um dos Pokémon deixar o campo." + }, + stuffCheeks: { + name: "Stuff Cheeks", + effect: "O usuário come sua Fruta segurada, depois aumenta muito seu atributo de Defesa." + }, + noRetreat: { + name: "No Retreat", + effect: "Este movimento aumenta todos os atributos do usuário, mas impede o usuário de trocar de lugar ou fugir." + }, + tarShot: { + name: "Tar Shot", + effect: "O usuário derrama alcatrão pegajoso sobre o alvo, diminuindo o atributo de Velocidade do alvo. O alvo se torna mais fraco contra movimentos do tipo Fogo." + }, + magicPowder: { + name: "Magic Powder", + effect: "O usuário espalha uma nuvem de pó mágico que muda o alvo para o tipo Psíquico." + }, + dragonDarts: { + name: "Dragon Darts", + effect: "O usuário ataca duas vezes usando Dreepy. Se houver dois alvos, este movimento atinge cada alvo uma vez." + }, + teatime: { + name: "Teatime", + effect: "O usuário faz hora do chá com todos os Pokémon na batalha. Cada Pokémon come sua Fruta segurada." + }, + octolock: { + name: "Octolock", + effect: "O usuário prende o alvo e impede que ele fuja. Este movimento também diminui os atributos de Defesa e Def. Esp. do alvo a cada turno." + }, + boltBeak: { + name: "Bolt Beak", + effect: "O usuário fere o alvo com seu bico eletrificado. Se o usuário atacar antes do alvo, o poder deste movimento é dobrado." + }, + fishiousRend: { + name: "Fishious Rend", + effect: "O usuário fere o alvo com suas brânquias duras. Se o usuário atacar antes do alvo, o poder deste movimento é dobrado." + }, + courtChange: { + name: "Court Change", + effect: "Com seu poder misterioso, o usuário troca os efeitos de cada lado do campo." + }, + maxFlare: { + name: "Max Flare", + effect: "Este é um ataque do tipo Fogo que Pokémon Dynamax usam. O usuário intensifica o sol por cinco turnos." + }, + maxFlutterby: { + name: "Max Flutterby", + effect: "Este é um ataque do tipo Inseto que Pokémon Dynamax usam. Isso diminui o atributo de Atq. Esp. do alvo." + }, + maxLightning: { + name: "Max Lightning", + effect: "Este é um ataque do tipo Elétrico que Pokémon Dynamax usam. O usuário transforma o chão em Terreno Elétrico por cinco turnos." + }, + maxStrike: { + name: "Max Strike", + effect: "Este é um ataque do tipo Normal que Pokémon Dynamax usam. Isso diminui o atributo de Velocidade do alvo." + }, + maxKnuckle: { + name: "Max Knuckle", + effect: "Este é um ataque do tipo Lutador que Pokémon Dynamax usam. Isso aumenta os atributos de Ataque dos Pokémon aliados." + }, + maxPhantasm: { + name: "Max Phantasm", + effect: "Este é um ataque do tipo Fantasma que Pokémon Dynamax usam. Isso diminui o atributo de Defesa do alvo." + }, + maxHailstorm: { + name: "Max Hailstorm", + effect: "Este é um ataque do tipo Gelo que Pokémon Dynamax usam. O usuário convoca uma tempestade de granizo que dura cinco turnos." + }, + maxOoze: { + name: "Max Ooze", + effect: "Este é um ataque do tipo Veneno que Pokémon Dynamax usam. Isso aumenta os atributos de Atq. Esp. dos Pokémon aliados." + }, + maxGeyser: { + name: "Max Geyser", + effect: "Este é um ataque do tipo Água que Pokémon Dynamax usam. O usuário convoca uma chuva pesada que cai por cinco turnos." + }, + maxAirstream: { + name: "Max Airstream", + effect: "Este é um ataque do tipo Voador que Pokémon Dynamax usam. Isso aumenta os atributos de Velocidade dos Pokémon aliados." + }, + maxStarfall: { + name: "Max Starfall", + effect: "Este é um ataque do tipo Fada que Pokémon Dynamax usam. O usuário transforma o chão em Terreno de Nevoeiro por cinco turnos." + }, + maxWyrmwind: { + name: "Max Wyrmwind", + effect: "Este é um ataque do tipo Dragão que Pokémon Dynamax usam. Isso diminui o atributo de Ataque do alvo." + }, + maxMindstorm: { + name: "Max Mindstorm", + effect: "Este é um ataque do tipo Psíquico que Pokémon Dynamax usam. O usuário transforma o chão em Terreno Psíquico por cinco turnos." + }, + maxRockfall: { + name: "Max Rockfall", + effect: "Este é um ataque do tipo Pedra que Pokémon Dynamax usam. O usuário convoca uma tempestade de areia que dura cinco turnos." + }, + maxQuake: { + name: "Max Quake", + effect: "Este é um ataque do tipo Terra que Pokémon Dynamax usam. Isso aumenta os atributos de Def. Esp. dos Pokémon aliados." + }, + maxDarkness: { + name: "Max Darkness", + effect: "Este é um ataque do tipo Sombrio que Pokémon Dynamax usam. Isso diminui o atributo de Def. Esp. do alvo." + }, + maxOvergrowth: { + name: "Max Overgrowth", + effect: "Este é um ataque do tipo Grama que Pokémon Dynamax usam. O usuário transforma o chão em Terreno de Grama por cinco turnos." + }, + maxSteelspike: { + name: "Max Steelspike", + effect: "Este é um ataque do tipo Aço que Pokémon Dynamax usam. Isso aumenta os atributos de Defesa dos Pokémon aliados." + }, + clangorousSoul: { + name: "Clangorous Soul", + effect: "O usuário aumenta todos os seus atributos usando um pouco de seu HP." + }, + bodyPress: { + name: "Body Press", + effect: "O usuário ataca pressionando seu corpo contra o alvo. Quanto maior a Defesa do usuário, mais dano pode infligir ao alvo." + }, + decorate: { + name: "Decorate", + effect: "O usuário aumenta muito os atributos de Ataque e Atq. Esp. do alvo decorando o alvo." + }, + drumBeating: { + name: "Drum Beating", + effect: "O usuário toca seu tambor, controlando as raízes do tambor para atacar o alvo. Isso também diminui o atributo de Velocidade do alvo." + }, + snapTrap: { + name: "Snap Trap", + effect: "O usuário prende o alvo em uma armadilha rápida por quatro ou cinco turnos." + }, + pyroBall: { + name: "Pyro Ball", + effect: "O usuário ataca acendendo uma pequena pedra e lançando-a como uma bola de fogo no alvo. Isso também pode deixar o alvo queimado." + }, + behemothBlade: { + name: "Behemoth Blade", + effect: "O usuário empunha uma espada grande e poderosa usando todo o seu corpo e corta o alvo em um ataque vigoroso." + }, + behemothBash: { + name: "Behemoth Bash", + effect: "O corpo do usuário se torna um escudo firme e atinge o alvo com força." + }, + auraWheel: { + name: "Aura Wheel", + effect: "Morpeko ataca e aumenta sua Velocidade com a energia armazenada em suas bochechas. O tipo deste movimento muda dependendo da forma do usuário." + }, + breakingSwipe: { + name: "Breaking Swipe", + effect: "O usuário balança sua cauda dura violentamente e ataca os Pokémon adversários. Isso também diminui os atributos de Ataque deles." + }, + branchPoke: { + name: "Branch Poke", + effect: "O usuário ataca o alvo cutucando-o com um galho pontiagudo." + }, + overdrive: { + name: "Overdrive", + effect: "O usuário ataca os Pokémon adversários vibrando uma guitarra ou baixo, causando um eco enorme e uma vibração forte." + }, + appleAcid: { + name: "Apple Acid", + effect: "O usuário ataca o alvo com um líquido ácido criado a partir de maçãs azedas. Isso também diminui o atributo de Def. Esp. do alvo." + }, + gravApple: { + name: "Grav Apple", + effect: "O usuário inflige dano derrubando uma maçã de cima. Isso também diminui o atributo de Defesa do alvo." + }, + spiritBreak: { + name: "Spirit Break", + effect: "O usuário ataca o alvo com tanta força que poderia quebrar o espírito do alvo. Isso também diminui o atributo de Atq. Esp. do alvo." + }, + strangeSteam: { + name: "Strange Steam", + effect: "O usuário ataca o alvo emitindo vapor. Isso também pode deixar o alvo confuso." + }, + lifeDew: { + name: "Life Dew", + effect: "O usuário espalha água misteriosa ao redor e restaura o HP de si mesmo e de seus Pokémon aliados na batalha." + }, + obstruct: { + name: "Obstruct", + effect: "Este movimento permite ao usuário proteger-se de todos os ataques. Sua chance de falhar aumenta se for usado em sucessão. Contato direto reduz severamente o atributo de Defesa do atacante." + }, + falseSurrender: { + name: "False Surrender", + effect: "O usuário finge abaixar a cabeça, mas então esfaqueia o alvo com seus cabelos desgrenhados. Este ataque nunca erra." + }, + meteorAssault: { + name: "Meteor Assault", + effect: "O usuário ataca selvagemente com seu alho-poró grosso. O usuário não pode se mover na próxima rodada, porque a força deste movimento o faz cambalear." + }, + eternabeam: { + name: "Eternabeam", + effect: "Este é o ataque mais poderoso de Eternatus em sua forma original. O usuário não pode se mover na próxima rodada." + }, + steelBeam: { + name: "Steel Beam", + effect: "O usuário dispara um feixe de aço que coletou de todo o seu corpo. Isso também causa dano ao usuário." + }, + expandingForce: { + name: "Expanding Force", + effect: "O usuário ataca o alvo com seu poder psíquico. O poder deste movimento aumenta e danifica todos os Pokémon adversários no Terreno Psíquico." + }, + steelRoller: { + name: "Steel Roller", + effect: "O usuário ataca enquanto destrói o terreno. Este movimento falha quando o chão não foi transformado em um terreno." + }, + scaleShot: { + name: "Scale Shot", + effect: "O usuário ataca atirando escamas de duas a cinco vezes seguidas. Este movimento aumenta o atributo de Velocidade do usuário, mas diminui seu atributo de Defesa." + }, + meteorBeam: { + name: "Meteor Beam", + effect: "Neste ataque de dois turnos, o usuário reúne energia espacial e aumenta seu atributo de Atq. Esp., depois ataca o alvo no próximo turno." + }, + shellSideArm: { + name: "Shell Side Arm", + effect: "Este movimento causa dano físico ou especial, o que for mais eficaz. Isso também pode envenenar o alvo." + }, + mistyExplosion: { + name: "Misty Explosion", + effect: "O usuário ataca tudo ao seu redor e desmaia ao usar este movimento. O poder deste movimento é aumentado no Terreno de Nevoeiro." + }, + grassyGlide: { + name: "Grassy Glide", + effect: "Deslizando no chão, o usuário ataca o alvo. Este movimento sempre ataca primeiro no Terreno de Grama." + }, + risingVoltage: { + name: "Rising Voltage", + effect: "O usuário ataca com a voltagem elétrica que sobe do chão. O poder deste movimento dobra quando o alvo está no Terreno Elétrico." + }, + terrainPulse: { + name: "Terrain Pulse", + effect: "O usuário utiliza o poder do terreno para atacar. O tipo e o poder deste movimento mudam dependendo do terreno em que é usado." + }, + skitterSmack: { + name: "Skitter Smack", + effect: "O usuário corre por trás do alvo para atacar. Isso também diminui o atributo de Atq. Esp. do alvo." + }, + burningJealousy: { + name: "Burning Jealousy", + effect: "O usuário ataca com energia da inveja. Isso deixa todos os Pokémon adversários que tiveram seus atributos aumentados durante o turno com uma queimadura." + }, + lashOut: { + name: "Lash Out", + effect: "O usuário ataca para desabafar sua frustração contra o alvo. Se os atributos do usuário foram diminuídos durante este turno, o poder deste movimento é dobrado." + }, + poltergeist: { + name: "Poltergeist", + effect: "O usuário ataca o alvo controlando o item do alvo. O movimento falha se o alvo não tiver um item." + }, + corrosiveGas: { + name: "Corrosive Gas", + effect: "O usuário envolve tudo ao seu redor com gás altamente ácido e derrete os itens que eles seguram." + }, + coaching: { + name: "Coaching", + effect: "O usuário treina adequadamente seus Pokémon aliados, aumentando seus atributos de Ataque e Defesa." + }, + flipTurn: { + name: "Flip Turn", + effect: "Após fazer seu ataque, o usuário corre para trocar de lugar com um Pokémon do grupo à espera." + }, + tripleAxel: { + name: "Triple Axel", + effect: "Um ataque de três chutes consecutivos que se torna mais poderoso a cada acerto bem-sucedido." + }, + dualWingbeat: { + name: "Dual Wingbeat", + effect: "O usuário atinge o alvo com suas asas. O alvo é atingido duas vezes seguidas." + }, + scorchingSands: { + name: "Scorching Sands", + effect: "O usuário joga areia escaldante no alvo para atacar. Isso também pode deixar o alvo queimado." + }, + jungleHealing: { + name: "Jungle Healing", + effect: "O usuário se torna um com a selva, restaurando HP e curando quaisquer condições de status de si mesmo e de seus Pokémon aliados na batalha." + }, + wickedBlow: { + name: "Wicked Blow", + effect: "O usuário, tendo dominado o estilo Sombrio, atinge o alvo com um golpe feroz. Este ataque sempre resulta em um golpe crítico." + }, + surgingStrikes: { + name: "Surging Strikes", + effect: "O usuário, tendo dominado o estilo Água, atinge o alvo com um movimento fluido três vezes seguidas. Este ataque sempre resulta em um golpe crítico." + }, + thunderCage: { + name: "Thunder Cage", + effect: "O usuário prende o alvo em uma gaiola de eletricidade cintilante por quatro ou cinco turnos." + }, + dragonEnergy: { + name: "Dragon Energy", + effect: "Convertendo sua força vital em poder, o usuário ataca os Pokémon adversários. Quanto menor o HP do usuário, menor o poder do movimento." + }, + freezingGlare: { + name: "Freezing Glare", + effect: "O usuário dispara seu poder psíquico dos olhos para atacar. Isso também pode deixar o alvo congelado." + }, + fieryWrath: { + name: "Fiery Wrath", + effect: "O usuário transforma sua ira em uma aura semelhante ao fogo para atacar. Isso também pode fazer os Pokémon adversários hesitarem." + }, + thunderousKick: { + name: "Thunderous Kick", + effect: "O usuário oprime o alvo com movimento semelhante ao relâmpago antes de entregar um chute. Isso também diminui o atributo de Defesa do alvo." + }, + glacialLance: { + name: "Glacial Lance", + effect: "O usuário ataca lançando uma lança de gelo envolta em nevasca nos Pokémon adversários." + }, + astralBarrage: { + name: "Astral Barrage", + effect: "O usuário ataca enviando uma quantidade assustadora de pequenos fantasmas nos Pokémon adversários." + }, + eerieSpell: { + name: "Eerie Spell", + effect: "O usuário ataca com seu tremendo poder psíquico. Isso também remove 3 PP do último movimento usado pelo alvo." + }, + direClaw: { + name: "Dire Claw", + effect: "O usuário ataca o alvo com garras destruidoras. Isso também pode deixar o alvo envenenado, paralisado ou adormecido." + }, + psyshieldBash: { + name: "Psyshield Bash", + effect: "Envoltando-se em energia psíquica, o usuário se choca contra o alvo. Isso também aumenta o atributo de Defesa do usuário." + }, + powerShift: { + name: "Power Shift", + effect: "O usuário troca seus atributos de Ataque e Defesa." + }, + stoneAxe: { + name: "Stone Axe", + effect: "O usuário balança seus machados de pedra no alvo. Fragmentos de pedra deixados para trás por este ataque flutuam ao redor do alvo." + }, + springtideStorm: { + name: "Springtide Storm", + effect: "O usuário ataca envolvendo os Pokémon adversários em ventos ferozes repletos de amor e ódio. Isso também pode diminuir os atributos de Ataque deles." + }, + mysticalPower: { + name: "Mystical Power", + effect: "O usuário ataca emitindo um poder misterioso. Isso também aumenta o atributo de Atq. Esp. do usuário." + }, + ragingFury: { + name: "Raging Fury", + effect: "O usuário se enfurece espalhando chamas por dois ou três turnos. O usuário então fica confuso." + }, + waveCrash: { + name: "Wave Crash", + effect: "O usuário se envolve em água e atinge o alvo com todo o corpo para infligir dano. Isso também causa muito dano ao usuário." + }, + chloroblast: { + name: "Chloroblast", + effect: "O usuário lança sua clorofila acumulada para infligir dano no alvo. Isso também causa dano ao usuário." + }, + mountainGale: { + name: "Mountain Gale", + effect: "O usuário arremessa pedaços gigantes de gelo no alvo para infligir dano. Isso também pode fazer o alvo hesitar." + }, + victoryDance: { + name: "Victory Dance", + effect: "O usuário realiza uma dança intensa para inaugurar a vitória, aumentando seus atributos de Ataque, Defesa e Velocidade." + }, + headlongRush: { + name: "Headlong Rush", + effect: "O usuário se choca contra o alvo em um ataque de corpo inteiro. Isso também diminui os atributos de Defesa e Def. Esp. do usuário." + }, + barbBarrage: { + name: "Barb Barrage", + effect: "O usuário lança inúmeras barbas tóxicas para infligir dano. O poder deste movimento é dobrado se o alvo já estiver envenenado." + }, + esperWing: { + name: "Esper Wing", + effect: "O usuário corta o alvo com asas enriquecidas com aura. Isso também aumenta o atributo de Velocidade do usuário. Este movimento tem uma chance aumentada de causar um golpe crítico." + }, + bitterMalice: { + name: "Bitter Malice", + effect: "O usuário ataca o alvo com um ressentimento arrepiante. Isso também diminui o atributo de Ataque do alvo." + }, + shelter: { + name: "Shelter", + effect: "O usuário torna sua pele tão dura quanto um escudo de ferro, aumentando muito seu atributo de Defesa." + }, + tripleArrows: { + name: "Triple Arrows", + effect: "O usuário chuta e depois dispara três flechas. Este movimento tem uma chance aumentada de causar um golpe crítico e também pode diminuir o atributo de Defesa do alvo ou fazê-lo hesitar." + }, + infernalParade: { + name: "Infernal Parade", + effect: "O usuário ataca com miríades de bolas de fogo. Isso também pode deixar o alvo queimado. O poder deste movimento é dobrado se o alvo tiver uma condição de status." + }, + ceaselessEdge: { + name: "Ceaseless Edge", + effect: "O usuário corta sua lâmina de concha no alvo. Fragmentos de concha deixados para trás por este ataque permanecem espalhados sob o alvo como espinhos." + }, + bleakwindStorm: { + name: "Bleakwind Storm", + effect: "O usuário ataca com ventos selvagemente frios que fazem tanto o corpo quanto o espírito tremerem. Isso também pode diminuir os atributos de Velocidade dos Pokémon adversários." + }, + wildboltStorm: { + name: "Wildbolt Storm", + effect: "O usuário invoca uma tempestade trovejante e ataca selvagemente com relâmpagos e vento. Isso também pode deixar os Pokémon adversários paralisados." + }, + sandsearStorm: { + name: "Sandsear Storm", + effect: "O usuário ataca envolvendo os Pokémon adversários em ventos ferozes e areia escaldante. Isso também pode deixá-los queimados." + }, + lunarBlessing: { + name: "Lunar Blessing", + effect: "O usuário recebe uma bênção do crescente lunar, restaurando HP e curando condições de status para si mesmo e seus Pokémon aliados atualmente na batalha." + }, + takeHeart: { + name: "Take Heart", + effect: "O usuário levanta o espírito, curando suas próprias condições de status e aumentando seus atributos de Atq. Esp. e Def. Esp." + }, + gMaxWildfire: { + name: "G-Max Wildfire", + effect: "Um ataque do tipo Fogo que o Gigantamax Charizard usa. Este movimento continua causando dano aos oponentes por quatro turnos." + }, + gMaxBefuddle: { + name: "G-Max Befuddle", + effect: "Um ataque do tipo Inseto que o Gigantamax Butterfree usa. Este movimento inflige as condições de envenenado, paralisado ou adormecido nos oponentes." + }, + gMaxVoltCrash: { + name: "G-Max Volt Crash", + effect: "Um ataque do tipo Elétrico que o Gigantamax Pikachu usa. Este movimento paralisa os oponentes." + }, + gMaxGoldRush: { + name: "G-Max Gold Rush", + effect: "Um ataque do tipo Normal que o Gigantamax Meowth usa. Este movimento confunde os oponentes e também ganha dinheiro extra." + }, + "gMaxChiStrike": { + name: "G-Max Chi Strike", + effect: "Um ataque do tipo Lutador que Gigantamax Machamp usa. Este movimento aumenta a chance de acertos críticos." + }, + "gMaxTerror": { + name: "G-Max Terror", + effect: "Um ataque do tipo Fantasma que Gigantamax Gengar usa. Este Pokémon pisa na sombra do Pokémon adversário para impedi-lo de escapar." + }, + "gMaxResonance": { + name: "G-Max Resonance", + effect: "Um ataque do tipo Gelo que Gigantamax Lapras usa. Este movimento reduz o dano recebido por cinco turnos." + }, + "gMaxCuddle": { + name: "G-Max Cuddle", + effect: "Um ataque do tipo Normal que Gigantamax Eevee usa. Este movimento apaixona os oponentes." + }, + "gMaxReplenish": { + name: "G-Max Replenish", + effect: "Um ataque do tipo Normal que Gigantamax Snorlax usa. Este movimento restaura Frutas que foram comidas." + }, + "gMaxMalodor": { + name: "G-Max Malodor", + effect: "Um ataque do tipo Veneno que Gigantamax Garbodor usa. Este movimento envenena os oponentes." + }, + "gMaxStonesurge": { + name: "G-Max Stonesurge", + effect: "Um ataque do tipo Água que Gigantamax Drednaw usa. Este movimento espalha pedras afiadas pelo campo." + }, + "gMaxWindRage": { + name: "G-Max Wind Rage", + effect: "Um ataque do tipo Voador que Gigantamax Corviknight usa. Este movimento remove os efeitos de movimentos como Reflect e Light Screen." + }, + "gMaxStunShock": { + name: "G-Max Stun Shock", + effect: "Um ataque do tipo Elétrico que Gigantamax Toxtricity usa. Este movimento envenena ou paralisa os oponentes." + }, + "gMaxFinale": { + name: "G-Max Finale", + effect: "Um ataque do tipo Fada que Gigantamax Alcremie usa. Este movimento cura os PS dos aliados." + }, + "gMaxDepletion": { + name: "G-Max Depletion", + effect: "Um ataque do tipo Dragão que Gigantamax Duraludon usa. Reduz o PP do último movimento usado." + }, + "gMaxGravitas": { + name: "G-Max Gravitas", + effect: "Um ataque do tipo Psíquico que Gigantamax Orbeetle usa. Este movimento muda a gravidade por cinco turnos." + }, + "gMaxVolcalith": { + name: "G-Max Volcalith", + effect: "Um ataque do tipo Pedra que Gigantamax Coalossal usa. Este movimento continua a causar dano aos oponentes por quatro turnos." + }, + "gMaxSandblast": { + name: "G-Max Sandblast", + effect: "Um ataque do tipo Terra que Gigantamax Sandaconda usa. Os oponentes ficam presos em uma tempestade de areia furiosa por quatro a cinco turnos." + }, + "gMaxSnooze": { + name: "G-Max Snooze", + effect: "Um ataque do tipo Sombrio que Gigantamax Grimmsnarl usa. O usuário solta um grande bocejo que faz com que os alvos adormeçam no próximo turno." + }, + "gMaxTartness": { + name: "G-Max Tartness", + effect: "Um ataque do tipo Planta que Gigantamax Flapple usa. Este movimento reduz a evasão dos oponentes." + }, + "gMaxSweetness": { + name: "G-Max Sweetness", + effect: "Um ataque do tipo Planta que Gigantamax Appletun usa. Este movimento cura as condições de status dos aliados." + }, + "gMaxSmite": { + name: "G-Max Smite", + effect: "Um ataque do tipo Fada que Gigantamax Hatterene usa. Este movimento confunde os oponentes." + }, + "gMaxSteelsurge": { + name: "G-Max Steelsurge", + effect: "Um ataque do tipo Aço que Gigantamax Copperajah usa. Este movimento espalha estacas afiadas pelo campo." + }, + "gMaxMeltdown": { + name: "G-Max Meltdown", + effect: "Um ataque do tipo Aço que Gigantamax Melmetal usa. Este movimento impede os oponentes de usar o mesmo movimento duas vezes seguidas." + }, + "gMaxFoamBurst": { + name: "G-Max Foam Burst", + effect: "Um ataque do tipo Água que Gigantamax Kingler usa. Este movimento reduz drasticamente a Velocidade dos oponentes." + }, + "gMaxCentiferno": { + name: "G-Max Centiferno", + effect: "Um ataque do tipo Fogo que Gigantamax Centiskorch usa. Este movimento prende os oponentes em chamas por quatro a cinco turnos." + }, + "gMaxVineLash": { + name: "G-Max Vine Lash", + effect: "Um ataque do tipo Planta que Gigantamax Venusaur usa. Este movimento continua a causar dano aos oponentes por quatro turnos." + }, + "gMaxCannonade": { + name: "G-Max Cannonade", + effect: "Um ataque do tipo Água que Gigantamax Blastoise usa. Este movimento continua a causar dano aos oponentes por quatro turnos." + }, + "gMaxDrumSolo": { + name: "G-Max Drum Solo", + effect: "Um ataque do tipo Planta que Gigantamax Rillaboom usa. Este movimento pode ser usado no alvo independentemente de suas Habilidades." + }, + "gMaxFireball": { + name: "G-Max Fireball", + effect: "Um ataque do tipo Fogo que Gigantamax Cinderace usa. Este movimento pode ser usado no alvo independentemente de suas Habilidades." + }, + "gMaxHydrosnipe": { + name: "G-Max Hydrosnipe", + effect: "Um ataque do tipo Água que Gigantamax Inteleon usa. Este movimento pode ser usado no alvo independentemente de suas Habilidades." + }, + "gMaxOneBlow": { + name: "G-Max One Blow", + effect: "Um ataque do tipo Sombrio que Gigantamax Urshifu usa. Este movimento único pode ignorar o Max Guard." + }, + "gMaxRapidFlow": { + name: "G-Max Rapid Flow", + effect: "Um ataque do tipo Água que Gigantamax Urshifu usa. Este movimento rápido pode ignorar o Max Guard." + }, + "teraBlast": { + name: "Tera Blast", + effect: "Se o usuário estiver Terastalizado, ele libera energia de seu Tera Tipo. Este movimento causa dano usando o maior entre o Ataque ou Ataque Esp. do usuário." + }, + "silkTrap": { + name: "Silk Trap", + effect: "O usuário tece uma armadilha de seda, protegendo-se de dano enquanto reduz o atributo de Velocidade de qualquer atacante que faça contato direto." + }, + "axeKick": { + name: "Axe Kick", + effect: "O usuário ataca chutando para cima e depois abaixando o calcanhar sobre o alvo. Isso também pode confundir o alvo. Se errar, o usuário sofre dano." + }, + "lastRespects": { + name: "Last Respects", + effect: "O usuário ataca para vingar seus aliados. Quanto mais aliados derrotados, maior o poder do movimento." + }, + "luminaCrash": { + name: "Lumina Crash", + effect: "O usuário ataca liberando uma luz peculiar que afeta até a mente. Isso também reduz muito a Defesa Esp. do alvo." + }, + "orderUp": { + name: "Order Up", + effect: "O usuário ataca com elegância. Se o usuário tiver um Tatsugiri na boca, este movimento aumenta uma dos atributos do usuário com base na forma do Tatsugiri." + }, + "jetPunch": { + name: "Jet Punch", + effect: "O usuário convoca um turbilhão ao redor de seu punho e ataca com velocidade cegante. Este movimento sempre age primeiro." + }, + "spicyExtract": { + name: "Spicy Extract", + effect: "O usuário emite um extrato incrivelmente picante, aumentando muito o Ataque do alvo e reduzindo muito a Defesa do alvo." + }, + "spinOut": { + name: "Spin Out", + effect: "O usuário gira furiosamente ao esticar as pernas, causando dano ao alvo. Isso também reduz muito a Velocidade do usuário." + }, + "populationBomb": { + name: "Population Bomb", + effect: "Os companheiros do usuário se reúnem em massa para executar um ataque combinado que atinge o alvo de uma a dez vezes seguidas." + }, + "iceSpinner": { + name: "Ice Spinner", + effect: "O usuário cobre seus pés com gelo fino e gira ao redor, atingindo o alvo. O movimento giratório deste movimento também destrói o terreno." + }, + "glaiveRush": { + name: "Glaive Rush", + effect: "O usuário lança todo o seu corpo em uma carga imprudente. Após o uso deste movimento, ataques contra o usuário não podem errar e infligirão o dobro do dano até a próxima vez que o usuário agir." + }, + "revivalBlessing": { + name: "Revival Blessing", + effect: "O usuário concede uma bênção amorosa, revivendo um Pokémon da equipe que tenha desmaiado e restaurando metade do máximo de PS desse Pokémon." + }, + "saltCure": { + name: "Salt Cure", + effect: "O usuário cura o alvo com sal, causando dano a cada turno. Tipos de Aço e Água são mais fortemente afetados por este movimento." + }, + "tripleDive": { + name: "Triple Dive", + effect: "O usuário executa um mergulho triplo perfeitamente cronometrado, atingindo o alvo com respingos de água três vezes seguidas." + }, + "mortalSpin": { + name: "Mortal Spin", + effect: "O usuário realiza um ataque giratório que também pode eliminar os efeitos de movimentos como Bind, Wrap e Leech Seed. Isso também envenena os Pokémon oponentes." + }, + "doodle": { + name: "Doodle", + effect: "O usuário captura a essência do alvo em um esboço. Isso muda as Habilidades do usuário e de seus Pokémon aliados para a do alvo." + }, + "filletAway": { + name: "Fillet Away", + effect: "O usuário aumenta muito seus atributos de Ataque, Ataque Esp. e Velocidade ao usar seus próprios PS." + }, + "kowtowCleave": { + name: "Kowtow Cleave", + effect: "O usuário corta o alvo depois de se curvar para fazer o alvo baixar a guarda. Este ataque nunca erra." + }, + "flowerTrick": { + name: "Flower Trick", + effect: "O usuário lança um buquê de flores armado no alvo. Este ataque nunca erra e sempre resulta em um golpe crítico." + }, + "torchSong": { + name: "Torch Song", + effect: "O usuário exala chamas furiosas como se estivesse cantando uma canção, queimando o alvo. Isso também aumenta o atributo de Ataque Esp. do usuário." + }, + "aquaStep": { + name: "Aqua Step", + effect: "O usuário brinca com o alvo e o ataca usando passos de dança leves e fluidos. Isso também aumenta a Velocidade do usuário." + }, + "ragingBull": { + name: "Raging Bull", + effect: "O usuário realiza um ataque de investida como um touro enfurecido. O tipo deste movimento depende da forma do usuário. Ele também pode quebrar barreiras, como Light Screen e Reflect." + }, + "makeItRain": { + name: "Make It Rain", + effect: "O usuário ataca lançando uma massa de moedas. Isso também reduz o atributo de Ataque Esp. do usuário. Dinheiro é ganho após a batalha." + }, + "psyblade": { + name: "Psyblade", + effect: "O usuário fende o alvo com uma lâmina etérea. O poder deste movimento é aumentado em 50% se o usuário estiver no Electric Terrain." + }, + "hydroSteam": { + name: "Hydro Steam", + effect: "O usuário ataca o alvo com água fervente. O poder deste movimento não é reduzido sob sol forte, mas sim aumentado em 50%." + }, + "ruination": { + name: "Ruination", + effect: "O usuário invoca um desastre ruinoso. Isso corta os PS do alvo pela metade." + }, + "collisionCourse": { + name: "Collision Course", + effect: "O usuário se transforma e cai no chão, causando uma explosão pré-histórica massiva. O poder deste movimento é aumentado mais do que o usual se for um golpe super eficaz." + }, + "electroDrift": { + name: "Electro Drift", + effect: "O usuário avança a velocidades ultra-rápidas, perfurando o alvo com eletricidade futurista. O poder deste movimento é aumentado mais do que o usual se for um golpe super eficaz." + }, + "shedTail": { + name: "Shed Tail", + effect: "O usuário cria um substituto para si mesmo usando seus próprios PS antes de trocar de lugar com um Pokémon da equipe que está esperando." + }, + "chillyReception": { + name: "Chilly Reception", + effect: "O usuário conta uma piada terrivelmente ruim antes de trocar de lugar com um Pokémon da equipe que está esperando. Isso invoca uma nevasca que dura cinco turnos." + }, + "tidyUp": { + name: "Tidy Up", + effect: "O usuário arruma e remove os efeitos de Spikes, Stealth Rock, Sticky Web, Toxic Spikes e Substitute. Isso também aumenta os atributos de Ataque e Velocidade do usuário." + }, + "snowscape": { + name: "Snowscape", + effect: "O usuário invoca uma tempestade de neve que dura cinco turnos. Isso aumenta os atributos de Defesa dos tipos Gelo." + }, + "pounce": { + name: "Pounce", + effect: "O usuário ataca saltando sobre o alvo. Isso também reduz a Velocidade do alvo." + }, + "trailblaze": { + name: "Trailblaze", + effect: "O usuário ataca repentinamente como se estivesse saltando de dentro da grama alta. A agilidade do usuário aumenta sua Velocidade." + }, + "chillingWater": { + name: "Chilling Water", + effect: "O usuário ataca o alvo derramando sobre ele água tão fria que suga seu poder. Isso também reduz o atributo de Ataque do alvo." + }, + "hyperDrill": { + name: "Hyper Drill", + effect: "O usuário gira a parte pontiaguda de seu corpo em alta velocidade para perfurar o alvo. Este ataque pode atingir um alvo que esteja usando um movimento como Protect ou Detect." + }, + "twinBeam": { + name: "Twin Beam", + effect: "O usuário dispara feixes místicos de seus olhos para causar dano. O alvo é atingido duas vezes seguidas." + }, + "rageFist": { + name: "Rage Fist", + effect: "O usuário converte sua raiva em energia para atacar. Quanto mais vezes o usuário foi atingido por ataques, maior o poder do movimento." + }, + "armorCannon": { + name: "Armor Cannon", + effect: "O usuário dispara sua própria armadura como projéteis ardentes. Isso também reduz os atributos de Defesa e Defesa Esp. do usuário." + }, + "bitterBlade": { + name: "Bitter Blade", + effect: "O usuário concentra seus sentimentos amargos em relação ao mundo dos vivos em um ataque cortante. Os PS do usuário são restaurados em até metade do dano causado ao alvo." + }, + "doubleShock": { + name: "Double Shock", + effect: "O usuário descarrega toda a eletricidade de seu corpo para executar um ataque de alto dano. Após usar este movimento, o usuário não será mais do tipo Elétrico." + }, + "gigatonHammer": { + name: "Gigaton Hammer", + effect: "O usuário balança todo o seu corpo para atacar com seu enorme martelo. Este movimento não pode ser usado duas vezes seguidas." + }, + "comeuppance": { + name: "Comeuppance", + effect: "O usuário retalia com muito mais força contra o oponente que causou o último dano a ele." + }, + "aquaCutter": { + name: "Aqua Cutter", + effect: "O usuário expele água pressurizada para cortar o alvo como uma lâmina. Este movimento tem uma chance aumentada de resultar em um golpe crítico." + }, + "blazingTorque": { + name: "Blazing Torque", + effect: "O usuário acelera seu motor ardente no alvo. Isso também pode deixar o alvo queimado." + }, + "wickedTorque": { + name: "Wicked Torque", + effect: "O usuário acelera seu motor no alvo com intenção maliciosa. Isso pode fazer o alvo adormecer." + }, + "noxiousTorque": { + name: "Noxious Torque", + effect: "O usuário acelera seu motor venenoso no alvo. Isso também pode envenenar o alvo." + }, + "combatTorque": { + name: "Combat Torque", + effect: "O usuário acelera seu motor com força no alvo. Isso também pode deixar o alvo paralisado." + }, + "magicalTorque": { + name: "Magical Torque", + effect: "O usuário acelera seu motor de fadas no alvo. Isso também pode confundir o alvo." + }, + "bloodMoon": { + name: "Blood Moon", + effect: "O usuário libera toda a força de seu espírito de uma lua cheia que brilha tão vermelha quanto o sangue. Este movimento não pode ser usado duas vezes seguidas." + }, + "matchaGotcha": { + name: "Matcha Gotcha", + effect: "O usuário dispara um jato de chá que misturou. Os PS do usuário são restaurados em até metade do dano causado ao alvo. Isso também pode deixar o alvo queimado." + }, + "syrupBomb": { + name: "Syrup Bomb", + effect: "O usuário detona uma explosão de xarope de doces pegajoso, que reveste o alvo e faz o atributo de Velocidade do alvo cair a cada turno por três turnos." + }, + "ivyCudgel": { + name: "Ivy Cudgel", + effect: "O usuário golpeia com um porrete envolto em hera. O tipo deste movimento muda dependendo da máscara usada pelo usuário, e tem uma chance aumentada de resultar em um golpe crítico." + }, + "electroShot": { + name: "Electro Shot", + effect: "O usuário acumula eletricidade no primeiro turno, aumentando suo atributo de Ataque Esp., e então dispara um tiro de alta voltagem no próximo turno. O tiro será disparado imediatamente na chuva." + }, + "teraStarstorm": { + name: "Tera Starstorm", + effect: "Com o poder de seus cristais, o usuário bombardeia e elimina o alvo. Quando usado por Terapagos em sua Forma Estelar, este movimento causa dano a todos os Pokémon oponentes." + }, + "fickleBeam": { + name: "Fickle Beam", + effect: "O usuário dispara um feixe de luz para causar dano. Às vezes, todas as cabeças do usuário disparam feixes ao mesmo tempo, dobrando o poder do movimento." + }, + "burningBulwark": { + name: "Burning Bulwark", + effect: "A pele intensamente quente do usuário o protege de ataques e também queima qualquer atacante que faça contato direto." + }, + "thunderclap": { + name: "Thunderclap", + effect: "Este movimento permite que o usuário ataque primeiro com um choque de eletricidade. Este movimento falha se o alvo não estiver preparando um ataque." + }, + "mightyCleave": { + name: "Mighty Cleave", + effect: "O usuário empunha a luz que se acumulou no topo de sua cabeça para cortar o alvo. Este movimento atinge mesmo se o alvo se proteger." + }, + "tachyonCutter": { + name: "Tachyon Cutter", + effect: "O usuário ataca lançando lâminas de partículas no alvo duas vezes seguidas. Este ataque nunca erra." + }, + "hardPress": { + name: "Hard Press", + effect: "O alvo é esmagado com um braço, uma garra ou algo do tipo para causar dano. Quanto mais PS o alvo tiver, maior o poder do movimento." + }, + "dragonCheer": { + name: "Dragon Cheer", + effect: "O usuário eleva o moral de seus aliados com um grito dracônico, para que seus futuros ataques tenham uma chance aumentada de resultar em golpes críticos. Isso anima mais os tipos Dragão." + }, + "alluringVoice": { + name: "Alluring Voice", + effect: "O usuário ataca o alvo usando sua voz angelical. Isso também confunde o alvo se seus atributos tiverem sido aumentadas durante o turno." + }, + "temperFlare": { + name: "Temper Flare", + effect: "Impulsionado pelo desespero, o usuário ataca o alvo. O poder deste movimento é dobrado se o movimento anterior do usuário tiver falhado." + }, + "supercellSlam": { + name: "Supercell Slam", + effect: "O usuário eletrifica seu corpo e cai sobre o alvo para causar dano. Se este movimento errar, o usuário sofre dano." + }, + "psychicNoise": { + name: "Psychic Noise", + effect: "O usuário ataca o alvo com ondas sonoras desagradáveis. Por dois turnos, o alvo é impedido de recuperar PS através de movimentos, Habilidades ou itens mantidos." + }, + "upperHand": { + name: "Upper Hand", + effect: "O usuário reage ao movimento do alvo e o ataca com o calcanhar da palma da mão, fazendo o alvo hesitar. Este movimento falha se o alvo não estiver preparando um movimento de prioridade." + }, + "malignantChain": { + name: "Malignant Chain", + effect: "O usuário derrama toxinas no alvo envolvendo-o em uma corrente tóxica e corrosiva. Isso também pode deixar o alvo seriamente envenenado." + } +} as const; \ No newline at end of file diff --git a/src/locales/pt_BR/nature.ts b/src/locales/pt_BR/nature.ts new file mode 100644 index 000000000..b78168f13 --- /dev/null +++ b/src/locales/pt_BR/nature.ts @@ -0,0 +1,29 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +export const nature: SimpleTranslationEntries = { + "Hardy": "Destemida", + "Lonely": "Solitária", + "Brave": "Valente", + "Adamant": "Rígida", + "Naughty": "Teimosa", + "Bold": "Corajosa", + "Docile": "Dócil", + "Relaxed": "Descontraída", + "Impish": "Inquieta", + "Lax": "Relaxada", + "Timid": "Tímida", + "Hasty": "Apressada", + "Serious": "Séria", + "Jolly": "Alegre", + "Naive": "Ingênua", + "Modest": "Modesta", + "Mild": "Mansa", + "Quiet": "Quieta", + "Bashful": "Atrapalhada", + "Rash": "Imprudente", + "Calm": "Calma", + "Gentle": "Gentil", + "Sassy": "Atrevida", + "Careful": "Cuidadosa", + "Quirky": "Peculiar", +} as const; \ No newline at end of file diff --git a/src/locales/pt_BR/pokeball.ts b/src/locales/pt_BR/pokeball.ts new file mode 100644 index 000000000..26624d871 --- /dev/null +++ b/src/locales/pt_BR/pokeball.ts @@ -0,0 +1,10 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +export const pokeball: SimpleTranslationEntries = { + "pokeBall": "Poké Bola", + "greatBall": "Grande Bola", + "ultraBall": "Ultra Bola", + "rogueBall": "Rogue Bola", + "masterBall": "Master Bola", + "luxuryBall": "Bola de Luxo", +} as const; \ No newline at end of file diff --git a/src/locales/pt_BR/pokemon-stat.ts b/src/locales/pt_BR/pokemon-stat.ts new file mode 100644 index 000000000..5f5e2c235 --- /dev/null +++ b/src/locales/pt_BR/pokemon-stat.ts @@ -0,0 +1,16 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +export const pokemonStat: SimpleTranslationEntries = { + "HP": "PS", + "HPshortened": "PS", + "ATK": "Ataque", + "ATKshortened": "Ata", + "DEF": "Defesa", + "DEFshortened": "Def", + "SPATK": "At. Esp.", + "SPATKshortened": "AtEsp", + "SPDEF": "Def. Esp.", + "SPDEFshortened": "DefEsp", + "SPD": "Veloc.", + "SPDshortened": "Veloc." +} as const; \ No newline at end of file diff --git a/src/locales/pt_BR/pokemon.ts b/src/locales/pt_BR/pokemon.ts new file mode 100644 index 000000000..e94d37aef --- /dev/null +++ b/src/locales/pt_BR/pokemon.ts @@ -0,0 +1,1086 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +export const pokemon: SimpleTranslationEntries = { + "bulbasaur": "Bulbasaur", + "ivysaur": "Ivysaur", + "venusaur": "Venusaur", + "charmander": "Charmander", + "charmeleon": "Charmeleon", + "charizard": "Charizard", + "squirtle": "Squirtle", + "wartortle": "Wartortle", + "blastoise": "Blastoise", + "caterpie": "Caterpie", + "metapod": "Metapod", + "butterfree": "Butterfree", + "weedle": "Weedle", + "kakuna": "Kakuna", + "beedrill": "Beedrill", + "pidgey": "Pidgey", + "pidgeotto": "Pidgeotto", + "pidgeot": "Pidgeot", + "rattata": "Rattata", + "raticate": "Raticate", + "spearow": "Spearow", + "fearow": "Fearow", + "ekans": "Ekans", + "arbok": "Arbok", + "pikachu": "Pikachu", + "raichu": "Raichu", + "sandshrew": "Sandshrew", + "sandslash": "Sandslash", + "nidoran_f": "Nidoran♀", + "nidorina": "Nidorina", + "nidoqueen": "Nidoqueen", + "nidoran_m": "Nidoran♂", + "nidorino": "Nidorino", + "nidoking": "Nidoking", + "clefairy": "Clefairy", + "clefable": "Clefable", + "vulpix": "Vulpix", + "ninetales": "Ninetales", + "jigglypuff": "Jigglypuff", + "wigglytuff": "Wigglytuff", + "zubat": "Zubat", + "golbat": "Golbat", + "oddish": "Oddish", + "gloom": "Gloom", + "vileplume": "Vileplume", + "paras": "Paras", + "parasect": "Parasect", + "venonat": "Venonat", + "venomoth": "Venomoth", + "diglett": "Diglett", + "dugtrio": "Dugtrio", + "meowth": "Meowth", + "persian": "Persian", + "psyduck": "Psyduck", + "golduck": "Golduck", + "mankey": "Mankey", + "primeape": "Primeape", + "growlithe": "Growlithe", + "arcanine": "Arcanine", + "poliwag": "Poliwag", + "poliwhirl": "Poliwhirl", + "poliwrath": "Poliwrath", + "abra": "Abra", + "kadabra": "Kadabra", + "alakazam": "Alakazam", + "machop": "Machop", + "machoke": "Machoke", + "machamp": "Machamp", + "bellsprout": "Bellsprout", + "weepinbell": "Weepinbell", + "victreebel": "Victreebel", + "tentacool": "Tentacool", + "tentacruel": "Tentacruel", + "geodude": "Geodude", + "graveler": "Graveler", + "golem": "Golem", + "ponyta": "Ponyta", + "rapidash": "Rapidash", + "slowpoke": "Slowpoke", + "slowbro": "Slowbro", + "magnemite": "Magnemite", + "magneton": "Magneton", + "farfetchd": "Farfetch'd", + "doduo": "Doduo", + "dodrio": "Dodrio", + "seel": "Seel", + "dewgong": "Dewgong", + "grimer": "Grimer", + "muk": "Muk", + "shellder": "Shellder", + "cloyster": "Cloyster", + "gastly": "Gastly", + "haunter": "Haunter", + "gengar": "Gengar", + "onix": "Onix", + "drowzee": "Drowzee", + "hypno": "Hypno", + "krabby": "Krabby", + "kingler": "Kingler", + "voltorb": "Voltorb", + "electrode": "Electrode", + "exeggcute": "Exeggcute", + "exeggutor": "Exeggutor", + "cubone": "Cubone", + "marowak": "Marowak", + "hitmonlee": "Hitmonlee", + "hitmonchan": "Hitmonchan", + "lickitung": "Lickitung", + "koffing": "Koffing", + "weezing": "Weezing", + "rhyhorn": "Rhyhorn", + "rhydon": "Rhydon", + "chansey": "Chansey", + "tangela": "Tangela", + "kangaskhan": "Kangaskhan", + "horsea": "Horsea", + "seadra": "Seadra", + "goldeen": "Goldeen", + "seaking": "Seaking", + "staryu": "Staryu", + "starmie": "Starmie", + "mr_mime": "Mr. Mime", + "scyther": "Scyther", + "jynx": "Jynx", + "electabuzz": "Electabuzz", + "magmar": "Magmar", + "pinsir": "Pinsir", + "tauros": "Tauros", + "magikarp": "Magikarp", + "gyarados": "Gyarados", + "lapras": "Lapras", + "ditto": "Ditto", + "eevee": "Eevee", + "vaporeon": "Vaporeon", + "jolteon": "Jolteon", + "flareon": "Flareon", + "porygon": "Porygon", + "omanyte": "Omanyte", + "omastar": "Omastar", + "kabuto": "Kabuto", + "kabutops": "Kabutops", + "aerodactyl": "Aerodactyl", + "snorlax": "Snorlax", + "articuno": "Articuno", + "zapdos": "Zapdos", + "moltres": "Moltres", + "dratini": "Dratini", + "dragonair": "Dragonair", + "dragonite": "Dragonite", + "mewtwo": "Mewtwo", + "mew": "Mew", + "chikorita": "Chikorita", + "bayleef": "Bayleef", + "meganium": "Meganium", + "cyndaquil": "Cyndaquil", + "quilava": "Quilava", + "typhlosion": "Typhlosion", + "totodile": "Totodile", + "croconaw": "Croconaw", + "feraligatr": "Feraligatr", + "sentret": "Sentret", + "furret": "Furret", + "hoothoot": "Hoothoot", + "noctowl": "Noctowl", + "ledyba": "Ledyba", + "ledian": "Ledian", + "spinarak": "Spinarak", + "ariados": "Ariados", + "crobat": "Crobat", + "chinchou": "Chinchou", + "lanturn": "Lanturn", + "pichu": "Pichu", + "cleffa": "Cleffa", + "igglybuff": "Igglybuff", + "togepi": "Togepi", + "togetic": "Togetic", + "natu": "Natu", + "xatu": "Xatu", + "mareep": "Mareep", + "flaaffy": "Flaaffy", + "ampharos": "Ampharos", + "bellossom": "Bellossom", + "marill": "Marill", + "azumarill": "Azumarill", + "sudowoodo": "Sudowoodo", + "politoed": "Politoed", + "hoppip": "Hoppip", + "skiploom": "Skiploom", + "jumpluff": "Jumpluff", + "aipom": "Aipom", + "sunkern": "Sunkern", + "sunflora": "Sunflora", + "yanma": "Yanma", + "wooper": "Wooper", + "quagsire": "Quagsire", + "espeon": "Espeon", + "umbreon": "Umbreon", + "murkrow": "Murkrow", + "slowking": "Slowking", + "misdreavus": "Misdreavus", + "unown": "Unown", + "wobbuffet": "Wobbuffet", + "girafarig": "Girafarig", + "pineco": "Pineco", + "forretress": "Forretress", + "dunsparce": "Dunsparce", + "gligar": "Gligar", + "steelix": "Steelix", + "snubbull": "Snubbull", + "granbull": "Granbull", + "qwilfish": "Qwilfish", + "scizor": "Scizor", + "shuckle": "Shuckle", + "heracross": "Heracross", + "sneasel": "Sneasel", + "teddiursa": "Teddiursa", + "ursaring": "Ursaring", + "slugma": "Slugma", + "magcargo": "Magcargo", + "swinub": "Swinub", + "piloswine": "Piloswine", + "corsola": "Corsola", + "remoraid": "Remoraid", + "octillery": "Octillery", + "delibird": "Delibird", + "mantine": "Mantine", + "skarmory": "Skarmory", + "houndour": "Houndour", + "houndoom": "Houndoom", + "kingdra": "Kingdra", + "phanpy": "Phanpy", + "donphan": "Donphan", + "porygon2": "Porygon2", + "stantler": "Stantler", + "smeargle": "Smeargle", + "tyrogue": "Tyrogue", + "hitmontop": "Hitmontop", + "smoochum": "Smoochum", + "elekid": "Elekid", + "magby": "Magby", + "miltank": "Miltank", + "blissey": "Blissey", + "raikou": "Raikou", + "entei": "Entei", + "suicune": "Suicune", + "larvitar": "Larvitar", + "pupitar": "Pupitar", + "tyranitar": "Tyranitar", + "lugia": "Lugia", + "ho_oh": "Ho-Oh", + "celebi": "Celebi", + "treecko": "Treecko", + "grovyle": "Grovyle", + "sceptile": "Sceptile", + "torchic": "Torchic", + "combusken": "Combusken", + "blaziken": "Blaziken", + "mudkip": "Mudkip", + "marshtomp": "Marshtomp", + "swampert": "Swampert", + "poochyena": "Poochyena", + "mightyena": "Mightyena", + "zigzagoon": "Zigzagoon", + "linoone": "Linoone", + "wurmple": "Wurmple", + "silcoon": "Silcoon", + "beautifly": "Beautifly", + "cascoon": "Cascoon", + "dustox": "Dustox", + "lotad": "Lotad", + "lombre": "Lombre", + "ludicolo": "Ludicolo", + "seedot": "Seedot", + "nuzleaf": "Nuzleaf", + "shiftry": "Shiftry", + "taillow": "Taillow", + "swellow": "Swellow", + "wingull": "Wingull", + "pelipper": "Pelipper", + "ralts": "Ralts", + "kirlia": "Kirlia", + "gardevoir": "Gardevoir", + "surskit": "Surskit", + "masquerain": "Masquerain", + "shroomish": "Shroomish", + "breloom": "Breloom", + "slakoth": "Slakoth", + "vigoroth": "Vigoroth", + "slaking": "Slaking", + "nincada": "Nincada", + "ninjask": "Ninjask", + "shedinja": "Shedinja", + "whismur": "Whismur", + "loudred": "Loudred", + "exploud": "Exploud", + "makuhita": "Makuhita", + "hariyama": "Hariyama", + "azurill": "Azurill", + "nosepass": "Nosepass", + "skitty": "Skitty", + "delcatty": "Delcatty", + "sableye": "Sableye", + "mawile": "Mawile", + "aron": "Aron", + "lairon": "Lairon", + "aggron": "Aggron", + "meditite": "Meditite", + "medicham": "Medicham", + "electrike": "Electrike", + "manectric": "Manectric", + "plusle": "Plusle", + "minun": "Minun", + "volbeat": "Volbeat", + "illumise": "Illumise", + "roselia": "Roselia", + "gulpin": "Gulpin", + "swalot": "Swalot", + "carvanha": "Carvanha", + "sharpedo": "Sharpedo", + "wailmer": "Wailmer", + "wailord": "Wailord", + "numel": "Numel", + "camerupt": "Camerupt", + "torkoal": "Torkoal", + "spoink": "Spoink", + "grumpig": "Grumpig", + "spinda": "Spinda", + "trapinch": "Trapinch", + "vibrava": "Vibrava", + "flygon": "Flygon", + "cacnea": "Cacnea", + "cacturne": "Cacturne", + "swablu": "Swablu", + "altaria": "Altaria", + "zangoose": "Zangoose", + "seviper": "Seviper", + "lunatone": "Lunatone", + "solrock": "Solrock", + "barboach": "Barboach", + "whiscash": "Whiscash", + "corphish": "Corphish", + "crawdaunt": "Crawdaunt", + "baltoy": "Baltoy", + "claydol": "Claydol", + "lileep": "Lileep", + "cradily": "Cradily", + "anorith": "Anorith", + "armaldo": "Armaldo", + "feebas": "Feebas", + "milotic": "Milotic", + "castform": "Castform", + "kecleon": "Kecleon", + "shuppet": "Shuppet", + "banette": "Banette", + "duskull": "Duskull", + "dusclops": "Dusclops", + "tropius": "Tropius", + "chimecho": "Chimecho", + "absol": "Absol", + "wynaut": "Wynaut", + "snorunt": "Snorunt", + "glalie": "Glalie", + "spheal": "Spheal", + "sealeo": "Sealeo", + "walrein": "Walrein", + "clamperl": "Clamperl", + "huntail": "Huntail", + "gorebyss": "Gorebyss", + "relicanth": "Relicanth", + "luvdisc": "Luvdisc", + "bagon": "Bagon", + "shelgon": "Shelgon", + "salamence": "Salamence", + "beldum": "Beldum", + "metang": "Metang", + "metagross": "Metagross", + "regirock": "Regirock", + "regice": "Regice", + "registeel": "Registeel", + "latias": "Latias", + "latios": "Latios", + "kyogre": "Kyogre", + "groudon": "Groudon", + "rayquaza": "Rayquaza", + "jirachi": "Jirachi", + "deoxys": "Deoxys", + "turtwig": "Turtwig", + "grotle": "Grotle", + "torterra": "Torterra", + "chimchar": "Chimchar", + "monferno": "Monferno", + "infernape": "Infernape", + "piplup": "Piplup", + "prinplup": "Prinplup", + "empoleon": "Empoleon", + "starly": "Starly", + "staravia": "Staravia", + "staraptor": "Staraptor", + "bidoof": "Bidoof", + "bibarel": "Bibarel", + "kricketot": "Kricketot", + "kricketune": "Kricketune", + "shinx": "Shinx", + "luxio": "Luxio", + "luxray": "Luxray", + "budew": "Budew", + "roserade": "Roserade", + "cranidos": "Cranidos", + "rampardos": "Rampardos", + "shieldon": "Shieldon", + "bastiodon": "Bastiodon", + "burmy": "Burmy", + "wormadam": "Wormadam", + "mothim": "Mothim", + "combee": "Combee", + "vespiquen": "Vespiquen", + "pachirisu": "Pachirisu", + "buizel": "Buizel", + "floatzel": "Floatzel", + "cherubi": "Cherubi", + "cherrim": "Cherrim", + "shellos": "Shellos", + "gastrodon": "Gastrodon", + "ambipom": "Ambipom", + "drifloon": "Drifloon", + "drifblim": "Drifblim", + "buneary": "Buneary", + "lopunny": "Lopunny", + "mismagius": "Mismagius", + "honchkrow": "Honchkrow", + "glameow": "Glameow", + "purugly": "Purugly", + "chingling": "Chingling", + "stunky": "Stunky", + "skuntank": "Skuntank", + "bronzor": "Bronzor", + "bronzong": "Bronzong", + "bonsly": "Bonsly", + "mime_jr": "Mime Jr.", + "happiny": "Happiny", + "chatot": "Chatot", + "spiritomb": "Spiritomb", + "gible": "Gible", + "gabite": "Gabite", + "garchomp": "Garchomp", + "munchlax": "Munchlax", + "riolu": "Riolu", + "lucario": "Lucario", + "hippopotas": "Hippopotas", + "hippowdon": "Hippowdon", + "skorupi": "Skorupi", + "drapion": "Drapion", + "croagunk": "Croagunk", + "toxicroak": "Toxicroak", + "carnivine": "Carnivine", + "finneon": "Finneon", + "lumineon": "Lumineon", + "mantyke": "Mantyke", + "snover": "Snover", + "abomasnow": "Abomasnow", + "weavile": "Weavile", + "magnezone": "Magnezone", + "lickilicky": "Lickilicky", + "rhyperior": "Rhyperior", + "tangrowth": "Tangrowth", + "electivire": "Electivire", + "magmortar": "Magmortar", + "togekiss": "Togekiss", + "yanmega": "Yanmega", + "leafeon": "Leafeon", + "glaceon": "Glaceon", + "gliscor": "Gliscor", + "mamoswine": "Mamoswine", + "porygon_z": "Porygon-Z", + "gallade": "Gallade", + "probopass": "Probopass", + "dusknoir": "Dusknoir", + "froslass": "Froslass", + "rotom": "Rotom", + "uxie": "Uxie", + "mesprit": "Mesprit", + "azelf": "Azelf", + "dialga": "Dialga", + "palkia": "Palkia", + "heatran": "Heatran", + "regigigas": "Regigigas", + "giratina": "Giratina", + "cresselia": "Cresselia", + "phione": "Phione", + "manaphy": "Manaphy", + "darkrai": "Darkrai", + "shaymin": "Shaymin", + "arceus": "Arceus", + "victini": "Victini", + "snivy": "Snivy", + "servine": "Servine", + "serperior": "Serperior", + "tepig": "Tepig", + "pignite": "Pignite", + "emboar": "Emboar", + "oshawott": "Oshawott", + "dewott": "Dewott", + "samurott": "Samurott", + "patrat": "Patrat", + "watchog": "Watchog", + "lillipup": "Lillipup", + "herdier": "Herdier", + "stoutland": "Stoutland", + "purrloin": "Purrloin", + "liepard": "Liepard", + "pansage": "Pansage", + "simisage": "Simisage", + "pansear": "Pansear", + "simisear": "Simisear", + "panpour": "Panpour", + "simipour": "Simipour", + "munna": "Munna", + "musharna": "Musharna", + "pidove": "Pidove", + "tranquill": "Tranquill", + "unfezant": "Unfezant", + "blitzle": "Blitzle", + "zebstrika": "Zebstrika", + "roggenrola": "Roggenrola", + "boldore": "Boldore", + "gigalith": "Gigalith", + "woobat": "Woobat", + "swoobat": "Swoobat", + "drilbur": "Drilbur", + "excadrill": "Excadrill", + "audino": "Audino", + "timburr": "Timburr", + "gurdurr": "Gurdurr", + "conkeldurr": "Conkeldurr", + "tympole": "Tympole", + "palpitoad": "Palpitoad", + "seismitoad": "Seismitoad", + "throh": "Throh", + "sawk": "Sawk", + "sewaddle": "Sewaddle", + "swadloon": "Swadloon", + "leavanny": "Leavanny", + "venipede": "Venipede", + "whirlipede": "Whirlipede", + "scolipede": "Scolipede", + "cottonee": "Cottonee", + "whimsicott": "Whimsicott", + "petilil": "Petilil", + "lilligant": "Lilligant", + "basculin": "Basculin", + "sandile": "Sandile", + "krokorok": "Krokorok", + "krookodile": "Krookodile", + "darumaka": "Darumaka", + "darmanitan": "Darmanitan", + "maractus": "Maractus", + "dwebble": "Dwebble", + "crustle": "Crustle", + "scraggy": "Scraggy", + "scrafty": "Scrafty", + "sigilyph": "Sigilyph", + "yamask": "Yamask", + "cofagrigus": "Cofagrigus", + "tirtouga": "Tirtouga", + "carracosta": "Carracosta", + "archen": "Archen", + "archeops": "Archeops", + "trubbish": "Trubbish", + "garbodor": "Garbodor", + "zorua": "Zorua", + "zoroark": "Zoroark", + "minccino": "Minccino", + "cinccino": "Cinccino", + "gothita": "Gothita", + "gothorita": "Gothorita", + "gothitelle": "Gothitelle", + "solosis": "Solosis", + "duosion": "Duosion", + "reuniclus": "Reuniclus", + "ducklett": "Ducklett", + "swanna": "Swanna", + "vanillite": "Vanillite", + "vanillish": "Vanillish", + "vanilluxe": "Vanilluxe", + "deerling": "Deerling", + "sawsbuck": "Sawsbuck", + "emolga": "Emolga", + "karrablast": "Karrablast", + "escavalier": "Escavalier", + "foongus": "Foongus", + "amoonguss": "Amoonguss", + "frillish": "Frillish", + "jellicent": "Jellicent", + "alomomola": "Alomomola", + "joltik": "Joltik", + "galvantula": "Galvantula", + "ferroseed": "Ferroseed", + "ferrothorn": "Ferrothorn", + "klink": "Klink", + "klang": "Klang", + "klinklang": "Klinklang", + "tynamo": "Tynamo", + "eelektrik": "Eelektrik", + "eelektross": "Eelektross", + "elgyem": "Elgyem", + "beheeyem": "Beheeyem", + "litwick": "Litwick", + "lampent": "Lampent", + "chandelure": "Chandelure", + "axew": "Axew", + "fraxure": "Fraxure", + "haxorus": "Haxorus", + "cubchoo": "Cubchoo", + "beartic": "Beartic", + "cryogonal": "Cryogonal", + "shelmet": "Shelmet", + "accelgor": "Accelgor", + "stunfisk": "Stunfisk", + "mienfoo": "Mienfoo", + "mienshao": "Mienshao", + "druddigon": "Druddigon", + "golett": "Golett", + "golurk": "Golurk", + "pawniard": "Pawniard", + "bisharp": "Bisharp", + "bouffalant": "Bouffalant", + "rufflet": "Rufflet", + "braviary": "Braviary", + "vullaby": "Vullaby", + "mandibuzz": "Mandibuzz", + "heatmor": "Heatmor", + "durant": "Durant", + "deino": "Deino", + "zweilous": "Zweilous", + "hydreigon": "Hydreigon", + "larvesta": "Larvesta", + "volcarona": "Volcarona", + "cobalion": "Cobalion", + "terrakion": "Terrakion", + "virizion": "Virizion", + "tornadus": "Tornadus", + "thundurus": "Thundurus", + "reshiram": "Reshiram", + "zekrom": "Zekrom", + "landorus": "Landorus", + "kyurem": "Kyurem", + "keldeo": "Keldeo", + "meloetta": "Meloetta", + "genesect": "Genesect", + "chespin": "Chespin", + "quilladin": "Quilladin", + "chesnaught": "Chesnaught", + "fennekin": "Fennekin", + "braixen": "Braixen", + "delphox": "Delphox", + "froakie": "Froakie", + "frogadier": "Frogadier", + "greninja": "Greninja", + "bunnelby": "Bunnelby", + "diggersby": "Diggersby", + "fletchling": "Fletchling", + "fletchinder": "Fletchinder", + "talonflame": "Talonflame", + "scatterbug": "Scatterbug", + "spewpa": "Spewpa", + "vivillon": "Vivillon", + "litleo": "Litleo", + "pyroar": "Pyroar", + "flabebe": "Flabébé", + "floette": "Floette", + "florges": "Florges", + "skiddo": "Skiddo", + "gogoat": "Gogoat", + "pancham": "Pancham", + "pangoro": "Pangoro", + "furfrou": "Furfrou", + "espurr": "Espurr", + "meowstic": "Meowstic", + "honedge": "Honedge", + "doublade": "Doublade", + "aegislash": "Aegislash", + "spritzee": "Spritzee", + "aromatisse": "Aromatisse", + "swirlix": "Swirlix", + "slurpuff": "Slurpuff", + "inkay": "Inkay", + "malamar": "Malamar", + "binacle": "Binacle", + "barbaracle": "Barbaracle", + "skrelp": "Skrelp", + "dragalge": "Dragalge", + "clauncher": "Clauncher", + "clawitzer": "Clawitzer", + "helioptile": "Helioptile", + "heliolisk": "Heliolisk", + "tyrunt": "Tyrunt", + "tyrantrum": "Tyrantrum", + "amaura": "Amaura", + "aurorus": "Aurorus", + "sylveon": "Sylveon", + "hawlucha": "Hawlucha", + "dedenne": "Dedenne", + "carbink": "Carbink", + "goomy": "Goomy", + "sliggoo": "Sliggoo", + "goodra": "Goodra", + "klefki": "Klefki", + "phantump": "Phantump", + "trevenant": "Trevenant", + "pumpkaboo": "Pumpkaboo", + "gourgeist": "Gourgeist", + "bergmite": "Bergmite", + "avalugg": "Avalugg", + "noibat": "Noibat", + "noivern": "Noivern", + "xerneas": "Xerneas", + "yveltal": "Yveltal", + "zygarde": "Zygarde", + "diancie": "Diancie", + "hoopa": "Hoopa", + "volcanion": "Volcanion", + "rowlet": "Rowlet", + "dartrix": "Dartrix", + "decidueye": "Decidueye", + "litten": "Litten", + "torracat": "Torracat", + "incineroar": "Incineroar", + "popplio": "Popplio", + "brionne": "Brionne", + "primarina": "Primarina", + "pikipek": "Pikipek", + "trumbeak": "Trumbeak", + "toucannon": "Toucannon", + "yungoos": "Yungoos", + "gumshoos": "Gumshoos", + "grubbin": "Grubbin", + "charjabug": "Charjabug", + "vikavolt": "Vikavolt", + "crabrawler": "Crabrawler", + "crabominable": "Crabominable", + "oricorio": "Oricorio", + "cutiefly": "Cutiefly", + "ribombee": "Ribombee", + "rockruff": "Rockruff", + "lycanroc": "Lycanroc", + "wishiwashi": "Wishiwashi", + "mareanie": "Mareanie", + "toxapex": "Toxapex", + "mudbray": "Mudbray", + "mudsdale": "Mudsdale", + "dewpider": "Dewpider", + "araquanid": "Araquanid", + "fomantis": "Fomantis", + "lurantis": "Lurantis", + "morelull": "Morelull", + "shiinotic": "Shiinotic", + "salandit": "Salandit", + "salazzle": "Salazzle", + "stufful": "Stufful", + "bewear": "Bewear", + "bounsweet": "Bounsweet", + "steenee": "Steenee", + "tsareena": "Tsareena", + "comfey": "Comfey", + "oranguru": "Oranguru", + "passimian": "Passimian", + "wimpod": "Wimpod", + "golisopod": "Golisopod", + "sandygast": "Sandygast", + "palossand": "Palossand", + "pyukumuku": "Pyukumuku", + "type_null": "Tipo Nulo", + "silvally": "Silvally", + "minior": "Minior", + "komala": "Komala", + "turtonator": "Turtonator", + "togedemaru": "Togedemaru", + "mimikyu": "Mimikyu", + "bruxish": "Bruxish", + "drampa": "Drampa", + "dhelmise": "Dhelmise", + "jangmo_o": "Jangmo-o", + "hakamo_o": "Hakamo-o", + "kommo_o": "Kommo-o", + "tapu_koko": "Tapu Koko", + "tapu_lele": "Tapu Lele", + "tapu_bulu": "Tapu Bulu", + "tapu_fini": "Tapu Fini", + "cosmog": "Cosmog", + "cosmoem": "Cosmoem", + "solgaleo": "Solgaleo", + "lunala": "Lunala", + "nihilego": "Nihilego", + "buzzwole": "Buzzwole", + "pheromosa": "Pheromosa", + "xurkitree": "Xurkitree", + "celesteela": "Celesteela", + "kartana": "Kartana", + "guzzlord": "Guzzlord", + "necrozma": "Necrozma", + "magearna": "Magearna", + "marshadow": "Marshadow", + "poipole": "Poipole", + "naganadel": "Naganadel", + "stakataka": "Stakataka", + "blacephalon": "Blacephalon", + "zeraora": "Zeraora", + "meltan": "Meltan", + "melmetal": "Melmetal", + "grookey": "Grookey", + "thwackey": "Thwackey", + "rillaboom": "Rillaboom", + "scorbunny": "Scorbunny", + "raboot": "Raboot", + "cinderace": "Cinderace", + "sobble": "Sobble", + "drizzile": "Drizzile", + "inteleon": "Inteleon", + "skwovet": "Skwovet", + "greedent": "Greedent", + "rookidee": "Rookidee", + "corvisquire": "Corvisquire", + "corviknight": "Corviknight", + "blipbug": "Blipbug", + "dottler": "Dottler", + "orbeetle": "Orbeetle", + "nickit": "Nickit", + "thievul": "Thievul", + "gossifleur": "Gossifleur", + "eldegoss": "Eldegoss", + "wooloo": "Wooloo", + "dubwool": "Dubwool", + "chewtle": "Chewtle", + "drednaw": "Drednaw", + "yamper": "Yamper", + "boltund": "Boltund", + "rolycoly": "Rolycoly", + "carkol": "Carkol", + "coalossal": "Coalossal", + "applin": "Applin", + "flapple": "Flapple", + "appletun": "Appletun", + "silicobra": "Silicobra", + "sandaconda": "Sandaconda", + "cramorant": "Cramorant", + "arrokuda": "Arrokuda", + "barraskewda": "Barraskewda", + "toxel": "Toxel", + "toxtricity": "Toxtricity", + "sizzlipede": "Sizzlipede", + "centiskorch": "Centiskorch", + "clobbopus": "Clobbopus", + "grapploct": "Grapploct", + "sinistea": "Sinistea", + "polteageist": "Polteageist", + "hatenna": "Hatenna", + "hattrem": "Hattrem", + "hatterene": "Hatterene", + "impidimp": "Impidimp", + "morgrem": "Morgrem", + "grimmsnarl": "Grimmsnarl", + "obstagoon": "Obstagoon", + "perrserker": "Perrserker", + "cursola": "Cursola", + "sirfetchd": "Sirfetch'd", + "mr_rime": "Mr. Rime", + "runerigus": "Runerigus", + "milcery": "Milcery", + "alcremie": "Alcremie", + "falinks": "Falinks", + "pincurchin": "Pincurchin", + "snom": "Snom", + "frosmoth": "Frosmoth", + "stonjourner": "Stonjourner", + "eiscue": "Eiscue", + "indeedee": "Indeedee", + "morpeko": "Morpeko", + "cufant": "Cufant", + "copperajah": "Copperajah", + "dracozolt": "Dracozolt", + "arctozolt": "Arctozolt", + "dracovish": "Dracovish", + "arctovish": "Arctovish", + "duraludon": "Duraludon", + "dreepy": "Dreepy", + "drakloak": "Drakloak", + "dragapult": "Dragapult", + "zacian": "Zacian", + "zamazenta": "Zamazenta", + "eternatus": "Eternatus", + "kubfu": "Kubfu", + "urshifu": "Urshifu", + "zarude": "Zarude", + "regieleki": "Regieleki", + "regidrago": "Regidrago", + "glastrier": "Glastrier", + "spectrier": "Spectrier", + "calyrex": "Calyrex", + "wyrdeer": "Wyrdeer", + "kleavor": "Kleavor", + "ursaluna": "Ursaluna", + "basculegion": "Basculegion", + "sneasler": "Sneasler", + "overqwil": "Overqwil", + "enamorus": "Enamorus", + "sprigatito": "Sprigatito", + "floragato": "Floragato", + "meowscarada": "Meowscarada", + "fuecoco": "Fuecoco", + "crocalor": "Crocalor", + "skeledirge": "Skeledirge", + "quaxly": "Quaxly", + "quaxwell": "Quaxwell", + "quaquaval": "Quaquaval", + "lechonk": "Lechonk", + "oinkologne": "Oinkologne", + "tarountula": "Tarountula", + "spidops": "Spidops", + "nymble": "Nymble", + "lokix": "Lokix", + "pawmi": "Pawmi", + "pawmo": "Pawmo", + "pawmot": "Pawmot", + "tandemaus": "Tandemaus", + "maushold": "Maushold", + "fidough": "Fidough", + "dachsbun": "Dachsbun", + "smoliv": "Smoliv", + "dolliv": "Dolliv", + "arboliva": "Arboliva", + "squawkabilly": "Squawkabilly", + "nacli": "Nacli", + "naclstack": "Naclstack", + "garganacl": "Garganacl", + "charcadet": "Charcadet", + "armarouge": "Armarouge", + "ceruledge": "Ceruledge", + "tadbulb": "Tadbulb", + "bellibolt": "Bellibolt", + "wattrel": "Wattrel", + "kilowattrel": "Kilowattrel", + "maschiff": "Maschiff", + "mabosstiff": "Mabosstiff", + "shroodle": "Shroodle", + "grafaiai": "Grafaiai", + "bramblin": "Bramblin", + "brambleghast": "Brambleghast", + "toedscool": "Toedscool", + "toedscruel": "Toedscruel", + "klawf": "Klawf", + "capsakid": "Capsakid", + "scovillain": "Scovillain", + "rellor": "Rellor", + "rabsca": "Rabsca", + "flittle": "Flittle", + "espathra": "Espathra", + "tinkatink": "Tinkatink", + "tinkatuff": "Tinkatuff", + "tinkaton": "Tinkaton", + "wiglett": "Wiglett", + "wugtrio": "Wugtrio", + "bombirdier": "Bombirdier", + "finizen": "Finizen", + "palafin": "Palafin", + "varoom": "Varoom", + "revavroom": "Revavroom", + "cyclizar": "Cyclizar", + "orthworm": "Orthworm", + "glimmet": "Glimmet", + "glimmora": "Glimmora", + "greavard": "Greavard", + "houndstone": "Houndstone", + "flamigo": "Flamigo", + "cetoddle": "Cetoddle", + "cetitan": "Cetitan", + "veluza": "Veluza", + "dondozo": "Dondozo", + "tatsugiri": "Tatsugiri", + "annihilape": "Annihilape", + "clodsire": "Clodsire", + "farigiraf": "Farigiraf", + "dudunsparce": "Dudunsparce", + "kingambit": "Kingambit", + "great_tusk": "Presa Grande", + "scream_tail": "Cauda Brado", + "brute_bonnet": "Capuz Bruto", + "flutter_mane": "Juba Sopro", + "slither_wing": "Asa Rasteira", + "sandy_shocks": "Choque Areia", + "iron_treads": "Trilho Férreo", + "iron_bundle": "Pacote Férreo", + "iron_hands": "Mãos Férreas", + "iron_jugulis": "Jugulares Férreas", + "iron_moth": "Mariposa Férrea", + "iron_thorns": "Espinhos Férreos", + "frigibax": "Frigibax", + "arctibax": "Arctibax", + "baxcalibur": "Baxcalibur", + "gimmighoul": "Gimmighoul", + "gholdengo": "Gholdengo", + "wo_chien": "Wo-Chien", + "chien_pao": "Chien-Pao", + "ting_lu": "Ting-Lu", + "chi_yu": "Chi-Yu", + "roaring_moon": "Lua Estrondo", + "iron_valiant": "Valentia Férrea", + "koraidon": "Koraidon", + "miraidon": "Miraidon", + "walking_wake": "Onda Ando", + "iron_leaves": "Folhas Férreas", + "dipplin": "Dipplin", + "poltchageist": "Poltchageist", + "sinistcha": "Sinistcha", + "okidogi": "Okidogi", + "munkidori": "Munkidori", + "fezandipiti": "Fezandipiti", + "ogerpon": "Ogerpon", + "archaludon": "Archaludon", + "hydrapple": "Hydrapple", + "gouging_fire": "Fogo Corrosão", + "raging_bolt": "Raio Fúria", + "iron_boulder": "Rocha Férrea", + "iron_crown": "Chifres Férreos", + "terapagos": "Terapagos", + "pecharunt": "Pecharunt", + "alola_rattata": "Rattata", + "alola_raticate": "Raticate", + "alola_raichu": "Raichu", + "alola_sandshrew": "Sandshrew", + "alola_sandslash": "Sandslash", + "alola_vulpix": "Vulpix", + "alola_ninetales": "Ninetales", + "alola_diglett": "Diglett", + "alola_dugtrio": "Dugtrio", + "alola_meowth": "Meowth", + "alola_persian": "Persian", + "alola_geodude": "Geodude", + "alola_graveler": "Graveler", + "alola_golem": "Golem", + "alola_grimer": "Grimer", + "alola_muk": "Muk", + "alola_exeggutor": "Exeggutor", + "alola_marowak": "Marowak", + "eternal_floette": "Floette", + "galar_meowth": "Meowth", + "galar_ponyta": "Ponyta", + "galar_rapidash": "Rapidash", + "galar_slowpoke": "Slowpoke", + "galar_slowbro": "Slowbro", + "galar_farfetchd": "Farfetch'd", + "galar_weezing": "Weezing", + "galar_mr_mime": "Mr. Mime", + "galar_articuno": "Articuno", + "galar_zapdos": "Zapdos", + "galar_moltres": "Moltres", + "galar_slowking": "Slowking", + "galar_corsola": "Corsola", + "galar_zigzagoon": "Zigzagoon", + "galar_linoone": "Linoone", + "galar_darumaka": "Darumaka", + "galar_darmanitan": "Darmanitan", + "galar_yamask": "Yamask", + "galar_stunfisk": "Stunfisk", + "hisui_growlithe": "Growlithe", + "hisui_arcanine": "Arcanine", + "hisui_voltorb": "Voltorb", + "hisui_electrode": "Electrode", + "hisui_typhlosion": "Typhlosion", + "hisui_qwilfish": "Qwilfish", + "hisui_sneasel": "Sneasel", + "hisui_samurott": "Samurott", + "hisui_lilligant": "Lilligant", + "hisui_zorua": "Zorua", + "hisui_zoroark": "Zoroark", + "hisui_braviary": "Braviary", + "hisui_sliggoo": "Sliggoo", + "hisui_goodra": "Goodra", + "hisui_avalugg": "Avalugg", + "hisui_decidueye": "Decidueye", + "paldea_tauros": "Tauros", + "paldea_wooper": "Wooper", + "bloodmoon_ursaluna": "Ursaluna", +} as const; diff --git a/src/locales/pt_BR/starter-select-ui-handler.ts b/src/locales/pt_BR/starter-select-ui-handler.ts new file mode 100644 index 000000000..2932768b5 --- /dev/null +++ b/src/locales/pt_BR/starter-select-ui-handler.ts @@ -0,0 +1,32 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +/** + * The menu namespace holds most miscellaneous text that isn't directly part of the game's + * contents or directly related to Pokemon data. This includes menu navigation, settings, + * account interactions, descriptive text, etc. + */ +export const starterSelectUiHandler: SimpleTranslationEntries = { + "confirmStartTeam": 'Começar com esses Pokémon?', + "growthRate": "Crescimento:", + "ability": "Hab.:", + "passive": "Passiva:", + "nature": "Nature:", + "eggMoves": "Mov. de Ovo", + "start": "Iniciar", + "addToParty": "Adicionar à equipe", + "toggleIVs": "Mostrar IVs", + "manageMoves": "Mudar Movimentos", + "useCandies": "Usar Doces", + "selectMoveSwapOut": "Escolha um movimento para substituir.", + "selectMoveSwapWith": "Escolha o movimento que substituirá", + "unlockPassive": "Aprender Passiva", + "reduceCost": "Reduzir Custo", + "cycleShiny": "R: Mudar Shiny", + "cycleForm": 'F: Mudar Forma', + "cycleGender": 'G: Mudar Gênero', + "cycleAbility": 'E: Mudar Habilidade', + "cycleNature": 'N: Mudar Nature', + "cycleVariant": 'V: Mudar Variante', + "enablePassive": "Ativar Passiva", + "disablePassive": "Desativar Passiva" +} \ No newline at end of file diff --git a/src/locales/pt_BR/tutorial.ts b/src/locales/pt_BR/tutorial.ts new file mode 100644 index 000000000..d217cc2cd --- /dev/null +++ b/src/locales/pt_BR/tutorial.ts @@ -0,0 +1,43 @@ +import { SimpleTranslationEntries } from "#app/plugins/i18n"; + +export const tutorial: SimpleTranslationEntries = { + "intro": `Bem-vindo ao PokéRogue! Este é um jogo de Pokémon feito por fãs focado em batalha com elementos roguelite. + $Este jogo não é monetizado e não reivindicamos propriedade de Pokémon nem dos ativos protegidos por direitos autorais usados. + $O jogo é um trabalho em andamento, mas totalmente jogável.\nPara relatórios de bugs, use a comunidade no Discord. + $Se o jogo rodar lentamente, certifique-se de que a 'Aceleração de hardware' esteja ativada nas configurações do seu navegador.`, + + "accessMenu": `Para acessar o menu, aperte M ou Esc. + $O menu contém configurações e diversas funções.`, + + "menu": `A partir deste menu, você pode acessar as configurações. + $Nas configurações, você pode alterar a velocidade do jogo, o estilo da janela e outras opções. + $Existem também vários outros recursos aqui, então não deixe de conferir todos eles!`, + + "starterSelect": `Nessa tela, você pode selecionar seus iniciais.\nEsses são os Pokémon iniciais da sua equipe. + $Cada inicial tem seu próprio custo. Sua equipe pode ter até \n6 membros contando que o preço não ultrapasse 10. + $Você pode também selecionar o gênero, habilidade, e formas dependendo \ndas variantes que você capturou ou chocou. + $Os IVs da espécie são os melhores de todos que você \njá capturou ou chocou, então tente conseguir vários Pokémon da mesma espécie!`, + + "pokerus": `Todo dia, 3 Pokémon iniciais ficam com uma borda roxa. + $Caso veja um inicial que você possui com uma dessa, tente\nadicioná-lo a sua equipe. Lembre-se de olhar seu sumário!`, + + "statChange": `As mudanças de estatísticas se mantém depois do combate\ndesde que o Pokémon não seja trocado. + $Seus Pokémon voltam a suas Poké Bolas antes de batalhas contra treinadores e de entrar em um novo bioma. + $Também é possível ver as mudanças de estatísticas dos Pokémon em campo mantendo pressionado C ou Shift.`, + + "selectItem": `Após cada batalha você pode escolher entre 3 itens aleatórios.\nVocê pode escolher apenas um. + $Esses variam entre consumíveis, itens de segurar, e itens passivos permanentes. + $A maioria dos efeitos de itens não consumíveis serão acumulados de várias maneiras. + $Alguns itens só aparecerão se puderem ser usados, por exemplo, itens de evolução. + $Você também pode transferir itens de segurar entre os Pokémon utilizando a opção de transferir. + $A opção de transferir irá aparecer no canto inferior direito assim que você obter um item de segurar. + $Você pode comprar itens consumíveis com dinheiro, e uma maior variedade ficará disponível conforme você for mais longe. + $Certifique-se de comprá-los antes de escolher seu item aleatório. Ao escolher, a próxima batalha começará.`, + + "eggGacha": `Nesta tela você pode trocar seus vouchers\npor ovos de Pokémon. + $Ovos ficam mais próximos de chocar depois de cada batalha.\nOvos raros demoram mais para chocar. + $Pokémon chocados não serão adicionados a sua equipe,\nmas sim aos seus iniciais. + $Pokémon chocados geralmente possuem IVs melhores\nque Pokémon selvagens. + $Alguns Pokémon só podem ser obtidos através de seus ovos. + $Há 3 máquinas, cada uma com um bônus diferente,\nentão escolha a que mais lhe convém!`, +} as const; \ No newline at end of file diff --git a/src/plugins/i18n.ts b/src/plugins/i18n.ts index 763eb8522..676e691ee 100644 --- a/src/plugins/i18n.ts +++ b/src/plugins/i18n.ts @@ -6,6 +6,7 @@ import { enConfig } from '#app/locales/en/config.js'; import { esConfig } from '#app/locales/es/config.js'; import { frConfig } from '#app/locales/fr/config.js'; import { itConfig } from '#app/locales/it/config.js'; +import { ptBrConfig } from '#app/locales/pt_BR/config.js'; import { zhCnConfig } from '#app/locales/zh_CN/config.js'; export interface SimpleTranslationEntries { @@ -59,7 +60,7 @@ export function initI18n(): void { i18next.use(LanguageDetector).init({ lng: lang, fallbackLng: 'en', - supportedLngs: ['en', 'es', 'fr', 'it', 'de', 'zh_CN'], + supportedLngs: ['en', 'es', 'fr', 'it', 'de', 'zh_CN','pt_BR'], debug: true, interpolation: { escapeValue: false, @@ -80,6 +81,9 @@ export function initI18n(): void { de: { ...deConfig }, + pt_BR: { + ...ptBrConfig + }, zh_CN: { ...zhCnConfig } diff --git a/src/system/settings.ts b/src/system/settings.ts index 4b2c9eda1..08f9de0f8 100644 --- a/src/system/settings.ts +++ b/src/system/settings.ts @@ -1,10 +1,10 @@ +import SettingsUiHandler from "#app/ui/settings-ui-handler"; +import { Mode } from "#app/ui/ui"; import i18next from "i18next"; import BattleScene from "../battle-scene"; import { hasTouchscreen } from "../touch-controls"; import { updateWindowType } from "../ui/ui-theme"; import { PlayerGender } from "./game-data"; -import { Mode } from "#app/ui/ui"; -import SettingsUiHandler from "#app/ui/settings-ui-handler"; export enum Setting { Game_Speed = "GAME_SPEED", @@ -40,28 +40,28 @@ export interface SettingDefaults { } export const settingOptions: SettingOptions = { - [Setting.Game_Speed]: [ '1x', '1.25x', '1.5x', '2x', '2.5x', '3x', '4x', '5x' ], + [Setting.Game_Speed]: ['1x', '1.25x', '1.5x', '2x', '2.5x', '3x', '4x', '5x'], [Setting.Master_Volume]: new Array(11).fill(null).map((_, i) => i ? (i * 10).toString() : 'Mute'), [Setting.BGM_Volume]: new Array(11).fill(null).map((_, i) => i ? (i * 10).toString() : 'Mute'), [Setting.SE_Volume]: new Array(11).fill(null).map((_, i) => i ? (i * 10).toString() : 'Mute'), - [Setting.Language]: [ 'English', 'Change' ], - [Setting.Damage_Numbers]: [ 'Off', 'Simple', 'Fancy' ], - [Setting.UI_Theme]: [ 'Default', 'Legacy' ], + [Setting.Language]: ['English', 'Change'], + [Setting.Damage_Numbers]: ['Off', 'Simple', 'Fancy'], + [Setting.UI_Theme]: ['Default', 'Legacy'], [Setting.Window_Type]: new Array(5).fill(null).map((_, i) => (i + 1).toString()), - [Setting.Tutorials]: [ 'Off', 'On' ], - [Setting.Enable_Retries]: [ 'Off', 'On' ], - [Setting.Sprite_Set]: [ 'Consistent', 'Mixed Animated' ], - [Setting.Move_Animations]: [ 'Off', 'On' ], - [Setting.Show_Stats_on_Level_Up]: [ 'Off', 'On' ], - [Setting.EXP_Gains_Speed]: [ 'Normal', 'Fast', 'Faster', 'Skip' ], - [Setting.EXP_Party_Display]: [ 'Normal', 'Level Up Notification', 'Skip' ], - [Setting.HP_Bar_Speed]: [ 'Normal', 'Fast', 'Faster', 'Instant' ], - [Setting.Fusion_Palette_Swaps]: [ 'Off', 'On' ], - [Setting.Player_Gender]: [ 'Boy', 'Girl' ], - [Setting.Gamepad_Support]: [ 'Auto', 'Disabled' ], - [Setting.Swap_A_and_B]: [ 'Enabled', 'Disabled' ], - [Setting.Touch_Controls]: [ 'Auto', 'Disabled' ], - [Setting.Vibration]: [ 'Auto', 'Disabled' ] + [Setting.Tutorials]: ['Off', 'On'], + [Setting.Enable_Retries]: ['Off', 'On'], + [Setting.Sprite_Set]: ['Consistent', 'Mixed Animated'], + [Setting.Move_Animations]: ['Off', 'On'], + [Setting.Show_Stats_on_Level_Up]: ['Off', 'On'], + [Setting.EXP_Gains_Speed]: ['Normal', 'Fast', 'Faster', 'Skip'], + [Setting.EXP_Party_Display]: ['Normal', 'Level Up Notification', 'Skip'], + [Setting.HP_Bar_Speed]: ['Normal', 'Fast', 'Faster', 'Instant'], + [Setting.Fusion_Palette_Swaps]: ['Off', 'On'], + [Setting.Player_Gender]: ['Boy', 'Girl'], + [Setting.Gamepad_Support]: ['Auto', 'Disabled'], + [Setting.Swap_A_and_B]: ['Enabled', 'Disabled'], + [Setting.Touch_Controls]: ['Auto', 'Disabled'], + [Setting.Vibration]: ['Auto', 'Disabled'] }; export const settingDefaults: SettingDefaults = { @@ -89,7 +89,7 @@ export const settingDefaults: SettingDefaults = { [Setting.Vibration]: 0 }; -export const reloadSettings: Setting[] = [ Setting.UI_Theme, Setting.Language, Setting.Sprite_Set ]; +export const reloadSettings: Setting[] = [Setting.UI_Theme, Setting.Language, Setting.Sprite_Set]; export function setSetting(scene: BattleScene, setting: Setting, value: integer): boolean { switch (setting) { @@ -210,6 +210,10 @@ export function setSetting(scene: BattleScene, setting: Setting, value: integer) label: '简体中文', handler: () => changeLocaleHandler('zh_CN') }, + { + label: 'Português (BR)', + handler: () => changeLocaleHandler('pt_BR') + }, { label: 'Cancel', handler: () => cancelHandler() From 9a49691a9e906f80fb088d3240319d2647456650 Mon Sep 17 00:00:00 2001 From: Flashfyre Date: Mon, 13 May 2024 13:10:01 -0400 Subject: [PATCH 05/15] Add max options to language select Add max options to language select (fixes #819) --- src/system/settings.ts | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/system/settings.ts b/src/system/settings.ts index 08f9de0f8..15c1f19aa 100644 --- a/src/system/settings.ts +++ b/src/system/settings.ts @@ -206,19 +206,20 @@ export function setSetting(scene: BattleScene, setting: Setting, value: integer) label: 'Deutsch', handler: () => changeLocaleHandler('de') }, - { - label: '简体中文', - handler: () => changeLocaleHandler('zh_CN') - }, { label: 'Português (BR)', handler: () => changeLocaleHandler('pt_BR') }, + { + label: '简体中文', + handler: () => changeLocaleHandler('zh_CN') + }, { label: 'Cancel', handler: () => cancelHandler() } - ] + ], + maxOptions: 7 }); return false; } From 34a4f86982e33066ab240d0191589759f1cd4e7a Mon Sep 17 00:00:00 2001 From: Madmadness65 Date: Mon, 13 May 2024 12:50:56 -0500 Subject: [PATCH 06/15] Add a couple starter select localization entries The passive ability's "Locked" and "Disabled" strings can now be localized. --- src/locales/de/starter-select-ui-handler.ts | 4 +++- src/locales/en/starter-select-ui-handler.ts | 4 +++- src/locales/es/starter-select-ui-handler.ts | 4 +++- src/locales/fr/starter-select-ui-handler.ts | 4 +++- src/locales/it/starter-select-ui-handler.ts | 4 +++- src/locales/pt_BR/starter-select-ui-handler.ts | 4 +++- src/locales/zh_CN/starter-select-ui-handler.ts | 4 +++- src/ui/starter-select-ui-handler.ts | 2 +- 8 files changed, 22 insertions(+), 8 deletions(-) diff --git a/src/locales/de/starter-select-ui-handler.ts b/src/locales/de/starter-select-ui-handler.ts index a982f30d8..5ee3da9db 100644 --- a/src/locales/de/starter-select-ui-handler.ts +++ b/src/locales/de/starter-select-ui-handler.ts @@ -28,5 +28,7 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "cycleNature": "N: Wesen Ändern", "cycleVariant": "V: Seltenheit ändern", "enablePassive": "Passiv-Skill aktivieren", - "disablePassive": "Passiv-Skill deaktivieren" + "disablePassive": "Passiv-Skill deaktivieren", + "locked": "Locked", + "disabled": "Disabled" } \ No newline at end of file diff --git a/src/locales/en/starter-select-ui-handler.ts b/src/locales/en/starter-select-ui-handler.ts index c7595cb2f..dd3904e12 100644 --- a/src/locales/en/starter-select-ui-handler.ts +++ b/src/locales/en/starter-select-ui-handler.ts @@ -28,5 +28,7 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "cycleNature": 'N: Cycle Nature', "cycleVariant": 'V: Cycle Variant', "enablePassive": "Enable Passive", - "disablePassive": "Disable Passive" + "disablePassive": "Disable Passive", + "locked": "Locked", + "disabled": "Disabled" } \ No newline at end of file diff --git a/src/locales/es/starter-select-ui-handler.ts b/src/locales/es/starter-select-ui-handler.ts index 629e25632..e8cd9bce0 100644 --- a/src/locales/es/starter-select-ui-handler.ts +++ b/src/locales/es/starter-select-ui-handler.ts @@ -28,5 +28,7 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "cycleNature": 'N: Cambiar Naturaleza', "cycleVariant": 'V: Cambiar Variante', "enablePassive": "Activar Pasiva", - "disablePassive": "Desactivar Pasiva" + "disablePassive": "Desactivar Pasiva", + "locked": "Locked", + "disabled": "Disabled" } \ No newline at end of file diff --git a/src/locales/fr/starter-select-ui-handler.ts b/src/locales/fr/starter-select-ui-handler.ts index 77a79387a..3a8bb2e65 100644 --- a/src/locales/fr/starter-select-ui-handler.ts +++ b/src/locales/fr/starter-select-ui-handler.ts @@ -28,5 +28,7 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "cycleNature": "N: » Natures", "cycleVariant": "V: » Variants", "enablePassive": "Activer Passif", - "disablePassive": "Désactiver Passif" + "disablePassive": "Désactiver Passif", + "locked": "Locked", + "disabled": "Disabled" } diff --git a/src/locales/it/starter-select-ui-handler.ts b/src/locales/it/starter-select-ui-handler.ts index 1a442ffe9..e8c58ad13 100644 --- a/src/locales/it/starter-select-ui-handler.ts +++ b/src/locales/it/starter-select-ui-handler.ts @@ -28,5 +28,7 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "cycleNature": 'N: Alterna Natura', "cycleVariant": 'V: Alterna Variante', "enablePassive": "Attiva Passiva", - "disablePassive": "Disattiva Passiva" + "disablePassive": "Disattiva Passiva", + "locked": "Locked", + "disabled": "Disabled" } \ No newline at end of file diff --git a/src/locales/pt_BR/starter-select-ui-handler.ts b/src/locales/pt_BR/starter-select-ui-handler.ts index 2932768b5..4877c1691 100644 --- a/src/locales/pt_BR/starter-select-ui-handler.ts +++ b/src/locales/pt_BR/starter-select-ui-handler.ts @@ -28,5 +28,7 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "cycleNature": 'N: Mudar Nature', "cycleVariant": 'V: Mudar Variante', "enablePassive": "Ativar Passiva", - "disablePassive": "Desativar Passiva" + "disablePassive": "Desativar Passiva", + "locked": "Locked", + "disabled": "Disabled" } \ No newline at end of file diff --git a/src/locales/zh_CN/starter-select-ui-handler.ts b/src/locales/zh_CN/starter-select-ui-handler.ts index 9d3a076e5..c2d0a82d8 100644 --- a/src/locales/zh_CN/starter-select-ui-handler.ts +++ b/src/locales/zh_CN/starter-select-ui-handler.ts @@ -28,5 +28,7 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "cycleNature": 'N: 切换性格', "cycleVariant": 'V: 切换变种', "enablePassive": "启用被动", - "disablePassive": "禁用被动" + "disablePassive": "禁用被动", + "locked": "Locked", + "disabled": "Disabled" } \ No newline at end of file diff --git a/src/ui/starter-select-ui-handler.ts b/src/ui/starter-select-ui-handler.ts index 2f33481d6..148600b8d 100644 --- a/src/ui/starter-select-ui-handler.ts +++ b/src/ui/starter-select-ui-handler.ts @@ -1580,7 +1580,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { this.pokemonAbilityText.setShadowColor(this.getTextColor(!isHidden ? TextStyle.SUMMARY_ALT : TextStyle.SUMMARY_GOLD, true)); const passiveAttr = this.scene.gameData.starterData[species.speciesId].passiveAttr; - this.pokemonPassiveText.setText(passiveAttr & PassiveAttr.UNLOCKED ? passiveAttr & PassiveAttr.ENABLED ? allAbilities[starterPassiveAbilities[this.lastSpecies.speciesId]].name : 'Disabled' : 'Locked'); + this.pokemonPassiveText.setText(passiveAttr & PassiveAttr.UNLOCKED ? passiveAttr & PassiveAttr.ENABLED ? allAbilities[starterPassiveAbilities[this.lastSpecies.speciesId]].name : i18next.t("starterSelectUiHandler:disabled") : i18next.t("starterSelectUiHandler:locked")); this.pokemonPassiveText.setColor(this.getTextColor(passiveAttr === (PassiveAttr.UNLOCKED | PassiveAttr.ENABLED) ? TextStyle.SUMMARY_ALT : TextStyle.SUMMARY_GRAY)); this.pokemonPassiveText.setShadowColor(this.getTextColor(passiveAttr === (PassiveAttr.UNLOCKED | PassiveAttr.ENABLED) ? TextStyle.SUMMARY_ALT : TextStyle.SUMMARY_GRAY, true)); From 610de916a02268f8b245d893ab2ce15843d7faca Mon Sep 17 00:00:00 2001 From: Lugiad Date: Mon, 13 May 2024 20:01:30 +0200 Subject: [PATCH 07/15] Update French starter-select-ui-handler.ts (#821) --- src/locales/fr/starter-select-ui-handler.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/locales/fr/starter-select-ui-handler.ts b/src/locales/fr/starter-select-ui-handler.ts index 3a8bb2e65..9f4309e40 100644 --- a/src/locales/fr/starter-select-ui-handler.ts +++ b/src/locales/fr/starter-select-ui-handler.ts @@ -29,6 +29,6 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "cycleVariant": "V: » Variants", "enablePassive": "Activer Passif", "disablePassive": "Désactiver Passif", - "locked": "Locked", - "disabled": "Disabled" + "locked": "Verrouillé", + "disabled": "Désactivé" } From fa60e002e89c6d5d5da2f451ac4370aeffb758b6 Mon Sep 17 00:00:00 2001 From: Matt Ross <13306707+mattrossdev@users.noreply.github.com> Date: Mon, 13 May 2024 11:05:09 -0700 Subject: [PATCH 08/15] Fixes some variable damage moves not working with tinted lens (#759) * Fixes some variable damage moves not working with abilities * Rework as new ability attribute * Update variable base power check to original location * formatting * Add tsdoc comments * add floor for potential non int multipliers * Update pokemon.ts --------- Co-authored-by: Benjamin Odom --- src/data/ability.ts | 38 +++++++++++++++++++++++++++++++++++++- src/field/pokemon.ts | 5 ++++- 2 files changed, 41 insertions(+), 2 deletions(-) diff --git a/src/data/ability.ts b/src/data/ability.ts index 662cd3715..fee574e4a 100644 --- a/src/data/ability.ts +++ b/src/data/ability.ts @@ -991,6 +991,42 @@ export class MoveTypeChangeAttr extends PreAttackAbAttr { } } +/** + * Class for abilities that boost the damage of moves + * For abilities that boost the base power of moves, see VariableMovePowerAbAttr + * @param damageMultiplier the amount to multiply the damage by + * @param condition the condition for this ability to be applied + */ +export class DamageBoostAbAttr extends PreAttackAbAttr { + private damageMultiplier: number; + private condition: PokemonAttackCondition; + + constructor(damageMultiplier: number, condition: PokemonAttackCondition){ + super(true); + this.damageMultiplier = damageMultiplier; + this.condition = condition; + } + + /** + * + * @param pokemon the attacker pokemon + * @param passive N/A + * @param defender the target pokemon + * @param move the move used by the attacker pokemon + * @param args Utils.NumberHolder as damage + * @returns true if the function succeeds + */ + applyPreAttack(pokemon: Pokemon, passive: boolean, defender: Pokemon, move: PokemonMove, args: any[]): boolean { + if (this.condition(pokemon, defender, move.getMove())) { + const power = args[0] as Utils.NumberHolder; + power.value = Math.floor(power.value * this.damageMultiplier); + return true; + } + + return false; + } +} + export class MovePowerBoostAbAttr extends VariableMovePowerAbAttr { private condition: PokemonAttackCondition; private powerMultiplier: number; @@ -3121,7 +3157,7 @@ export function initAbilities() { .attr(IgnoreOpponentStatChangesAbAttr) .ignorable(), new Ability(Abilities.TINTED_LENS, 4) - .attr(MovePowerBoostAbAttr, (user, target, move) => target.getAttackTypeEffectiveness(move.type, user) <= 0.5, 2), + .attr(DamageBoostAbAttr, 2, (user, target, move) => target.getAttackTypeEffectiveness(move.type, user) <= 0.5), new Ability(Abilities.FILTER, 4) .attr(ReceivedMoveDamageMultiplierAbAttr,(target, user, move) => target.getAttackTypeEffectiveness(move.type, user) >= 2, 0.75) .ignorable(), diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index 807be3f8d..307f98f2f 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -27,7 +27,7 @@ import { TempBattleStat } from '../data/temp-battle-stat'; import { ArenaTagSide, WeakenMoveScreenTag, WeakenMoveTypeTag } from '../data/arena-tag'; import { ArenaTagType } from "../data/enums/arena-tag-type"; import { Biome } from "../data/enums/biome"; -import { Ability, AbAttr, BattleStatMultiplierAbAttr, BlockCritAbAttr, BonusCritAbAttr, BypassBurnDamageReductionAbAttr, FieldPriorityMoveImmunityAbAttr, FieldVariableMovePowerAbAttr, IgnoreOpponentStatChangesAbAttr, MoveImmunityAbAttr, MoveTypeChangeAttr, NonSuperEffectiveImmunityAbAttr, PreApplyBattlerTagAbAttr, PreDefendFullHpEndureAbAttr, ReceivedMoveDamageMultiplierAbAttr, ReduceStatusEffectDurationAbAttr, StabBoostAbAttr, StatusEffectImmunityAbAttr, TypeImmunityAbAttr, VariableMovePowerAbAttr, VariableMoveTypeAbAttr, WeightMultiplierAbAttr, allAbilities, applyAbAttrs, applyBattleStatMultiplierAbAttrs, applyPostDefendAbAttrs, applyPreApplyBattlerTagAbAttrs, applyPreAttackAbAttrs, applyPreDefendAbAttrs, applyPreSetStatusAbAttrs, UnsuppressableAbilityAbAttr, SuppressFieldAbilitiesAbAttr, NoFusionAbilityAbAttr, MultCritAbAttr, IgnoreTypeImmunityAbAttr } from '../data/ability'; +import { Ability, AbAttr, BattleStatMultiplierAbAttr, BlockCritAbAttr, BonusCritAbAttr, BypassBurnDamageReductionAbAttr, FieldPriorityMoveImmunityAbAttr, FieldVariableMovePowerAbAttr, IgnoreOpponentStatChangesAbAttr, MoveImmunityAbAttr, MoveTypeChangeAttr, NonSuperEffectiveImmunityAbAttr, PreApplyBattlerTagAbAttr, PreDefendFullHpEndureAbAttr, ReceivedMoveDamageMultiplierAbAttr, ReduceStatusEffectDurationAbAttr, StabBoostAbAttr, StatusEffectImmunityAbAttr, TypeImmunityAbAttr, VariableMovePowerAbAttr, VariableMoveTypeAbAttr, WeightMultiplierAbAttr, allAbilities, applyAbAttrs, applyBattleStatMultiplierAbAttrs, applyPostDefendAbAttrs, applyPreApplyBattlerTagAbAttrs, applyPreAttackAbAttrs, applyPreDefendAbAttrs, applyPreSetStatusAbAttrs, UnsuppressableAbilityAbAttr, SuppressFieldAbilitiesAbAttr, NoFusionAbilityAbAttr, MultCritAbAttr, IgnoreTypeImmunityAbAttr, DamageBoostAbAttr } from '../data/ability'; import { Abilities } from "#app/data/enums/abilities"; import PokemonData from '../system/pokemon-data'; import Battle, { BattlerIndex } from '../battle'; @@ -1545,6 +1545,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { if (!burnDamageReductionCancelled.value) damage.value = Math.floor(damage.value / 2); } + + applyPreAttackAbAttrs(DamageBoostAbAttr, source, this, battlerMove, damage); + move.getAttrs(HitsTagAttr).map(hta => hta as HitsTagAttr).filter(hta => hta.doubleDamage).forEach(hta => { if (this.getTag(hta.tagType)) damage.value *= 2; From 4e6cf2a6aced2e5d23c4fbe74e03574db7f91431 Mon Sep 17 00:00:00 2001 From: Matt Ross <13306707+mattrossdev@users.noreply.github.com> Date: Mon, 13 May 2024 11:06:15 -0700 Subject: [PATCH 09/15] Facade should ignore burn damage reduction (#530) * Facade should ignore burn damage reduction * update order of burn conditions * remove unnecessary space * undo facade check in apply * Rework facade bypassing burn as move attribute * Only check ability attribute if move attribute was false * Add missing semicolon * Add tsdoc comment * Add comment to burn damage reduction class * Added changes from Discord thread --------- Co-authored-by: Benjamin Odom --- src/data/move.ts | 22 +++++++++++++++++++++- src/field/pokemon.ts | 12 +++++++----- 2 files changed, 28 insertions(+), 6 deletions(-) diff --git a/src/data/move.ts b/src/data/move.ts index 2a841a401..652e832fd 100644 --- a/src/data/move.ts +++ b/src/data/move.ts @@ -1353,6 +1353,25 @@ export class BypassSleepAttr extends MoveAttr { } } +/** + * Attribute used for moves that bypass the burn damage reduction of physical moves, currently only facade + * Called during damage calculation + * @param user N/A + * @param target N/A + * @param move Move with this attribute + * @param args Utils.BooleanHolder for burnDamageReductionCancelled + * @returns true if the function succeeds + */ +export class BypassBurnDamageReductionAttr extends MoveAttr { + + /** Prevents the move's damage from being reduced by burn */ + apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { + (args[0] as Utils.BooleanHolder).value = true; + + return true; + } +} + export class WeatherChangeAttr extends MoveEffectAttr { private weatherType: WeatherType; @@ -4904,7 +4923,8 @@ export function initMoves() { .attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPATK ], -2), new AttackMove(Moves.FACADE, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, -1, 0, 3) .attr(MovePowerMultiplierAttr, (user, target, move) => user.status - && (user.status.effect === StatusEffect.BURN || user.status.effect === StatusEffect.POISON || user.status.effect === StatusEffect.TOXIC || user.status.effect === StatusEffect.PARALYSIS) ? 2 : 1), + && (user.status.effect === StatusEffect.BURN || user.status.effect === StatusEffect.POISON || user.status.effect === StatusEffect.TOXIC || user.status.effect === StatusEffect.PARALYSIS) ? 2 : 1) + .attr(BypassBurnDamageReductionAttr), new AttackMove(Moves.FOCUS_PUNCH, Type.FIGHTING, MoveCategory.PHYSICAL, 150, 100, 20, -1, -3, 3) .punchingMove() .ignoresVirtual() diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index 307f98f2f..245820484 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -4,7 +4,7 @@ import { Variant, VariantSet, variantColorCache } from '#app/data/variant'; import { variantData } from '#app/data/variant'; import BattleInfo, { PlayerBattleInfo, EnemyBattleInfo } from '../ui/battle-info'; import { Moves } from "../data/enums/moves"; -import Move, { HighCritAttr, HitsTagAttr, applyMoveAttrs, FixedDamageAttr, VariableAtkAttr, VariablePowerAttr, allMoves, MoveCategory, TypelessAttr, CritOnlyAttr, getMoveTargets, OneHitKOAttr, MultiHitAttr, StatusMoveTypeImmunityAttr, MoveTarget, VariableDefAttr, AttackMove, ModifiedDamageAttr, VariableMoveTypeMultiplierAttr, IgnoreOpponentStatChangesAttr, SacrificialAttr, VariableMoveTypeAttr, VariableMoveCategoryAttr, CounterDamageAttr, StatChangeAttr, RechargeAttr, ChargeAttr, IgnoreWeatherTypeDebuffAttr } from "../data/move"; +import Move, { HighCritAttr, HitsTagAttr, applyMoveAttrs, FixedDamageAttr, VariableAtkAttr, VariablePowerAttr, allMoves, MoveCategory, TypelessAttr, CritOnlyAttr, getMoveTargets, OneHitKOAttr, MultiHitAttr, StatusMoveTypeImmunityAttr, MoveTarget, VariableDefAttr, AttackMove, ModifiedDamageAttr, VariableMoveTypeMultiplierAttr, IgnoreOpponentStatChangesAttr, SacrificialAttr, VariableMoveTypeAttr, VariableMoveCategoryAttr, CounterDamageAttr, StatChangeAttr, RechargeAttr, ChargeAttr, IgnoreWeatherTypeDebuffAttr, BypassBurnDamageReductionAttr } from "../data/move"; import { default as PokemonSpecies, PokemonSpeciesForm, SpeciesFormKey, getFusedSpeciesName, getPokemonSpecies, getPokemonSpeciesForm, getStarterValueFriendshipCap, speciesStarters, starterPassiveAbilities } from '../data/pokemon-species'; import * as Utils from '../utils'; import { Type, TypeDamageMultiplier, getTypeDamageMultiplier, getTypeRgb } from '../data/type'; @@ -1540,10 +1540,12 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { if (!isTypeImmune) { damage.value = Math.ceil(((((2 * source.level / 5 + 2) * power.value * sourceAtk.value / targetDef.value) / 50) + 2) * stabMultiplier.value * typeMultiplier.value * arenaAttackTypeMultiplier.value * screenMultiplier.value * ((this.scene.randBattleSeedInt(15) + 85) / 100) * criticalMultiplier.value); if (isPhysical && source.status && source.status.effect === StatusEffect.BURN) { - const burnDamageReductionCancelled = new Utils.BooleanHolder(false); - applyAbAttrs(BypassBurnDamageReductionAbAttr, source, burnDamageReductionCancelled); - if (!burnDamageReductionCancelled.value) - damage.value = Math.floor(damage.value / 2); + if(!move.getAttrs(BypassBurnDamageReductionAttr).length) { + const burnDamageReductionCancelled = new Utils.BooleanHolder(false); + applyAbAttrs(BypassBurnDamageReductionAbAttr, source, burnDamageReductionCancelled); + if (!burnDamageReductionCancelled.value) + damage.value = Math.floor(damage.value / 2); + } } applyPreAttackAbAttrs(DamageBoostAbAttr, source, this, battlerMove, damage); From 40993793cb7e3ad7e690c3e50d3e858abd1e2e97 Mon Sep 17 00:00:00 2001 From: Matthew Olker Date: Mon, 13 May 2024 14:23:34 -0400 Subject: [PATCH 10/15] Show default icon for missing starter icon --- src/ui/starter-select-ui-handler.ts | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/ui/starter-select-ui-handler.ts b/src/ui/starter-select-ui-handler.ts index 148600b8d..b9ed8195c 100644 --- a/src/ui/starter-select-ui-handler.ts +++ b/src/ui/starter-select-ui-handler.ts @@ -357,6 +357,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { icon.setScale(0.5); icon.setOrigin(0, 0); icon.setFrame(species.getIconId(defaultProps.female, defaultProps.formIndex, defaultProps.shiny, defaultProps.variant)); + this.checkIconId(icon, species, defaultProps.female, defaultProps.formIndex, defaultProps.shiny, defaultProps.variant); icon.setTint(0); this.starterSelectGenIconContainers[g].add(icon); this.iconAnimHandler.addOrUpdate(icon, PokemonIconAnimMode.NONE); @@ -792,6 +793,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { const props = this.scene.gameData.getSpeciesDexAttrProps(species, this.dexAttrCursor); this.starterIcons[this.starterCursors.length].setTexture(species.getIconAtlasKey(props.formIndex, props.shiny, props.variant)); this.starterIcons[this.starterCursors.length].setFrame(species.getIconId(props.female, props.formIndex, props.shiny, props.variant)); + this.checkIconId(this.starterIcons[this.starterCursors.length], species, props.female, props.formIndex, props.shiny, props.variant); this.starterGens.push(this.getGenCursorWithScroll()); this.starterCursors.push(this.cursor); this.starterAttr.push(this.dexAttrCursor); @@ -1306,6 +1308,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { const props = this.scene.gameData.getSpeciesDexAttrProps(this.lastSpecies, dexAttr); const lastSpeciesIcon = (this.starterSelectGenIconContainers[this.lastSpecies.generation - 1].getAt(this.genSpecies[this.lastSpecies.generation - 1].indexOf(this.lastSpecies)) as Phaser.GameObjects.Sprite); lastSpeciesIcon.setTexture(this.lastSpecies.getIconAtlasKey(props.formIndex, props.shiny, props.variant), this.lastSpecies.getIconId(props.female, props.formIndex, props.shiny, props.variant)); + this.checkIconId(lastSpeciesIcon, this.lastSpecies, props.female, props.formIndex, props.shiny, props.variant); this.iconAnimHandler.addOrUpdate(lastSpeciesIcon, PokemonIconAnimMode.NONE); } @@ -1548,12 +1551,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { (this.starterSelectGenIconContainers[this.getGenCursorWithScroll()].getAt(this.cursor) as Phaser.GameObjects.Sprite) .setTexture(species.getIconAtlasKey(formIndex, shiny, variant), species.getIconId(female, formIndex, shiny, variant)); - // Temporary fix to show pokemon's default icon if variant icon doesn't exist - if ((this.starterSelectGenIconContainers[this.getGenCursorWithScroll()].getAt(this.cursor) as Phaser.GameObjects.Sprite).frame.name != species.getIconId(female, formIndex, shiny, variant)) { - console.log(`${species.name}'s variant icon does not exist. Replacing with default.`); - (this.starterSelectGenIconContainers[this.getGenCursorWithScroll()].getAt(this.cursor) as Phaser.GameObjects.Sprite).setTexture(species.getIconAtlasKey(formIndex, false, variant)); - (this.starterSelectGenIconContainers[this.getGenCursorWithScroll()].getAt(this.cursor) as Phaser.GameObjects.Sprite).setFrame(species.getIconId(female, formIndex, false, variant)); - } + this.checkIconId((this.starterSelectGenIconContainers[this.getGenCursorWithScroll()].getAt(this.cursor) as Phaser.GameObjects.Sprite), species, female, formIndex, shiny, variant); this.canCycleShiny = !!(dexEntry.caughtAttr & DexAttr.NON_SHINY && dexEntry.caughtAttr & DexAttr.SHINY); this.canCycleGender = !!(dexEntry.caughtAttr & DexAttr.MALE && dexEntry.caughtAttr & DexAttr.FEMALE); this.canCycleAbility = [ abilityAttr & AbilityAttr.ABILITY_1, (abilityAttr & AbilityAttr.ABILITY_2) && species.ability2, abilityAttr & AbilityAttr.ABILITY_HIDDEN ].filter(a => a).length > 1; @@ -1827,4 +1825,12 @@ export default class StarterSelectUiHandler extends MessageUiHandler { if (this.statsMode) this.toggleStatsMode(false); } + + checkIconId(icon: Phaser.GameObjects.Sprite, species: PokemonSpecies, female, formIndex, shiny, variant) { + if (icon.frame.name != species.getIconId(female, formIndex, shiny, variant)) { + console.log(`${species.name}'s variant icon does not exist. Replacing with default.`); + icon.setTexture(species.getIconAtlasKey(formIndex, false, variant)); + icon.setFrame(species.getIconId(female, formIndex, false, variant)); + } + } } \ No newline at end of file From 487b1d26d140528326ed35272154caa4144b4d66 Mon Sep 17 00:00:00 2001 From: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Date: Mon, 13 May 2024 20:24:55 +0200 Subject: [PATCH 11/15] Added german localization to the new entries in starter-select-ui-handler.ts (#822) --- src/locales/de/starter-select-ui-handler.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/locales/de/starter-select-ui-handler.ts b/src/locales/de/starter-select-ui-handler.ts index 5ee3da9db..791a7c053 100644 --- a/src/locales/de/starter-select-ui-handler.ts +++ b/src/locales/de/starter-select-ui-handler.ts @@ -29,6 +29,6 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "cycleVariant": "V: Seltenheit ändern", "enablePassive": "Passiv-Skill aktivieren", "disablePassive": "Passiv-Skill deaktivieren", - "locked": "Locked", - "disabled": "Disabled" + "locked": "Gesperrt", + "disabled": "Deaktiviert" } \ No newline at end of file From e2dfbc4aa5904391c0309efb642e27163c8d20de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Ricardo=20Fleury=20Oliveira?= Date: Mon, 13 May 2024 15:55:15 -0300 Subject: [PATCH 12/15] Added new entries (#823) --- src/locales/pt_BR/starter-select-ui-handler.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/locales/pt_BR/starter-select-ui-handler.ts b/src/locales/pt_BR/starter-select-ui-handler.ts index 4877c1691..999b8bdfd 100644 --- a/src/locales/pt_BR/starter-select-ui-handler.ts +++ b/src/locales/pt_BR/starter-select-ui-handler.ts @@ -29,6 +29,6 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "cycleVariant": 'V: Mudar Variante', "enablePassive": "Ativar Passiva", "disablePassive": "Desativar Passiva", - "locked": "Locked", - "disabled": "Disabled" + "locked": "Bloqueado", + "disabled": "Desativado", } \ No newline at end of file From 47c9eb547d0f630d18caf14f7ba12a197940619d Mon Sep 17 00:00:00 2001 From: Matthew Olker Date: Mon, 13 May 2024 15:29:50 -0400 Subject: [PATCH 13/15] fix Rare Shiny Groudon back sprite --- public/images/pokemon/variant/back/383_2.png | Bin 4283 -> 61670 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/public/images/pokemon/variant/back/383_2.png b/public/images/pokemon/variant/back/383_2.png index aea0b02b481158a179635caf70e3c2b0aa95e4ac..0d25afe7e54e6a79f049942bb9dee8113718f733 100644 GIT binary patch delta 59361 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 Date: Mon, 13 May 2024 13:53:23 -0600 Subject: [PATCH 14/15] Fix Zygarge Complete form changing back into 50% (#786) --- src/data/ability.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/data/ability.ts b/src/data/ability.ts index fee574e4a..b2899a33f 100644 --- a/src/data/ability.ts +++ b/src/data/ability.ts @@ -3463,9 +3463,9 @@ export function initAbilities() { .attr(UnsuppressableAbilityAbAttr) .attr(NoFusionAbilityAbAttr), new Ability(Abilities.POWER_CONSTRUCT, 7) // TODO: 10% Power Construct Zygarde isn't accounted for yet. If changed, update Zygarde's getSpeciesFormIndex entry accordingly - .attr(PostBattleInitFormChangeAbAttr, p => p.getHpRatio() <= 0.5 ? 4 : 2) - .attr(PostSummonFormChangeAbAttr, p => p.getHpRatio() <= 0.5 ? 4 : 2) - .attr(PostTurnFormChangeAbAttr, p => p.getHpRatio() <= 0.5 ? 4 : 2) + .attr(PostBattleInitFormChangeAbAttr, p => p.getHpRatio() <= 0.5 || p.getFormKey() === 'complete' ? 4 : 2) + .attr(PostSummonFormChangeAbAttr, p => p.getHpRatio() <= 0.5 || p.getFormKey() === 'complete' ? 4 : 2) + .attr(PostTurnFormChangeAbAttr, p => p.getHpRatio() <= 0.5 || p.getFormKey() === 'complete' ? 4 : 2) .attr(UncopiableAbilityAbAttr) .attr(UnswappableAbilityAbAttr) .attr(UnsuppressableAbilityAbAttr) From 7e5c7fb4f7e3cbc172dd36c634d1e0a2d8e83946 Mon Sep 17 00:00:00 2001 From: Flashfyre Date: Mon, 13 May 2024 17:03:53 -0400 Subject: [PATCH 15/15] Don't allow trainer egg moves before level 60 and no rare egg moves at all --- src/field/pokemon.ts | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index 245820484..fd1613df1 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -1225,24 +1225,18 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } } - if (this.level >= 25) { // No egg moves below level 25 + if (this.level >= 60) { // No egg moves below level 60 for (let i = 0; i < 3; i++) { const moveId = speciesEggMoves[this.species.getRootSpeciesId()][i]; if (!movePool.some(m => m[0] === moveId) && !allMoves[moveId].name.endsWith(' (N)')) movePool.push([moveId, Math.min(this.level * 0.5, 40)]); } - const moveId = speciesEggMoves[this.species.getRootSpeciesId()][3]; - if (this.level >= 60 && !movePool.some(m => m[0] === moveId) && !allMoves[moveId].name.endsWith(' (N)')) // No rare egg moves before level 60 - movePool.push([moveId, Math.min(this.level * 0.2, 20)]); if (this.fusionSpecies) { for (let i = 0; i < 3; i++) { const moveId = speciesEggMoves[this.fusionSpecies.getRootSpeciesId()][i]; if (!movePool.some(m => m[0] === moveId) && !allMoves[moveId].name.endsWith(' (N)')) movePool.push([moveId, Math.min(this.level * 0.5, 30)]); } - const moveId = speciesEggMoves[this.fusionSpecies.getRootSpeciesId()][3]; - if (this.level >= 60 && !movePool.some(m => m[0] === moveId) && !allMoves[moveId].name.endsWith(' (N)')) // No rare egg moves before level 60 - movePool.push([moveId, Math.min(this.level * 0.2, 20)]); } } }