mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-07-05 16:02:20 +02:00
Merge branch 'refs/heads/beta' into beta_fusion_names
# Conflicts: # src/locales/pt_BR/config.ts
This commit is contained in:
commit
bcb5d0131c
4
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
4
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@ -21,7 +21,7 @@ body:
|
|||||||
- type: textarea
|
- type: textarea
|
||||||
id: session-file
|
id: session-file
|
||||||
attributes:
|
attributes:
|
||||||
label: User data export file
|
label: Session export file
|
||||||
description: Open Menu → ManageData → Export Session → Select slot. The file should now be in your `/Downloads` directory. Change the file extension type from `.prsv` to `.txt` (How to [Windows](https://www.guidingtech.com/how-to-change-file-type-on-windows/) | [Mac](https://support.apple.com/guide/mac-help/show-or-hide-filename-extensions-on-mac-mchlp2304/mac) | [iOS](https://www.guidingtech.com/change-file-type-extension-on-iphone/)).
|
description: Open Menu → ManageData → Export Session → Select slot. The file should now be in your `/Downloads` directory. Change the file extension type from `.prsv` to `.txt` (How to [Windows](https://www.guidingtech.com/how-to-change-file-type-on-windows/) | [Mac](https://support.apple.com/guide/mac-help/show-or-hide-filename-extensions-on-mac-mchlp2304/mac) | [iOS](https://www.guidingtech.com/change-file-type-extension-on-iphone/)).
|
||||||
placeholder: Focus me and then drop your file here (or use the upload button at the bottom)
|
placeholder: Focus me and then drop your file here (or use the upload button at the bottom)
|
||||||
validations:
|
validations:
|
||||||
@ -29,7 +29,7 @@ body:
|
|||||||
- type: textarea
|
- type: textarea
|
||||||
id: data-file
|
id: data-file
|
||||||
attributes:
|
attributes:
|
||||||
label: Session export file
|
label: User data export file
|
||||||
description: Open Menu → ManageData → Export Data. The file should now be in your `/Downloads` directory. Change the file extension type from `.prsv` to `.txt` (How to [Windows](https://www.guidingtech.com/how-to-change-file-type-on-windows/) | [Mac](https://support.apple.com/guide/mac-help/show-or-hide-filename-extensions-on-mac-mchlp2304/mac) | [iOS](https://www.guidingtech.com/change-file-type-extension-on-iphone/)).
|
description: Open Menu → ManageData → Export Data. The file should now be in your `/Downloads` directory. Change the file extension type from `.prsv` to `.txt` (How to [Windows](https://www.guidingtech.com/how-to-change-file-type-on-windows/) | [Mac](https://support.apple.com/guide/mac-help/show-or-hide-filename-extensions-on-mac-mchlp2304/mac) | [iOS](https://www.guidingtech.com/change-file-type-extension-on-iphone/)).
|
||||||
placeholder: Focus me and then drop your file here (or use the upload button at the bottom)
|
placeholder: Focus me and then drop your file here (or use the upload button at the bottom)
|
||||||
validations:
|
validations:
|
||||||
|
4
.github/pull_request_template.md
vendored
4
.github/pull_request_template.md
vendored
@ -2,10 +2,10 @@
|
|||||||
<!-- Make sure that this PR is not overlapping with someone else's work -->
|
<!-- Make sure that this PR is not overlapping with someone else's work -->
|
||||||
<!-- Please try to keep the PR self-contained (and small) -->
|
<!-- Please try to keep the PR self-contained (and small) -->
|
||||||
|
|
||||||
## What are the changes?
|
## What are the changes the user will see?
|
||||||
<!-- Summarize what are the changes from a user perspective on the application -->
|
<!-- Summarize what are the changes from a user perspective on the application -->
|
||||||
|
|
||||||
## Why am I doing these changes the user will see?
|
## Why am I making these changes?
|
||||||
<!-- Explain why you decided to introduce these changes -->
|
<!-- Explain why you decided to introduce these changes -->
|
||||||
<!-- Does it come from an issue or another PR? Please link it -->
|
<!-- Does it come from an issue or another PR? Please link it -->
|
||||||
<!-- Explain why you believe this can enhance user experience -->
|
<!-- Explain why you believe this can enhance user experience -->
|
||||||
|
310
index.css
310
index.css
@ -1,16 +1,8 @@
|
|||||||
|
/* Global */
|
||||||
:root {
|
:root {
|
||||||
--color-base: hsl(0, 0%, 55%);
|
--color-base: hsl(0, 0%, 55%);
|
||||||
--color-light: hsl(0, 0%, 90%);
|
--color-light: hsl(0, 0%, 90%);
|
||||||
--color-dark: hsl(0, 0%, 10%);
|
--color-dark: hsl(0, 0%, 10%);
|
||||||
--controls-size: 10vh;
|
|
||||||
--text-shadow-size: 0.65vh;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (orientation: landscape) {
|
|
||||||
:root {
|
|
||||||
--controls-size: 20vh;
|
|
||||||
--text-shadow-size: 1.3vh;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
html {
|
html {
|
||||||
@ -43,33 +35,181 @@ body {
|
|||||||
transform-origin: top !important;
|
transform-origin: top !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#layout:fullscreen #dpad, #layout:fullscreen {
|
||||||
|
bottom: 6rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
input:-internal-autofill-selected {
|
||||||
|
-webkit-background-clip: text;
|
||||||
|
background-clip: text;
|
||||||
|
}
|
||||||
|
|
||||||
/* Need adjust input font-size */
|
/* Need adjust input font-size */
|
||||||
input {
|
input {
|
||||||
font-size: 3.2rem;
|
font-size: 3.2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.hidden {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
input:-internal-autofill-selected {
|
||||||
|
-webkit-background-clip: text;
|
||||||
|
background-clip: text;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Touch Controls: */
|
||||||
|
|
||||||
|
#touchControls {
|
||||||
|
--text-shadow-size: 0.65vh;
|
||||||
|
--controls-size: 10vh;
|
||||||
|
--touch-control-opacity: 0.6;
|
||||||
|
|
||||||
|
--controls-padding: 1rem;
|
||||||
|
|
||||||
|
--controls-size-with-padding: calc(var(--controls-size) + var(--controls-padding));
|
||||||
|
--controls-size-with-wide-padding: calc(var(--controls-size) *1.2 + var(--controls-padding));
|
||||||
|
--control-group-extra-size: calc(var(--controls-size) * 0.8);
|
||||||
|
--control-group-extra-wide-size: calc(var(--controls-size) * 1.2);
|
||||||
|
|
||||||
|
--control-group-extra-2-offset: calc(var(--controls-size-with-padding) + (var(--controls-size) - var(--control-group-extra-size)) / 2);
|
||||||
|
--control-group-extra-1-offset: calc(var(--controls-padding) + (var(--controls-size) - var(--control-group-extra-size)) / 2);
|
||||||
|
|
||||||
|
--small-control-size: calc(var(--controls-size) / 3);
|
||||||
|
--rect-control-size: calc(var(--controls-size) * 0.74);
|
||||||
|
|
||||||
|
font-family: 'emerald';
|
||||||
|
font-size: var(--controls-size);
|
||||||
|
text-shadow: var(--color-dark) var(--text-shadow-size) var(--text-shadow-size);
|
||||||
|
color: var(--color-light);
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (orientation: landscape) {
|
||||||
|
#touchControls {
|
||||||
|
--controls-size: 20vh;
|
||||||
|
--text-shadow-size: 1.3vh;
|
||||||
|
--small-button-offset: 4vh;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#touchControls:not(.visible) {
|
#touchControls:not(.visible) {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
#dpad, #apad {
|
#touchControls .active {
|
||||||
|
opacity: var(--touch-control-opacity);
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 1rem;
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
justify-content: space-around;
|
||||||
|
align-items: center;
|
||||||
|
width: var(--controls-size);
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group-dpad {
|
||||||
|
width: calc(2 * var(--controls-size));
|
||||||
|
height: calc(2 * var(--controls-size));
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group-extra {
|
||||||
|
width: var(--control-group-extra-size);
|
||||||
|
height: var(--control-group-extra-size);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Hide buttons on specific UIs */
|
||||||
|
|
||||||
|
/* Show #apadPreviousTab and #apadNextTab only in settings, except in touch configuration panel */
|
||||||
|
#touchControls:not([data-ui-mode^='SETTINGS']) #apadPreviousTab,
|
||||||
|
#touchControls:not([data-ui-mode^='SETTINGS']) #apadNextTab,
|
||||||
|
#touchControls:is(.config-mode) #apadPreviousTab,
|
||||||
|
#touchControls:is(.config-mode) #apadNextTab {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Show #apadInfo only in battle */
|
||||||
|
#touchControls:not([data-ui-mode='COMMAND']):not([data-ui-mode='FIGHT']):not([data-ui-mode='BALL']):not([data-ui-mode='TARGET_SELECT']) #apadInfo {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Show #apadStats only in battle and shop */
|
||||||
|
#touchControls:not([data-ui-mode='COMMAND']):not([data-ui-mode='FIGHT']):not([data-ui-mode='BALL']):not([data-ui-mode='TARGET_SELECT']):not([data-ui-mode='MODIFIER_SELECT']) #apadStats {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Show cycle buttons only on STARTER_SELECT and on touch configuration panel */
|
||||||
|
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadOpenFilters,
|
||||||
|
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadCycleForm,
|
||||||
|
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadCycleShiny,
|
||||||
|
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadCycleNature,
|
||||||
|
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadCycleAbility,
|
||||||
|
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadCycleGender,
|
||||||
|
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadCycleVariant {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Configuration toolbar */
|
||||||
|
|
||||||
|
#configToolbar {
|
||||||
|
width: 100%;
|
||||||
|
position: fixed;
|
||||||
|
top: 1rem;
|
||||||
|
left: 0;
|
||||||
|
z-index: 9;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#configToolbar .column {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
gap: 10%;
|
||||||
|
padding: 0 var(--controls-padding);
|
||||||
|
}
|
||||||
|
|
||||||
|
#configToolbar .button-row {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-evenly;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#configToolbar .info-row {
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-start;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#configToolbar .button {
|
||||||
z-index: 3;
|
z-index: 3;
|
||||||
|
background-color: var(--color-base);
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
text-align: center;
|
||||||
|
border-radius: 10%;
|
||||||
|
height: var(--small-control-size);
|
||||||
|
font-size: var(--small-control-size);
|
||||||
|
border-radius: 8px;
|
||||||
|
padding: 2px 8px;
|
||||||
|
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3) calc(var(--text-shadow-size) / 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (orientation: portrait) {
|
#configToolbar .button:active {
|
||||||
#dpad, #apad {
|
opacity: var(--touch-control-opacity)
|
||||||
bottom: calc(1rem + env(safe-area-inset-bottom));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#configToolbar .orientation-label {
|
||||||
|
font-size: var(--small-control-size);
|
||||||
|
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3) calc(var(--text-shadow-size) / 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* dpad */
|
||||||
#dpad {
|
#dpad {
|
||||||
left: 1rem;
|
z-index: 3;
|
||||||
}
|
opacity: 0.8;
|
||||||
|
|
||||||
#apad {
|
|
||||||
right: 1rem;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#dpad svg {
|
#dpad svg {
|
||||||
@ -78,114 +218,84 @@ input {
|
|||||||
fill: var(--color-base);
|
fill: var(--color-base);
|
||||||
}
|
}
|
||||||
|
|
||||||
#dpad svg rect {
|
/* apad buttons */
|
||||||
opacity: 0.6;
|
|
||||||
}
|
|
||||||
|
|
||||||
#apad > * {
|
.apad-button {
|
||||||
width: var(--controls-size);
|
|
||||||
height: var(--controls-size);
|
|
||||||
}
|
|
||||||
|
|
||||||
#apad .apadBtn {
|
|
||||||
width: var(--controls-size);
|
|
||||||
height: var(--controls-size);
|
|
||||||
background-color: var(--color-base);
|
background-color: var(--color-base);
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
width: var(--controls-size);
|
||||||
|
height: var(--controls-size);
|
||||||
|
opacity: 0.8;
|
||||||
|
border-radius: 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#apad .apadLabel {
|
.apad-small {
|
||||||
font-family: 'emerald';
|
width: var(--small-control-size);
|
||||||
font-size: var(--controls-size);
|
height: var(--small-control-size);
|
||||||
text-shadow: var(--color-dark) var(--text-shadow-size) var(--text-shadow-size);
|
}
|
||||||
color: var(--color-light);
|
|
||||||
|
.apad-label {
|
||||||
user-select: none;
|
user-select: none;
|
||||||
|
height: 100%;
|
||||||
|
margin-right: -2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#apad .apadLabelSmall {
|
.apad-small > .apad-label {
|
||||||
font-size: calc(var(--controls-size) / 3);
|
font-size: var(--small-control-size);
|
||||||
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3) calc(var(--text-shadow-size) / 3);
|
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3) calc(var(--text-shadow-size) / 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
#apad #apadLabelAction, #apad #apadLabelCancel {
|
.apad-rectangle {
|
||||||
margin-left: calc(var(--controls-size) / 3);
|
|
||||||
line-height: 0.9;
|
|
||||||
}
|
|
||||||
|
|
||||||
#apad > :nth-child(2) {
|
|
||||||
position: relative;
|
|
||||||
right: var(--controls-size);
|
|
||||||
}
|
|
||||||
|
|
||||||
#apad .apadRectBtn {
|
|
||||||
position: relative;
|
|
||||||
text-align: center;
|
text-align: center;
|
||||||
padding-right: 10%;
|
width: var(--rect-control-size);
|
||||||
border-radius: 10%;
|
height: var(--small-control-size);
|
||||||
bottom: calc(var(--controls-size) * 0.05);
|
|
||||||
width: calc(var(--controls-size) * 0.6);
|
|
||||||
height: calc(var(--controls-size) * 0.3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#apad .apadSqBtn {
|
.apad-square {
|
||||||
border-radius: 10%;
|
width: var(--small-control-size);
|
||||||
width: calc(var(--controls-size) * 0.3);
|
height: var(--small-control-size);
|
||||||
height: calc(var(--controls-size) * 0.3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#apad .apadBtnContainer {
|
.apad-circle {
|
||||||
position: relative;
|
width: var(--controls-size);
|
||||||
display: flex;
|
height: var(--controls-size);
|
||||||
|
border-radius: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
#apad .apadRectBtnContainer {
|
/* Defaults:*/
|
||||||
flex-wrap: wrap;
|
|
||||||
margin-top: calc(var(--controls-size) * -0.8);
|
#control-group-dpad {
|
||||||
left: calc(var(--controls-size) * 0.175);
|
left: var(--controls-padding);
|
||||||
height: calc(var(--controls-size) * 0.8);
|
bottom: var(--controls-padding);
|
||||||
}
|
}
|
||||||
|
|
||||||
#apad .apadSqBtnContainer {
|
#control-group-action {
|
||||||
flex-wrap: wrap;
|
right: var(--controls-padding);
|
||||||
justify-content: space-evenly;
|
bottom: var(--controls-size-with-padding);
|
||||||
align-items: center;
|
|
||||||
margin-bottom: calc(var(--controls-size) * -0.8);
|
|
||||||
top: calc(var(--controls-size) * -0.9);
|
|
||||||
width: calc(var(--controls-size) * 0.8);
|
|
||||||
height: calc(var(--controls-size) * 0.8);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#apad .apadRectBtnContainer > #apadMenu {
|
#control-group-cancel {
|
||||||
align-self: flex-end;
|
right: var(--controls-size-with-wide-padding);
|
||||||
|
bottom: var(--controls-padding);
|
||||||
}
|
}
|
||||||
|
|
||||||
#apad .apadRectBtnContainer > .apadSqBtn:not(:first-child) {
|
#control-group-extra-1 {
|
||||||
margin-left: 10%;
|
right: var(--control-group-extra-1-offset);
|
||||||
|
bottom: var(--control-group-extra-1-offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
#touchControls:not([data-ui-mode='STARTER_SELECT']):not([data-ui-mode='SETTINGS']):not([data-ui-mode='SETTINGS_DISPLAY']):not([data-ui-mode='SETTINGS_AUDIO']):not([data-ui-mode='SETTINGS_GAMEPAD']):not([data-ui-mode='SETTINGS_KEYBOARD']) #apad .apadRectBtnContainer > .apadSqBtn:not(.apadBattle),
|
#control-group-extra-2 {
|
||||||
#touchControls:not([data-ui-mode='STARTER_SELECT']):not([data-ui-mode='SETTINGS']):not([data-ui-mode='SETTINGS_DISPLAY']):not([data-ui-mode='SETTINGS_AUDIO']):not([data-ui-mode='SETTINGS_GAMEPAD']):not([data-ui-mode='SETTINGS_KEYBOARD']) #apad .apadSqBtnContainer > .apadSqBtn:not(.apadBattle)
|
width: var(--control-group-extra-wide-size);
|
||||||
{
|
right: var(--control-group-extra-2-offset);
|
||||||
display: none;
|
bottom: var(--control-group-extra-2-offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
#touchControls:not([data-ui-mode='COMMAND']):not([data-ui-mode='FIGHT']):not([data-ui-mode='BALL']):not([data-ui-mode='TARGET_SELECT']):not([data-ui-mode='MODIFIER_SELECT']) #apad .apadBattle {
|
/* Layout */
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
#apad .apadRectBtnContainer + .apadSqBtnContainer {
|
|
||||||
top: calc(var(--controls-size) * -1.9);
|
|
||||||
left: calc(var(--controls-size) * -0.9);
|
|
||||||
}
|
|
||||||
|
|
||||||
#apad .apadBtnContainer .apadLabel {
|
|
||||||
margin-left: calc(var(--controls-size) / 12);
|
|
||||||
line-height: 0.8;
|
|
||||||
}
|
|
||||||
|
|
||||||
#dpad path:not(.active), #apad .apadBtn:not(.active) {
|
|
||||||
opacity: 0.6;
|
|
||||||
}
|
|
||||||
|
|
||||||
#layout:fullscreen #dpad, #layout:fullscreen #apad {
|
#layout:fullscreen #dpad, #layout:fullscreen #apad {
|
||||||
bottom: 6rem;
|
bottom: 6rem;
|
||||||
|
114
index.html
114
index.html
@ -64,54 +64,84 @@
|
|||||||
<body>
|
<body>
|
||||||
<div id="app"></div>
|
<div id="app"></div>
|
||||||
<div id="touchControls">
|
<div id="touchControls">
|
||||||
<div id="dpad" class="unselectable">
|
<div class="left">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 72 72">
|
<div id="control-group-dpad" class="control-group control-group-dpad">
|
||||||
<path id="dpadUp" data-key="UP" d="M48,5.8C48,2.5,45.4,0,42,0H29.9C26.6,0,24,2.4,24,5.8V24h24V5.8z" />
|
<div id="dpad" data-control-key="DPAD">
|
||||||
<path id="dpadRight" data-key="RIGHT" d="M66.2,24H48v24h18.2c3.3,0,5.8-2.7,5.8-6V29.9C72,26.5,69.5,24,66.2,24z" />
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 72 72">
|
||||||
<path id="dpadDown" data-key="DOWN" d="M24,66.3c0,3.3,2.6,5.7,5.9,5.7H42c3.3,0,6-2.4,6-5.7V48H24V66.3z" />
|
<path id="dpadUp" data-key="UP"
|
||||||
<path id="dpadLeft" data-key="LEFT" d="M5.7,24C2.4,24,0,26.5,0,29.9V42c0,3.3,2.3,6,5.7,6H24V24H5.7z" />
|
d="M48,5.8C48,2.5,45.4,0,42,0H29.9C26.6,0,24,2.4,24,5.8V24h24V5.8z" />
|
||||||
<rect id="dpadCenter" x="24" y="24" width="24" height="24" />
|
<path id="dpadRight" data-key="RIGHT"
|
||||||
</svg>
|
d="M66.2,24H48v24h18.2c3.3,0,5.8-2.7,5.8-6V29.9C72,26.5,69.5,24,66.2,24z" />
|
||||||
|
<path id="dpadDown" data-key="DOWN"
|
||||||
|
d="M24,66.3c0,3.3,2.6,5.7,5.9,5.7H42c3.3,0,6-2.4,6-5.7V48H24V66.3z" />
|
||||||
|
<path id="dpadLeft" data-key="LEFT"
|
||||||
|
d="M5.7,24C2.4,24,0,26.5,0,29.9V42c0,3.3,2.3,6,5.7,6H24V24H5.7z" />
|
||||||
|
<rect id="dpadCenter" x="24" y="24" width="24" height="24" />
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="apad" class="unselectable">
|
<div class="right">
|
||||||
<div id="apadAction" class="apadCircBtn apadBtn" data-key="ACTION">
|
<div id="control-group-action" class="control-group">
|
||||||
<text id="apadLabelAction" class="apadLabel">A</text>
|
<div id="apadAction" class="apad-button apad-circle" data-key="ACTION">
|
||||||
</div>
|
<span class="apad-label">A</span>
|
||||||
<div id="apadCancel" class="apadCircBtn apadBtn" data-key="CANCEL">
|
|
||||||
<text id="apadLabelCancel" class="apadLabel">B</text>
|
|
||||||
</div>
|
|
||||||
<div class="apadBtnContainer apadRectBtnContainer">
|
|
||||||
<div id="apadCycleShiny" class="apadSqBtn apadBtn" data-key="CYCLE_SHINY">
|
|
||||||
<text class="apadLabel apadLabelSmall">R</text>
|
|
||||||
</div>
|
|
||||||
<div id="apadCycleVariant" class="apadSqBtn apadBtn" data-key="V">
|
|
||||||
<text class="apadLabel apadLabelSmall">V</text>
|
|
||||||
</div>
|
|
||||||
<div id="apadStats" class="apadRectBtn apadBtn apadBattle" data-key="STATS">
|
|
||||||
<text class="apadLabel apadLabelSmall">C</text>
|
|
||||||
</div>
|
|
||||||
<div id="apadMenu" class="apadRectBtn apadBtn" data-key="MENU">
|
|
||||||
<text class="apadLabel apadLabelSmall">Menu</text>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="apadBtnContainer apadSqBtnContainer">
|
|
||||||
<div id="apadCycleForm" class="apadSqBtn apadBtn" data-key="CYCLE_FORM">
|
<div id="control-group-cancel" class="control-group">
|
||||||
<text class="apadLabel apadLabelSmall">F</text>
|
<div id="apadCancel" class="apad-button apad-circle" data-key="CANCEL">
|
||||||
</div>
|
<span class="apad-label">B</span>
|
||||||
<div id="apadCycleGender" class="apadSqBtn apadBtn" data-key="CYCLE_GENDER">
|
|
||||||
<text class="apadLabel apadLabelSmall">G</text>
|
|
||||||
</div>
|
|
||||||
<div id="apadCycleAbility" class="apadSqBtn apadBtn" data-key="CYCLE_ABILITY">
|
|
||||||
<text class="apadLabel apadLabelSmall">E</text>
|
|
||||||
</div>
|
|
||||||
<div id="apadCycleNature" class="apadSqBtn apadBtn" data-key="CYCLE_NATURE">
|
|
||||||
<text class="apadLabel apadLabelSmall">N</text>
|
|
||||||
</div>
|
|
||||||
<div id="apadInfo" class="apadRectBtn apadBtn apadBattle" data-key="V">
|
|
||||||
<text class="apadLabel apadLabelSmall">V</text>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div id="control-group-extra-1" class="control-group control-group-extra">
|
||||||
|
<!-- buttons to navigate settings tabs -->
|
||||||
|
<div id="apadPreviousTab" class="apad-button apad-square apad-small" data-key="CYCLE_FORM">
|
||||||
|
<span class="apad-label">F</span>
|
||||||
|
</div>
|
||||||
|
<div id="apadNextTab" class="apad-button apad-square apad-small" data-key="CYCLE_SHINY">
|
||||||
|
<span class="apad-label">R</span>
|
||||||
|
</div>
|
||||||
|
<!-- buttons to open filter menu in starter select -->
|
||||||
|
<div id="apadOpenFilters" class="apad-button apad-rectangle apad-small" data-key="STATS">
|
||||||
|
<span class="apad-label">C</span>
|
||||||
|
</div>
|
||||||
|
<!-- main menu button -->
|
||||||
|
<div id="apadMenu" class="apad-button apad-rectangle apad-small" data-key="MENU">
|
||||||
|
<span class="apad-label">Menu</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="control-group-extra-2" class="control-group control-group-extra">
|
||||||
|
<!-- buttons to cycle through pokemon characteristics in starter select -->
|
||||||
|
<div id="apadCycleForm" class="apad-button apad-square apad-small" data-key="CYCLE_FORM">
|
||||||
|
<span class="apad-label">F</span>
|
||||||
|
</div>
|
||||||
|
<div id="apadCycleGender" class="apad-button apad-square apad-small" data-key="CYCLE_GENDER">
|
||||||
|
<span class="apad-label">G</span>
|
||||||
|
</div>
|
||||||
|
<div id="apadCycleShiny" class="apad-button apad-square apad-small" data-key="CYCLE_SHINY">
|
||||||
|
<span class="apad-label">R</span>
|
||||||
|
</div>
|
||||||
|
<div id="apadCycleAbility" class="apad-button apad-square apad-small" data-key="CYCLE_ABILITY">
|
||||||
|
<span class="apad-label">E</span>
|
||||||
|
</div>
|
||||||
|
<div id="apadCycleNature" class="apad-button apad-square apad-small" data-key="CYCLE_NATURE">
|
||||||
|
<span class="apad-label">N</span>
|
||||||
|
</div>
|
||||||
|
<div id="apadCycleVariant" class="apad-button apad-square apad-small" data-key="V">
|
||||||
|
<span class="apad-label">V</span>
|
||||||
|
</div>
|
||||||
|
<!-- buttons to display battle-specific information -->
|
||||||
|
<div id="apadInfo" class="apad-button apad-rectangle apad-small" data-key="V">
|
||||||
|
<span class="apad-label">V</span>
|
||||||
|
</div>
|
||||||
|
<div id="apadStats" class="apad-button apad-rectangle apad-small" data-key="STATS">
|
||||||
|
<span class="apad-label">C</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="tnc-links">
|
<div id="tnc-links">
|
||||||
|
BIN
public/images/ui/favorite.png
Normal file
BIN
public/images/ui/favorite.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 226 B |
BIN
public/images/ui/legacy/favorite.png
Normal file
BIN
public/images/ui/legacy/favorite.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 226 B |
@ -55,7 +55,6 @@ import {UiInputs} from "./ui-inputs";
|
|||||||
import { NewArenaEvent } from "./events/battle-scene";
|
import { NewArenaEvent } from "./events/battle-scene";
|
||||||
import { ArenaFlyout } from "./ui/arena-flyout";
|
import { ArenaFlyout } from "./ui/arena-flyout";
|
||||||
import { EaseType } from "#enums/ease-type";
|
import { EaseType } from "#enums/ease-type";
|
||||||
import { Abilities } from "#enums/abilities";
|
|
||||||
import { BattleSpec } from "#enums/battle-spec";
|
import { BattleSpec } from "#enums/battle-spec";
|
||||||
import { BattleStyle } from "#enums/battle-style";
|
import { BattleStyle } from "#enums/battle-style";
|
||||||
import { Biome } from "#enums/biome";
|
import { Biome } from "#enums/biome";
|
||||||
@ -1153,12 +1152,6 @@ export default class BattleScene extends SceneBase {
|
|||||||
playerField.forEach((_, p) => this.pushPhase(new ReturnPhase(this, p)));
|
playerField.forEach((_, p) => this.pushPhase(new ReturnPhase(this, p)));
|
||||||
|
|
||||||
for (const pokemon of this.getParty()) {
|
for (const pokemon of this.getParty()) {
|
||||||
// Only trigger form change when Eiscue is in Noice form
|
|
||||||
// Hardcoded Eiscue for now in case it is fused with another pokemon
|
|
||||||
if (pokemon.species.speciesId === Species.EISCUE && pokemon.hasAbility(Abilities.ICE_FACE) && pokemon.formIndex === 1) {
|
|
||||||
this.triggerPokemonFormChange(pokemon, SpeciesFormChangeManualTrigger);
|
|
||||||
}
|
|
||||||
|
|
||||||
pokemon.resetBattleData();
|
pokemon.resetBattleData();
|
||||||
applyPostBattleInitAbAttrs(PostBattleInitAbAttr, pokemon);
|
applyPostBattleInitAbAttrs(PostBattleInitAbAttr, pokemon);
|
||||||
}
|
}
|
||||||
@ -2222,7 +2215,7 @@ export default class BattleScene extends SceneBase {
|
|||||||
}
|
}
|
||||||
} else if (!virtual) {
|
} else if (!virtual) {
|
||||||
const defaultModifierType = getDefaultModifierTypeForTier(modifier.type.tier);
|
const defaultModifierType = getDefaultModifierTypeForTier(modifier.type.tier);
|
||||||
this.queueMessage(`The stack for this item is full.\n You will receive ${defaultModifierType.name} instead.`, undefined, true);
|
this.queueMessage(i18next.t("battle:itemStackFull", { fullItemName: modifier.type.name, itemName: defaultModifierType.name }), undefined, true);
|
||||||
return this.addModifier(defaultModifierType.newModifier(), ignoreUpdate, playSound, false, instant).then(success => resolve(success));
|
return this.addModifier(defaultModifierType.newModifier(), ignoreUpdate, playSound, false, instant).then(success => resolve(success));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -245,25 +245,6 @@ export class PreDefendAbAttr extends AbAttr {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class PreDefendFormChangeAbAttr extends PreDefendAbAttr {
|
|
||||||
private formFunc: (p: Pokemon) => integer;
|
|
||||||
|
|
||||||
constructor(formFunc: ((p: Pokemon) => integer)) {
|
|
||||||
super(true);
|
|
||||||
|
|
||||||
this.formFunc = formFunc;
|
|
||||||
}
|
|
||||||
|
|
||||||
applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: Move, cancelled: Utils.BooleanHolder, args: any[]): boolean {
|
|
||||||
const formIndex = this.formFunc(pokemon);
|
|
||||||
if (formIndex !== pokemon.formIndex) {
|
|
||||||
pokemon.scene.triggerPokemonFormChange(pokemon, SpeciesFormChangeManualTrigger, false);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
export class PreDefendFullHpEndureAbAttr extends PreDefendAbAttr {
|
export class PreDefendFullHpEndureAbAttr extends PreDefendAbAttr {
|
||||||
applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: Move, cancelled: Utils.BooleanHolder, args: any[]): boolean {
|
applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: Move, cancelled: Utils.BooleanHolder, args: any[]): boolean {
|
||||||
if (pokemon.isFullHp() &&
|
if (pokemon.isFullHp() &&
|
||||||
@ -330,21 +311,6 @@ export class ReceivedTypeDamageMultiplierAbAttr extends ReceivedMoveDamageMultip
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class PreDefendMoveDamageToOneAbAttr extends ReceivedMoveDamageMultiplierAbAttr {
|
|
||||||
constructor(condition: PokemonDefendCondition) {
|
|
||||||
super(condition, 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: Move, cancelled: Utils.BooleanHolder, args: any[]): boolean {
|
|
||||||
if (this.condition(pokemon, attacker, move)) {
|
|
||||||
(args[0] as Utils.NumberHolder).value = Math.floor(pokemon.getMaxHp() / 8);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Determines whether a Pokemon is immune to a move because of an ability.
|
* Determines whether a Pokemon is immune to a move because of an ability.
|
||||||
* @extends PreDefendAbAttr
|
* @extends PreDefendAbAttr
|
||||||
@ -539,45 +505,6 @@ export class PostDefendGulpMissileAbAttr extends PostDefendAbAttr {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class PostDefendDisguiseAbAttr extends PostDefendAbAttr {
|
|
||||||
|
|
||||||
applyPostDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: Move, hitResult: HitResult, args: any[]): boolean {
|
|
||||||
if (pokemon.formIndex === 0 && pokemon.battleData.hitCount !== 0 && (move.category === MoveCategory.SPECIAL || move.category === MoveCategory.PHYSICAL)) {
|
|
||||||
|
|
||||||
const recoilDamage = Math.ceil((pokemon.getMaxHp() / 8) - attacker.turnData.damageDealt);
|
|
||||||
if (!recoilDamage) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
pokemon.damageAndUpdate(recoilDamage, HitResult.OTHER);
|
|
||||||
pokemon.turnData.damageTaken += recoilDamage;
|
|
||||||
pokemon.scene.queueMessage(i18next.t("abilityTriggers:postDefendDisguise", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class PostDefendFormChangeAbAttr extends PostDefendAbAttr {
|
|
||||||
private formFunc: (p: Pokemon) => integer;
|
|
||||||
|
|
||||||
constructor(formFunc: ((p: Pokemon) => integer)) {
|
|
||||||
super(true);
|
|
||||||
|
|
||||||
this.formFunc = formFunc;
|
|
||||||
}
|
|
||||||
|
|
||||||
applyPostDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: Move, hitResult: HitResult, args: any[]): boolean {
|
|
||||||
const formIndex = this.formFunc(pokemon);
|
|
||||||
if (formIndex !== pokemon.formIndex) {
|
|
||||||
pokemon.scene.triggerPokemonFormChange(pokemon, SpeciesFormChangeManualTrigger, false);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export class FieldPriorityMoveImmunityAbAttr extends PreDefendAbAttr {
|
export class FieldPriorityMoveImmunityAbAttr extends PreDefendAbAttr {
|
||||||
applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: Move, cancelled: Utils.BooleanHolder, args: any[]): boolean {
|
applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: Move, cancelled: Utils.BooleanHolder, args: any[]): boolean {
|
||||||
const attackPriority = new Utils.IntegerHolder(move.priority);
|
const attackPriority = new Utils.IntegerHolder(move.priority);
|
||||||
@ -4045,34 +3972,44 @@ export class PostSummonStatChangeOnArenaAbAttr extends PostSummonStatChangeAbAtt
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Takes no damage from the first hit of a physical move.
|
* Takes no damage from the first hit of a damaging move.
|
||||||
* This is used in Ice Face ability.
|
* This is used in the Disguise and Ice Face abilities.
|
||||||
|
* @extends ReceivedMoveDamageMultiplierAbAttr
|
||||||
*/
|
*/
|
||||||
export class IceFaceBlockPhysicalAbAttr extends ReceivedMoveDamageMultiplierAbAttr {
|
export class FormBlockDamageAbAttr extends ReceivedMoveDamageMultiplierAbAttr {
|
||||||
private multiplier: number;
|
private multiplier: number;
|
||||||
|
private tagType: BattlerTagType;
|
||||||
|
private recoilDamageFunc: ((pokemon: Pokemon) => number) | undefined;
|
||||||
|
private triggerMessageFunc: (pokemon: Pokemon, abilityName: string) => string;
|
||||||
|
|
||||||
constructor(condition: PokemonDefendCondition, multiplier: number) {
|
constructor(condition: PokemonDefendCondition, multiplier: number, tagType: BattlerTagType, triggerMessageFunc: (pokemon: Pokemon, abilityName: string) => string, recoilDamageFunc?: (pokemon: Pokemon) => number) {
|
||||||
super(condition, multiplier);
|
super(condition, multiplier);
|
||||||
|
|
||||||
this.multiplier = multiplier;
|
this.multiplier = multiplier;
|
||||||
|
this.tagType = tagType;
|
||||||
|
this.recoilDamageFunc = recoilDamageFunc;
|
||||||
|
this.triggerMessageFunc = triggerMessageFunc;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Applies the Ice Face pre-defense ability to the Pokémon.
|
* Applies the pre-defense ability to the Pokémon.
|
||||||
* Removes BattlerTagType.ICE_FACE when hit by physical attack and is in Ice Face form.
|
* Removes the appropriate `BattlerTagType` when hit by an attack and is in its defense form.
|
||||||
*
|
*
|
||||||
* @param {Pokemon} pokemon - The Pokémon with the Ice Face ability.
|
* @param {Pokemon} pokemon The Pokémon with the ability.
|
||||||
* @param {boolean} passive - Whether the ability is passive.
|
* @param {boolean} passive n/a
|
||||||
* @param {Pokemon} attacker - The attacking Pokémon.
|
* @param {Pokemon} attacker The attacking Pokémon.
|
||||||
* @param {PokemonMove} move - The move being used.
|
* @param {PokemonMove} move The move being used.
|
||||||
* @param {Utils.BooleanHolder} cancelled - A holder for whether the move was cancelled.
|
* @param {Utils.BooleanHolder} cancelled n/a
|
||||||
* @param {any[]} args - Additional arguments.
|
* @param {any[]} args Additional arguments.
|
||||||
* @returns {boolean} - Whether the immunity was applied.
|
* @returns {boolean} Whether the immunity was applied.
|
||||||
*/
|
*/
|
||||||
applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: Move, cancelled: Utils.BooleanHolder, args: any[]): boolean {
|
applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: Move, cancelled: Utils.BooleanHolder, args: any[]): boolean {
|
||||||
if (this.condition(pokemon, attacker, move)) {
|
if (this.condition(pokemon, attacker, move)) {
|
||||||
(args[0] as Utils.NumberHolder).value = this.multiplier;
|
(args[0] as Utils.NumberHolder).value = this.multiplier;
|
||||||
pokemon.removeTag(BattlerTagType.ICE_FACE);
|
pokemon.removeTag(this.tagType);
|
||||||
|
if (this.recoilDamageFunc) {
|
||||||
|
pokemon.damageAndUpdate(this.recoilDamageFunc(pokemon), HitResult.OTHER);
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4080,14 +4017,14 @@ export class IceFaceBlockPhysicalAbAttr extends ReceivedMoveDamageMultiplierAbAt
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the message triggered when the Pokémon avoids damage using the Ice Face ability.
|
* Gets the message triggered when the Pokémon avoids damage using the form-changing ability.
|
||||||
* @param {Pokemon} pokemon - The Pokémon with the Ice Face ability.
|
* @param {Pokemon} pokemon The Pokémon with the ability.
|
||||||
* @param {string} abilityName - The name of the ability.
|
* @param {string} abilityName The name of the ability.
|
||||||
* @param {...any} args - Additional arguments.
|
* @param {...any} args n/a
|
||||||
* @returns {string} - The trigger message.
|
* @returns {string} The trigger message.
|
||||||
*/
|
*/
|
||||||
getTriggerMessage(pokemon: Pokemon, abilityName: string, ...args: any[]): string {
|
getTriggerMessage(pokemon: Pokemon, abilityName: string, ...args: any[]): string {
|
||||||
return i18next.t("abilityTriggers:iceFaceAvoidedDamage", { pokemonName: getPokemonNameWithAffix(pokemon), abilityName });
|
return this.triggerMessageFunc(pokemon, abilityName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4408,7 +4345,7 @@ export function initAbilities() {
|
|||||||
.attr(StatusEffectImmunityAbAttr, StatusEffect.POISON, StatusEffect.TOXIC)
|
.attr(StatusEffectImmunityAbAttr, StatusEffect.POISON, StatusEffect.TOXIC)
|
||||||
.ignorable(),
|
.ignorable(),
|
||||||
new Ability(Abilities.FLASH_FIRE, 3)
|
new Ability(Abilities.FLASH_FIRE, 3)
|
||||||
.attr(TypeImmunityAddBattlerTagAbAttr, Type.FIRE, BattlerTagType.FIRE_BOOST, 1, (pokemon: Pokemon) => !pokemon.status || pokemon.status.effect !== StatusEffect.FREEZE)
|
.attr(TypeImmunityAddBattlerTagAbAttr, Type.FIRE, BattlerTagType.FIRE_BOOST, 1)
|
||||||
.ignorable(),
|
.ignorable(),
|
||||||
new Ability(Abilities.SHIELD_DUST, 3)
|
new Ability(Abilities.SHIELD_DUST, 3)
|
||||||
.attr(IgnoreMoveEffectsAbAttr)
|
.attr(IgnoreMoveEffectsAbAttr)
|
||||||
@ -5004,20 +4941,18 @@ export function initAbilities() {
|
|||||||
.attr(NoFusionAbilityAbAttr)
|
.attr(NoFusionAbilityAbAttr)
|
||||||
.bypassFaint(),
|
.bypassFaint(),
|
||||||
new Ability(Abilities.DISGUISE, 7)
|
new Ability(Abilities.DISGUISE, 7)
|
||||||
.attr(PreDefendMoveDamageToOneAbAttr, (target, user, move) => target.formIndex === 0 && target.getAttackTypeEffectiveness(move.type, user) > 0)
|
|
||||||
.attr(PostSummonFormChangeAbAttr, p => p.battleData.hitCount === 0 ? 0 : 1)
|
|
||||||
.attr(PostBattleInitFormChangeAbAttr, () => 0)
|
|
||||||
.attr(PostDefendFormChangeAbAttr, p => p.battleData.hitCount === 0 ? 0 : 1)
|
|
||||||
.attr(PreDefendFormChangeAbAttr, p => p.battleData.hitCount === 0 ? 0 : 1)
|
|
||||||
.attr(PostDefendDisguiseAbAttr)
|
|
||||||
.attr(UncopiableAbilityAbAttr)
|
.attr(UncopiableAbilityAbAttr)
|
||||||
.attr(UnswappableAbilityAbAttr)
|
.attr(UnswappableAbilityAbAttr)
|
||||||
.attr(UnsuppressableAbilityAbAttr)
|
.attr(UnsuppressableAbilityAbAttr)
|
||||||
.attr(NoTransformAbilityAbAttr)
|
.attr(NoTransformAbilityAbAttr)
|
||||||
.attr(NoFusionAbilityAbAttr)
|
.attr(NoFusionAbilityAbAttr)
|
||||||
.bypassFaint()
|
// Add BattlerTagType.DISGUISE if the pokemon is in its disguised form
|
||||||
.ignorable()
|
.conditionalAttr(pokemon => pokemon.formIndex === 0, PostSummonAddBattlerTagAbAttr, BattlerTagType.DISGUISE, 0, false)
|
||||||
.partial(),
|
.attr(FormBlockDamageAbAttr, (target, user, move) => !!target.getTag(BattlerTagType.DISGUISE) && target.getAttackTypeEffectiveness(move.type, user) > 0, 0, BattlerTagType.DISGUISE,
|
||||||
|
(pokemon, abilityName) => i18next.t("abilityTriggers:disguiseAvoidedDamage", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), abilityName: abilityName }),
|
||||||
|
(pokemon) => Math.floor(pokemon.getMaxHp() / 8))
|
||||||
|
.attr(PostBattleInitFormChangeAbAttr, () => 0)
|
||||||
|
.ignorable(),
|
||||||
new Ability(Abilities.BATTLE_BOND, 7)
|
new Ability(Abilities.BATTLE_BOND, 7)
|
||||||
.attr(PostVictoryFormChangeAbAttr, () => 2)
|
.attr(PostVictoryFormChangeAbAttr, () => 2)
|
||||||
.attr(PostBattleInitFormChangeAbAttr, () => 1)
|
.attr(PostBattleInitFormChangeAbAttr, () => 1)
|
||||||
@ -5166,7 +5101,9 @@ export function initAbilities() {
|
|||||||
.conditionalAttr(getWeatherCondition(WeatherType.HAIL, WeatherType.SNOW), PostSummonAddBattlerTagAbAttr, BattlerTagType.ICE_FACE, 0)
|
.conditionalAttr(getWeatherCondition(WeatherType.HAIL, WeatherType.SNOW), PostSummonAddBattlerTagAbAttr, BattlerTagType.ICE_FACE, 0)
|
||||||
// When weather changes to HAIL or SNOW while pokemon is fielded, add BattlerTagType.ICE_FACE
|
// When weather changes to HAIL or SNOW while pokemon is fielded, add BattlerTagType.ICE_FACE
|
||||||
.attr(PostWeatherChangeAddBattlerTagAttr, BattlerTagType.ICE_FACE, 0, WeatherType.HAIL, WeatherType.SNOW)
|
.attr(PostWeatherChangeAddBattlerTagAttr, BattlerTagType.ICE_FACE, 0, WeatherType.HAIL, WeatherType.SNOW)
|
||||||
.attr(IceFaceBlockPhysicalAbAttr, (target, user, move) => move.category === MoveCategory.PHYSICAL && !!target.getTag(BattlerTagType.ICE_FACE), 0)
|
.attr(FormBlockDamageAbAttr, (target, user, move) => move.category === MoveCategory.PHYSICAL && !!target.getTag(BattlerTagType.ICE_FACE), 0, BattlerTagType.ICE_FACE,
|
||||||
|
(pokemon, abilityName) => i18next.t("abilityTriggers:iceFaceAvoidedDamage", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), abilityName: abilityName }))
|
||||||
|
.attr(PostBattleInitFormChangeAbAttr, () => 0)
|
||||||
.ignorable(),
|
.ignorable(),
|
||||||
new Ability(Abilities.POWER_SPOT, 8)
|
new Ability(Abilities.POWER_SPOT, 8)
|
||||||
.attr(AllyMoveCategoryPowerBoostAbAttr, [MoveCategory.SPECIAL, MoveCategory.PHYSICAL], 1.3),
|
.attr(AllyMoveCategoryPowerBoostAbAttr, [MoveCategory.SPECIAL, MoveCategory.PHYSICAL], 1.3),
|
||||||
|
@ -485,7 +485,8 @@ export function initMoveAnim(scene: BattleScene, move: Moves): Promise<void> {
|
|||||||
const fetchAnimAndResolve = (move: Moves) => {
|
const fetchAnimAndResolve = (move: Moves) => {
|
||||||
scene.cachedFetch(`./battle-anims/${moveName}.json`)
|
scene.cachedFetch(`./battle-anims/${moveName}.json`)
|
||||||
.then(response => {
|
.then(response => {
|
||||||
if (!response.ok) {
|
const contentType = response.headers.get("content-type");
|
||||||
|
if (!response.ok || contentType?.indexOf("application/json") === -1) {
|
||||||
console.error(`Could not load animation file for move '${moveName}'`, response.status, response.statusText);
|
console.error(`Could not load animation file for move '${moveName}'`, response.status, response.statusText);
|
||||||
populateMoveAnim(move, moveAnims.get(defaultMoveAnim));
|
populateMoveAnim(move, moveAnims.get(defaultMoveAnim));
|
||||||
return resolve();
|
return resolve();
|
||||||
|
@ -110,7 +110,7 @@ export class RechargingTag extends BattlerTag {
|
|||||||
/** Cancels the source's move this turn and queues a "__ must recharge!" message */
|
/** Cancels the source's move this turn and queues a "__ must recharge!" message */
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
if (lapseType === BattlerTagLapseType.PRE_MOVE) {
|
if (lapseType === BattlerTagLapseType.PRE_MOVE) {
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsRechargingLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:rechargingLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
(pokemon.scene.getCurrentPhase() as MovePhase).cancel();
|
(pokemon.scene.getCurrentPhase() as MovePhase).cancel();
|
||||||
pokemon.getMoveQueue().shift();
|
pokemon.getMoveQueue().shift();
|
||||||
}
|
}
|
||||||
@ -177,7 +177,7 @@ export class TrappedTag extends BattlerTag {
|
|||||||
onRemove(pokemon: Pokemon): void {
|
onRemove(pokemon: Pokemon): void {
|
||||||
super.onRemove(pokemon);
|
super.onRemove(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsTrappedOnRemove", {
|
pokemon.scene.queueMessage(i18next.t("battlerTags:trappedOnRemove", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
moveName: this.getMoveName()
|
moveName: this.getMoveName()
|
||||||
}));
|
}));
|
||||||
@ -192,7 +192,7 @@ export class TrappedTag extends BattlerTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsTrappedOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) });
|
return i18next.t("battlerTags:trappedOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -223,7 +223,7 @@ export class FlinchedTag extends BattlerTag {
|
|||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
if (lapseType === BattlerTagLapseType.PRE_MOVE) {
|
if (lapseType === BattlerTagLapseType.PRE_MOVE) {
|
||||||
(pokemon.scene.getCurrentPhase() as MovePhase).cancel();
|
(pokemon.scene.getCurrentPhase() as MovePhase).cancel();
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsFlinchedLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:flinchedLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
return super.lapse(pokemon, lapseType);
|
return super.lapse(pokemon, lapseType);
|
||||||
@ -272,26 +272,26 @@ export class ConfusedTag extends BattlerTag {
|
|||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.unshiftPhase(new CommonAnimPhase(pokemon.scene, pokemon.getBattlerIndex(), undefined, CommonAnim.CONFUSION));
|
pokemon.scene.unshiftPhase(new CommonAnimPhase(pokemon.scene, pokemon.getBattlerIndex(), undefined, CommonAnim.CONFUSION));
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsConfusedOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:confusedOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
onRemove(pokemon: Pokemon): void {
|
onRemove(pokemon: Pokemon): void {
|
||||||
super.onRemove(pokemon);
|
super.onRemove(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsConfusedOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:confusedOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
onOverlap(pokemon: Pokemon): void {
|
onOverlap(pokemon: Pokemon): void {
|
||||||
super.onOverlap(pokemon);
|
super.onOverlap(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsConfusedOnOverlap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:confusedOnOverlap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
const ret = lapseType !== BattlerTagLapseType.CUSTOM && super.lapse(pokemon, lapseType);
|
const ret = lapseType !== BattlerTagLapseType.CUSTOM && super.lapse(pokemon, lapseType);
|
||||||
|
|
||||||
if (ret) {
|
if (ret) {
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsConfusedLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:confusedLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
pokemon.scene.unshiftPhase(new CommonAnimPhase(pokemon.scene, pokemon.getBattlerIndex(), undefined, CommonAnim.CONFUSION));
|
pokemon.scene.unshiftPhase(new CommonAnimPhase(pokemon.scene, pokemon.getBattlerIndex(), undefined, CommonAnim.CONFUSION));
|
||||||
|
|
||||||
// 1/3 chance of hitting self with a 40 base power move
|
// 1/3 chance of hitting self with a 40 base power move
|
||||||
@ -299,7 +299,7 @@ export class ConfusedTag extends BattlerTag {
|
|||||||
const atk = pokemon.getBattleStat(Stat.ATK);
|
const atk = pokemon.getBattleStat(Stat.ATK);
|
||||||
const def = pokemon.getBattleStat(Stat.DEF);
|
const def = pokemon.getBattleStat(Stat.DEF);
|
||||||
const damage = Math.ceil(((((2 * pokemon.level / 5 + 2) * 40 * atk / def) / 50) + 2) * (pokemon.randSeedInt(15, 85) / 100));
|
const damage = Math.ceil(((((2 * pokemon.level / 5 + 2) * 40 * atk / def) / 50) + 2) * (pokemon.randSeedInt(15, 85) / 100));
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsConfusedLapseHurtItself"));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:confusedLapseHurtItself"));
|
||||||
pokemon.damageAndUpdate(damage);
|
pokemon.damageAndUpdate(damage);
|
||||||
pokemon.battleData.hitCount++;
|
pokemon.battleData.hitCount++;
|
||||||
(pokemon.scene.getCurrentPhase() as MovePhase).cancel();
|
(pokemon.scene.getCurrentPhase() as MovePhase).cancel();
|
||||||
@ -347,12 +347,12 @@ export class DestinyBondTag extends BattlerTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (pokemon.isBossImmune()) {
|
if (pokemon.isBossImmune()) {
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsDestinyBondLapseIsBoss", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:destinyBondLapseIsBoss", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
pokemon.scene.queueMessage(
|
pokemon.scene.queueMessage(
|
||||||
i18next.t("battle:battlerTagsDestinyBondLapse", {
|
i18next.t("battlerTags:destinyBondLapse", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(source),
|
pokemonNameWithAffix: getPokemonNameWithAffix(source),
|
||||||
pokemonNameWithAffix2: getPokemonNameWithAffix(pokemon)
|
pokemonNameWithAffix2: getPokemonNameWithAffix(pokemon)
|
||||||
})
|
})
|
||||||
@ -387,7 +387,7 @@ export class InfatuatedTag extends BattlerTag {
|
|||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(
|
pokemon.scene.queueMessage(
|
||||||
i18next.t("battle:battlerTagsInfatuatedOnAdd", {
|
i18next.t("battlerTags:infatuatedOnAdd", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
sourcePokemonName: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined) // TODO: is that bang correct?
|
sourcePokemonName: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined) // TODO: is that bang correct?
|
||||||
})
|
})
|
||||||
@ -397,7 +397,7 @@ export class InfatuatedTag extends BattlerTag {
|
|||||||
onOverlap(pokemon: Pokemon): void {
|
onOverlap(pokemon: Pokemon): void {
|
||||||
super.onOverlap(pokemon);
|
super.onOverlap(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsInfatuatedOnOverlap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:infatuatedOnOverlap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
@ -405,7 +405,7 @@ export class InfatuatedTag extends BattlerTag {
|
|||||||
|
|
||||||
if (ret) {
|
if (ret) {
|
||||||
pokemon.scene.queueMessage(
|
pokemon.scene.queueMessage(
|
||||||
i18next.t("battle:battlerTagsInfatuatedLapse", {
|
i18next.t("battlerTags:infatuatedLapse", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
sourcePokemonName: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined) // TODO: is that bang correct?
|
sourcePokemonName: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined) // TODO: is that bang correct?
|
||||||
})
|
})
|
||||||
@ -413,7 +413,7 @@ export class InfatuatedTag extends BattlerTag {
|
|||||||
pokemon.scene.unshiftPhase(new CommonAnimPhase(pokemon.scene, pokemon.getBattlerIndex(), undefined, CommonAnim.ATTRACT));
|
pokemon.scene.unshiftPhase(new CommonAnimPhase(pokemon.scene, pokemon.getBattlerIndex(), undefined, CommonAnim.ATTRACT));
|
||||||
|
|
||||||
if (pokemon.randSeedInt(2)) {
|
if (pokemon.randSeedInt(2)) {
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsInfatuatedLapseImmobilize", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:infatuatedLapseImmobilize", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
(pokemon.scene.getCurrentPhase() as MovePhase).cancel();
|
(pokemon.scene.getCurrentPhase() as MovePhase).cancel();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -424,7 +424,7 @@ export class InfatuatedTag extends BattlerTag {
|
|||||||
onRemove(pokemon: Pokemon): void {
|
onRemove(pokemon: Pokemon): void {
|
||||||
super.onRemove(pokemon);
|
super.onRemove(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsInfatuatedOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:infatuatedOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
isSourceLinked(): boolean {
|
isSourceLinked(): boolean {
|
||||||
@ -459,7 +459,7 @@ export class SeedTag extends BattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsSeededOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:seededOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
this.sourceIndex = pokemon.scene.getPokemonById(this.sourceId!)!.getBattlerIndex(); // TODO: are those bangs correct?
|
this.sourceIndex = pokemon.scene.getPokemonById(this.sourceId!)!.getBattlerIndex(); // TODO: are those bangs correct?
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -479,7 +479,7 @@ export class SeedTag extends BattlerTag {
|
|||||||
const reverseDrain = pokemon.hasAbilityWithAttr(ReverseDrainAbAttr, false);
|
const reverseDrain = pokemon.hasAbilityWithAttr(ReverseDrainAbAttr, false);
|
||||||
pokemon.scene.unshiftPhase(new PokemonHealPhase(pokemon.scene, source.getBattlerIndex(),
|
pokemon.scene.unshiftPhase(new PokemonHealPhase(pokemon.scene, source.getBattlerIndex(),
|
||||||
!reverseDrain ? damage : damage * -1,
|
!reverseDrain ? damage : damage * -1,
|
||||||
!reverseDrain ? i18next.t("battle:battlerTagsSeededLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }) : i18next.t("battle:battlerTagsSeededLapseShed", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }),
|
!reverseDrain ? i18next.t("battlerTags:seededLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }) : i18next.t("battlerTags:seededLapseShed", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }),
|
||||||
false, true));
|
false, true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -501,20 +501,20 @@ export class NightmareTag extends BattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsNightmareOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:nightmareOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
onOverlap(pokemon: Pokemon): void {
|
onOverlap(pokemon: Pokemon): void {
|
||||||
super.onOverlap(pokemon);
|
super.onOverlap(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsNightmareOnOverlap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:nightmareOnOverlap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
const ret = lapseType !== BattlerTagLapseType.CUSTOM || super.lapse(pokemon, lapseType);
|
const ret = lapseType !== BattlerTagLapseType.CUSTOM || super.lapse(pokemon, lapseType);
|
||||||
|
|
||||||
if (ret) {
|
if (ret) {
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsNightmareLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:nightmareLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
pokemon.scene.unshiftPhase(new CommonAnimPhase(pokemon.scene, pokemon.getBattlerIndex(), undefined, CommonAnim.CURSE)); // TODO: Update animation type
|
pokemon.scene.unshiftPhase(new CommonAnimPhase(pokemon.scene, pokemon.getBattlerIndex(), undefined, CommonAnim.CURSE)); // TODO: Update animation type
|
||||||
|
|
||||||
const cancelled = new Utils.BooleanHolder(false);
|
const cancelled = new Utils.BooleanHolder(false);
|
||||||
@ -602,7 +602,7 @@ export class EncoreTag extends BattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onRemove(pokemon);
|
super.onRemove(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsEncoreOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:encoreOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
|
|
||||||
const movePhase = pokemon.scene.findPhase(m => m instanceof MovePhase && m.pokemon === pokemon);
|
const movePhase = pokemon.scene.findPhase(m => m instanceof MovePhase && m.pokemon === pokemon);
|
||||||
if (movePhase) {
|
if (movePhase) {
|
||||||
@ -618,7 +618,7 @@ export class EncoreTag extends BattlerTag {
|
|||||||
onRemove(pokemon: Pokemon): void {
|
onRemove(pokemon: Pokemon): void {
|
||||||
super.onRemove(pokemon);
|
super.onRemove(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsEncoreOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:encoreOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -629,7 +629,7 @@ export class HelpingHandTag extends BattlerTag {
|
|||||||
|
|
||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
pokemon.scene.queueMessage(
|
pokemon.scene.queueMessage(
|
||||||
i18next.t("battle:battlerTagsHelpingHandOnAdd", {
|
i18next.t("battlerTags:helpingHandOnAdd", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
||||||
pokemonName: getPokemonNameWithAffix(pokemon)
|
pokemonName: getPokemonNameWithAffix(pokemon)
|
||||||
})
|
})
|
||||||
@ -666,7 +666,7 @@ export class IngrainTag extends TrappedTag {
|
|||||||
pokemon.scene,
|
pokemon.scene,
|
||||||
pokemon.getBattlerIndex(),
|
pokemon.getBattlerIndex(),
|
||||||
Math.floor(pokemon.getMaxHp() / 16),
|
Math.floor(pokemon.getMaxHp() / 16),
|
||||||
i18next.t("battle:battlerTagsIngrainLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }),
|
i18next.t("battlerTags:ingrainLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }),
|
||||||
true
|
true
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
@ -676,7 +676,7 @@ export class IngrainTag extends TrappedTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsIngrainOnTrap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) });
|
return i18next.t("battlerTags:ingrainOnTrap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) });
|
||||||
}
|
}
|
||||||
|
|
||||||
getDescriptor(): string {
|
getDescriptor(): string {
|
||||||
@ -717,7 +717,7 @@ export class AquaRingTag extends BattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsAquaRingOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:aquaRingOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
@ -729,7 +729,7 @@ export class AquaRingTag extends BattlerTag {
|
|||||||
pokemon.scene,
|
pokemon.scene,
|
||||||
pokemon.getBattlerIndex(),
|
pokemon.getBattlerIndex(),
|
||||||
Math.floor(pokemon.getMaxHp() / 16),
|
Math.floor(pokemon.getMaxHp() / 16),
|
||||||
i18next.t("battle:battlerTagsAquaRingLapse", {
|
i18next.t("battlerTags:aquaRingLapse", {
|
||||||
moveName: this.getMoveName(),
|
moveName: this.getMoveName(),
|
||||||
pokemonName: getPokemonNameWithAffix(pokemon)
|
pokemonName: getPokemonNameWithAffix(pokemon)
|
||||||
}),
|
}),
|
||||||
@ -779,7 +779,7 @@ export class DrowsyTag extends BattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsDrowsyOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:drowsyOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
@ -823,7 +823,7 @@ export abstract class DamagingTrapTag extends TrappedTag {
|
|||||||
|
|
||||||
if (ret) {
|
if (ret) {
|
||||||
pokemon.scene.queueMessage(
|
pokemon.scene.queueMessage(
|
||||||
i18next.t("battle:battlerTagsDamagingTrapLapse", {
|
i18next.t("battlerTags:damagingTrapLapse", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
moveName: this.getMoveName()
|
moveName: this.getMoveName()
|
||||||
})
|
})
|
||||||
@ -848,7 +848,7 @@ export class BindTag extends DamagingTrapTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsBindOnTrap", {
|
return i18next.t("battlerTags:bindOnTrap", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
sourcePokemonName: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
sourcePokemonName: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
||||||
moveName: this.getMoveName()
|
moveName: this.getMoveName()
|
||||||
@ -862,7 +862,7 @@ export class WrapTag extends DamagingTrapTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsWrapOnTrap", {
|
return i18next.t("battlerTags:wrapOnTrap", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
sourcePokemonName: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
sourcePokemonName: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
||||||
});
|
});
|
||||||
@ -875,7 +875,7 @@ export abstract class VortexTrapTag extends DamagingTrapTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsVortexOnTrap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) });
|
return i18next.t("battlerTags:vortexOnTrap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -897,7 +897,7 @@ export class ClampTag extends DamagingTrapTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsClampOnTrap", {
|
return i18next.t("battlerTags:clampOnTrap", {
|
||||||
sourcePokemonNameWithAffix: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
sourcePokemonNameWithAffix: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
||||||
pokemonName: getPokemonNameWithAffix(pokemon),
|
pokemonName: getPokemonNameWithAffix(pokemon),
|
||||||
});
|
});
|
||||||
@ -910,7 +910,7 @@ export class SandTombTag extends DamagingTrapTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsSandTombOnTrap", {
|
return i18next.t("battlerTags:sandTombOnTrap", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
moveName: this.getMoveName()
|
moveName: this.getMoveName()
|
||||||
});
|
});
|
||||||
@ -923,7 +923,7 @@ export class MagmaStormTag extends DamagingTrapTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsMagmaStormOnTrap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) });
|
return i18next.t("battlerTags:magmaStormOnTrap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -933,7 +933,7 @@ export class SnapTrapTag extends DamagingTrapTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsSnapTrapOnTrap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) });
|
return i18next.t("battlerTags:snapTrapOnTrap", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -943,7 +943,7 @@ export class ThunderCageTag extends DamagingTrapTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsThunderCageOnTrap", {
|
return i18next.t("battlerTags:thunderCageOnTrap", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
sourcePokemonNameWithAffix: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
sourcePokemonNameWithAffix: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
||||||
});
|
});
|
||||||
@ -956,7 +956,7 @@ export class InfestationTag extends DamagingTrapTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getTrapMessage(pokemon: Pokemon): string {
|
getTrapMessage(pokemon: Pokemon): string {
|
||||||
return i18next.t("battle:battlerTagsInfestationOnTrap", {
|
return i18next.t("battlerTags:infestationOnTrap", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
sourcePokemonNameWithAffix: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
sourcePokemonNameWithAffix: getPokemonNameWithAffix(pokemon.scene.getPokemonById(this.sourceId!) ?? undefined), // TODO: is that bang correct?
|
||||||
});
|
});
|
||||||
@ -972,13 +972,13 @@ export class ProtectedTag extends BattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsProtectedOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:protectedOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
if (lapseType === BattlerTagLapseType.CUSTOM) {
|
if (lapseType === BattlerTagLapseType.CUSTOM) {
|
||||||
new CommonBattleAnim(CommonAnim.PROTECT, pokemon).play(pokemon.scene);
|
new CommonBattleAnim(CommonAnim.PROTECT, pokemon).play(pokemon.scene);
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsProtectedLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:protectedLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
|
|
||||||
// Stop multi-hit moves early
|
// Stop multi-hit moves early
|
||||||
const effectPhase = pokemon.scene.getCurrentPhase();
|
const effectPhase = pokemon.scene.getCurrentPhase();
|
||||||
@ -1111,12 +1111,12 @@ export class EnduringTag extends BattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsEnduringOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:enduringOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
if (lapseType === BattlerTagLapseType.CUSTOM) {
|
if (lapseType === BattlerTagLapseType.CUSTOM) {
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsEnduringLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:enduringLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1131,7 +1131,7 @@ export class SturdyTag extends BattlerTag {
|
|||||||
|
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
if (lapseType === BattlerTagLapseType.CUSTOM) {
|
if (lapseType === BattlerTagLapseType.CUSTOM) {
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsSturdyLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:sturdyLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1153,7 +1153,7 @@ export class PerishSongTag extends BattlerTag {
|
|||||||
|
|
||||||
if (ret) {
|
if (ret) {
|
||||||
pokemon.scene.queueMessage(
|
pokemon.scene.queueMessage(
|
||||||
i18next.t("battle:battlerTagsPerishSongLapse", {
|
i18next.t("battlerTags:perishSongLapse", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
turnCount: this.turnCount
|
turnCount: this.turnCount
|
||||||
})
|
})
|
||||||
@ -1189,7 +1189,7 @@ export class CenterOfAttentionTag extends BattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsCenterOfAttentionOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:centerOfAttentionOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1228,7 +1228,7 @@ export class TruantTag extends AbilityBattlerTag {
|
|||||||
if (lastMove && lastMove.move !== Moves.NONE) {
|
if (lastMove && lastMove.move !== Moves.NONE) {
|
||||||
(pokemon.scene.getCurrentPhase() as MovePhase).cancel();
|
(pokemon.scene.getCurrentPhase() as MovePhase).cancel();
|
||||||
pokemon.scene.unshiftPhase(new ShowAbilityPhase(pokemon.scene, pokemon.id, passive));
|
pokemon.scene.unshiftPhase(new ShowAbilityPhase(pokemon.scene, pokemon.id, passive));
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsTruantLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:truantLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
@ -1243,7 +1243,7 @@ export class SlowStartTag extends AbilityBattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsSlowStartOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }), null, false, null, true);
|
pokemon.scene.queueMessage(i18next.t("battlerTags:slowStartOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }), null, false, null, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
@ -1257,7 +1257,7 @@ export class SlowStartTag extends AbilityBattlerTag {
|
|||||||
onRemove(pokemon: Pokemon): void {
|
onRemove(pokemon: Pokemon): void {
|
||||||
super.onRemove(pokemon);
|
super.onRemove(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsSlowStartOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }), null, false, null);
|
pokemon.scene.queueMessage(i18next.t("battlerTags:slowStartOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }), null, false, null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1304,13 +1304,13 @@ export class HighestStatBoostTag extends AbilityBattlerTag {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsHighestStatBoostOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), statName: getStatName(highestStat) }), null, false, null, true);
|
pokemon.scene.queueMessage(i18next.t("battlerTags:highestStatBoostOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), statName: getStatName(highestStat) }), null, false, null, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
onRemove(pokemon: Pokemon): void {
|
onRemove(pokemon: Pokemon): void {
|
||||||
super.onRemove(pokemon);
|
super.onRemove(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsHighestStatBoostOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), abilityName: allAbilities[this.ability].name }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:highestStatBoostOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), abilityName: allAbilities[this.ability].name }));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1397,13 +1397,13 @@ export class MagnetRisenTag extends TypeImmuneTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsMagnetRisenOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:magnetRisenOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
onRemove(pokemon: Pokemon): void {
|
onRemove(pokemon: Pokemon): void {
|
||||||
super.onRemove(pokemon);
|
super.onRemove(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsMagnetRisenOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:magnetRisenOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1444,7 +1444,7 @@ export class CritBoostTag extends BattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsCritBoostOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:critBoostOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
|
||||||
@ -1454,7 +1454,7 @@ export class CritBoostTag extends BattlerTag {
|
|||||||
onRemove(pokemon: Pokemon): void {
|
onRemove(pokemon: Pokemon): void {
|
||||||
super.onRemove(pokemon);
|
super.onRemove(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsCritBoostOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:critBoostOnRemove", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1477,7 +1477,7 @@ export class SaltCuredTag extends BattlerTag {
|
|||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsSaltCuredOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:saltCuredOnAdd", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
this.sourceIndex = pokemon.scene.getPokemonById(this.sourceId!)!.getBattlerIndex(); // TODO: are those bangs correct?
|
this.sourceIndex = pokemon.scene.getPokemonById(this.sourceId!)!.getBattlerIndex(); // TODO: are those bangs correct?
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1495,7 +1495,7 @@ export class SaltCuredTag extends BattlerTag {
|
|||||||
pokemon.damageAndUpdate(Math.max(Math.floor(pokemonSteelOrWater ? pokemon.getMaxHp() / 4 : pokemon.getMaxHp() / 8), 1));
|
pokemon.damageAndUpdate(Math.max(Math.floor(pokemonSteelOrWater ? pokemon.getMaxHp() / 4 : pokemon.getMaxHp() / 8), 1));
|
||||||
|
|
||||||
pokemon.scene.queueMessage(
|
pokemon.scene.queueMessage(
|
||||||
i18next.t("battle:battlerTagsSaltCuredLapse", {
|
i18next.t("battlerTags:saltCuredLapse", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
moveName: this.getMoveName()
|
moveName: this.getMoveName()
|
||||||
})
|
})
|
||||||
@ -1539,7 +1539,7 @@ export class CursedTag extends BattlerTag {
|
|||||||
|
|
||||||
if (!cancelled.value) {
|
if (!cancelled.value) {
|
||||||
pokemon.damageAndUpdate(Math.max(Math.floor(pokemon.getMaxHp() / 4), 1));
|
pokemon.damageAndUpdate(Math.max(Math.floor(pokemon.getMaxHp() / 4), 1));
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsCursedLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
pokemon.scene.queueMessage(i18next.t("battlerTags:cursedLapse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1558,36 +1558,25 @@ export class GroundedTag extends BattlerTag {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/** Common attributes of form change abilities that block damage */
|
||||||
* Provides the Ice Face ability's effects.
|
export class FormBlockDamageTag extends BattlerTag {
|
||||||
*/
|
constructor(tagType: BattlerTagType) {
|
||||||
export class IceFaceTag extends BattlerTag {
|
super(tagType, BattlerTagLapseType.CUSTOM, 1);
|
||||||
constructor(sourceMove: Moves) {
|
|
||||||
super(BattlerTagType.ICE_FACE, BattlerTagLapseType.CUSTOM, 1, sourceMove);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Determines if the Ice Face tag can be added to the Pokémon.
|
* Determines if the tag can be added to the Pokémon.
|
||||||
* @param {Pokemon} pokemon - The Pokémon to which the tag might be added.
|
* @param {Pokemon} pokemon The Pokémon to which the tag might be added.
|
||||||
* @returns {boolean} - True if the tag can be added, false otherwise.
|
* @returns {boolean} True if the tag can be added, false otherwise.
|
||||||
*/
|
*/
|
||||||
canAdd(pokemon: Pokemon): boolean {
|
canAdd(pokemon: Pokemon): boolean {
|
||||||
const weatherType = pokemon.scene.arena.weather?.weatherType;
|
return pokemon.formIndex === 0;
|
||||||
const isWeatherSnowOrHail = weatherType === WeatherType.HAIL || weatherType === WeatherType.SNOW;
|
|
||||||
const isFormIceFace = pokemon.formIndex === 0;
|
|
||||||
|
|
||||||
|
|
||||||
// Hard code Eiscue for now, this is to prevent the game from crashing if fused pokemon has Ice Face
|
|
||||||
if ((pokemon.species.speciesId === Species.EISCUE && isFormIceFace) || isWeatherSnowOrHail) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Applies the Ice Face tag to the Pokémon.
|
* Applies the tag to the Pokémon.
|
||||||
* Triggers a form change to Ice Face if the Pokémon is not in its Ice Face form.
|
* Triggers a form change if the Pokémon is not in its defense form.
|
||||||
* @param {Pokemon} pokemon - The Pokémon to which the tag is added.
|
* @param {Pokemon} pokemon The Pokémon to which the tag is added.
|
||||||
*/
|
*/
|
||||||
onAdd(pokemon: Pokemon): void {
|
onAdd(pokemon: Pokemon): void {
|
||||||
super.onAdd(pokemon);
|
super.onAdd(pokemon);
|
||||||
@ -1598,9 +1587,9 @@ export class IceFaceTag extends BattlerTag {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Removes the Ice Face tag from the Pokémon.
|
* Removes the tag from the Pokémon.
|
||||||
* Triggers a form change to Noice when the tag is removed.
|
* Triggers a form change when the tag is removed.
|
||||||
* @param {Pokemon} pokemon - The Pokémon from which the tag is removed.
|
* @param {Pokemon} pokemon The Pokémon from which the tag is removed.
|
||||||
*/
|
*/
|
||||||
onRemove(pokemon: Pokemon): void {
|
onRemove(pokemon: Pokemon): void {
|
||||||
super.onRemove(pokemon);
|
super.onRemove(pokemon);
|
||||||
@ -1609,6 +1598,24 @@ export class IceFaceTag extends BattlerTag {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Provides the additional weather-based effects of the Ice Face ability */
|
||||||
|
export class IceFaceBlockDamageTag extends FormBlockDamageTag {
|
||||||
|
constructor(tagType: BattlerTagType) {
|
||||||
|
super(tagType);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determines if the tag can be added to the Pokémon.
|
||||||
|
* @param {Pokemon} pokemon The Pokémon to which the tag might be added.
|
||||||
|
* @returns {boolean} True if the tag can be added, false otherwise.
|
||||||
|
*/
|
||||||
|
canAdd(pokemon: Pokemon): boolean {
|
||||||
|
const weatherType = pokemon.scene.arena.weather?.weatherType;
|
||||||
|
const isWeatherSnowOrHail = weatherType === WeatherType.HAIL || weatherType === WeatherType.SNOW;
|
||||||
|
|
||||||
|
return super.canAdd(pokemon) || isWeatherSnowOrHail;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Battler tag enabling the Stockpile mechanic. This tag handles:
|
* Battler tag enabling the Stockpile mechanic. This tag handles:
|
||||||
@ -1663,7 +1670,7 @@ export class StockpilingTag extends BattlerTag {
|
|||||||
if (this.stockpiledCount < 3) {
|
if (this.stockpiledCount < 3) {
|
||||||
this.stockpiledCount++;
|
this.stockpiledCount++;
|
||||||
|
|
||||||
pokemon.scene.queueMessage(i18next.t("battle:battlerTagsStockpilingOnAdd", {
|
pokemon.scene.queueMessage(i18next.t("battlerTags:stockpilingOnAdd", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
pokemonNameWithAffix: getPokemonNameWithAffix(pokemon),
|
||||||
stockpiledCount: this.stockpiledCount
|
stockpiledCount: this.stockpiledCount
|
||||||
}));
|
}));
|
||||||
@ -1890,7 +1897,9 @@ export function getBattlerTag(tagType: BattlerTagType, turnCount: number, source
|
|||||||
case BattlerTagType.DESTINY_BOND:
|
case BattlerTagType.DESTINY_BOND:
|
||||||
return new DestinyBondTag(sourceMove, sourceId);
|
return new DestinyBondTag(sourceMove, sourceId);
|
||||||
case BattlerTagType.ICE_FACE:
|
case BattlerTagType.ICE_FACE:
|
||||||
return new IceFaceTag(sourceMove);
|
return new IceFaceBlockDamageTag(tagType);
|
||||||
|
case BattlerTagType.DISGUISE:
|
||||||
|
return new FormBlockDamageTag(tagType);
|
||||||
case BattlerTagType.STOCKPILING:
|
case BattlerTagType.STOCKPILING:
|
||||||
return new StockpilingTag(sourceMove);
|
return new StockpilingTag(sourceMove);
|
||||||
case BattlerTagType.OCTOLOCK:
|
case BattlerTagType.OCTOLOCK:
|
||||||
|
@ -630,8 +630,8 @@ export class FreshStartChallenge extends Challenge {
|
|||||||
}
|
}
|
||||||
|
|
||||||
applyStarterCost(species: Species, cost: Utils.NumberHolder): boolean {
|
applyStarterCost(species: Species, cost: Utils.NumberHolder): boolean {
|
||||||
if (defaultStarterSpecies.includes(species) && cost.value !== 3) {
|
if (defaultStarterSpecies.includes(species)) {
|
||||||
cost.value = 3;
|
cost.value = speciesStarters[species];
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -2742,21 +2742,34 @@ export class InvertStatsAttr extends MoveEffectAttr {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export class ResetStatsAttr extends MoveEffectAttr {
|
export class ResetStatsAttr extends MoveEffectAttr {
|
||||||
|
private targetAllPokemon: boolean;
|
||||||
|
constructor(targetAllPokemon: boolean) {
|
||||||
|
super();
|
||||||
|
this.targetAllPokemon = targetAllPokemon;
|
||||||
|
}
|
||||||
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
|
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
|
||||||
if (!super.apply(user, target, move, args)) {
|
if (!super.apply(user, target, move, args)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (let s = 0; s < target.summonData.battleStats.length; s++) {
|
if (this.targetAllPokemon) { // Target all pokemon on the field when Freezy Frost or Haze are used
|
||||||
target.summonData.battleStats[s] = 0;
|
const activePokemon = user.scene.getField(true);
|
||||||
|
activePokemon.forEach(p => this.resetStats(p));
|
||||||
|
target.scene.queueMessage(i18next.t("moveTriggers:statEliminated"));
|
||||||
|
} else { // Affects only the single target when Clear Smog is used
|
||||||
|
this.resetStats(target);
|
||||||
|
target.scene.queueMessage(i18next.t("moveTriggers:resetStats", {pokemonName: getPokemonNameWithAffix(target)}));
|
||||||
}
|
}
|
||||||
target.updateInfo();
|
|
||||||
user.updateInfo();
|
|
||||||
|
|
||||||
target.scene.queueMessage(i18next.t("moveTriggers:resetStats", {pokemonName: getPokemonNameWithAffix(target)}));
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resetStats(pokemon: Pokemon) {
|
||||||
|
for (let s = 0; s < pokemon.summonData.battleStats.length; s++) {
|
||||||
|
pokemon.summonData.battleStats[s] = 0;
|
||||||
|
}
|
||||||
|
pokemon.updateInfo();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -4401,7 +4414,7 @@ export class CurseAttr extends MoveEffectAttr {
|
|||||||
const curseRecoilDamage = Math.max(1, Math.floor(user.getMaxHp() / 2));
|
const curseRecoilDamage = Math.max(1, Math.floor(user.getMaxHp() / 2));
|
||||||
user.damageAndUpdate(curseRecoilDamage, HitResult.OTHER, false, true, true);
|
user.damageAndUpdate(curseRecoilDamage, HitResult.OTHER, false, true, true);
|
||||||
user.scene.queueMessage(
|
user.scene.queueMessage(
|
||||||
i18next.t("battle:battlerTagsCursedOnAdd", {
|
i18next.t("battle:cursedOnAdd", {
|
||||||
pokemonNameWithAffix: getPokemonNameWithAffix(user),
|
pokemonNameWithAffix: getPokemonNameWithAffix(user),
|
||||||
pokemonName: getPokemonNameWithAffix(target)
|
pokemonName: getPokemonNameWithAffix(target)
|
||||||
})
|
})
|
||||||
@ -6437,9 +6450,8 @@ export function initMoves() {
|
|||||||
new StatusMove(Moves.LIGHT_SCREEN, Type.PSYCHIC, -1, 30, -1, 0, 1)
|
new StatusMove(Moves.LIGHT_SCREEN, Type.PSYCHIC, -1, 30, -1, 0, 1)
|
||||||
.attr(AddArenaTagAttr, ArenaTagType.LIGHT_SCREEN, 5, true)
|
.attr(AddArenaTagAttr, ArenaTagType.LIGHT_SCREEN, 5, true)
|
||||||
.target(MoveTarget.USER_SIDE),
|
.target(MoveTarget.USER_SIDE),
|
||||||
new StatusMove(Moves.HAZE, Type.ICE, -1, 30, -1, 0, 1)
|
new SelfStatusMove(Moves.HAZE, Type.ICE, -1, 30, -1, 0, 1)
|
||||||
.target(MoveTarget.BOTH_SIDES)
|
.attr(ResetStatsAttr, true),
|
||||||
.attr(ResetStatsAttr),
|
|
||||||
new StatusMove(Moves.REFLECT, Type.PSYCHIC, -1, 20, -1, 0, 1)
|
new StatusMove(Moves.REFLECT, Type.PSYCHIC, -1, 20, -1, 0, 1)
|
||||||
.attr(AddArenaTagAttr, ArenaTagType.REFLECT, 5, true)
|
.attr(AddArenaTagAttr, ArenaTagType.REFLECT, 5, true)
|
||||||
.target(MoveTarget.USER_SIDE),
|
.target(MoveTarget.USER_SIDE),
|
||||||
@ -7526,7 +7538,7 @@ export function initMoves() {
|
|||||||
new AttackMove(Moves.CHIP_AWAY, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, -1, 0, 5)
|
new AttackMove(Moves.CHIP_AWAY, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, -1, 0, 5)
|
||||||
.attr(IgnoreOpponentStatChangesAttr),
|
.attr(IgnoreOpponentStatChangesAttr),
|
||||||
new AttackMove(Moves.CLEAR_SMOG, Type.POISON, MoveCategory.SPECIAL, 50, -1, 15, -1, 0, 5)
|
new AttackMove(Moves.CLEAR_SMOG, Type.POISON, MoveCategory.SPECIAL, 50, -1, 15, -1, 0, 5)
|
||||||
.attr(ResetStatsAttr),
|
.attr(ResetStatsAttr, false),
|
||||||
new AttackMove(Moves.STORED_POWER, Type.PSYCHIC, MoveCategory.SPECIAL, 20, 100, 10, -1, 0, 5)
|
new AttackMove(Moves.STORED_POWER, Type.PSYCHIC, MoveCategory.SPECIAL, 20, 100, 10, -1, 0, 5)
|
||||||
.attr(StatChangeCountPowerAttr),
|
.attr(StatChangeCountPowerAttr),
|
||||||
new StatusMove(Moves.QUICK_GUARD, Type.FIGHTING, -1, 15, -1, 3, 5)
|
new StatusMove(Moves.QUICK_GUARD, Type.FIGHTING, -1, 15, -1, 3, 5)
|
||||||
@ -8232,7 +8244,7 @@ export function initMoves() {
|
|||||||
.makesContact(false)
|
.makesContact(false)
|
||||||
.attr(AddBattlerTagAttr, BattlerTagType.SEEDED),
|
.attr(AddBattlerTagAttr, BattlerTagType.SEEDED),
|
||||||
new AttackMove(Moves.FREEZY_FROST, Type.ICE, MoveCategory.SPECIAL, 100, 90, 10, -1, 0, 7)
|
new AttackMove(Moves.FREEZY_FROST, Type.ICE, MoveCategory.SPECIAL, 100, 90, 10, -1, 0, 7)
|
||||||
.attr(ResetStatsAttr),
|
.attr(ResetStatsAttr, true),
|
||||||
new AttackMove(Moves.SPARKLY_SWIRL, Type.FAIRY, MoveCategory.SPECIAL, 120, 85, 5, -1, 0, 7)
|
new AttackMove(Moves.SPARKLY_SWIRL, Type.FAIRY, MoveCategory.SPECIAL, 120, 85, 5, -1, 0, 7)
|
||||||
.attr(PartyStatusCureAttr, null, Abilities.NONE),
|
.attr(PartyStatusCureAttr, null, Abilities.NONE),
|
||||||
new AttackMove(Moves.VEEVEE_VOLLEY, Type.NORMAL, MoveCategory.PHYSICAL, -1, -1, 20, -1, 0, 7)
|
new AttackMove(Moves.VEEVEE_VOLLEY, Type.NORMAL, MoveCategory.PHYSICAL, -1, -1, 20, -1, 0, 7)
|
||||||
|
@ -372,6 +372,9 @@ export function getSpeciesFormChangeMessage(pokemon: Pokemon, formChange: Specie
|
|||||||
if (isRevert) {
|
if (isRevert) {
|
||||||
return i18next.t("battlePokemonForm:revertChange", { pokemonName: getPokemonNameWithAffix(pokemon) });
|
return i18next.t("battlePokemonForm:revertChange", { pokemonName: getPokemonNameWithAffix(pokemon) });
|
||||||
}
|
}
|
||||||
|
if (pokemon.getAbility().id === Abilities.DISGUISE) {
|
||||||
|
return i18next.t("battlePokemonForm:disguiseChange");
|
||||||
|
}
|
||||||
return i18next.t("battlePokemonForm:formChange", { preName });
|
return i18next.t("battlePokemonForm:formChange", { preName });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2631,7 +2631,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.CHIKORITA]: [
|
[Species.CHIKORITA]: [
|
||||||
[ 1, Moves.TACKLE ],
|
[ 1, Moves.TACKLE ],
|
||||||
[ 1, Moves.GROWL ],
|
[ 1, Moves.GROWL ],
|
||||||
[ 6, Moves.RAZOR_LEAF ],
|
[ 5, Moves.RAZOR_LEAF ], //Custom, moved from 6 to 5
|
||||||
[ 9, Moves.POISON_POWDER ],
|
[ 9, Moves.POISON_POWDER ],
|
||||||
[ 12, Moves.SYNTHESIS ],
|
[ 12, Moves.SYNTHESIS ],
|
||||||
[ 17, Moves.REFLECT ],
|
[ 17, Moves.REFLECT ],
|
||||||
@ -2681,8 +2681,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.CYNDAQUIL]: [
|
[Species.CYNDAQUIL]: [
|
||||||
[ 1, Moves.TACKLE ],
|
[ 1, Moves.TACKLE ],
|
||||||
[ 1, Moves.LEER ],
|
[ 1, Moves.LEER ],
|
||||||
[ 6, Moves.SMOKESCREEN ],
|
[ 5, Moves.EMBER ], //Custom, moved to 5
|
||||||
[ 10, Moves.EMBER ],
|
[ 10, Moves.SMOKESCREEN ], //Custom, moved to 10
|
||||||
[ 13, Moves.QUICK_ATTACK ],
|
[ 13, Moves.QUICK_ATTACK ],
|
||||||
[ 19, Moves.FLAME_WHEEL ],
|
[ 19, Moves.FLAME_WHEEL ],
|
||||||
[ 22, Moves.DEFENSE_CURL ],
|
[ 22, Moves.DEFENSE_CURL ],
|
||||||
@ -2736,7 +2736,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.TOTODILE]: [
|
[Species.TOTODILE]: [
|
||||||
[ 1, Moves.SCRATCH ],
|
[ 1, Moves.SCRATCH ],
|
||||||
[ 1, Moves.LEER ],
|
[ 1, Moves.LEER ],
|
||||||
[ 6, Moves.WATER_GUN ],
|
[ 5, Moves.WATER_GUN ], //Custom, moved from 6 to 5
|
||||||
[ 9, Moves.BITE ],
|
[ 9, Moves.BITE ],
|
||||||
[ 13, Moves.SCARY_FACE ],
|
[ 13, Moves.SCARY_FACE ],
|
||||||
[ 19, Moves.ICE_FANG ],
|
[ 19, Moves.ICE_FANG ],
|
||||||
@ -6723,7 +6723,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.TURTWIG]: [
|
[Species.TURTWIG]: [
|
||||||
[ 1, Moves.TACKLE ],
|
[ 1, Moves.TACKLE ],
|
||||||
[ 5, Moves.WITHDRAW ],
|
[ 5, Moves.WITHDRAW ],
|
||||||
[ 9, Moves.ABSORB ],
|
[ 5, Moves.ABSORB ], //Custom, moved from 9 to 5
|
||||||
[ 13, Moves.RAZOR_LEAF ],
|
[ 13, Moves.RAZOR_LEAF ],
|
||||||
[ 17, Moves.CURSE ],
|
[ 17, Moves.CURSE ],
|
||||||
[ 21, Moves.BITE ],
|
[ 21, Moves.BITE ],
|
||||||
@ -6768,7 +6768,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.CHIMCHAR]: [
|
[Species.CHIMCHAR]: [
|
||||||
[ 1, Moves.SCRATCH ],
|
[ 1, Moves.SCRATCH ],
|
||||||
[ 1, Moves.LEER ],
|
[ 1, Moves.LEER ],
|
||||||
[ 7, Moves.EMBER ],
|
[ 5, Moves.EMBER ], //Custom, moved from 7 to 5
|
||||||
[ 9, Moves.TAUNT ],
|
[ 9, Moves.TAUNT ],
|
||||||
[ 15, Moves.FURY_SWIPES ],
|
[ 15, Moves.FURY_SWIPES ],
|
||||||
[ 17, Moves.FLAME_WHEEL ],
|
[ 17, Moves.FLAME_WHEEL ],
|
||||||
@ -6817,7 +6817,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.PIPLUP]: [
|
[Species.PIPLUP]: [
|
||||||
[ 1, Moves.POUND ],
|
[ 1, Moves.POUND ],
|
||||||
[ 4, Moves.GROWL ],
|
[ 4, Moves.GROWL ],
|
||||||
[ 8, Moves.WATER_GUN ],
|
[ 5, Moves.WATER_GUN ], //Custom, moved from 8 to 5
|
||||||
[ 11, Moves.CHARM ],
|
[ 11, Moves.CHARM ],
|
||||||
[ 15, Moves.PECK ],
|
[ 15, Moves.PECK ],
|
||||||
[ 18, Moves.BUBBLE_BEAM ],
|
[ 18, Moves.BUBBLE_BEAM ],
|
||||||
@ -8591,7 +8591,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.SNIVY]: [
|
[Species.SNIVY]: [
|
||||||
[ 1, Moves.TACKLE ],
|
[ 1, Moves.TACKLE ],
|
||||||
[ 4, Moves.LEER ],
|
[ 4, Moves.LEER ],
|
||||||
[ 7, Moves.VINE_WHIP ],
|
[ 5, Moves.VINE_WHIP ], //Custom, moved from 7 to 5
|
||||||
[ 10, Moves.WRAP ],
|
[ 10, Moves.WRAP ],
|
||||||
[ 13, Moves.GROWTH ],
|
[ 13, Moves.GROWTH ],
|
||||||
[ 16, Moves.MAGICAL_LEAF ],
|
[ 16, Moves.MAGICAL_LEAF ],
|
||||||
@ -8639,7 +8639,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.TEPIG]: [
|
[Species.TEPIG]: [
|
||||||
[ 1, Moves.TACKLE ],
|
[ 1, Moves.TACKLE ],
|
||||||
[ 3, Moves.TAIL_WHIP ],
|
[ 3, Moves.TAIL_WHIP ],
|
||||||
[ 7, Moves.EMBER ],
|
[ 5, Moves.EMBER ], //Custom, moved from 7 to 5
|
||||||
[ 9, Moves.ENDURE ],
|
[ 9, Moves.ENDURE ],
|
||||||
[ 13, Moves.DEFENSE_CURL ],
|
[ 13, Moves.DEFENSE_CURL ],
|
||||||
[ 15, Moves.FLAME_CHARGE ],
|
[ 15, Moves.FLAME_CHARGE ],
|
||||||
@ -8693,7 +8693,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.OSHAWOTT]: [
|
[Species.OSHAWOTT]: [
|
||||||
[ 1, Moves.TACKLE ],
|
[ 1, Moves.TACKLE ],
|
||||||
[ 5, Moves.TAIL_WHIP ],
|
[ 5, Moves.TAIL_WHIP ],
|
||||||
[ 7, Moves.WATER_GUN ],
|
[ 5, Moves.WATER_GUN ], //Custom, moved from 7 to 5
|
||||||
[ 11, Moves.SOAK ],
|
[ 11, Moves.SOAK ],
|
||||||
[ 13, Moves.FOCUS_ENERGY ],
|
[ 13, Moves.FOCUS_ENERGY ],
|
||||||
[ 17, Moves.RAZOR_SHELL ],
|
[ 17, Moves.RAZOR_SHELL ],
|
||||||
@ -13850,11 +13850,11 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[ 99, Moves.CLOSE_COMBAT ],
|
[ 99, Moves.CLOSE_COMBAT ],
|
||||||
],
|
],
|
||||||
[Species.POIPOLE]: [
|
[Species.POIPOLE]: [
|
||||||
|
[ RELEARN_MOVE, Moves.DRAGON_PULSE ], //Custom, made relearn
|
||||||
[ 1, Moves.GROWL ],
|
[ 1, Moves.GROWL ],
|
||||||
[ 1, Moves.ACID ],
|
[ 1, Moves.ACID ],
|
||||||
[ 1, Moves.PECK ],
|
[ 1, Moves.PECK ],
|
||||||
[ 1, Moves.HELPING_HAND ],
|
[ 1, Moves.HELPING_HAND ],
|
||||||
[ 1, Moves.DRAGON_PULSE ],
|
|
||||||
[ 7, Moves.FURY_ATTACK ],
|
[ 7, Moves.FURY_ATTACK ],
|
||||||
[ 14, Moves.FELL_STINGER ],
|
[ 14, Moves.FELL_STINGER ],
|
||||||
[ 21, Moves.CHARM ],
|
[ 21, Moves.CHARM ],
|
||||||
@ -13969,7 +13969,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.GROOKEY]: [
|
[Species.GROOKEY]: [
|
||||||
[ 1, Moves.SCRATCH ],
|
[ 1, Moves.SCRATCH ],
|
||||||
[ 1, Moves.GROWL ],
|
[ 1, Moves.GROWL ],
|
||||||
[ 6, Moves.BRANCH_POKE ],
|
[ 5, Moves.BRANCH_POKE ], //Custom, moved from 6 to 5
|
||||||
[ 8, Moves.TAUNT ],
|
[ 8, Moves.TAUNT ],
|
||||||
[ 12, Moves.RAZOR_LEAF ],
|
[ 12, Moves.RAZOR_LEAF ],
|
||||||
[ 17, Moves.SCREECH ],
|
[ 17, Moves.SCREECH ],
|
||||||
@ -14014,7 +14014,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.SCORBUNNY]: [
|
[Species.SCORBUNNY]: [
|
||||||
[ 1, Moves.TACKLE ],
|
[ 1, Moves.TACKLE ],
|
||||||
[ 1, Moves.GROWL ],
|
[ 1, Moves.GROWL ],
|
||||||
[ 6, Moves.EMBER ],
|
[ 5, Moves.EMBER ], //Custom, moved from 6 to 5
|
||||||
[ 8, Moves.QUICK_ATTACK ],
|
[ 8, Moves.QUICK_ATTACK ],
|
||||||
[ 12, Moves.DOUBLE_KICK ],
|
[ 12, Moves.DOUBLE_KICK ],
|
||||||
[ 17, Moves.FLAME_CHARGE ],
|
[ 17, Moves.FLAME_CHARGE ],
|
||||||
@ -14056,7 +14056,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
|
|||||||
[Species.SOBBLE]: [
|
[Species.SOBBLE]: [
|
||||||
[ 1, Moves.POUND ],
|
[ 1, Moves.POUND ],
|
||||||
[ 1, Moves.GROWL ],
|
[ 1, Moves.GROWL ],
|
||||||
[ 6, Moves.WATER_GUN ],
|
[ 5, Moves.WATER_GUN ], //Custom, moved from 6 to 5
|
||||||
[ 8, Moves.BIND ],
|
[ 8, Moves.BIND ],
|
||||||
[ 12, Moves.WATER_PULSE ],
|
[ 12, Moves.WATER_PULSE ],
|
||||||
[ 17, Moves.TEARFUL_LOOK ],
|
[ 17, Moves.TEARFUL_LOOK ],
|
||||||
|
@ -115,11 +115,11 @@ export function getRandomStatusEffect(statusEffectA: StatusEffect, statusEffectB
|
|||||||
* @param statusA The first Status
|
* @param statusA The first Status
|
||||||
* @param statusB The second Status
|
* @param statusB The second Status
|
||||||
*/
|
*/
|
||||||
export function getRandomStatus(statusA: Status, statusB: Status): Status {
|
export function getRandomStatus(statusA: Status | null, statusB: Status | null): Status | null {
|
||||||
if (statusA === undefined || statusA.effect === StatusEffect.NONE || statusA.effect === StatusEffect.FAINT) {
|
if (!statusA || statusA.effect === StatusEffect.NONE || statusA.effect === StatusEffect.FAINT) {
|
||||||
return statusB;
|
return statusB;
|
||||||
}
|
}
|
||||||
if (statusB === undefined || statusB.effect === StatusEffect.NONE || statusB.effect === StatusEffect.FAINT) {
|
if (!statusB || statusB.effect === StatusEffect.NONE || statusB.effect === StatusEffect.FAINT) {
|
||||||
return statusA;
|
return statusA;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -60,6 +60,7 @@ export enum BattlerTagType {
|
|||||||
DESTINY_BOND = "DESTINY_BOND",
|
DESTINY_BOND = "DESTINY_BOND",
|
||||||
CENTER_OF_ATTENTION = "CENTER_OF_ATTENTION",
|
CENTER_OF_ATTENTION = "CENTER_OF_ATTENTION",
|
||||||
ICE_FACE = "ICE_FACE",
|
ICE_FACE = "ICE_FACE",
|
||||||
|
DISGUISE = "DISGUISE",
|
||||||
STOCKPILING = "STOCKPILING",
|
STOCKPILING = "STOCKPILING",
|
||||||
RECEIVE_DOUBLE_DAMAGE = "RECEIVE_DOUBLE_DAMAGE",
|
RECEIVE_DOUBLE_DAMAGE = "RECEIVE_DOUBLE_DAMAGE",
|
||||||
ALWAYS_GET_HIT = "ALWAYS_GET_HIT",
|
ALWAYS_GET_HIT = "ALWAYS_GET_HIT",
|
||||||
|
@ -916,13 +916,13 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||||||
* excluding any moves already known.
|
* excluding any moves already known.
|
||||||
*
|
*
|
||||||
* Available egg moves are only included if the {@linkcode Pokemon} was
|
* Available egg moves are only included if the {@linkcode Pokemon} was
|
||||||
* in the starting party of the run.
|
* in the starting party of the run and if Fresh Start is not active.
|
||||||
* @returns an array of {@linkcode Moves}, the length of which is determined
|
* @returns an array of {@linkcode Moves}, the length of which is determined
|
||||||
* by how many learnable moves there are for the {@linkcode Pokemon}.
|
* by how many learnable moves there are for the {@linkcode Pokemon}.
|
||||||
*/
|
*/
|
||||||
getLearnableLevelMoves(): Moves[] {
|
getLearnableLevelMoves(): Moves[] {
|
||||||
let levelMoves = this.getLevelMoves(1, true).map(lm => lm[1]);
|
let levelMoves = this.getLevelMoves(1, true).map(lm => lm[1]);
|
||||||
if (this.metBiome === -1) {
|
if (this.metBiome === -1 && !this.scene.gameMode.isFreshStartChallenge()) {
|
||||||
levelMoves = this.getUnlockedEggMoves().concat(levelMoves);
|
levelMoves = this.getUnlockedEggMoves().concat(levelMoves);
|
||||||
}
|
}
|
||||||
return levelMoves.filter(lm => !this.moveset.some(m => m?.moveId === lm));
|
return levelMoves.filter(lm => !this.moveset.some(m => m?.moveId === lm));
|
||||||
@ -1082,8 +1082,13 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Final boss does not have passive
|
// Classic Final boss and Endless Minor/Major bosses do not have passive
|
||||||
if (this.scene.currentBattle?.battleSpec === BattleSpec.FINAL_BOSS && this instanceof EnemyPokemon) {
|
const { currentBattle, gameMode } = this.scene;
|
||||||
|
const waveIndex = currentBattle?.waveIndex;
|
||||||
|
if (this instanceof EnemyPokemon &&
|
||||||
|
(currentBattle?.battleSpec === BattleSpec.FINAL_BOSS ||
|
||||||
|
gameMode.isEndlessMinorBoss(waveIndex) ||
|
||||||
|
gameMode.isEndlessMajorBoss(waveIndex))) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2435,8 +2440,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||||||
}
|
}
|
||||||
for (const tag of source.summonData.tags) {
|
for (const tag of source.summonData.tags) {
|
||||||
|
|
||||||
// bypass yawn, and infatuation as those can not be passed via Baton Pass
|
// bypass those can not be passed via Baton Pass
|
||||||
if (tag.sourceMove === Moves.YAWN || tag.tagType === BattlerTagType.INFATUATED) {
|
const excludeTagTypes = new Set([BattlerTagType.DROWSY, BattlerTagType.INFATUATED, BattlerTagType.FIRE_BOOST]);
|
||||||
|
|
||||||
|
if (excludeTagTypes.has(tag.tagType)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3614,7 +3621,7 @@ export class PlayerPokemon extends Pokemon {
|
|||||||
if (!this.isFainted()) {
|
if (!this.isFainted()) {
|
||||||
// If this Pokemon hasn't fainted, make sure the HP wasn't set over the new maximum
|
// If this Pokemon hasn't fainted, make sure the HP wasn't set over the new maximum
|
||||||
this.hp = Math.min(this.hp, this.stats[Stat.HP]);
|
this.hp = Math.min(this.hp, this.stats[Stat.HP]);
|
||||||
this.status = getRandomStatus(this.status!, pokemon.status!); // Get a random valid status between the two // TODO: are the bangs correct?
|
this.status = getRandomStatus(this.status, pokemon.status); // Get a random valid status between the two
|
||||||
} else if (!pokemon.isFainted()) {
|
} else if (!pokemon.isFainted()) {
|
||||||
// If this Pokemon fainted but the other hasn't, make sure the HP wasn't set to zero
|
// If this Pokemon fainted but the other hasn't, make sure the HP wasn't set to zero
|
||||||
this.hp = Math.max(this.hp, 1);
|
this.hp = Math.max(this.hp, 1);
|
||||||
|
@ -8,6 +8,7 @@ import Overrides from "#app/overrides";
|
|||||||
import * as Utils from "./utils";
|
import * as Utils from "./utils";
|
||||||
import { Biome } from "#enums/biome";
|
import { Biome } from "#enums/biome";
|
||||||
import { Species } from "#enums/species";
|
import { Species } from "#enums/species";
|
||||||
|
import { Challenges } from "./enums/challenges";
|
||||||
|
|
||||||
export enum GameModes {
|
export enum GameModes {
|
||||||
CLASSIC,
|
CLASSIC,
|
||||||
@ -55,6 +56,23 @@ export class GameMode implements GameModeConfig {
|
|||||||
this.battleConfig = battleConfig || {};
|
this.battleConfig = battleConfig || {};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helper function to see if a GameMode has a specific challenge type
|
||||||
|
* @param challenge the Challenges it looks for
|
||||||
|
* @returns true if the game mode has that challenge
|
||||||
|
*/
|
||||||
|
hasChallenge(challenge: Challenges): boolean {
|
||||||
|
return this.challenges.some(c => c.id === challenge);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helper function to see if the game mode is using fresh start
|
||||||
|
* @returns true if a fresh start challenge is being applied
|
||||||
|
*/
|
||||||
|
isFreshStartChallenge(): boolean {
|
||||||
|
return this.hasChallenge(Challenges.FRESH_START);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @returns either:
|
* @returns either:
|
||||||
* - override from overrides.ts
|
* - override from overrides.ts
|
||||||
|
@ -21,6 +21,7 @@ import {SettingKeyboard} from "#app/system/settings/settings-keyboard";
|
|||||||
import TouchControl from "#app/touch-controls";
|
import TouchControl from "#app/touch-controls";
|
||||||
import { Button } from "#enums/buttons";
|
import { Button } from "#enums/buttons";
|
||||||
import { Device } from "#enums/devices";
|
import { Device } from "#enums/devices";
|
||||||
|
import MoveTouchControlsHandler from "./ui/settings/move-touch-controls-handler";
|
||||||
|
|
||||||
export interface DeviceMapping {
|
export interface DeviceMapping {
|
||||||
[key: string]: number;
|
[key: string]: number;
|
||||||
@ -105,6 +106,7 @@ export class InputsController {
|
|||||||
public lastSource: string = "keyboard";
|
public lastSource: string = "keyboard";
|
||||||
private inputInterval: NodeJS.Timeout[] = new Array();
|
private inputInterval: NodeJS.Timeout[] = new Array();
|
||||||
private touchControls: TouchControl;
|
private touchControls: TouchControl;
|
||||||
|
public moveTouchControlsHandler: MoveTouchControlsHandler;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initializes a new instance of the game control system, setting up initial state and configurations.
|
* Initializes a new instance of the game control system, setting up initial state and configurations.
|
||||||
@ -182,6 +184,7 @@ export class InputsController {
|
|||||||
this.scene.input.keyboard?.on("keyup", this.keyboardKeyUp, this);
|
this.scene.input.keyboard?.on("keyup", this.keyboardKeyUp, this);
|
||||||
}
|
}
|
||||||
this.touchControls = new TouchControl(this.scene);
|
this.touchControls = new TouchControl(this.scene);
|
||||||
|
this.moveTouchControlsHandler = new MoveTouchControlsHandler(this.touchControls);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -93,6 +93,7 @@ export class LoadingScene extends SceneBase {
|
|||||||
this.loadImage("shiny_star_small", "ui", "shiny_small.png");
|
this.loadImage("shiny_star_small", "ui", "shiny_small.png");
|
||||||
this.loadImage("shiny_star_small_1", "ui", "shiny_small_1.png");
|
this.loadImage("shiny_star_small_1", "ui", "shiny_small_1.png");
|
||||||
this.loadImage("shiny_star_small_2", "ui", "shiny_small_2.png");
|
this.loadImage("shiny_star_small_2", "ui", "shiny_small_2.png");
|
||||||
|
this.loadImage("favorite", "ui", "favorite.png");
|
||||||
this.loadImage("passive_bg", "ui", "passive_bg.png");
|
this.loadImage("passive_bg", "ui", "passive_bg.png");
|
||||||
this.loadAtlas("shiny_icons", "ui");
|
this.loadAtlas("shiny_icons", "ui");
|
||||||
this.loadImage("ha_capsule", "ui", "ha_capsule.png");
|
this.loadImage("ha_capsule", "ui", "ha_capsule.png");
|
||||||
|
@ -10,6 +10,7 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"trace": "{{pokemonName}} copied {{targetName}}'s\n{{abilityName}}!",
|
"trace": "{{pokemonName}} copied {{targetName}}'s\n{{abilityName}}!",
|
||||||
"windPowerCharged": "Being hit by {{moveName}} charged {{pokemonName}} with power!",
|
"windPowerCharged": "Being hit by {{moveName}} charged {{pokemonName}} with power!",
|
||||||
"quickDraw": "{{pokemonName}} can act faster than normal, thanks to its Quick Draw!",
|
"quickDraw": "{{pokemonName}} can act faster than normal, thanks to its Quick Draw!",
|
||||||
|
"disguiseAvoidedDamage" : "{{pokemonNameWithAffix}}'s disguise was busted!",
|
||||||
"blockItemTheft": "{{pokemonNameWithAffix}}'s {{abilityName}}\nprevents item theft!",
|
"blockItemTheft": "{{pokemonNameWithAffix}}'s {{abilityName}}\nprevents item theft!",
|
||||||
"typeImmunityHeal": "{{pokemonNameWithAffix}}'s {{abilityName}}\nrestored its HP a little!",
|
"typeImmunityHeal": "{{pokemonNameWithAffix}}'s {{abilityName}}\nrestored its HP a little!",
|
||||||
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} avoided damage\nwith {{abilityName}}!",
|
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} avoided damage\nwith {{abilityName}}!",
|
||||||
|
@ -60,6 +60,7 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"turnEndHpRestore": "{{pokemonName}}'s HP was restored.",
|
"turnEndHpRestore": "{{pokemonName}}'s HP was restored.",
|
||||||
"hpIsFull": "{{pokemonName}}'s\nHP is full!",
|
"hpIsFull": "{{pokemonName}}'s\nHP is full!",
|
||||||
"skipItemQuestion": "Are you sure you want to skip taking an item?",
|
"skipItemQuestion": "Are you sure you want to skip taking an item?",
|
||||||
|
"itemStackFull": "The stack for {{fullItemName}} is full.\nYou will receive {{itemName}} instead.",
|
||||||
"eggHatching": "Oh?",
|
"eggHatching": "Oh?",
|
||||||
"ivScannerUseQuestion": "Use IV Scanner on {{pokemonName}}?",
|
"ivScannerUseQuestion": "Use IV Scanner on {{pokemonName}}?",
|
||||||
"wildPokemonWithAffix": "Wild {{pokemonName}}",
|
"wildPokemonWithAffix": "Wild {{pokemonName}}",
|
||||||
@ -95,65 +96,4 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"congratulations": "Congratulations!",
|
"congratulations": "Congratulations!",
|
||||||
"beatModeFirstTime": "{{speciesName}} beat {{gameMode}} Mode for the first time!\nYou received {{newModifier}}!",
|
"beatModeFirstTime": "{{speciesName}} beat {{gameMode}} Mode for the first time!\nYou received {{newModifier}}!",
|
||||||
"ppReduced": "It reduced the PP of {{targetName}}'s\n{{moveName}} by {{reduction}}!",
|
"ppReduced": "It reduced the PP of {{targetName}}'s\n{{moveName}} by {{reduction}}!",
|
||||||
"battlerTagsRechargingLapse": "{{pokemonNameWithAffix}} must\nrecharge!",
|
|
||||||
"battlerTagsTrappedOnAdd": "{{pokemonNameWithAffix}} can no\nlonger escape!",
|
|
||||||
"battlerTagsTrappedOnRemove": "{{pokemonNameWithAffix}} was freed\nfrom {{moveName}}!",
|
|
||||||
"battlerTagsFlinchedLapse": "{{pokemonNameWithAffix}} flinched!",
|
|
||||||
"battlerTagsConfusedOnAdd": "{{pokemonNameWithAffix}} became\nconfused!",
|
|
||||||
"battlerTagsConfusedOnRemove": "{{pokemonNameWithAffix}} snapped\nout of confusion!",
|
|
||||||
"battlerTagsConfusedOnOverlap": "{{pokemonNameWithAffix}} is\nalready confused!",
|
|
||||||
"battlerTagsConfusedLapse": "{{pokemonNameWithAffix}} is\nconfused!",
|
|
||||||
"battlerTagsConfusedLapseHurtItself": "It hurt itself in its\nconfusion!",
|
|
||||||
"battlerTagsDestinyBondLapseIsBoss": "{{pokemonNameWithAffix}} is unaffected\nby the effects of Destiny Bond.",
|
|
||||||
"battlerTagsDestinyBondLapse": "{{pokemonNameWithAffix}} took\n{{pokemonNameWithAffix2}} down with it!",
|
|
||||||
"battlerTagsInfatuatedOnAdd": "{{pokemonNameWithAffix}} fell in love\nwith {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsInfatuatedOnOverlap": "{{pokemonNameWithAffix}} is\nalready in love!",
|
|
||||||
"battlerTagsInfatuatedLapse": "{{pokemonNameWithAffix}} is in love\nwith {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsInfatuatedLapseImmobilize": "{{pokemonNameWithAffix}} is\nimmobilized by love!",
|
|
||||||
"battlerTagsInfatuatedOnRemove": "{{pokemonNameWithAffix}} got over\nits infatuation.",
|
|
||||||
"battlerTagsSeededOnAdd": "{{pokemonNameWithAffix}} was seeded!",
|
|
||||||
"battlerTagsSeededLapse": "{{pokemonNameWithAffix}}'s health is\nsapped by Leech Seed!",
|
|
||||||
"battlerTagsSeededLapseShed": "{{pokemonNameWithAffix}}'s Leech Seed\nsucked up the liquid ooze!",
|
|
||||||
"battlerTagsNightmareOnAdd": "{{pokemonNameWithAffix}} began\nhaving a Nightmare!",
|
|
||||||
"battlerTagsNightmareOnOverlap": "{{pokemonNameWithAffix}} is\nalready locked in a Nightmare!",
|
|
||||||
"battlerTagsNightmareLapse": "{{pokemonNameWithAffix}} is locked\nin a Nightmare!",
|
|
||||||
"battlerTagsEncoreOnAdd": "{{pokemonNameWithAffix}} got\nan Encore!",
|
|
||||||
"battlerTagsEncoreOnRemove": "{{pokemonNameWithAffix}}'s Encore\nended!",
|
|
||||||
"battlerTagsHelpingHandOnAdd": "{{pokemonNameWithAffix}} is ready to\nhelp {{pokemonName}}!",
|
|
||||||
"battlerTagsIngrainLapse": "{{pokemonNameWithAffix}} absorbed\nnutrients with its roots!",
|
|
||||||
"battlerTagsIngrainOnTrap": "{{pokemonNameWithAffix}} planted its roots!",
|
|
||||||
"battlerTagsAquaRingOnAdd": "{{pokemonNameWithAffix}} surrounded\nitself with a veil of water!",
|
|
||||||
"battlerTagsAquaRingLapse": "{{moveName}} restored\n{{pokemonName}}'s HP!",
|
|
||||||
"battlerTagsDrowsyOnAdd": "{{pokemonNameWithAffix}} grew drowsy!",
|
|
||||||
"battlerTagsDamagingTrapLapse": "{{pokemonNameWithAffix}} is hurt\nby {{moveName}}!",
|
|
||||||
"battlerTagsBindOnTrap": "{{pokemonNameWithAffix}} was squeezed by\n{{sourcePokemonName}}'s {{moveName}}!",
|
|
||||||
"battlerTagsWrapOnTrap": "{{pokemonNameWithAffix}} was Wrapped\nby {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsVortexOnTrap": "{{pokemonNameWithAffix}} was trapped\nin the vortex!",
|
|
||||||
"battlerTagsClampOnTrap": "{{sourcePokemonNameWithAffix}} Clamped\n{{pokemonName}}!",
|
|
||||||
"battlerTagsSandTombOnTrap": "{{pokemonNameWithAffix}} became trapped\nby {{moveName}}!",
|
|
||||||
"battlerTagsMagmaStormOnTrap": "{{pokemonNameWithAffix}} became trapped\nby swirling magma!",
|
|
||||||
"battlerTagsSnapTrapOnTrap": "{{pokemonNameWithAffix}} got trapped\nby a snap trap!",
|
|
||||||
"battlerTagsThunderCageOnTrap": "{{sourcePokemonNameWithAffix}} trapped\n{{pokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsInfestationOnTrap": "{{pokemonNameWithAffix}} has been afflicted \nwith an infestation by {{sourcePokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsProtectedOnAdd": "{{pokemonNameWithAffix}}\nprotected itself!",
|
|
||||||
"battlerTagsProtectedLapse": "{{pokemonNameWithAffix}}\nprotected itself!",
|
|
||||||
"battlerTagsEnduringOnAdd": "{{pokemonNameWithAffix}} braced\nitself!",
|
|
||||||
"battlerTagsEnduringLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
|
||||||
"battlerTagsSturdyLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
|
||||||
"battlerTagsPerishSongLapse": "{{pokemonNameWithAffix}}'s perish count fell to {{turnCount}}.",
|
|
||||||
"battlerTagsCenterOfAttentionOnAdd": "{{pokemonNameWithAffix}} became the center\nof attention!",
|
|
||||||
"battlerTagsTruantLapse": "{{pokemonNameWithAffix}} is\nloafing around!",
|
|
||||||
"battlerTagsSlowStartOnAdd": "{{pokemonNameWithAffix}} can't\nget it going!",
|
|
||||||
"battlerTagsSlowStartOnRemove": "{{pokemonNameWithAffix}} finally\ngot its act together!",
|
|
||||||
"battlerTagsHighestStatBoostOnAdd": "{{pokemonNameWithAffix}}'s {{statName}}\nwas heightened!",
|
|
||||||
"battlerTagsHighestStatBoostOnRemove": "The effects of {{pokemonNameWithAffix}}'s\n{{abilityName}} wore off!",
|
|
||||||
"battlerTagsMagnetRisenOnAdd": "{{pokemonNameWithAffix}} levitated with electromagnetism!",
|
|
||||||
"battlerTagsMagnetRisenOnRemove": "{{pokemonNameWithAffix}}'s electromagnetism wore off!",
|
|
||||||
"battlerTagsCritBoostOnAdd": "{{pokemonNameWithAffix}} is getting\npumped!",
|
|
||||||
"battlerTagsCritBoostOnRemove": "{{pokemonNameWithAffix}} relaxed.",
|
|
||||||
"battlerTagsSaltCuredOnAdd": "{{pokemonNameWithAffix}} is being salt cured!",
|
|
||||||
"battlerTagsSaltCuredLapse": "{{pokemonNameWithAffix}} is hurt by {{moveName}}!",
|
|
||||||
"battlerTagsCursedOnAdd": "{{pokemonNameWithAffix}} cut its own HP and put a curse on the {{pokemonName}}!",
|
|
||||||
"battlerTagsCursedLapse": "{{pokemonNameWithAffix}} is afflicted by the Curse!",
|
|
||||||
"battlerTagsStockpilingOnAdd": "{{pokemonNameWithAffix}} stockpiled {{stockpiledCount}}!"
|
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -9,4 +9,65 @@ export const battlerTags: SimpleTranslationEntries = {
|
|||||||
"nightmareDesc": "nightmares",
|
"nightmareDesc": "nightmares",
|
||||||
"ingrainDesc": "roots",
|
"ingrainDesc": "roots",
|
||||||
"drowsyDesc": "drowsiness",
|
"drowsyDesc": "drowsiness",
|
||||||
|
"rechargingLapse": "{{pokemonNameWithAffix}} must\nrecharge!",
|
||||||
|
"trappedOnAdd": "{{pokemonNameWithAffix}} can no\nlonger escape!",
|
||||||
|
"trappedOnRemove": "{{pokemonNameWithAffix}} was freed\nfrom {{moveName}}!",
|
||||||
|
"flinchedLapse": "{{pokemonNameWithAffix}} flinched!",
|
||||||
|
"confusedOnAdd": "{{pokemonNameWithAffix}} became\nconfused!",
|
||||||
|
"confusedOnRemove": "{{pokemonNameWithAffix}} snapped\nout of confusion!",
|
||||||
|
"confusedOnOverlap": "{{pokemonNameWithAffix}} is\nalready confused!",
|
||||||
|
"confusedLapse": "{{pokemonNameWithAffix}} is\nconfused!",
|
||||||
|
"confusedLapseHurtItself": "It hurt itself in its\nconfusion!",
|
||||||
|
"destinyBondLapseIsBoss": "{{pokemonNameWithAffix}} is unaffected\nby the effects of Destiny Bond.",
|
||||||
|
"destinyBondLapse": "{{pokemonNameWithAffix}} took\n{{pokemonNameWithAffix2}} down with it!",
|
||||||
|
"infatuatedOnAdd": "{{pokemonNameWithAffix}} fell in love\nwith {{sourcePokemonName}}!",
|
||||||
|
"infatuatedOnOverlap": "{{pokemonNameWithAffix}} is\nalready in love!",
|
||||||
|
"infatuatedLapse": "{{pokemonNameWithAffix}} is in love\nwith {{sourcePokemonName}}!",
|
||||||
|
"infatuatedLapseImmobilize": "{{pokemonNameWithAffix}} is\nimmobilized by love!",
|
||||||
|
"infatuatedOnRemove": "{{pokemonNameWithAffix}} got over\nits infatuation.",
|
||||||
|
"seededOnAdd": "{{pokemonNameWithAffix}} was seeded!",
|
||||||
|
"seededLapse": "{{pokemonNameWithAffix}}'s health is\nsapped by Leech Seed!",
|
||||||
|
"seededLapseShed": "{{pokemonNameWithAffix}}'s Leech Seed\nsucked up the liquid ooze!",
|
||||||
|
"nightmareOnAdd": "{{pokemonNameWithAffix}} began\nhaving a Nightmare!",
|
||||||
|
"nightmareOnOverlap": "{{pokemonNameWithAffix}} is\nalready locked in a Nightmare!",
|
||||||
|
"nightmareLapse": "{{pokemonNameWithAffix}} is locked\nin a Nightmare!",
|
||||||
|
"encoreOnAdd": "{{pokemonNameWithAffix}} got\nan Encore!",
|
||||||
|
"encoreOnRemove": "{{pokemonNameWithAffix}}'s Encore\nended!",
|
||||||
|
"helpingHandOnAdd": "{{pokemonNameWithAffix}} is ready to\nhelp {{pokemonName}}!",
|
||||||
|
"ingrainLapse": "{{pokemonNameWithAffix}} absorbed\nnutrients with its roots!",
|
||||||
|
"ingrainOnTrap": "{{pokemonNameWithAffix}} planted its roots!",
|
||||||
|
"aquaRingOnAdd": "{{pokemonNameWithAffix}} surrounded\nitself with a veil of water!",
|
||||||
|
"aquaRingLapse": "{{moveName}} restored\n{{pokemonName}}'s HP!",
|
||||||
|
"drowsyOnAdd": "{{pokemonNameWithAffix}} grew drowsy!",
|
||||||
|
"damagingTrapLapse": "{{pokemonNameWithAffix}} is hurt\nby {{moveName}}!",
|
||||||
|
"bindOnTrap": "{{pokemonNameWithAffix}} was squeezed by\n{{sourcePokemonName}}'s {{moveName}}!",
|
||||||
|
"wrapOnTrap": "{{pokemonNameWithAffix}} was Wrapped\nby {{sourcePokemonName}}!",
|
||||||
|
"vortexOnTrap": "{{pokemonNameWithAffix}} was trapped\nin the vortex!",
|
||||||
|
"clampOnTrap": "{{sourcePokemonNameWithAffix}} Clamped\n{{pokemonName}}!",
|
||||||
|
"sandTombOnTrap": "{{pokemonNameWithAffix}} became trapped\nby {{moveName}}!",
|
||||||
|
"magmaStormOnTrap": "{{pokemonNameWithAffix}} became trapped\nby swirling magma!",
|
||||||
|
"snapTrapOnTrap": "{{pokemonNameWithAffix}} got trapped\nby a snap trap!",
|
||||||
|
"thunderCageOnTrap": "{{sourcePokemonNameWithAffix}} trapped\n{{pokemonNameWithAffix}}!",
|
||||||
|
"infestationOnTrap": "{{pokemonNameWithAffix}} has been afflicted \nwith an infestation by {{sourcePokemonNameWithAffix}}!",
|
||||||
|
"protectedOnAdd": "{{pokemonNameWithAffix}}\nprotected itself!",
|
||||||
|
"protectedLapse": "{{pokemonNameWithAffix}}\nprotected itself!",
|
||||||
|
"enduringOnAdd": "{{pokemonNameWithAffix}} braced\nitself!",
|
||||||
|
"enduringLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
||||||
|
"sturdyLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
||||||
|
"perishSongLapse": "{{pokemonNameWithAffix}}'s perish count fell to {{turnCount}}.",
|
||||||
|
"centerOfAttentionOnAdd": "{{pokemonNameWithAffix}} became the center\nof attention!",
|
||||||
|
"truantLapse": "{{pokemonNameWithAffix}} is\nloafing around!",
|
||||||
|
"slowStartOnAdd": "{{pokemonNameWithAffix}} can't\nget it going!",
|
||||||
|
"slowStartOnRemove": "{{pokemonNameWithAffix}} finally\ngot its act together!",
|
||||||
|
"highestStatBoostOnAdd": "{{pokemonNameWithAffix}}'s {{statName}}\nwas heightened!",
|
||||||
|
"highestStatBoostOnRemove": "The effects of {{pokemonNameWithAffix}}'s\n{{abilityName}} wore off!",
|
||||||
|
"magnetRisenOnAdd": "{{pokemonNameWithAffix}} levitated with electromagnetism!",
|
||||||
|
"magnetRisenOnRemove": "{{pokemonNameWithAffix}}'s electromagnetism wore off!",
|
||||||
|
"critBoostOnAdd": "{{pokemonNameWithAffix}} is getting\npumped!",
|
||||||
|
"critBoostOnRemove": "{{pokemonNameWithAffix}} relaxed.",
|
||||||
|
"saltCuredOnAdd": "{{pokemonNameWithAffix}} is being salt cured!",
|
||||||
|
"saltCuredLapse": "{{pokemonNameWithAffix}} is hurt by {{moveName}}!",
|
||||||
|
"cursedOnAdd": "{{pokemonNameWithAffix}} cut its own HP and put a curse on the {{pokemonName}}!",
|
||||||
|
"cursedLapse": "{{pokemonNameWithAffix}} is afflicted by the Curse!",
|
||||||
|
"stockpilingOnAdd": "{{pokemonNameWithAffix}} stockpiled {{stockpiledCount}}!",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -8,23 +8,30 @@ export const filterBar: SimpleTranslationEntries = {
|
|||||||
"miscFilter": "Misc",
|
"miscFilter": "Misc",
|
||||||
"sortFilter": "Sort",
|
"sortFilter": "Sort",
|
||||||
"all": "All",
|
"all": "All",
|
||||||
"normal": "Normal",
|
"normal": "Not Shiny",
|
||||||
"uncaught": "Uncaught",
|
"uncaught": "Uncaught",
|
||||||
"passive": "Passive",
|
"passive": "Passive",
|
||||||
"passiveUnlocked": "Passive Unlocked",
|
"passiveUnlocked": "Passive - Yes",
|
||||||
"passiveLocked": "Passive Locked",
|
"passiveLocked": "Passive - No",
|
||||||
|
"passiveUnlockable": "Passive - Can Unlock",
|
||||||
"costReduction": "Cost Reduction",
|
"costReduction": "Cost Reduction",
|
||||||
"costReductionUnlocked": "Cost Reduction Unlocked",
|
"costReductionUnlocked": "Cost Reduction - Yes",
|
||||||
"costReductionLocked": "Cost Reduction Locked",
|
"costReductionLocked": "Cost Reduction - No",
|
||||||
|
"costReductionUnlockable": "Cost Reduction - Can Unlock",
|
||||||
|
"favorite": "Favorite",
|
||||||
|
"isFavorite": "Favorite - Yes",
|
||||||
|
"notFavorite": "Favorite - No",
|
||||||
"ribbon": "Ribbon",
|
"ribbon": "Ribbon",
|
||||||
"hasWon": "Ribbon - Yes",
|
"hasWon": "Ribbon - Yes",
|
||||||
"hasNotWon": "Ribbon - No",
|
"hasNotWon": "Ribbon - No",
|
||||||
"hiddenAbility": "Hidden Ability",
|
"hiddenAbility": "Hidden Ability",
|
||||||
"hasHiddenAbility": "Hidden Ability - Yes",
|
"hasHiddenAbility": "Hidden Ability - Yes",
|
||||||
"noHiddenAbility": "Hidden Ability - No",
|
"noHiddenAbility": "Hidden Ability - No",
|
||||||
"pokerus": "Pokerus",
|
"egg": "Egg",
|
||||||
"hasPokerus": "Pokerus - Yes",
|
"eggPurchasable": "Purchasable Egg",
|
||||||
"noPokerus": "Pokerus - No",
|
"pokerus": "Pokérus",
|
||||||
|
"hasPokerus": "Pokérus - Yes",
|
||||||
|
"noPokerus": "Pokérus - No",
|
||||||
"sortByNumber": "No.",
|
"sortByNumber": "No.",
|
||||||
"sortByCost": "Cost",
|
"sortByCost": "Cost",
|
||||||
"sortByCandies": "Candy Count",
|
"sortByCandies": "Candy Count",
|
||||||
|
@ -56,6 +56,7 @@ export const moveTriggers: SimpleTranslationEntries = {
|
|||||||
"sacrificialFullRestore": "{{pokemonName}}'s Healing Wish\nwas granted!",
|
"sacrificialFullRestore": "{{pokemonName}}'s Healing Wish\nwas granted!",
|
||||||
"invertStats": "{{pokemonName}}'s stat changes\nwere all reversed!",
|
"invertStats": "{{pokemonName}}'s stat changes\nwere all reversed!",
|
||||||
"resetStats": "{{pokemonName}}'s stat changes\nwere eliminated!",
|
"resetStats": "{{pokemonName}}'s stat changes\nwere eliminated!",
|
||||||
|
"statEliminated": "All stat changes were eliminated!",
|
||||||
"faintCountdown": "{{pokemonName}}\nwill faint in {{turnCount}} turns.",
|
"faintCountdown": "{{pokemonName}}\nwill faint in {{turnCount}} turns.",
|
||||||
"copyType": "{{pokemonName}}'s type became the same as\n{{targetPokemonName}}'s type!",
|
"copyType": "{{pokemonName}}'s type became the same as\n{{targetPokemonName}}'s type!",
|
||||||
"suppressAbilities": "{{pokemonName}}'s ability\nwas suppressed!",
|
"suppressAbilities": "{{pokemonName}}'s ability\nwas suppressed!",
|
||||||
|
@ -13,6 +13,7 @@ export const battlePokemonForm: SimpleTranslationEntries = {
|
|||||||
"eternamaxChange": "{{preName}} Eternamaxed\ninto {{pokemonName}}!",
|
"eternamaxChange": "{{preName}} Eternamaxed\ninto {{pokemonName}}!",
|
||||||
"revertChange": "{{pokemonName}} reverted\nto its original form!",
|
"revertChange": "{{pokemonName}} reverted\nto its original form!",
|
||||||
"formChange": "{{preName}} changed form!",
|
"formChange": "{{preName}} changed form!",
|
||||||
|
"disguiseChange": "Its disguise served it as a decoy!",
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const pokemonForm: SimpleTranslationEntries = {
|
export const pokemonForm: SimpleTranslationEntries = {
|
||||||
|
@ -28,6 +28,8 @@ export const starterSelectUiHandler: SimpleTranslationEntries = {
|
|||||||
"toggleIVs": "Toggle IVs",
|
"toggleIVs": "Toggle IVs",
|
||||||
"manageMoves": "Manage Moves",
|
"manageMoves": "Manage Moves",
|
||||||
"manageNature": "Manage Nature",
|
"manageNature": "Manage Nature",
|
||||||
|
"addToFavorites": "Add to Favorites",
|
||||||
|
"removeFromFavorites": "Remove from Favorites",
|
||||||
"useCandies": "Use Candies",
|
"useCandies": "Use Candies",
|
||||||
"selectNature": "Select nature.",
|
"selectNature": "Select nature.",
|
||||||
"selectMoveSwapOut": "Select a move to swap out.",
|
"selectMoveSwapOut": "Select a move to swap out.",
|
||||||
|
@ -4,7 +4,7 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"blockRecoilDamage": "{{pokemonName}} wurde durch {{abilityName}} vor Rückstoß geschützt!",
|
"blockRecoilDamage": "{{pokemonName}} wurde durch {{abilityName}} vor Rückstoß geschützt!",
|
||||||
"badDreams": "{{pokemonName}} ist in einem Alptraum gefangen!",
|
"badDreams": "{{pokemonName}} ist in einem Alptraum gefangen!",
|
||||||
"costar": "{{pokemonName}} kopiert die Statusveränderungen von {{allyName}}!",
|
"costar": "{{pokemonName}} kopiert die Statusveränderungen von {{allyName}}!",
|
||||||
"iceFaceAvoidedDamage": "{{pokemonName}} wehrt Schaden mit {{abilityName}} ab!",
|
"iceFaceAvoidedDamage": "{{pokemonNameWithAffix}} wehrt Schaden mit {{abilityName}} ab!",
|
||||||
"perishBody": "Durch {{abilityName}} von {{pokemonName}} werden beide Pokémon nach drei Runden K.O. gehen!",
|
"perishBody": "Durch {{abilityName}} von {{pokemonName}} werden beide Pokémon nach drei Runden K.O. gehen!",
|
||||||
"poisonHeal": "{{abilityName}} von {{pokemonName}} füllte einige KP auf!",
|
"poisonHeal": "{{abilityName}} von {{pokemonName}} füllte einige KP auf!",
|
||||||
"trace": "{{pokemonName}} kopiert {{abilityName}} von {{targetName}}!",
|
"trace": "{{pokemonName}} kopiert {{abilityName}} von {{targetName}}!",
|
||||||
@ -13,7 +13,7 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"blockItemTheft": "{{abilityName}} von {{pokemonNameWithAffix}} verhindert Item-Diebstahl!",
|
"blockItemTheft": "{{abilityName}} von {{pokemonNameWithAffix}} verhindert Item-Diebstahl!",
|
||||||
"typeImmunityHeal": "{{abilityName}} von {{pokemonNameWithAffix}} füllte einige KP auf!",
|
"typeImmunityHeal": "{{abilityName}} von {{pokemonNameWithAffix}} füllte einige KP auf!",
|
||||||
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} vermeidet Schaden mit {{abilityName}}!",
|
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} vermeidet Schaden mit {{abilityName}}!",
|
||||||
"postDefendDisguise": "Die Tarnung von {{pokemonNameWithAffix}} ist aufgeflogen!!",
|
"disguiseAvoidedDamage": "Die Tarnung von {{pokemonNameWithAffix}} ist aufgeflogen!!",
|
||||||
"moveImmunity": "Es hat keine Wirkung auf {{pokemonNameWithAffix}}...",
|
"moveImmunity": "Es hat keine Wirkung auf {{pokemonNameWithAffix}}...",
|
||||||
"reverseDrain": "{{pokemonNameWithAffix}} saugt Kloakensoße auf!",
|
"reverseDrain": "{{pokemonNameWithAffix}} saugt Kloakensoße auf!",
|
||||||
"postDefendTypeChange": "{{abilityName}} von {{pokemonNameWithAffix}} macht es zu einem {{typeName}}-Typ!",
|
"postDefendTypeChange": "{{abilityName}} von {{pokemonNameWithAffix}} macht es zu einem {{typeName}}-Typ!",
|
||||||
|
@ -57,6 +57,7 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"escapeVerbSwitch": "auswechseln",
|
"escapeVerbSwitch": "auswechseln",
|
||||||
"escapeVerbFlee": "flucht",
|
"escapeVerbFlee": "flucht",
|
||||||
"skipItemQuestion": "Bist du sicher, dass du kein Item nehmen willst?",
|
"skipItemQuestion": "Bist du sicher, dass du kein Item nehmen willst?",
|
||||||
|
"itemStackFull": "Du hast bereits zu viele von {{fullItemName}}. Du erhältst stattdessen {{itemName}}.",
|
||||||
"notDisabled": "{{moveName}} von {{pokemonName}} ist nicht mehr deaktiviert!",
|
"notDisabled": "{{moveName}} von {{pokemonName}} ist nicht mehr deaktiviert!",
|
||||||
"turnEndHpRestore": "Die KP von {{pokemonName}} wurden wiederhergestellt.",
|
"turnEndHpRestore": "Die KP von {{pokemonName}} wurden wiederhergestellt.",
|
||||||
"hpIsFull": "Die KP von {{pokemonName}} sind voll!",
|
"hpIsFull": "Die KP von {{pokemonName}} sind voll!",
|
||||||
@ -95,65 +96,4 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"unlockedSomething": "{{unlockedThing}} wurde freigeschaltet.",
|
"unlockedSomething": "{{unlockedThing}} wurde freigeschaltet.",
|
||||||
"congratulations": "Glückwunsch!",
|
"congratulations": "Glückwunsch!",
|
||||||
"beatModeFirstTime": "{{speciesName}} hat den {{gameMode}} Modus zum ersten Mal beendet! Du erhältst {{newModifier}}!",
|
"beatModeFirstTime": "{{speciesName}} hat den {{gameMode}} Modus zum ersten Mal beendet! Du erhältst {{newModifier}}!",
|
||||||
"battlerTagsRechargingLapse": "{{pokemonNameWithAffix}} kann sich wegen des Rückstoßes durch den Angriff nicht bewegen!",
|
|
||||||
"battlerTagsTrappedOnAdd": "{{pokemonNameWithAffix}} kann nicht mehr fliehen!",
|
|
||||||
"battlerTagsTrappedOnRemove": "{{pokemonNameWithAffix}} wurde von {{moveName}} befreit.",
|
|
||||||
"battlerTagsFlinchedLapse": "{{pokemonNameWithAffix}} ist zurückgeschreckt und kann nicht handeln!",
|
|
||||||
"battlerTagsConfusedOnAdd": "{{pokemonNameWithAffix}} wurde verwirrt!",
|
|
||||||
"battlerTagsConfusedOnRemove": "{{pokemonNameWithAffix}} ist nicht mehr verwirrt!",
|
|
||||||
"battlerTagsConfusedOnOverlap": "{{pokemonNameWithAffix}} ist bereits verwirrt!",
|
|
||||||
"battlerTagsConfusedLapse": "{{pokemonNameWithAffix}} ist verwirrt!",
|
|
||||||
"battlerTagsConfusedLapseHurtItself": "Es hat sich vor Verwirrung selbst verletzt!",
|
|
||||||
"battlerTagsDestinyBondLapseIsBoss": "{{pokemonNameWithAffix}} ist immun gegen den Effekt von Abgangsbund!",
|
|
||||||
"battlerTagsDestinyBondLapse": "{{pokemonNameWithAffix}} nimmt {{pokemonNameWithAffix2}} mit sich!",
|
|
||||||
"battlerTagsInfatuatedOnAdd": "{{pokemonNameWithAffix}} hat sich in {{sourcePokemonName}} verliebt!",
|
|
||||||
"battlerTagsInfatuatedOnOverlap": "{{pokemonNameWithAffix}} ist bereits verliebt.",
|
|
||||||
"battlerTagsInfatuatedLapse": "{{pokemonNameWithAffix}} ist in {{sourcePokemonName}} verliebt!",
|
|
||||||
"battlerTagsInfatuatedLapseImmobilize": "{{pokemonNameWithAffix}} ist starr vor Liebe!",
|
|
||||||
"battlerTagsInfatuatedOnRemove": "{{pokemonNameWithAffix}} ist nicht mehr verliebt!",
|
|
||||||
"battlerTagsSeededOnAdd": "{{pokemonNameWithAffix}} wurde bepflanzt!",
|
|
||||||
"battlerTagsSeededLapse": "{{pokemonNameWithAffix}} wurden durch Egelsamen KP geraubt!",
|
|
||||||
"battlerTagsSeededLapseShed": "Egelsamen von {{pokemonNameWithAffix}} saugt Kloakensoße auf!",
|
|
||||||
"battlerTagsNightmareOnAdd": "Nachtmahr sucht {{pokemonNameWithAffix}} heim!",
|
|
||||||
"battlerTagsNightmareOnOverlap": "{{pokemonNameWithAffix}} wird bereits von Nachtmahr heimgesucht!",
|
|
||||||
"battlerTagsNightmareLapse": "Nachtmahr schadet {{pokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsEncoreOnAdd": "{{pokemonNameWithAffix}} gibt eine Zugabe",
|
|
||||||
"battlerTagsEncoreOnRemove": "Die Zugabe von {{pokemonNameWithAffix}} ist beendet!",
|
|
||||||
"battlerTagsHelpingHandOnAdd": "{{pokemonNameWithAffix}} will {{pokemonName}} helfen!",
|
|
||||||
"battlerTagsIngrainLapse": "{{pokemonNameWithAffix}} nimmt über seine Wurzeln Nährstoffe auf!",
|
|
||||||
"battlerTagsIngrainOnTrap": "{{pokemonNameWithAffix}} pflanzt seine Wurzeln!",
|
|
||||||
"battlerTagsAquaRingOnAdd": "{{pokemonNameWithAffix}} umgibt sich mit einem Wasserring!",
|
|
||||||
"battlerTagsAquaRingLapse": "{{moveName}} füllt KP von {{pokemonName}} wieder auf!",
|
|
||||||
"battlerTagsDrowsyOnAdd": "{{pokemonNameWithAffix}} wurde schläfrig gemacht!",
|
|
||||||
"battlerTagsDamagingTrapLapse": "{{pokemonNameWithAffix}} wurde durch {{moveName}} verletzt!",
|
|
||||||
"battlerTagsBindOnTrap": "{{pokemonNameWithAffix}} wurde durch {{moveName}} von {{sourcePokemonName}} gequetscht!",
|
|
||||||
"battlerTagsWrapOnTrap": "{{pokemonNameWithAffix}} wurde von {{sourcePokemonName}} umwickelt!",
|
|
||||||
"battlerTagsVortexOnTrap": "{{pokemonNameWithAffix}} wird in dem Strudel gefangen!",
|
|
||||||
"battlerTagsClampOnTrap": "{{sourcePokemonNameWithAffix}} wurde von {{pokemonName}} geschnappt!",
|
|
||||||
"battlerTagsSandTombOnTrap": "{{pokemonNameWithAffix}} wurde von {{moveName}} gefangen!",
|
|
||||||
"battlerTagsMagmaStormOnTrap": "{{pokemonNameWithAffix}} wurde in wirbelndem Magma eingeschlossen!",
|
|
||||||
"battlerTagsSnapTrapOnTrap": "{{pokemonNameWithAffix}} wurde durch Sandgrab gefangen!",
|
|
||||||
"battlerTagsThunderCageOnTrap": "{{sourcePokemonNameWithAffix}} hat {{pokemonNameWithAffix}} gefangen!",
|
|
||||||
"battlerTagsInfestationOnTrap": "{{sourcePokemonNameWithAffix}} plagt {{pokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsProtectedOnAdd": "{{pokemonNameWithAffix}} schützt sich selbst!",
|
|
||||||
"battlerTagsProtectedLapse": "{{pokemonNameWithAffix}} schützt sich selbst!",
|
|
||||||
"battlerTagsEnduringOnAdd": "{{pokemonNameWithAffix}} sammelt sich, um die nächste Attacke zu überstehen!",
|
|
||||||
"battlerTagsEnduringLapse": "{{pokemonNameWithAffix}} übersteht die Attacke!",
|
|
||||||
"battlerTagsSturdyLapse": "{{pokemonNameWithAffix}} übersteht die Attacke!",
|
|
||||||
"battlerTagsPerishSongLapse": "Abgesang von {{pokemonNameWithAffix}} steht bei {{turnCount}}.",
|
|
||||||
"battlerTagsCenterOfAttentionOnAdd": "{{pokemonNameWithAffix}} zieht alle Aufmerksamkeit auf sich!",
|
|
||||||
"battlerTagsTruantLapse": "{{pokemonNameWithAffix}} faulenzt!",
|
|
||||||
"battlerTagsSlowStartOnAdd": "{{pokemonNameWithAffix}} kommt nicht in Fahrt!",
|
|
||||||
"battlerTagsSlowStartOnRemove": "{{pokemonNameWithAffix}} kriegt schließlich doch noch die Kurve!",
|
|
||||||
"battlerTagsHighestStatBoostOnAdd": "{{statName}} von {{pokemonNameWithAffix}} wird verstärkt!",
|
|
||||||
"battlerTagsHighestStatBoostOnRemove": "Der Effekt von {{abilityName}} von {{pokemonNameWithAffix}} lässt nach!",
|
|
||||||
"battlerTagsMagnetRisenOnAdd": "{{pokemonNameWithAffix}} schwebt aufgrund von Elektromagnetismus!",
|
|
||||||
"battlerTagsMagnetRisenOnRemove": "Der Elektromagnetismus von {{pokemonNameWithAffix}} hört auf zu wirken!",
|
|
||||||
"battlerTagsCritBoostOnAdd": "{{pokemonNameWithAffix}} läuft zu Hochtouren auf!",
|
|
||||||
"battlerTagsCritBoostOnRemove": "{{pokemonNameWithAffix}} entspannt.",
|
|
||||||
"battlerTagsSaltCuredOnAdd": "{{pokemonNameWithAffix}} wurde eingepökelt!",
|
|
||||||
"battlerTagsSaltCuredLapse": "{{pokemonNameWithAffix}} wurde durch {{moveName}} verletzt!",
|
|
||||||
"battlerTagsCursedOnAdd": "{{pokemonNameWithAffix}} nimmt einen Teil seiner KP und legt einen Fluch auf {{pokemonName}}!",
|
|
||||||
"battlerTagsCursedLapse": "{{pokemonNameWithAffix}} wurde durch den Fluch verletzt!",
|
|
||||||
"battlerTagsStockpilingOnAdd": "{{pokemonNameWithAffix}} stockpiled {{stockpiledCount}}!"
|
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -9,4 +9,65 @@ export const battlerTags: SimpleTranslationEntries = {
|
|||||||
"nightmareDesc": "Nachtmahr",
|
"nightmareDesc": "Nachtmahr",
|
||||||
"ingrainDesc": "Verwurzlung",
|
"ingrainDesc": "Verwurzlung",
|
||||||
"drowsyDesc": "Schläfrigkeit",
|
"drowsyDesc": "Schläfrigkeit",
|
||||||
|
"rechargingLapse": "{{pokemonNameWithAffix}} kann sich wegen des Rückstoßes durch den Angriff nicht bewegen!",
|
||||||
|
"trappedOnAdd": "{{pokemonNameWithAffix}} kann nicht mehr fliehen!",
|
||||||
|
"trappedOnRemove": "{{pokemonNameWithAffix}} wurde von {{moveName}} befreit.",
|
||||||
|
"flinchedLapse": "{{pokemonNameWithAffix}} ist zurückgeschreckt und kann nicht handeln!",
|
||||||
|
"confusedOnAdd": "{{pokemonNameWithAffix}} wurde verwirrt!",
|
||||||
|
"confusedOnRemove": "{{pokemonNameWithAffix}} ist nicht mehr verwirrt!",
|
||||||
|
"confusedOnOverlap": "{{pokemonNameWithAffix}} ist bereits verwirrt!",
|
||||||
|
"confusedLapse": "{{pokemonNameWithAffix}} ist verwirrt!",
|
||||||
|
"confusedLapseHurtItself": "Es hat sich vor Verwirrung selbst verletzt!",
|
||||||
|
"destinyBondLapseIsBoss": "{{pokemonNameWithAffix}} ist immun gegen den Effekt von Abgangsbund!",
|
||||||
|
"destinyBondLapse": "{{pokemonNameWithAffix}} nimmt {{pokemonNameWithAffix2}} mit sich!",
|
||||||
|
"infatuatedOnAdd": "{{pokemonNameWithAffix}} hat sich in {{sourcePokemonName}} verliebt!",
|
||||||
|
"infatuatedOnOverlap": "{{pokemonNameWithAffix}} ist bereits verliebt.",
|
||||||
|
"infatuatedLapse": "{{pokemonNameWithAffix}} ist in {{sourcePokemonName}} verliebt!",
|
||||||
|
"infatuatedLapseImmobilize": "{{pokemonNameWithAffix}} ist starr vor Liebe!",
|
||||||
|
"infatuatedOnRemove": "{{pokemonNameWithAffix}} ist nicht mehr verliebt!",
|
||||||
|
"seededOnAdd": "{{pokemonNameWithAffix}} wurde bepflanzt!",
|
||||||
|
"seededLapse": "{{pokemonNameWithAffix}} wurden durch Egelsamen KP geraubt!",
|
||||||
|
"seededLapseShed": "Egelsamen von {{pokemonNameWithAffix}} saugt Kloakensoße auf!",
|
||||||
|
"nightmareOnAdd": "Nachtmahr sucht {{pokemonNameWithAffix}} heim!",
|
||||||
|
"nightmareOnOverlap": "{{pokemonNameWithAffix}} wird bereits von Nachtmahr heimgesucht!",
|
||||||
|
"nightmareLapse": "Nachtmahr schadet {{pokemonNameWithAffix}}!",
|
||||||
|
"encoreOnAdd": "{{pokemonNameWithAffix}} gibt eine Zugabe",
|
||||||
|
"encoreOnRemove": "Die Zugabe von {{pokemonNameWithAffix}} ist beendet!",
|
||||||
|
"helpingHandOnAdd": "{{pokemonNameWithAffix}} will {{pokemonName}} helfen!",
|
||||||
|
"ingrainLapse": "{{pokemonNameWithAffix}} nimmt über seine Wurzeln Nährstoffe auf!",
|
||||||
|
"ingrainOnTrap": "{{pokemonNameWithAffix}} pflanzt seine Wurzeln!",
|
||||||
|
"aquaRingOnAdd": "{{pokemonNameWithAffix}} umgibt sich mit einem Wasserring!",
|
||||||
|
"aquaRingLapse": "{{moveName}} füllt KP von {{pokemonName}} wieder auf!",
|
||||||
|
"drowsyOnAdd": "{{pokemonNameWithAffix}} wurde schläfrig gemacht!",
|
||||||
|
"damagingTrapLapse": "{{pokemonNameWithAffix}} wurde durch {{moveName}} verletzt!",
|
||||||
|
"bindOnTrap": "{{pokemonNameWithAffix}} wurde durch {{moveName}} von {{sourcePokemonName}} gequetscht!",
|
||||||
|
"wrapOnTrap": "{{pokemonNameWithAffix}} wurde von {{sourcePokemonName}} umwickelt!",
|
||||||
|
"vortexOnTrap": "{{pokemonNameWithAffix}} wird in dem Strudel gefangen!",
|
||||||
|
"clampOnTrap": "{{sourcePokemonNameWithAffix}} wurde von {{pokemonName}} geschnappt!",
|
||||||
|
"sandTombOnTrap": "{{pokemonNameWithAffix}} wurde von {{moveName}} gefangen!",
|
||||||
|
"magmaStormOnTrap": "{{pokemonNameWithAffix}} wurde in wirbelndem Magma eingeschlossen!",
|
||||||
|
"snapTrapOnTrap": "{{pokemonNameWithAffix}} wurde durch Sandgrab gefangen!",
|
||||||
|
"thunderCageOnTrap": "{{sourcePokemonNameWithAffix}} hat {{pokemonNameWithAffix}} gefangen!",
|
||||||
|
"infestationOnTrap": "{{sourcePokemonNameWithAffix}} plagt {{pokemonNameWithAffix}}!",
|
||||||
|
"protectedOnAdd": "{{pokemonNameWithAffix}} schützt sich selbst!",
|
||||||
|
"protectedLapse": "{{pokemonNameWithAffix}} schützt sich selbst!",
|
||||||
|
"enduringOnAdd": "{{pokemonNameWithAffix}} sammelt sich, um die nächste Attacke zu überstehen!",
|
||||||
|
"enduringLapse": "{{pokemonNameWithAffix}} übersteht die Attacke!",
|
||||||
|
"sturdyLapse": "{{pokemonNameWithAffix}} übersteht die Attacke!",
|
||||||
|
"perishSongLapse": "Abgesang von {{pokemonNameWithAffix}} steht bei {{turnCount}}.",
|
||||||
|
"centerOfAttentionOnAdd": "{{pokemonNameWithAffix}} zieht alle Aufmerksamkeit auf sich!",
|
||||||
|
"truantLapse": "{{pokemonNameWithAffix}} faulenzt!",
|
||||||
|
"slowStartOnAdd": "{{pokemonNameWithAffix}} kommt nicht in Fahrt!",
|
||||||
|
"slowStartOnRemove": "{{pokemonNameWithAffix}} kriegt schließlich doch noch die Kurve!",
|
||||||
|
"highestStatBoostOnAdd": "{{statName}} von {{pokemonNameWithAffix}} wird verstärkt!",
|
||||||
|
"highestStatBoostOnRemove": "Der Effekt von {{abilityName}} von {{pokemonNameWithAffix}} lässt nach!",
|
||||||
|
"magnetRisenOnAdd": "{{pokemonNameWithAffix}} schwebt aufgrund von Elektromagnetismus!",
|
||||||
|
"magnetRisenOnRemove": "Der Elektromagnetismus von {{pokemonNameWithAffix}} hört auf zu wirken!",
|
||||||
|
"critBoostOnAdd": "{{pokemonNameWithAffix}} läuft zu Hochtouren auf!",
|
||||||
|
"critBoostOnRemove": "{{pokemonNameWithAffix}} entspannt.",
|
||||||
|
"saltCuredOnAdd": "{{pokemonNameWithAffix}} wurde eingepökelt!",
|
||||||
|
"saltCuredLapse": "{{pokemonNameWithAffix}} wurde durch {{moveName}} verletzt!",
|
||||||
|
"cursedOnAdd": "{{pokemonNameWithAffix}} nimmt einen Teil seiner KP und legt einen Fluch auf {{pokemonName}}!",
|
||||||
|
"cursedLapse": "{{pokemonNameWithAffix}} wurde durch den Fluch verletzt!",
|
||||||
|
"stockpilingOnAdd": "{{pokemonNameWithAffix}} stockpiled {{stockpiledCount}}!",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -13,18 +13,25 @@ export const filterBar: SimpleTranslationEntries = {
|
|||||||
"passive": "Passive",
|
"passive": "Passive",
|
||||||
"passiveUnlocked": "Passive freigeschaltet",
|
"passiveUnlocked": "Passive freigeschaltet",
|
||||||
"passiveLocked": "Passive gesperrt",
|
"passiveLocked": "Passive gesperrt",
|
||||||
"costReduction": "Cost Reduction",
|
"passiveUnlockable": "Passive - Freischalten möglich",
|
||||||
"costReductionUnlocked": "Cost Reduction Unlocked",
|
"costReduction": "Kostenreduzierung",
|
||||||
"costReductionLocked": "Cost Reduction Locked",
|
"costReductionUnlocked": "Kosten bereits reduziert",
|
||||||
|
"costReductionLocked": "Kosten noch nicht reduziert",
|
||||||
|
"costReductionUnlockable": "Kosten können reduziert werden",
|
||||||
|
"favorite": "Favorit",
|
||||||
|
"isFavorite": "Favorit - Ja",
|
||||||
|
"notFavorite": "Favorit - Nein",
|
||||||
"ribbon": "Band",
|
"ribbon": "Band",
|
||||||
"hasWon": "Hat Klassik-Modus gewonnen",
|
"hasWon": "Hat Klassik-Modus gewonnen",
|
||||||
"hasNotWon": "Hat Klassik-Modus nicht gewonnen",
|
"hasNotWon": "Hat Klassik-Modus nicht gewonnen",
|
||||||
"hiddenAbility": "Hidden Ability",
|
"hiddenAbility": "Versteckte Fähigkeit",
|
||||||
"hasHiddenAbility": "Hidden Ability - Yes",
|
"hasHiddenAbility": "Versteckte Fähigkeit - Ja",
|
||||||
"noHiddenAbility": "Hidden Ability - No",
|
"noHiddenAbility": "Versteckte Fähigkeit - Nein",
|
||||||
"pokerus": "Pokerus",
|
"egg": "Ei",
|
||||||
"hasPokerus": "Pokerus - Yes",
|
"eggPurchasable": "Kauf möglich",
|
||||||
"noPokerus": "Pokerus - No",
|
"pokerus": "Pokérus",
|
||||||
|
"hasPokerus": "Pokérus - Ja",
|
||||||
|
"noPokerus": "Pokérus - Nein",
|
||||||
"sortByNumber": "Pokédex-Nummer",
|
"sortByNumber": "Pokédex-Nummer",
|
||||||
"sortByCost": "Kosten",
|
"sortByCost": "Kosten",
|
||||||
"sortByCandies": "Anzahl Bonbons",
|
"sortByCandies": "Anzahl Bonbons",
|
||||||
|
@ -56,6 +56,7 @@ export const moveTriggers: SimpleTranslationEntries = {
|
|||||||
"sacrificialFullRestore": "Das Heilopfer von {{pokemonName}} erreicht sein Ziel!",
|
"sacrificialFullRestore": "Das Heilopfer von {{pokemonName}} erreicht sein Ziel!",
|
||||||
"invertStats": "Alle Statusveränderungen von {{pokemonName}} wurden invertiert!",
|
"invertStats": "Alle Statusveränderungen von {{pokemonName}} wurden invertiert!",
|
||||||
"resetStats": "Die Statusveränderungen von {{pokemonName}} wurden aufgehoben!",
|
"resetStats": "Die Statusveränderungen von {{pokemonName}} wurden aufgehoben!",
|
||||||
|
"statEliminated": "Alle Statusveränderungen wurden aufgehoben!",
|
||||||
"faintCountdown": "{{pokemonName}} geht nach {{turnCount}} Runden K.O.!",
|
"faintCountdown": "{{pokemonName}} geht nach {{turnCount}} Runden K.O.!",
|
||||||
"copyType": "{{pokemonName}} hat den Typ von {{targetPokemonName}} angenommen!",
|
"copyType": "{{pokemonName}} hat den Typ von {{targetPokemonName}} angenommen!",
|
||||||
"suppressAbilities": "Die Fähigkeit von {{pokemonName}} wirkt nicht mehr!",
|
"suppressAbilities": "Die Fähigkeit von {{pokemonName}} wirkt nicht mehr!",
|
||||||
|
@ -14,6 +14,7 @@ export const battlePokemonForm: SimpleTranslationEntries = {
|
|||||||
"eternamaxChange": "{{preName}} hat sich zu {{pokemonName}} unendynamaximiert!",
|
"eternamaxChange": "{{preName}} hat sich zu {{pokemonName}} unendynamaximiert!",
|
||||||
"revertChange": "{{pokemonName}} hat seine ursprüngliche Form zurückerlangt!",
|
"revertChange": "{{pokemonName}} hat seine ursprüngliche Form zurückerlangt!",
|
||||||
"formChange": "{{preName}} hat seine Form geändert!",
|
"formChange": "{{preName}} hat seine Form geändert!",
|
||||||
|
"disguiseChange": "Its disguise served it as a decoy!",
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const pokemonForm: SimpleTranslationEntries = {
|
export const pokemonForm: SimpleTranslationEntries = {
|
||||||
|
@ -97,5 +97,6 @@ export const settings: SimpleTranslationEntries = {
|
|||||||
"controller": "Controller",
|
"controller": "Controller",
|
||||||
"gamepadSupport": "Controllerunterstützung",
|
"gamepadSupport": "Controllerunterstützung",
|
||||||
"showBgmBar": "Musiknamen anzeigen",
|
"showBgmBar": "Musiknamen anzeigen",
|
||||||
|
"moveTouchControls": "Bewegung Touch Steuerung",
|
||||||
"shopOverlayOpacity": "Shop Overlay Deckkraft",
|
"shopOverlayOpacity": "Shop Overlay Deckkraft",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -28,6 +28,8 @@ export const starterSelectUiHandler: SimpleTranslationEntries = {
|
|||||||
"toggleIVs": "DVs anzeigen/verbergen",
|
"toggleIVs": "DVs anzeigen/verbergen",
|
||||||
"manageMoves": "Attacken ändern",
|
"manageMoves": "Attacken ändern",
|
||||||
"manageNature": "Wesen ändern",
|
"manageNature": "Wesen ändern",
|
||||||
|
"addToFavorites": "Add to Favorites",
|
||||||
|
"removeFromFavorites": "Remove from Favorites",
|
||||||
"useCandies": "Bonbons verwenden",
|
"useCandies": "Bonbons verwenden",
|
||||||
"selectNature": "Wähle das neue Wesen.",
|
"selectNature": "Wähle das neue Wesen.",
|
||||||
"selectMoveSwapOut": "Wähle die zu ersetzende Attacke.",
|
"selectMoveSwapOut": "Wähle die zu ersetzende Attacke.",
|
||||||
|
@ -4,16 +4,16 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"blockRecoilDamage": "{{pokemonName}}'s {{abilityName}}\nprotected it from recoil!",
|
"blockRecoilDamage": "{{pokemonName}}'s {{abilityName}}\nprotected it from recoil!",
|
||||||
"badDreams": "{{pokemonName}} is tormented!",
|
"badDreams": "{{pokemonName}} is tormented!",
|
||||||
"costar": "{{pokemonName}} copied {{allyName}}'s stat changes!",
|
"costar": "{{pokemonName}} copied {{allyName}}'s stat changes!",
|
||||||
"iceFaceAvoidedDamage": "{{pokemonName}} avoided\ndamage with {{abilityName}}!",
|
"iceFaceAvoidedDamage": "{{pokemonNameWithAffix}} avoided\ndamage with {{abilityName}}!",
|
||||||
"perishBody": "{{pokemonName}}'s {{abilityName}}\nwill faint both pokemon in 3 turns!",
|
"perishBody": "{{pokemonName}}'s {{abilityName}}\nwill faint both pokemon in 3 turns!",
|
||||||
"poisonHeal": "{{pokemonName}}'s {{abilityName}}\nrestored its HP a little!",
|
"poisonHeal": "{{pokemonName}}'s {{abilityName}}\nrestored its HP a little!",
|
||||||
"trace": "{{pokemonName}} copied {{targetName}}'s\n{{abilityName}}!",
|
"trace": "{{pokemonName}} copied {{targetName}}'s\n{{abilityName}}!",
|
||||||
"windPowerCharged": "Being hit by {{moveName}} charged {{pokemonName}} with power!",
|
"windPowerCharged": "Being hit by {{moveName}} charged {{pokemonName}} with power!",
|
||||||
"quickDraw": "{{pokemonName}} can act faster than normal, thanks to its Quick Draw!",
|
"quickDraw": "{{pokemonName}} can act faster than normal, thanks to its Quick Draw!",
|
||||||
|
"disguiseAvoidedDamage" : "{{pokemonNameWithAffix}}'s disguise was busted!",
|
||||||
"blockItemTheft": "{{pokemonNameWithAffix}}'s {{abilityName}}\nprevents item theft!",
|
"blockItemTheft": "{{pokemonNameWithAffix}}'s {{abilityName}}\nprevents item theft!",
|
||||||
"typeImmunityHeal": "{{pokemonNameWithAffix}}'s {{abilityName}}\nrestored its HP a little!",
|
"typeImmunityHeal": "{{pokemonNameWithAffix}}'s {{abilityName}}\nrestored its HP a little!",
|
||||||
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} avoided damage\nwith {{abilityName}}!",
|
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} avoided damage\nwith {{abilityName}}!",
|
||||||
"postDefendDisguise": "{{pokemonNameWithAffix}}'s disguise was busted!",
|
|
||||||
"moveImmunity": "It doesn't affect {{pokemonNameWithAffix}}!",
|
"moveImmunity": "It doesn't affect {{pokemonNameWithAffix}}!",
|
||||||
"reverseDrain": "{{pokemonNameWithAffix}} sucked up the liquid ooze!",
|
"reverseDrain": "{{pokemonNameWithAffix}} sucked up the liquid ooze!",
|
||||||
"postDefendTypeChange": "{{pokemonNameWithAffix}}'s {{abilityName}}\nmade it the {{typeName}} type!",
|
"postDefendTypeChange": "{{pokemonNameWithAffix}}'s {{abilityName}}\nmade it the {{typeName}} type!",
|
||||||
|
@ -60,6 +60,7 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"turnEndHpRestore": "{{pokemonName}}'s HP was restored.",
|
"turnEndHpRestore": "{{pokemonName}}'s HP was restored.",
|
||||||
"hpIsFull": "{{pokemonName}}'s\nHP is full!",
|
"hpIsFull": "{{pokemonName}}'s\nHP is full!",
|
||||||
"skipItemQuestion": "Are you sure you want to skip taking an item?",
|
"skipItemQuestion": "Are you sure you want to skip taking an item?",
|
||||||
|
"itemStackFull": "The stack for {{fullItemName}} is full.\nYou will receive {{itemName}} instead.",
|
||||||
"eggHatching": "Oh?",
|
"eggHatching": "Oh?",
|
||||||
"ivScannerUseQuestion": "Use IV Scanner on {{pokemonName}}?",
|
"ivScannerUseQuestion": "Use IV Scanner on {{pokemonName}}?",
|
||||||
"wildPokemonWithAffix": "Wild {{pokemonName}}",
|
"wildPokemonWithAffix": "Wild {{pokemonName}}",
|
||||||
@ -95,65 +96,4 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"congratulations": "Congratulations!",
|
"congratulations": "Congratulations!",
|
||||||
"beatModeFirstTime": "{{speciesName}} beat {{gameMode}} Mode for the first time!\nYou received {{newModifier}}!",
|
"beatModeFirstTime": "{{speciesName}} beat {{gameMode}} Mode for the first time!\nYou received {{newModifier}}!",
|
||||||
"ppReduced": "It reduced the PP of {{targetName}}'s\n{{moveName}} by {{reduction}}!",
|
"ppReduced": "It reduced the PP of {{targetName}}'s\n{{moveName}} by {{reduction}}!",
|
||||||
"battlerTagsRechargingLapse": "{{pokemonNameWithAffix}} must\nrecharge!",
|
|
||||||
"battlerTagsTrappedOnAdd": "{{pokemonNameWithAffix}} can no\nlonger escape!",
|
|
||||||
"battlerTagsTrappedOnRemove": "{{pokemonNameWithAffix}} was freed\nfrom {{moveName}}!",
|
|
||||||
"battlerTagsFlinchedLapse": "{{pokemonNameWithAffix}} flinched!",
|
|
||||||
"battlerTagsConfusedOnAdd": "{{pokemonNameWithAffix}} became\nconfused!",
|
|
||||||
"battlerTagsConfusedOnRemove": "{{pokemonNameWithAffix}} snapped\nout of confusion!",
|
|
||||||
"battlerTagsConfusedOnOverlap": "{{pokemonNameWithAffix}} is\nalready confused!",
|
|
||||||
"battlerTagsConfusedLapse": "{{pokemonNameWithAffix}} is\nconfused!",
|
|
||||||
"battlerTagsConfusedLapseHurtItself": "It hurt itself in its\nconfusion!",
|
|
||||||
"battlerTagsDestinyBondLapseIsBoss": "{{pokemonNameWithAffix}} is unaffected\nby the effects of Destiny Bond.",
|
|
||||||
"battlerTagsDestinyBondLapse": "{{pokemonNameWithAffix}} took\n{{pokemonNameWithAffix2}} down with it!",
|
|
||||||
"battlerTagsInfatuatedOnAdd": "{{pokemonNameWithAffix}} fell in love\nwith {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsInfatuatedOnOverlap": "{{pokemonNameWithAffix}} is\nalready in love!",
|
|
||||||
"battlerTagsInfatuatedLapse": "{{pokemonNameWithAffix}} is in love\nwith {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsInfatuatedLapseImmobilize": "{{pokemonNameWithAffix}} is\nimmobilized by love!",
|
|
||||||
"battlerTagsInfatuatedOnRemove": "{{pokemonNameWithAffix}} got over\nits infatuation.",
|
|
||||||
"battlerTagsSeededOnAdd": "{{pokemonNameWithAffix}} was seeded!",
|
|
||||||
"battlerTagsSeededLapse": "{{pokemonNameWithAffix}}'s health is\nsapped by Leech Seed!",
|
|
||||||
"battlerTagsSeededLapseShed": "{{pokemonNameWithAffix}}'s Leech Seed\nsucked up the liquid ooze!",
|
|
||||||
"battlerTagsNightmareOnAdd": "{{pokemonNameWithAffix}} began\nhaving a Nightmare!",
|
|
||||||
"battlerTagsNightmareOnOverlap": "{{pokemonNameWithAffix}} is\nalready locked in a Nightmare!",
|
|
||||||
"battlerTagsNightmareLapse": "{{pokemonNameWithAffix}} is locked\nin a Nightmare!",
|
|
||||||
"battlerTagsEncoreOnAdd": "{{pokemonNameWithAffix}} got\nan Encore!",
|
|
||||||
"battlerTagsEncoreOnRemove": "{{pokemonNameWithAffix}}'s Encore\nended!",
|
|
||||||
"battlerTagsHelpingHandOnAdd": "{{pokemonNameWithAffix}} is ready to\nhelp {{pokemonName}}!",
|
|
||||||
"battlerTagsIngrainLapse": "{{pokemonNameWithAffix}} absorbed\nnutrients with its roots!",
|
|
||||||
"battlerTagsIngrainOnTrap": "{{pokemonNameWithAffix}} planted its roots!",
|
|
||||||
"battlerTagsAquaRingOnAdd": "{{pokemonNameWithAffix}} surrounded\nitself with a veil of water!",
|
|
||||||
"battlerTagsAquaRingLapse": "{{moveName}} restored\n{{pokemonName}}'s HP!",
|
|
||||||
"battlerTagsDrowsyOnAdd": "{{pokemonNameWithAffix}} grew drowsy!",
|
|
||||||
"battlerTagsDamagingTrapLapse": "{{pokemonNameWithAffix}} is hurt\nby {{moveName}}!",
|
|
||||||
"battlerTagsBindOnTrap": "{{pokemonNameWithAffix}} was squeezed by\n{{sourcePokemonName}}'s {{moveName}}!",
|
|
||||||
"battlerTagsWrapOnTrap": "{{pokemonNameWithAffix}} was Wrapped\nby {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsVortexOnTrap": "{{pokemonNameWithAffix}} was trapped\nin the vortex!",
|
|
||||||
"battlerTagsClampOnTrap": "{{sourcePokemonNameWithAffix}} Clamped\n{{pokemonName}}!",
|
|
||||||
"battlerTagsSandTombOnTrap": "{{pokemonNameWithAffix}} became trapped\nby {{moveName}}!",
|
|
||||||
"battlerTagsMagmaStormOnTrap": "{{pokemonNameWithAffix}} became trapped\nby swirling magma!",
|
|
||||||
"battlerTagsSnapTrapOnTrap": "{{pokemonNameWithAffix}} got trapped\nby a snap trap!",
|
|
||||||
"battlerTagsThunderCageOnTrap": "{{sourcePokemonNameWithAffix}} trapped\n{{pokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsInfestationOnTrap": "{{pokemonNameWithAffix}} has been afflicted \nwith an infestation by {{sourcePokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsProtectedOnAdd": "{{pokemonNameWithAffix}}\nprotected itself!",
|
|
||||||
"battlerTagsProtectedLapse": "{{pokemonNameWithAffix}}\nprotected itself!",
|
|
||||||
"battlerTagsEnduringOnAdd": "{{pokemonNameWithAffix}} braced\nitself!",
|
|
||||||
"battlerTagsEnduringLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
|
||||||
"battlerTagsSturdyLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
|
||||||
"battlerTagsPerishSongLapse": "{{pokemonNameWithAffix}}'s perish count fell to {{turnCount}}.",
|
|
||||||
"battlerTagsCenterOfAttentionOnAdd": "{{pokemonNameWithAffix}} became the center\nof attention!",
|
|
||||||
"battlerTagsTruantLapse": "{{pokemonNameWithAffix}} is\nloafing around!",
|
|
||||||
"battlerTagsSlowStartOnAdd": "{{pokemonNameWithAffix}} can't\nget it going!",
|
|
||||||
"battlerTagsSlowStartOnRemove": "{{pokemonNameWithAffix}} finally\ngot its act together!",
|
|
||||||
"battlerTagsHighestStatBoostOnAdd": "{{pokemonNameWithAffix}}'s {{statName}}\nwas heightened!",
|
|
||||||
"battlerTagsHighestStatBoostOnRemove": "The effects of {{pokemonNameWithAffix}}'s\n{{abilityName}} wore off!",
|
|
||||||
"battlerTagsMagnetRisenOnAdd": "{{pokemonNameWithAffix}} levitated with electromagnetism!",
|
|
||||||
"battlerTagsMagnetRisenOnRemove": "{{pokemonNameWithAffix}}'s electromagnetism wore off!",
|
|
||||||
"battlerTagsCritBoostOnAdd": "{{pokemonNameWithAffix}} is getting\npumped!",
|
|
||||||
"battlerTagsCritBoostOnRemove": "{{pokemonNameWithAffix}} relaxed.",
|
|
||||||
"battlerTagsSaltCuredOnAdd": "{{pokemonNameWithAffix}} is being salt cured!",
|
|
||||||
"battlerTagsSaltCuredLapse": "{{pokemonNameWithAffix}} is hurt by {{moveName}}!",
|
|
||||||
"battlerTagsCursedOnAdd": "{{pokemonNameWithAffix}} cut its own HP and put a curse on the {{pokemonName}}!",
|
|
||||||
"battlerTagsCursedLapse": "{{pokemonNameWithAffix}} is afflicted by the Curse!",
|
|
||||||
"battlerTagsStockpilingOnAdd": "{{pokemonNameWithAffix}} stockpiled {{stockpiledCount}}!"
|
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -9,4 +9,65 @@ export const battlerTags: SimpleTranslationEntries = {
|
|||||||
"nightmareDesc": "nightmares",
|
"nightmareDesc": "nightmares",
|
||||||
"ingrainDesc": "roots",
|
"ingrainDesc": "roots",
|
||||||
"drowsyDesc": "drowsiness",
|
"drowsyDesc": "drowsiness",
|
||||||
|
"rechargingLapse": "{{pokemonNameWithAffix}} must\nrecharge!",
|
||||||
|
"trappedOnAdd": "{{pokemonNameWithAffix}} can no\nlonger escape!",
|
||||||
|
"trappedOnRemove": "{{pokemonNameWithAffix}} was freed\nfrom {{moveName}}!",
|
||||||
|
"flinchedLapse": "{{pokemonNameWithAffix}} flinched!",
|
||||||
|
"confusedOnAdd": "{{pokemonNameWithAffix}} became\nconfused!",
|
||||||
|
"confusedOnRemove": "{{pokemonNameWithAffix}} snapped\nout of confusion!",
|
||||||
|
"confusedOnOverlap": "{{pokemonNameWithAffix}} is\nalready confused!",
|
||||||
|
"confusedLapse": "{{pokemonNameWithAffix}} is\nconfused!",
|
||||||
|
"confusedLapseHurtItself": "It hurt itself in its\nconfusion!",
|
||||||
|
"destinyBondLapseIsBoss": "{{pokemonNameWithAffix}} is unaffected\nby the effects of Destiny Bond.",
|
||||||
|
"destinyBondLapse": "{{pokemonNameWithAffix}} took\n{{pokemonNameWithAffix2}} down with it!",
|
||||||
|
"infatuatedOnAdd": "{{pokemonNameWithAffix}} fell in love\nwith {{sourcePokemonName}}!",
|
||||||
|
"infatuatedOnOverlap": "{{pokemonNameWithAffix}} is\nalready in love!",
|
||||||
|
"infatuatedLapse": "{{pokemonNameWithAffix}} is in love\nwith {{sourcePokemonName}}!",
|
||||||
|
"infatuatedLapseImmobilize": "{{pokemonNameWithAffix}} is\nimmobilized by love!",
|
||||||
|
"infatuatedOnRemove": "{{pokemonNameWithAffix}} got over\nits infatuation.",
|
||||||
|
"seededOnAdd": "{{pokemonNameWithAffix}} was seeded!",
|
||||||
|
"seededLapse": "{{pokemonNameWithAffix}}'s health is\nsapped by Leech Seed!",
|
||||||
|
"seededLapseShed": "{{pokemonNameWithAffix}}'s Leech Seed\nsucked up the liquid ooze!",
|
||||||
|
"nightmareOnAdd": "{{pokemonNameWithAffix}} began\nhaving a Nightmare!",
|
||||||
|
"nightmareOnOverlap": "{{pokemonNameWithAffix}} is\nalready locked in a Nightmare!",
|
||||||
|
"nightmareLapse": "{{pokemonNameWithAffix}} is locked\nin a Nightmare!",
|
||||||
|
"encoreOnAdd": "{{pokemonNameWithAffix}} got\nan Encore!",
|
||||||
|
"encoreOnRemove": "{{pokemonNameWithAffix}}'s Encore\nended!",
|
||||||
|
"helpingHandOnAdd": "{{pokemonNameWithAffix}} is ready to\nhelp {{pokemonName}}!",
|
||||||
|
"ingrainLapse": "{{pokemonNameWithAffix}} absorbed\nnutrients with its roots!",
|
||||||
|
"ingrainOnTrap": "{{pokemonNameWithAffix}} planted its roots!",
|
||||||
|
"aquaRingOnAdd": "{{pokemonNameWithAffix}} surrounded\nitself with a veil of water!",
|
||||||
|
"aquaRingLapse": "{{moveName}} restored\n{{pokemonName}}'s HP!",
|
||||||
|
"drowsyOnAdd": "{{pokemonNameWithAffix}} grew drowsy!",
|
||||||
|
"damagingTrapLapse": "{{pokemonNameWithAffix}} is hurt\nby {{moveName}}!",
|
||||||
|
"bindOnTrap": "{{pokemonNameWithAffix}} was squeezed by\n{{sourcePokemonName}}'s {{moveName}}!",
|
||||||
|
"wrapOnTrap": "{{pokemonNameWithAffix}} was Wrapped\nby {{sourcePokemonName}}!",
|
||||||
|
"vortexOnTrap": "{{pokemonNameWithAffix}} was trapped\nin the vortex!",
|
||||||
|
"clampOnTrap": "{{sourcePokemonNameWithAffix}} Clamped\n{{pokemonName}}!",
|
||||||
|
"sandTombOnTrap": "{{pokemonNameWithAffix}} became trapped\nby {{moveName}}!",
|
||||||
|
"magmaStormOnTrap": "{{pokemonNameWithAffix}} became trapped\nby swirling magma!",
|
||||||
|
"snapTrapOnTrap": "{{pokemonNameWithAffix}} got trapped\nby a snap trap!",
|
||||||
|
"thunderCageOnTrap": "{{sourcePokemonNameWithAffix}} trapped\n{{pokemonNameWithAffix}}!",
|
||||||
|
"infestationOnTrap": "{{pokemonNameWithAffix}} has been afflicted \nwith an infestation by {{sourcePokemonNameWithAffix}}!",
|
||||||
|
"protectedOnAdd": "{{pokemonNameWithAffix}}\nprotected itself!",
|
||||||
|
"protectedLapse": "{{pokemonNameWithAffix}}\nprotected itself!",
|
||||||
|
"enduringOnAdd": "{{pokemonNameWithAffix}} braced\nitself!",
|
||||||
|
"enduringLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
||||||
|
"sturdyLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
||||||
|
"perishSongLapse": "{{pokemonNameWithAffix}}'s perish count fell to {{turnCount}}.",
|
||||||
|
"centerOfAttentionOnAdd": "{{pokemonNameWithAffix}} became the center\nof attention!",
|
||||||
|
"truantLapse": "{{pokemonNameWithAffix}} is\nloafing around!",
|
||||||
|
"slowStartOnAdd": "{{pokemonNameWithAffix}} can't\nget it going!",
|
||||||
|
"slowStartOnRemove": "{{pokemonNameWithAffix}} finally\ngot its act together!",
|
||||||
|
"highestStatBoostOnAdd": "{{pokemonNameWithAffix}}'s {{statName}}\nwas heightened!",
|
||||||
|
"highestStatBoostOnRemove": "The effects of {{pokemonNameWithAffix}}'s\n{{abilityName}} wore off!",
|
||||||
|
"magnetRisenOnAdd": "{{pokemonNameWithAffix}} levitated with electromagnetism!",
|
||||||
|
"magnetRisenOnRemove": "{{pokemonNameWithAffix}}'s electromagnetism wore off!",
|
||||||
|
"critBoostOnAdd": "{{pokemonNameWithAffix}} is getting\npumped!",
|
||||||
|
"critBoostOnRemove": "{{pokemonNameWithAffix}} relaxed.",
|
||||||
|
"saltCuredOnAdd": "{{pokemonNameWithAffix}} is being salt cured!",
|
||||||
|
"saltCuredLapse": "{{pokemonNameWithAffix}} is hurt by {{moveName}}!",
|
||||||
|
"cursedOnAdd": "{{pokemonNameWithAffix}} cut its own HP and put a curse on the {{pokemonName}}!",
|
||||||
|
"cursedLapse": "{{pokemonNameWithAffix}} is afflicted by the Curse!",
|
||||||
|
"stockpilingOnAdd": "{{pokemonNameWithAffix}} stockpiled {{stockpiledCount}}!",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -11,20 +11,27 @@ export const filterBar: SimpleTranslationEntries = {
|
|||||||
"normal": "Not Shiny",
|
"normal": "Not Shiny",
|
||||||
"uncaught": "Uncaught",
|
"uncaught": "Uncaught",
|
||||||
"passive": "Passive",
|
"passive": "Passive",
|
||||||
"passiveUnlocked": "Passive Unlocked",
|
"passiveUnlocked": "Passive - Yes",
|
||||||
"passiveLocked": "Passive Locked",
|
"passiveLocked": "Passive - No",
|
||||||
|
"passiveUnlockable": "Passive - Can Unlock",
|
||||||
"costReduction": "Cost Reduction",
|
"costReduction": "Cost Reduction",
|
||||||
"costReductionUnlocked": "Cost Reduction Unlocked",
|
"costReductionUnlocked": "Cost Reduction - Yes",
|
||||||
"costReductionLocked": "Cost Reduction Locked",
|
"costReductionLocked": "Cost Reduction - No",
|
||||||
|
"costReductionUnlockable": "Cost Reduction - Can Unlock",
|
||||||
|
"favorite": "Favorite",
|
||||||
|
"isFavorite": "Favorite - Yes",
|
||||||
|
"notFavorite": "Favorite - No",
|
||||||
"ribbon": "Ribbon",
|
"ribbon": "Ribbon",
|
||||||
"hasWon": "Ribbon - Yes",
|
"hasWon": "Ribbon - Yes",
|
||||||
"hasNotWon": "Ribbon - No",
|
"hasNotWon": "Ribbon - No",
|
||||||
"hiddenAbility": "Hidden Ability",
|
"hiddenAbility": "Hidden Ability",
|
||||||
"hasHiddenAbility": "Hidden Ability - Yes",
|
"hasHiddenAbility": "Hidden Ability - Yes",
|
||||||
"noHiddenAbility": "Hidden Ability - No",
|
"noHiddenAbility": "Hidden Ability - No",
|
||||||
"pokerus": "Pokerus",
|
"egg": "Egg",
|
||||||
"hasPokerus": "Pokerus - Yes",
|
"eggPurchasable": "Purchasable Egg",
|
||||||
"noPokerus": "Pokerus - No",
|
"pokerus": "Pokérus",
|
||||||
|
"hasPokerus": "Pokérus - Yes",
|
||||||
|
"noPokerus": "Pokérus - No",
|
||||||
"sortByNumber": "No.",
|
"sortByNumber": "No.",
|
||||||
"sortByCost": "Cost",
|
"sortByCost": "Cost",
|
||||||
"sortByCandies": "Candy Count",
|
"sortByCandies": "Candy Count",
|
||||||
|
@ -56,6 +56,7 @@ export const moveTriggers: SimpleTranslationEntries = {
|
|||||||
"sacrificialFullRestore": "{{pokemonName}}'s Healing Wish\nwas granted!",
|
"sacrificialFullRestore": "{{pokemonName}}'s Healing Wish\nwas granted!",
|
||||||
"invertStats": "{{pokemonName}}'s stat changes\nwere all reversed!",
|
"invertStats": "{{pokemonName}}'s stat changes\nwere all reversed!",
|
||||||
"resetStats": "{{pokemonName}}'s stat changes\nwere eliminated!",
|
"resetStats": "{{pokemonName}}'s stat changes\nwere eliminated!",
|
||||||
|
"statEliminated": "All stat changes were eliminated!",
|
||||||
"faintCountdown": "{{pokemonName}}\nwill faint in {{turnCount}} turns.",
|
"faintCountdown": "{{pokemonName}}\nwill faint in {{turnCount}} turns.",
|
||||||
"copyType": "{{pokemonName}}'s type became the same as\n{{targetPokemonName}}'s type!",
|
"copyType": "{{pokemonName}}'s type became the same as\n{{targetPokemonName}}'s type!",
|
||||||
"suppressAbilities": "{{pokemonName}}'s ability\nwas suppressed!",
|
"suppressAbilities": "{{pokemonName}}'s ability\nwas suppressed!",
|
||||||
|
@ -13,6 +13,7 @@ export const battlePokemonForm: SimpleTranslationEntries = {
|
|||||||
"eternamaxChange": "{{preName}} Eternamaxed\ninto {{pokemonName}}!",
|
"eternamaxChange": "{{preName}} Eternamaxed\ninto {{pokemonName}}!",
|
||||||
"revertChange": "{{pokemonName}} reverted\nto its original form!",
|
"revertChange": "{{pokemonName}} reverted\nto its original form!",
|
||||||
"formChange": "{{preName}} changed form!",
|
"formChange": "{{preName}} changed form!",
|
||||||
|
"disguiseChange": "Its disguise served it as a decoy!",
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const pokemonForm: SimpleTranslationEntries = {
|
export const pokemonForm: SimpleTranslationEntries = {
|
||||||
|
@ -97,5 +97,6 @@ export const settings: SimpleTranslationEntries = {
|
|||||||
"controller": "Controller",
|
"controller": "Controller",
|
||||||
"gamepadSupport": "Gamepad Support",
|
"gamepadSupport": "Gamepad Support",
|
||||||
"showBgmBar": "Show Music Names",
|
"showBgmBar": "Show Music Names",
|
||||||
|
"moveTouchControls": "Move Touch Controls",
|
||||||
"shopOverlayOpacity": "Shop Overlay Opacity"
|
"shopOverlayOpacity": "Shop Overlay Opacity"
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -28,6 +28,8 @@ export const starterSelectUiHandler: SimpleTranslationEntries = {
|
|||||||
"toggleIVs": "Toggle IVs",
|
"toggleIVs": "Toggle IVs",
|
||||||
"manageMoves": "Manage Moves",
|
"manageMoves": "Manage Moves",
|
||||||
"manageNature": "Manage Nature",
|
"manageNature": "Manage Nature",
|
||||||
|
"addToFavorites": "Add to Favorites",
|
||||||
|
"removeFromFavorites": "Remove from Favorites",
|
||||||
"useCandies": "Use Candies",
|
"useCandies": "Use Candies",
|
||||||
"selectNature": "Select nature.",
|
"selectNature": "Select nature.",
|
||||||
"selectMoveSwapOut": "Select a move to swap out.",
|
"selectMoveSwapOut": "Select a move to swap out.",
|
||||||
|
@ -7,13 +7,13 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"iceFaceAvoidedDamage": "¡{{pokemonNameWithAffix}} evitó\ndaño con {{abilityName}}!",
|
"iceFaceAvoidedDamage": "¡{{pokemonNameWithAffix}} evitó\ndaño con {{abilityName}}!",
|
||||||
"perishBody": "{{pokemonName}}'s {{abilityName}}\nwill faint both pokemon in 3 turns!",
|
"perishBody": "{{pokemonName}}'s {{abilityName}}\nwill faint both pokemon in 3 turns!",
|
||||||
"poisonHeal": "{{pokemonName}}'s {{abilityName}}\nrestored its HP a little!",
|
"poisonHeal": "{{pokemonName}}'s {{abilityName}}\nrestored its HP a little!",
|
||||||
"trace": "{{pokemonName}} copied {{targetName}}'s\n{{abilityName}}!",
|
"trace": "¡{{pokemonName}} ha copiado la habilidad {{abilityName}} \nde {{targetName}}!",
|
||||||
"windPowerCharged": "¡{{pokemonName}} se ha cargado de electricidad gracias a {{moveName}}!",
|
"windPowerCharged": "¡{{pokemonName}} se ha cargado de electricidad gracias a {{moveName}}!",
|
||||||
"quickDraw": "{{pokemonName}} can act faster than normal, thanks to its Quick Draw!",
|
"quickDraw": "¡{{pokemonName}} ataca primero gracias a la habilidad Mano Rápida!",
|
||||||
|
"disguiseAvoidedDamage" : "¡El disfraz de {{pokemonNameWithAffix}} se ha roto!",
|
||||||
"blockItemTheft": "{{pokemonNameWithAffix}}'s {{abilityName}}\nprevents item theft!",
|
"blockItemTheft": "{{pokemonNameWithAffix}}'s {{abilityName}}\nprevents item theft!",
|
||||||
"typeImmunityHeal": "{{pokemonNameWithAffix}}'s {{abilityName}}\nrestored its HP a little!",
|
"typeImmunityHeal": "{{pokemonNameWithAffix}}'s {{abilityName}}\nrestored its HP a little!",
|
||||||
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} avoided damage\nwith {{abilityName}}!",
|
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} avoided damage\nwith {{abilityName}}!",
|
||||||
"postDefendDisguise": "{{pokemonNameWithAffix}}'s disguise was busted!",
|
|
||||||
"moveImmunity": "It doesn't affect {{pokemonNameWithAffix}}!",
|
"moveImmunity": "It doesn't affect {{pokemonNameWithAffix}}!",
|
||||||
"reverseDrain": "{{pokemonNameWithAffix}} sucked up the liquid ooze!",
|
"reverseDrain": "{{pokemonNameWithAffix}} sucked up the liquid ooze!",
|
||||||
"postDefendTypeChange": "{{pokemonNameWithAffix}}'s {{abilityName}}\nmade it the {{typeName}} type!",
|
"postDefendTypeChange": "{{pokemonNameWithAffix}}'s {{abilityName}}\nmade it the {{typeName}} type!",
|
||||||
|
@ -57,9 +57,10 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"escapeVerbSwitch": "cambiar",
|
"escapeVerbSwitch": "cambiar",
|
||||||
"escapeVerbFlee": "huir",
|
"escapeVerbFlee": "huir",
|
||||||
"notDisabled": "¡El movimiento {{moveName}} de {{pokemonName}}\nya no está anulado!",
|
"notDisabled": "¡El movimiento {{moveName}} de {{pokemonName}}\nya no está anulado!",
|
||||||
"turnEndHpRestore": "{{pokemonName}}'s HP was restored.",
|
"turnEndHpRestore": "Los PS de {{pokemonName}} fueron restaurados.",
|
||||||
"hpIsFull": "{{pokemonName}}'s\nHP is full!",
|
"hpIsFull": "¡Los PS de {{pokemonName}}\nestán al máximo!",
|
||||||
"skipItemQuestion": "¿Estás seguro de que no quieres coger un objeto?",
|
"skipItemQuestion": "¿Estás seguro de que no quieres coger un objeto?",
|
||||||
|
"itemStackFull": "El máximo número de {{fullItemName}} ha sido alcanzado. Recibirás {{itemName}} en su lugar.",
|
||||||
"eggHatching": "¿Y esto?",
|
"eggHatching": "¿Y esto?",
|
||||||
"ivScannerUseQuestion": "¿Quieres usar el Escáner de IVs en {{pokemonName}}?",
|
"ivScannerUseQuestion": "¿Quieres usar el Escáner de IVs en {{pokemonName}}?",
|
||||||
"wildPokemonWithAffix": "El {{pokemonName}} salvaje",
|
"wildPokemonWithAffix": "El {{pokemonName}} salvaje",
|
||||||
@ -95,65 +96,4 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"congratulations": "Congratulations!",
|
"congratulations": "Congratulations!",
|
||||||
"beatModeFirstTime": "{{speciesName}} beat {{gameMode}} Mode for the first time!\nYou received {{newModifier}}!",
|
"beatModeFirstTime": "{{speciesName}} beat {{gameMode}} Mode for the first time!\nYou received {{newModifier}}!",
|
||||||
"ppReduced": "It reduced the PP of {{targetName}}'s\n{{moveName}} by {{reduction}}!",
|
"ppReduced": "It reduced the PP of {{targetName}}'s\n{{moveName}} by {{reduction}}!",
|
||||||
"battlerTagsRechargingLapse": "{{pokemonNameWithAffix}} must\nrecharge!",
|
|
||||||
"battlerTagsTrappedOnAdd": "{{pokemonNameWithAffix}} can no\nlonger escape!",
|
|
||||||
"battlerTagsTrappedOnRemove": "{{pokemonNameWithAffix}} was freed\nfrom {{moveName}}!",
|
|
||||||
"battlerTagsFlinchedLapse": "{{pokemonNameWithAffix}} flinched!",
|
|
||||||
"battlerTagsConfusedOnAdd": "{{pokemonNameWithAffix}} became\nconfused!",
|
|
||||||
"battlerTagsConfusedOnRemove": "{{pokemonNameWithAffix}} snapped\nout of confusion!",
|
|
||||||
"battlerTagsConfusedOnOverlap": "{{pokemonNameWithAffix}} is\nalready confused!",
|
|
||||||
"battlerTagsConfusedLapse": "{{pokemonNameWithAffix}} is\nconfused!",
|
|
||||||
"battlerTagsConfusedLapseHurtItself": "It hurt itself in its\nconfusion!",
|
|
||||||
"battlerTagsDestinyBondLapseIsBoss": "{{pokemonNameWithAffix}} is unaffected\nby the effects of Destiny Bond.",
|
|
||||||
"battlerTagsDestinyBondLapse": "{{pokemonNameWithAffix}} took\n{{pokemonNameWithAffix2}} down with it!",
|
|
||||||
"battlerTagsInfatuatedOnAdd": "{{pokemonNameWithAffix}} fell in love\nwith {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsInfatuatedOnOverlap": "{{pokemonNameWithAffix}} is\nalready in love!",
|
|
||||||
"battlerTagsInfatuatedLapse": "{{pokemonNameWithAffix}} is in love\nwith {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsInfatuatedLapseImmobilize": "{{pokemonNameWithAffix}} is\nimmobilized by love!",
|
|
||||||
"battlerTagsInfatuatedOnRemove": "{{pokemonNameWithAffix}} got over\nits infatuation.",
|
|
||||||
"battlerTagsSeededOnAdd": "{{pokemonNameWithAffix}} was seeded!",
|
|
||||||
"battlerTagsSeededLapse": "{{pokemonNameWithAffix}}'s health is\nsapped by Leech Seed!",
|
|
||||||
"battlerTagsSeededLapseShed": "{{pokemonNameWithAffix}}'s Leech Seed\nsucked up the liquid ooze!",
|
|
||||||
"battlerTagsNightmareOnAdd": "{{pokemonNameWithAffix}} began\nhaving a Nightmare!",
|
|
||||||
"battlerTagsNightmareOnOverlap": "{{pokemonNameWithAffix}} is\nalready locked in a Nightmare!",
|
|
||||||
"battlerTagsNightmareLapse": "{{pokemonNameWithAffix}} is locked\nin a Nightmare!",
|
|
||||||
"battlerTagsEncoreOnAdd": "{{pokemonNameWithAffix}} got\nan Encore!",
|
|
||||||
"battlerTagsEncoreOnRemove": "{{pokemonNameWithAffix}}'s Encore\nended!",
|
|
||||||
"battlerTagsHelpingHandOnAdd": "{{pokemonNameWithAffix}} is ready to\nhelp {{pokemonName}}!",
|
|
||||||
"battlerTagsIngrainLapse": "{{pokemonNameWithAffix}} absorbed\nnutrients with its roots!",
|
|
||||||
"battlerTagsIngrainOnTrap": "{{pokemonNameWithAffix}} planted its roots!",
|
|
||||||
"battlerTagsAquaRingOnAdd": "{{pokemonNameWithAffix}} surrounded\nitself with a veil of water!",
|
|
||||||
"battlerTagsAquaRingLapse": "{{moveName}} restored\n{{pokemonName}}'s HP!",
|
|
||||||
"battlerTagsDrowsyOnAdd": "{{pokemonNameWithAffix}} grew drowsy!",
|
|
||||||
"battlerTagsDamagingTrapLapse": "{{pokemonNameWithAffix}} is hurt\nby {{moveName}}!",
|
|
||||||
"battlerTagsBindOnTrap": "{{pokemonNameWithAffix}} was squeezed by\n{{sourcePokemonName}}'s {{moveName}}!",
|
|
||||||
"battlerTagsWrapOnTrap": "{{pokemonNameWithAffix}} was Wrapped\nby {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsVortexOnTrap": "{{pokemonNameWithAffix}} was trapped\nin the vortex!",
|
|
||||||
"battlerTagsClampOnTrap": "{{sourcePokemonNameWithAffix}} Clamped\n{{pokemonName}}!",
|
|
||||||
"battlerTagsSandTombOnTrap": "{{pokemonNameWithAffix}} became trapped\nby {{moveName}}!",
|
|
||||||
"battlerTagsMagmaStormOnTrap": "{{pokemonNameWithAffix}} became trapped\nby swirling magma!",
|
|
||||||
"battlerTagsSnapTrapOnTrap": "{{pokemonNameWithAffix}} got trapped\nby a snap trap!",
|
|
||||||
"battlerTagsThunderCageOnTrap": "{{sourcePokemonNameWithAffix}} trapped\n{{pokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsInfestationOnTrap": "{{pokemonNameWithAffix}} has been afflicted \nwith an infestation by {{sourcePokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsProtectedOnAdd": "{{pokemonNameWithAffix}}\nprotected itself!",
|
|
||||||
"battlerTagsProtectedLapse": "{{pokemonNameWithAffix}}\nprotected itself!",
|
|
||||||
"battlerTagsEnduringOnAdd": "{{pokemonNameWithAffix}} braced\nitself!",
|
|
||||||
"battlerTagsEnduringLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
|
||||||
"battlerTagsSturdyLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
|
||||||
"battlerTagsPerishSongLapse": "{{pokemonNameWithAffix}}'s perish count fell to {{turnCount}}.",
|
|
||||||
"battlerTagsCenterOfAttentionOnAdd": "{{pokemonNameWithAffix}} became the center\nof attention!",
|
|
||||||
"battlerTagsTruantLapse": "{{pokemonNameWithAffix}} is\nloafing around!",
|
|
||||||
"battlerTagsSlowStartOnAdd": "{{pokemonNameWithAffix}} can't\nget it going!",
|
|
||||||
"battlerTagsSlowStartOnRemove": "{{pokemonNameWithAffix}} finally\ngot its act together!",
|
|
||||||
"battlerTagsHighestStatBoostOnAdd": "{{pokemonNameWithAffix}}'s {{statName}}\nwas heightened!",
|
|
||||||
"battlerTagsHighestStatBoostOnRemove": "The effects of {{pokemonNameWithAffix}}'s\n{{abilityName}} wore off!",
|
|
||||||
"battlerTagsMagnetRisenOnAdd": "{{pokemonNameWithAffix}} levitated with electromagnetism!",
|
|
||||||
"battlerTagsMagnetRisenOnRemove": "{{pokemonNameWithAffix}}'s electromagnetism wore off!",
|
|
||||||
"battlerTagsCritBoostOnAdd": "{{pokemonNameWithAffix}} is getting\npumped!",
|
|
||||||
"battlerTagsCritBoostOnRemove": "{{pokemonNameWithAffix}} relaxed.",
|
|
||||||
"battlerTagsSaltCuredOnAdd": "{{pokemonNameWithAffix}} is being salt cured!",
|
|
||||||
"battlerTagsSaltCuredLapse": "{{pokemonNameWithAffix}} is hurt by {{moveName}}!",
|
|
||||||
"battlerTagsCursedOnAdd": "{{pokemonNameWithAffix}} cut its own HP and put a curse on the {{pokemonName}}!",
|
|
||||||
"battlerTagsCursedLapse": "{{pokemonNameWithAffix}} is afflicted by the Curse!",
|
|
||||||
"battlerTagsStockpilingOnAdd": "{{pokemonNameWithAffix}} stockpiled {{stockpiledCount}}!"
|
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -9,4 +9,65 @@ export const battlerTags: SimpleTranslationEntries = {
|
|||||||
"nightmareDesc": "nightmares",
|
"nightmareDesc": "nightmares",
|
||||||
"ingrainDesc": "roots",
|
"ingrainDesc": "roots",
|
||||||
"drowsyDesc": "drowsiness",
|
"drowsyDesc": "drowsiness",
|
||||||
|
"rechargingLapse": "{{pokemonNameWithAffix}} must\nrecharge!",
|
||||||
|
"trappedOnAdd": "{{pokemonNameWithAffix}} can no\nlonger escape!",
|
||||||
|
"trappedOnRemove": "{{pokemonNameWithAffix}} was freed\nfrom {{moveName}}!",
|
||||||
|
"flinchedLapse": "{{pokemonNameWithAffix}} flinched!",
|
||||||
|
"confusedOnAdd": "{{pokemonNameWithAffix}} became\nconfused!",
|
||||||
|
"confusedOnRemove": "{{pokemonNameWithAffix}} snapped\nout of confusion!",
|
||||||
|
"confusedOnOverlap": "{{pokemonNameWithAffix}} is\nalready confused!",
|
||||||
|
"confusedLapse": "{{pokemonNameWithAffix}} is\nconfused!",
|
||||||
|
"confusedLapseHurtItself": "It hurt itself in its\nconfusion!",
|
||||||
|
"destinyBondLapseIsBoss": "{{pokemonNameWithAffix}} is unaffected\nby the effects of Destiny Bond.",
|
||||||
|
"destinyBondLapse": "{{pokemonNameWithAffix}} took\n{{pokemonNameWithAffix2}} down with it!",
|
||||||
|
"infatuatedOnAdd": "{{pokemonNameWithAffix}} fell in love\nwith {{sourcePokemonName}}!",
|
||||||
|
"infatuatedOnOverlap": "{{pokemonNameWithAffix}} is\nalready in love!",
|
||||||
|
"infatuatedLapse": "{{pokemonNameWithAffix}} is in love\nwith {{sourcePokemonName}}!",
|
||||||
|
"infatuatedLapseImmobilize": "{{pokemonNameWithAffix}} is\nimmobilized by love!",
|
||||||
|
"infatuatedOnRemove": "{{pokemonNameWithAffix}} got over\nits infatuation.",
|
||||||
|
"seededOnAdd": "{{pokemonNameWithAffix}} was seeded!",
|
||||||
|
"seededLapse": "{{pokemonNameWithAffix}}'s health is\nsapped by Leech Seed!",
|
||||||
|
"seededLapseShed": "{{pokemonNameWithAffix}}'s Leech Seed\nsucked up the liquid ooze!",
|
||||||
|
"nightmareOnAdd": "{{pokemonNameWithAffix}} began\nhaving a Nightmare!",
|
||||||
|
"nightmareOnOverlap": "{{pokemonNameWithAffix}} is\nalready locked in a Nightmare!",
|
||||||
|
"nightmareLapse": "{{pokemonNameWithAffix}} is locked\nin a Nightmare!",
|
||||||
|
"encoreOnAdd": "{{pokemonNameWithAffix}} got\nan Encore!",
|
||||||
|
"encoreOnRemove": "{{pokemonNameWithAffix}}'s Encore\nended!",
|
||||||
|
"helpingHandOnAdd": "{{pokemonNameWithAffix}} is ready to\nhelp {{pokemonName}}!",
|
||||||
|
"ingrainLapse": "{{pokemonNameWithAffix}} absorbed\nnutrients with its roots!",
|
||||||
|
"ingrainOnTrap": "{{pokemonNameWithAffix}} planted its roots!",
|
||||||
|
"aquaRingOnAdd": "{{pokemonNameWithAffix}} surrounded\nitself with a veil of water!",
|
||||||
|
"aquaRingLapse": "{{moveName}} restored\n{{pokemonName}}'s HP!",
|
||||||
|
"drowsyOnAdd": "{{pokemonNameWithAffix}} grew drowsy!",
|
||||||
|
"damagingTrapLapse": "{{pokemonNameWithAffix}} is hurt\nby {{moveName}}!",
|
||||||
|
"bindOnTrap": "{{pokemonNameWithAffix}} was squeezed by\n{{sourcePokemonName}}'s {{moveName}}!",
|
||||||
|
"wrapOnTrap": "{{pokemonNameWithAffix}} was Wrapped\nby {{sourcePokemonName}}!",
|
||||||
|
"vortexOnTrap": "{{pokemonNameWithAffix}} was trapped\nin the vortex!",
|
||||||
|
"clampOnTrap": "{{sourcePokemonNameWithAffix}} Clamped\n{{pokemonName}}!",
|
||||||
|
"sandTombOnTrap": "{{pokemonNameWithAffix}} became trapped\nby {{moveName}}!",
|
||||||
|
"magmaStormOnTrap": "{{pokemonNameWithAffix}} became trapped\nby swirling magma!",
|
||||||
|
"snapTrapOnTrap": "{{pokemonNameWithAffix}} got trapped\nby a snap trap!",
|
||||||
|
"thunderCageOnTrap": "{{sourcePokemonNameWithAffix}} trapped\n{{pokemonNameWithAffix}}!",
|
||||||
|
"infestationOnTrap": "{{pokemonNameWithAffix}} has been afflicted \nwith an infestation by {{sourcePokemonNameWithAffix}}!",
|
||||||
|
"protectedOnAdd": "{{pokemonNameWithAffix}}\nprotected itself!",
|
||||||
|
"protectedLapse": "{{pokemonNameWithAffix}}\nprotected itself!",
|
||||||
|
"enduringOnAdd": "{{pokemonNameWithAffix}} braced\nitself!",
|
||||||
|
"enduringLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
||||||
|
"sturdyLapse": "{{pokemonNameWithAffix}} endured\nthe hit!",
|
||||||
|
"perishSongLapse": "{{pokemonNameWithAffix}}'s perish count fell to {{turnCount}}.",
|
||||||
|
"centerOfAttentionOnAdd": "{{pokemonNameWithAffix}} became the center\nof attention!",
|
||||||
|
"truantLapse": "{{pokemonNameWithAffix}} is\nloafing around!",
|
||||||
|
"slowStartOnAdd": "{{pokemonNameWithAffix}} can't\nget it going!",
|
||||||
|
"slowStartOnRemove": "{{pokemonNameWithAffix}} finally\ngot its act together!",
|
||||||
|
"highestStatBoostOnAdd": "{{pokemonNameWithAffix}}'s {{statName}}\nwas heightened!",
|
||||||
|
"highestStatBoostOnRemove": "The effects of {{pokemonNameWithAffix}}'s\n{{abilityName}} wore off!",
|
||||||
|
"magnetRisenOnAdd": "{{pokemonNameWithAffix}} levitated with electromagnetism!",
|
||||||
|
"magnetRisenOnRemove": "{{pokemonNameWithAffix}}'s electromagnetism wore off!",
|
||||||
|
"critBoostOnAdd": "{{pokemonNameWithAffix}} is getting\npumped!",
|
||||||
|
"critBoostOnRemove": "{{pokemonNameWithAffix}} relaxed.",
|
||||||
|
"saltCuredOnAdd": "{{pokemonNameWithAffix}} is being salt cured!",
|
||||||
|
"saltCuredLapse": "{{pokemonNameWithAffix}} is hurt by {{moveName}}!",
|
||||||
|
"cursedOnAdd": "{{pokemonNameWithAffix}} cut its own HP and put a curse on the {{pokemonName}}!",
|
||||||
|
"cursedLapse": "{{pokemonNameWithAffix}} is afflicted by the Curse!",
|
||||||
|
"stockpilingOnAdd": "{{pokemonNameWithAffix}} stockpiled {{stockpiledCount}}!",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -3,28 +3,35 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
|||||||
export const filterBar: SimpleTranslationEntries = {
|
export const filterBar: SimpleTranslationEntries = {
|
||||||
"genFilter": "Gen.",
|
"genFilter": "Gen.",
|
||||||
"typeFilter": "Tipo",
|
"typeFilter": "Tipo",
|
||||||
"caughtFilter": "Caught",
|
"caughtFilter": "Capturado",
|
||||||
"unlocksFilter": "Otros",
|
"unlocksFilter": "Otros",
|
||||||
"miscFilter": "Misc",
|
"miscFilter": "Misc.",
|
||||||
"sortFilter": "Orden",
|
"sortFilter": "Orden",
|
||||||
"all": "Todo",
|
"all": "Todo",
|
||||||
"normal": "Normal",
|
"normal": "Normal",
|
||||||
"uncaught": "No Capt.",
|
"uncaught": "No Capt.",
|
||||||
"passive": "Passive",
|
"passive": "Pasiva",
|
||||||
"passiveUnlocked": "Pasiva Desbloq.",
|
"passiveUnlocked": "Pasiva desbloq.",
|
||||||
"passiveLocked": "Pasiva Bloq.",
|
"passiveLocked": "Pasiva bloq.",
|
||||||
"costReduction": "Cost Reduction",
|
"passiveUnlockable": "Pasiva - puede desbloq.",
|
||||||
"costReductionUnlocked": "Cost Reduction Unlocked",
|
"costReduction": "Reducción de coste",
|
||||||
"costReductionLocked": "Cost Reduction Locked",
|
"costReductionUnlocked": "Reducción de coste desbloq.",
|
||||||
"ribbon": "Ribbon",
|
"costReductionLocked": "Reducción de coste bloq.",
|
||||||
"hasWon": "Ya ha ganado",
|
"costReductionUnlockable": "Red. de coste - puede desbloq.",
|
||||||
"hasNotWon": "Aún no ha ganado",
|
"favorite": "Favoritos",
|
||||||
"hiddenAbility": "Hidden Ability",
|
"isFavorite": "Favoritos - Sí",
|
||||||
"hasHiddenAbility": "Hidden Ability - Yes",
|
"notFavorite": "Favoritos - No",
|
||||||
"noHiddenAbility": "Hidden Ability - No",
|
"ribbon": "Cinta",
|
||||||
"pokerus": "Pokerus",
|
"hasWon": "Cinta - Sí",
|
||||||
"hasPokerus": "Pokerus - Yes",
|
"hasNotWon": "Cinta - No",
|
||||||
"noPokerus": "Pokerus - No",
|
"hiddenAbility": "Habilidad oculta",
|
||||||
|
"hasHiddenAbility": "Habilidad oculta - Sí",
|
||||||
|
"noHiddenAbility": "Habilidad oculta - No",
|
||||||
|
"egg": "Huevo",
|
||||||
|
"eggPurchasable": "Huevo - puede comprar",
|
||||||
|
"pokerus": "Pokérus",
|
||||||
|
"hasPokerus": "Pokérus - Sí",
|
||||||
|
"noPokerus": "Pokérus - No",
|
||||||
"sortByNumber": "Núm.",
|
"sortByNumber": "Núm.",
|
||||||
"sortByCost": "Coste",
|
"sortByCost": "Coste",
|
||||||
"sortByCandies": "# Caramelos",
|
"sortByCandies": "# Caramelos",
|
||||||
|
@ -56,6 +56,7 @@ export const moveTriggers: SimpleTranslationEntries = {
|
|||||||
"sacrificialFullRestore": "{{pokemonName}}'s Healing Wish\nwas granted!",
|
"sacrificialFullRestore": "{{pokemonName}}'s Healing Wish\nwas granted!",
|
||||||
"invertStats": "{{pokemonName}}'s stat changes\nwere all reversed!",
|
"invertStats": "{{pokemonName}}'s stat changes\nwere all reversed!",
|
||||||
"resetStats": "{{pokemonName}}'s stat changes\nwere eliminated!",
|
"resetStats": "{{pokemonName}}'s stat changes\nwere eliminated!",
|
||||||
|
"statEliminated": "¡Los cambios en estadísticas fueron eliminados!",
|
||||||
"faintCountdown": "{{pokemonName}}\nwill faint in {{turnCount}} turns.",
|
"faintCountdown": "{{pokemonName}}\nwill faint in {{turnCount}} turns.",
|
||||||
"copyType": "{{pokemonName}}'s type\nchanged to match {{targetPokemonName}}'s!",
|
"copyType": "{{pokemonName}}'s type\nchanged to match {{targetPokemonName}}'s!",
|
||||||
"suppressAbilities": "{{pokemonName}}'s ability\nwas suppressed!",
|
"suppressAbilities": "{{pokemonName}}'s ability\nwas suppressed!",
|
||||||
|
@ -13,6 +13,7 @@ export const battlePokemonForm: SimpleTranslationEntries = {
|
|||||||
"eternamaxChange": "{{preName}} Eternamaxed\ninto {{pokemonName}}!",
|
"eternamaxChange": "{{preName}} Eternamaxed\ninto {{pokemonName}}!",
|
||||||
"revertChange": "{{pokemonName}} reverted\nto its original form!",
|
"revertChange": "{{pokemonName}} reverted\nto its original form!",
|
||||||
"formChange": "{{preName}} changed form!",
|
"formChange": "{{preName}} changed form!",
|
||||||
|
"disguiseChange": "Its disguise served it as a decoy!",
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const pokemonForm: SimpleTranslationEntries = {
|
export const pokemonForm: SimpleTranslationEntries = {
|
||||||
|
@ -97,5 +97,6 @@ export const settings: SimpleTranslationEntries = {
|
|||||||
"controller": "Controller",
|
"controller": "Controller",
|
||||||
"gamepadSupport": "Gamepad Support",
|
"gamepadSupport": "Gamepad Support",
|
||||||
"showBgmBar": "Show Music Names",
|
"showBgmBar": "Show Music Names",
|
||||||
|
"moveTouchControls": "Move Touch Controls",
|
||||||
"shopOverlayOpacity": "Opacidad de la fase de compra"
|
"shopOverlayOpacity": "Opacidad de la fase de compra"
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -28,6 +28,8 @@ export const starterSelectUiHandler: SimpleTranslationEntries = {
|
|||||||
"toggleIVs": "Mostrar IVs",
|
"toggleIVs": "Mostrar IVs",
|
||||||
"manageMoves": "Cambiar movs.",
|
"manageMoves": "Cambiar movs.",
|
||||||
"manageNature": "Cambiar natur.",
|
"manageNature": "Cambiar natur.",
|
||||||
|
"addToFavorites": "Add to Favorites",
|
||||||
|
"removeFromFavorites": "Remove from Favorites",
|
||||||
"useCandies": "Usar Caramelos",
|
"useCandies": "Usar Caramelos",
|
||||||
"selectNature": "Elige Natur.",
|
"selectNature": "Elige Natur.",
|
||||||
"selectMoveSwapOut": "Elige el movimiento que sustituir.",
|
"selectMoveSwapOut": "Elige el movimiento que sustituir.",
|
||||||
|
@ -4,7 +4,7 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"blockRecoilDamage" : "{{abilityName}}\nde {{pokemonName}} le protège du contrecoup !",
|
"blockRecoilDamage" : "{{abilityName}}\nde {{pokemonName}} le protège du contrecoup !",
|
||||||
"badDreams": "{{pokemonName}} a le sommeil agité !",
|
"badDreams": "{{pokemonName}} a le sommeil agité !",
|
||||||
"costar": "{{pokemonName}} copie les changements de stats\nde {{allyName}} !",
|
"costar": "{{pokemonName}} copie les changements de stats\nde {{allyName}} !",
|
||||||
"iceFaceAvoidedDamage": "{{pokemonName}} évite les dégâts\navec {{abilityName}} !",
|
"iceFaceAvoidedDamage": "{{pokemonNameWithAffix}} évite les dégâts\navec {{abilityName}} !",
|
||||||
"perishBody": "{{abilityName}} de {{pokemonName}}\nmettra les deux Pokémon K.O. dans trois tours !",
|
"perishBody": "{{abilityName}} de {{pokemonName}}\nmettra les deux Pokémon K.O. dans trois tours !",
|
||||||
"poisonHeal": "{{abilityName}} de {{pokemonName}}\nrestaure un peu ses PV !",
|
"poisonHeal": "{{abilityName}} de {{pokemonName}}\nrestaure un peu ses PV !",
|
||||||
"trace": "{{pokemonName}} copie le talent {{abilityName}}\nde {{targetName}} !",
|
"trace": "{{pokemonName}} copie le talent {{abilityName}}\nde {{targetName}} !",
|
||||||
@ -13,7 +13,7 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"blockItemTheft": "{{abilityName}} de {{pokemonNameWithAffix}}\nempêche son objet d’être volé !",
|
"blockItemTheft": "{{abilityName}} de {{pokemonNameWithAffix}}\nempêche son objet d’être volé !",
|
||||||
"typeImmunityHeal": "{{abilityName}} de {{pokemonNameWithAffix}}\nrestaure un peu ses PV !",
|
"typeImmunityHeal": "{{abilityName}} de {{pokemonNameWithAffix}}\nrestaure un peu ses PV !",
|
||||||
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} évite\nles dégâts avec {{abilityName}} !",
|
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} évite\nles dégâts avec {{abilityName}} !",
|
||||||
"postDefendDisguise": "Le déguisement de {{pokemonNameWithAffix}}\ntombe !",
|
"disguiseAvoidedDamage": "Le déguisement de {{pokemonNameWithAffix}}\ntombe !",
|
||||||
"moveImmunity": "Ça n'affecte pas {{pokemonNameWithAffix}}…",
|
"moveImmunity": "Ça n'affecte pas {{pokemonNameWithAffix}}…",
|
||||||
"reverseDrain": "{{pokemonNameWithAffix}} aspire\nle suintement !",
|
"reverseDrain": "{{pokemonNameWithAffix}} aspire\nle suintement !",
|
||||||
"postDefendTypeChange": "{{abilityName}} de {{pokemonNameWithAffix}}\nle transforme en type {{typeName}} !",
|
"postDefendTypeChange": "{{abilityName}} de {{pokemonNameWithAffix}}\nle transforme en type {{typeName}} !",
|
||||||
|
@ -60,6 +60,7 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"turnEndHpRestore": "{{pokemonName}} récupère des PV !",
|
"turnEndHpRestore": "{{pokemonName}} récupère des PV !",
|
||||||
"hpIsFull": "Les PV de {{pokemonName}}\nsont au maximum !",
|
"hpIsFull": "Les PV de {{pokemonName}}\nsont au maximum !",
|
||||||
"skipItemQuestion": "Êtes-vous sûr·e de ne pas vouloir prendre d’objet ?",
|
"skipItemQuestion": "Êtes-vous sûr·e de ne pas vouloir prendre d’objet ?",
|
||||||
|
"itemStackFull": "Quantité maximale de {{fullItemName}} atteinte.\nVous recevez {{itemName}} à la place.",
|
||||||
"eggHatching": "Hein ?",
|
"eggHatching": "Hein ?",
|
||||||
"ivScannerUseQuestion": "Utiliser le Scanner d’IV\nsur {{pokemonName}} ?",
|
"ivScannerUseQuestion": "Utiliser le Scanner d’IV\nsur {{pokemonName}} ?",
|
||||||
"wildPokemonWithAffix": "{{pokemonName}} sauvage",
|
"wildPokemonWithAffix": "{{pokemonName}} sauvage",
|
||||||
@ -95,65 +96,4 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"unlockedSomething": "{{unlockedThing}}\na été débloqué.",
|
"unlockedSomething": "{{unlockedThing}}\na été débloqué.",
|
||||||
"congratulations": "Félicitations !",
|
"congratulations": "Félicitations !",
|
||||||
"beatModeFirstTime": "{{speciesName}} a battu le mode {{gameMode}} pour la première fois !\nVous avez reçu {{newModifier}} !",
|
"beatModeFirstTime": "{{speciesName}} a battu le mode {{gameMode}} pour la première fois !\nVous avez reçu {{newModifier}} !",
|
||||||
"battlerTagsRechargingLapse": "Le contrecoup empêche {{pokemonNameWithAffix}}\n de bouger !",
|
|
||||||
"battlerTagsTrappedOnAdd": "{{pokemonNameWithAffix}}\nne peut plus s’échapper !",
|
|
||||||
"battlerTagsTrappedOnRemove": "{{pokemonNameWithAffix}} est libéré\nde la capacité {{moveName}} !",
|
|
||||||
"battlerTagsFlinchedLapse": "{{pokemonNameWithAffix}} a la trouille !\nIl ne peut plus attaquer !",
|
|
||||||
"battlerTagsConfusedOnAdd": "Ça rend {{pokemonNameWithAffix}}\nconfus !",
|
|
||||||
"battlerTagsConfusedOnRemove": "{{pokemonNameWithAffix}}\nn’est plus confus !",
|
|
||||||
"battlerTagsConfusedOnOverlap": "{{pokemonNameWithAffix}}\nest déjà confus !",
|
|
||||||
"battlerTagsConfusedLapse": "{{pokemonNameWithAffix}}\nest confus !",
|
|
||||||
"battlerTagsConfusedLapseHurtItself": "Il se blesse dans sa confusion.",
|
|
||||||
"battlerTagsDestinyBondLapseIsBoss": "{{pokemonNameWithAffix}} n’est pas affecté\nle Lien du Destin !",
|
|
||||||
"battlerTagsDestinyBondLapse": "{{pokemonNameWithAffix}} entraine\n{{pokemonNameWithAffix2}} dans sa chute !",
|
|
||||||
"battlerTagsInfatuatedOnAdd": "{{pokemonNameWithAffix}} est amoureux\nde {{sourcePokemonName}} !",
|
|
||||||
"battlerTagsInfatuatedOnOverlap": "{{pokemonNameWithAffix}} est\ndéjà amoureux !",
|
|
||||||
"battlerTagsInfatuatedLapse": "{{pokemonNameWithAffix}} est amoureux\nde {{sourcePokemonName}} !",
|
|
||||||
"battlerTagsInfatuatedLapseImmobilize": "L’amour empêche {{pokemonNameWithAffix}}\nd’agir !",
|
|
||||||
"battlerTagsInfatuatedOnRemove": "{{pokemonNameWithAffix}}\nn’est plus amoureux !",
|
|
||||||
"battlerTagsSeededOnAdd": "{{pokemonNameWithAffix}} est infecté !",
|
|
||||||
"battlerTagsSeededLapse": "Vampigraine draine l’énergie\nde {{pokemonNameWithAffix}} !",
|
|
||||||
"battlerTagsSeededLapseShed": "La Vampigraine de {{pokemonNameWithAffix}}\naspire le suintement !",
|
|
||||||
"battlerTagsNightmareOnAdd": "{{pokemonNameWithAffix}} commence à cauchemarder !",
|
|
||||||
"battlerTagsNightmareOnOverlap": "{{pokemonNameWithAffix}} est\ndéjà prisonnier d’un cauchemar !",
|
|
||||||
"battlerTagsNightmareLapse": "{{pokemonNameWithAffix}}est\nprisonnier d’un cauchemar !",
|
|
||||||
"battlerTagsEncoreOnAdd": "{{pokemonNameWithAffix}} !\nEncore une fois !",
|
|
||||||
"battlerTagsEncoreOnRemove": "{{pokemonNameWithAffix}} n’est\nplus obligé d’utiliser la même capacité !",
|
|
||||||
"battlerTagsHelpingHandOnAdd": "{{pokemonNameWithAffix}} est prêt\nà aider {{pokemonName}} !",
|
|
||||||
"battlerTagsIngrainLapse": "{{pokemonNameWithAffix}} absorbe\ndes nutriments avec ses racines !",
|
|
||||||
"battlerTagsIngrainOnTrap": "{{pokemonNameWithAffix}}\nplante ses racines !",
|
|
||||||
"battlerTagsAquaRingOnAdd": "{{pokemonNameWithAffix}} s’entoure\nd’un voile d’eau !",
|
|
||||||
"battlerTagsAquaRingLapse": "{{moveName}} restaure\nles PV de {{pokemonName}} !",
|
|
||||||
"battlerTagsDrowsyOnAdd": "Ça rend {{pokemonNameWithAffix}} somnolent !",
|
|
||||||
"battlerTagsDamagingTrapLapse": "{{pokemonNameWithAffix}} est blessé\npar la capacité {{moveName}} !",
|
|
||||||
"battlerTagsBindOnTrap": "{{pokemonNameWithAffix}} est pris dans\nl’étreinte de {{sourcePokemonName}} !",
|
|
||||||
"battlerTagsWrapOnTrap": "{{pokemonNameWithAffix}} est ligoté\npar {{sourcePokemonName}} !",
|
|
||||||
"battlerTagsVortexOnTrap": "{{pokemonNameWithAffix}} est piégé\ndans le tourbillon !",
|
|
||||||
"battlerTagsClampOnTrap": "{{sourcePokemonNameWithAffix}} est pris dans le Claquoir\nde {{pokemonName}} !",
|
|
||||||
"battlerTagsSandTombOnTrap": "{{pokemonNameWithAffix}} est piégé\npar {{moveName}} !",
|
|
||||||
"battlerTagsMagmaStormOnTrap": "{{pokemonNameWithAffix}} est piégé\ndans un tourbillon de magma !",
|
|
||||||
"battlerTagsSnapTrapOnTrap": "{{pokemonNameWithAffix}} est tombé\ndans un Troquenard !",
|
|
||||||
"battlerTagsThunderCageOnTrap": "{{pokemonNameWithAffix}} se fait emprisonner\npar {{sourcePokemonNameWithAffix}} !",
|
|
||||||
"battlerTagsInfestationOnTrap": "{{pokemonNameWithAffix}} est harcelé\npar {{sourcePokemonNameWithAffix}} !",
|
|
||||||
"battlerTagsProtectedOnAdd": "{{pokemonNameWithAffix}}\nest prêt à se protéger !",
|
|
||||||
"battlerTagsProtectedLapse": "{{pokemonNameWithAffix}}\nse protège !",
|
|
||||||
"battlerTagsEnduringOnAdd": "{{pokemonNameWithAffix}} se prépare\nà encaisser les coups !",
|
|
||||||
"battlerTagsEnduringLapse": "{{pokemonNameWithAffix}}\nencaisse les coups !",
|
|
||||||
"battlerTagsSturdyLapse": "{{pokemonNameWithAffix}}\nencaisse les coups !",
|
|
||||||
"battlerTagsPerishSongLapse": "Le compte à rebours de Requiem\nde {{pokemonNameWithAffix}} descend à {{turnCount}} !",
|
|
||||||
"battlerTagsCenterOfAttentionOnAdd": "{{pokemonNameWithAffix}} devient\nle centre de l’attention !",
|
|
||||||
"battlerTagsTruantLapse": "{{pokemonNameWithAffix}} paresse !",
|
|
||||||
"battlerTagsSlowStartOnAdd": "{{pokemonNameWithAffix}}\nn’arrive pas à se motiver !",
|
|
||||||
"battlerTagsSlowStartOnRemove": "{{pokemonNameWithAffix}}\narrive enfin à s’y mettre sérieusement !",
|
|
||||||
"battlerTagsHighestStatBoostOnAdd": "{{statName}} de {{pokemonNameWithAffix}}\nest renforcée !",
|
|
||||||
"battlerTagsHighestStatBoostOnRemove": "L’effet du talent {{abilityName}}\nde {{pokemonNameWithAffix}} se dissipe !",
|
|
||||||
"battlerTagsMagnetRisenOnAdd": "{{pokemonNameWithAffix}} lévite\nsur un champ magnétique !",
|
|
||||||
"battlerTagsMagnetRisenOnRemove": "Le magnétisme de{{pokemonNameWithAffix}}\nse dissipe !",
|
|
||||||
"battlerTagsCritBoostOnAdd": "{{pokemonNameWithAffix}}\nest prêt à tout donner !",
|
|
||||||
"battlerTagsCritBoostOnRemove": "{{pokemonNameWithAffix}} se détend.",
|
|
||||||
"battlerTagsSaltCuredOnAdd": "{{pokemonNameWithAffix}}\nest couvert de sel !",
|
|
||||||
"battlerTagsSaltCuredLapse": "{{pokemonNameWithAffix}} est blessé\npar la capacité {{moveName}} !",
|
|
||||||
"battlerTagsCursedOnAdd": "{{pokemonNameWithAffix}} sacrifie des PV\net lance une malédiction sur {{pokemonName}} !",
|
|
||||||
"battlerTagsCursedLapse": "{{pokemonNameWithAffix}} est touché par la malédiction !",
|
|
||||||
"battlerTagsStockpilingOnAdd": "{{pokemonNameWithAffix}} stockpiled {{stockpiledCount}}!"
|
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -9,4 +9,65 @@ export const battlerTags: SimpleTranslationEntries = {
|
|||||||
"nightmareDesc": "les cauchemars",
|
"nightmareDesc": "les cauchemars",
|
||||||
"ingrainDesc": "l’enracinement",
|
"ingrainDesc": "l’enracinement",
|
||||||
"drowsyDesc": "la somnolence",
|
"drowsyDesc": "la somnolence",
|
||||||
|
"rechargingLapse": "Le contrecoup empêche {{pokemonNameWithAffix}}\n de bouger !",
|
||||||
|
"trappedOnAdd": "{{pokemonNameWithAffix}}\nne peut plus s’échapper !",
|
||||||
|
"trappedOnRemove": "{{pokemonNameWithAffix}} est libéré\nde la capacité {{moveName}} !",
|
||||||
|
"flinchedLapse": "{{pokemonNameWithAffix}} a la trouille !\nIl ne peut plus attaquer !",
|
||||||
|
"confusedOnAdd": "Ça rend {{pokemonNameWithAffix}}\nconfus !",
|
||||||
|
"confusedOnRemove": "{{pokemonNameWithAffix}}\nn’est plus confus !",
|
||||||
|
"confusedOnOverlap": "{{pokemonNameWithAffix}}\nest déjà confus !",
|
||||||
|
"confusedLapse": "{{pokemonNameWithAffix}}\nest confus !",
|
||||||
|
"confusedLapseHurtItself": "Il se blesse dans sa confusion.",
|
||||||
|
"destinyBondLapseIsBoss": "{{pokemonNameWithAffix}} n’est pas affecté\nle Lien du Destin !",
|
||||||
|
"destinyBondLapse": "{{pokemonNameWithAffix}} entraine\n{{pokemonNameWithAffix2}} dans sa chute !",
|
||||||
|
"infatuatedOnAdd": "{{pokemonNameWithAffix}} est amoureux\nde {{sourcePokemonName}} !",
|
||||||
|
"infatuatedOnOverlap": "{{pokemonNameWithAffix}} est\ndéjà amoureux !",
|
||||||
|
"infatuatedLapse": "{{pokemonNameWithAffix}} est amoureux\nde {{sourcePokemonName}} !",
|
||||||
|
"infatuatedLapseImmobilize": "L’amour empêche {{pokemonNameWithAffix}}\nd’agir !",
|
||||||
|
"infatuatedOnRemove": "{{pokemonNameWithAffix}}\nn’est plus amoureux !",
|
||||||
|
"seededOnAdd": "{{pokemonNameWithAffix}} est infecté !",
|
||||||
|
"seededLapse": "Vampigraine draine l’énergie\nde {{pokemonNameWithAffix}} !",
|
||||||
|
"seededLapseShed": "La Vampigraine de {{pokemonNameWithAffix}}\naspire le suintement !",
|
||||||
|
"nightmareOnAdd": "{{pokemonNameWithAffix}} commence à cauchemarder !",
|
||||||
|
"nightmareOnOverlap": "{{pokemonNameWithAffix}} est\ndéjà prisonnier d’un cauchemar !",
|
||||||
|
"nightmareLapse": "{{pokemonNameWithAffix}}est\nprisonnier d’un cauchemar !",
|
||||||
|
"encoreOnAdd": "{{pokemonNameWithAffix}} !\nEncore une fois !",
|
||||||
|
"encoreOnRemove": "{{pokemonNameWithAffix}} n’est\nplus obligé d’utiliser la même capacité !",
|
||||||
|
"helpingHandOnAdd": "{{pokemonNameWithAffix}} est prêt\nà aider {{pokemonName}} !",
|
||||||
|
"ingrainLapse": "{{pokemonNameWithAffix}} absorbe\ndes nutriments avec ses racines !",
|
||||||
|
"ingrainOnTrap": "{{pokemonNameWithAffix}}\nplante ses racines !",
|
||||||
|
"aquaRingOnAdd": "{{pokemonNameWithAffix}} s’entoure\nd’un voile d’eau !",
|
||||||
|
"aquaRingLapse": "{{moveName}} restaure\nles PV de {{pokemonName}} !",
|
||||||
|
"drowsyOnAdd": "Ça rend {{pokemonNameWithAffix}} somnolent !",
|
||||||
|
"damagingTrapLapse": "{{pokemonNameWithAffix}} est blessé\npar la capacité {{moveName}} !",
|
||||||
|
"bindOnTrap": "{{pokemonNameWithAffix}} est pris dans\nl’étreinte de {{sourcePokemonName}} !",
|
||||||
|
"wrapOnTrap": "{{pokemonNameWithAffix}} est ligoté\npar {{sourcePokemonName}} !",
|
||||||
|
"vortexOnTrap": "{{pokemonNameWithAffix}} est piégé\ndans le tourbillon !",
|
||||||
|
"clampOnTrap": "{{sourcePokemonNameWithAffix}} est pris dans le Claquoir\nde {{pokemonName}} !",
|
||||||
|
"sandTombOnTrap": "{{pokemonNameWithAffix}} est piégé\npar {{moveName}} !",
|
||||||
|
"magmaStormOnTrap": "{{pokemonNameWithAffix}} est piégé\ndans un tourbillon de magma !",
|
||||||
|
"snapTrapOnTrap": "{{pokemonNameWithAffix}} est tombé\ndans un Troquenard !",
|
||||||
|
"thunderCageOnTrap": "{{pokemonNameWithAffix}} se fait emprisonner\npar {{sourcePokemonNameWithAffix}} !",
|
||||||
|
"infestationOnTrap": "{{pokemonNameWithAffix}} est harcelé\npar {{sourcePokemonNameWithAffix}} !",
|
||||||
|
"protectedOnAdd": "{{pokemonNameWithAffix}}\nest prêt à se protéger !",
|
||||||
|
"protectedLapse": "{{pokemonNameWithAffix}}\nse protège !",
|
||||||
|
"enduringOnAdd": "{{pokemonNameWithAffix}} se prépare\nà encaisser les coups !",
|
||||||
|
"enduringLapse": "{{pokemonNameWithAffix}}\nencaisse les coups !",
|
||||||
|
"sturdyLapse": "{{pokemonNameWithAffix}}\nencaisse les coups !",
|
||||||
|
"perishSongLapse": "Le compte à rebours de Requiem\nde {{pokemonNameWithAffix}} descend à {{turnCount}} !",
|
||||||
|
"centerOfAttentionOnAdd": "{{pokemonNameWithAffix}} devient\nle centre de l’attention !",
|
||||||
|
"truantLapse": "{{pokemonNameWithAffix}} paresse !",
|
||||||
|
"slowStartOnAdd": "{{pokemonNameWithAffix}}\nn’arrive pas à se motiver !",
|
||||||
|
"slowStartOnRemove": "{{pokemonNameWithAffix}}\narrive enfin à s’y mettre sérieusement !",
|
||||||
|
"highestStatBoostOnAdd": "{{statName}} de {{pokemonNameWithAffix}}\nest renforcée !",
|
||||||
|
"highestStatBoostOnRemove": "L’effet du talent {{abilityName}}\nde {{pokemonNameWithAffix}} se dissipe !",
|
||||||
|
"magnetRisenOnAdd": "{{pokemonNameWithAffix}} lévite\nsur un champ magnétique !",
|
||||||
|
"magnetRisenOnRemove": "Le magnétisme de{{pokemonNameWithAffix}}\nse dissipe !",
|
||||||
|
"critBoostOnAdd": "{{pokemonNameWithAffix}}\nest prêt à tout donner !",
|
||||||
|
"critBoostOnRemove": "{{pokemonNameWithAffix}} se détend.",
|
||||||
|
"saltCuredOnAdd": "{{pokemonNameWithAffix}}\nest couvert de sel !",
|
||||||
|
"saltCuredLapse": "{{pokemonNameWithAffix}} est blessé\npar la capacité {{moveName}} !",
|
||||||
|
"cursedOnAdd": "{{pokemonNameWithAffix}} sacrifie des PV\net lance une malédiction sur {{pokemonName}} !",
|
||||||
|
"cursedLapse": "{{pokemonNameWithAffix}} est touché par la malédiction !",
|
||||||
|
"stockpilingOnAdd": "{{pokemonNameWithAffix}} stockpiled {{stockpiledCount}}!",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -4,7 +4,7 @@ export const filterBar: SimpleTranslationEntries = {
|
|||||||
"genFilter": "Gen",
|
"genFilter": "Gen",
|
||||||
"typeFilter": "Type",
|
"typeFilter": "Type",
|
||||||
"caughtFilter": "Capturés",
|
"caughtFilter": "Capturés",
|
||||||
"unlocksFilter": "Débloq.",
|
"unlocksFilter": "Amélio.",
|
||||||
"miscFilter": "Divers",
|
"miscFilter": "Divers",
|
||||||
"sortFilter": "Tri",
|
"sortFilter": "Tri",
|
||||||
"all": "Tous",
|
"all": "Tous",
|
||||||
@ -13,18 +13,25 @@ export const filterBar: SimpleTranslationEntries = {
|
|||||||
"passive": "Passif",
|
"passive": "Passif",
|
||||||
"passiveUnlocked": "Passif débloqué",
|
"passiveUnlocked": "Passif débloqué",
|
||||||
"passiveLocked": "Passif verrouillé",
|
"passiveLocked": "Passif verrouillé",
|
||||||
"costReduction": "Cost Reduction",
|
"passiveUnlockable": "Passif déblocable",
|
||||||
"costReductionUnlocked": "Cost Reduction Unlocked",
|
"costReduction": "Cout réduit",
|
||||||
"costReductionLocked": "Cost Reduction Locked",
|
"costReductionUnlocked": "Cout réduit débloqué",
|
||||||
|
"costReductionLocked": "Cout réduit verrouillé",
|
||||||
|
"costReductionUnlockable": "Cout réduit déblocable",
|
||||||
|
"favorite": "Favoris",
|
||||||
|
"isFavorite": "Favoris uniquement",
|
||||||
|
"notFavorite": "Sans Favoris",
|
||||||
"ribbon": "Ruban",
|
"ribbon": "Ruban",
|
||||||
"hasWon": "Ruban - Oui",
|
"hasWon": "Ruban - Avec",
|
||||||
"hasNotWon": "Ruban - Non",
|
"hasNotWon": "Ruban - Sans",
|
||||||
"hiddenAbility": "Hidden Ability",
|
"hiddenAbility": "Talent caché",
|
||||||
"hasHiddenAbility": "Hidden Ability - Yes",
|
"hasHiddenAbility": "Talent caché - Avec",
|
||||||
"noHiddenAbility": "Hidden Ability - No",
|
"noHiddenAbility": "Talent caché - Sans",
|
||||||
"pokerus": "Pokerus",
|
"egg": "Œuf",
|
||||||
"hasPokerus": "Pokerus - Yes",
|
"eggPurchasable": "Œuf achetable",
|
||||||
"noPokerus": "Pokerus - No",
|
"pokerus": "Pokérus",
|
||||||
|
"hasPokerus": "Pokérus - Avec",
|
||||||
|
"noPokerus": "Pokérus - Sans",
|
||||||
"sortByNumber": "Par N°",
|
"sortByNumber": "Par N°",
|
||||||
"sortByCost": "Par cout",
|
"sortByCost": "Par cout",
|
||||||
"sortByCandies": "Par bonbons",
|
"sortByCandies": "Par bonbons",
|
||||||
|
@ -56,6 +56,7 @@ export const moveTriggers: SimpleTranslationEntries = {
|
|||||||
"sacrificialFullRestore": "Le Vœu Soin est exaucé et profite\nà {{pokemonName}} !",
|
"sacrificialFullRestore": "Le Vœu Soin est exaucé et profite\nà {{pokemonName}} !",
|
||||||
"invertStats": "Les changements de stats\nde {{pokemonName}} sont inversés !",
|
"invertStats": "Les changements de stats\nde {{pokemonName}} sont inversés !",
|
||||||
"resetStats": "Les changements de stats\nde {{pokemonName}} ont tous été annulés !",
|
"resetStats": "Les changements de stats\nde {{pokemonName}} ont tous été annulés !",
|
||||||
|
"statEliminated": "Les changements de stats ont tous été annulés !",
|
||||||
"faintCountdown": "{{pokemonName}}\nsera K.O. dans {{turnCount}} tours !",
|
"faintCountdown": "{{pokemonName}}\nsera K.O. dans {{turnCount}} tours !",
|
||||||
"copyType": "{{pokemonName}} prend le type\nde {{targetPokemonName}} !",
|
"copyType": "{{pokemonName}} prend le type\nde {{targetPokemonName}} !",
|
||||||
"suppressAbilities": "Le talent de {{pokemonName}}\na été rendu inactif !",
|
"suppressAbilities": "Le talent de {{pokemonName}}\na été rendu inactif !",
|
||||||
|
@ -13,6 +13,7 @@ export const battlePokemonForm: SimpleTranslationEntries = {
|
|||||||
"eternamaxChange": "{{preName}} devient\n{{pokemonName}} !",
|
"eternamaxChange": "{{preName}} devient\n{{pokemonName}} !",
|
||||||
"revertChange": "{{pokemonName}} retourne\nà sa forme initiale !",
|
"revertChange": "{{pokemonName}} retourne\nà sa forme initiale !",
|
||||||
"formChange": "{{preName}} change de forme !",
|
"formChange": "{{preName}} change de forme !",
|
||||||
|
"disguiseChange": "Le déguisement absorbe l’attaque !",
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const pokemonForm: SimpleTranslationEntries = {
|
export const pokemonForm: SimpleTranslationEntries = {
|
||||||
|
@ -97,5 +97,6 @@ export const settings: SimpleTranslationEntries = {
|
|||||||
"controller": "Controller",
|
"controller": "Controller",
|
||||||
"gamepadSupport": "Gamepad Support",
|
"gamepadSupport": "Gamepad Support",
|
||||||
"showBgmBar": "Titre de la musique",
|
"showBgmBar": "Titre de la musique",
|
||||||
|
"moveTouchControls": "Déplacer les contrôles tactiles",
|
||||||
"shopOverlayOpacity": "Opacité boutique"
|
"shopOverlayOpacity": "Opacité boutique"
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -28,6 +28,8 @@ export const starterSelectUiHandler: SimpleTranslationEntries = {
|
|||||||
"toggleIVs": "Voir les IV",
|
"toggleIVs": "Voir les IV",
|
||||||
"manageMoves": "Modifier les Capacités",
|
"manageMoves": "Modifier les Capacités",
|
||||||
"manageNature": "Modifier la Nature",
|
"manageNature": "Modifier la Nature",
|
||||||
|
"addToFavorites": "Add to Favorites",
|
||||||
|
"removeFromFavorites": "Remove from Favorites",
|
||||||
"useCandies": "Utiliser des Bonbons",
|
"useCandies": "Utiliser des Bonbons",
|
||||||
"selectNature": "Sélectionnez une nature.",
|
"selectNature": "Sélectionnez une nature.",
|
||||||
"selectMoveSwapOut": "Sélectionnez la capacité à échanger.",
|
"selectMoveSwapOut": "Sélectionnez la capacité à échanger.",
|
||||||
|
@ -4,7 +4,7 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"blockRecoilDamage" : "{{abilityName}} di {{pokemonName}}\nl'ha protetto dal contraccolpo!",
|
"blockRecoilDamage" : "{{abilityName}} di {{pokemonName}}\nl'ha protetto dal contraccolpo!",
|
||||||
"badDreams": "{{pokemonName}} è tormentato dagli incubi!",
|
"badDreams": "{{pokemonName}} è tormentato dagli incubi!",
|
||||||
"costar": "{{pokemonName}} ha copiato le modifiche alle statistiche\ndel suo alleato {{allyName}}!",
|
"costar": "{{pokemonName}} ha copiato le modifiche alle statistiche\ndel suo alleato {{allyName}}!",
|
||||||
"iceFaceAvoidedDamage": "{{pokemonName}} ha evitato\ni danni grazie a {{abilityName}}!",
|
"iceFaceAvoidedDamage": "{{pokemonNameWithAffix}} ha evitato\ni danni grazie a {{abilityName}}!",
|
||||||
"perishBody": "{{abilityName}} di {{pokemonName}}\nmanderà KO entrambi i Pokémon dopo 3 turni!",
|
"perishBody": "{{abilityName}} di {{pokemonName}}\nmanderà KO entrambi i Pokémon dopo 3 turni!",
|
||||||
"poisonHeal": "{{pokemonName}} recupera alcuni PS\ncon {{abilityName}}!",
|
"poisonHeal": "{{pokemonName}} recupera alcuni PS\ncon {{abilityName}}!",
|
||||||
"trace": "L'abilità {{abilityName}} di {{targetName}}\nviene copiata da {{pokemonName}} con Traccia!",
|
"trace": "L'abilità {{abilityName}} di {{targetName}}\nviene copiata da {{pokemonName}} con Traccia!",
|
||||||
@ -13,7 +13,7 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"blockItemTheft": "{{abilityName}} di {{pokemonNameWithAffix}}\nlo rende immune ai furti!",
|
"blockItemTheft": "{{abilityName}} di {{pokemonNameWithAffix}}\nlo rende immune ai furti!",
|
||||||
"typeImmunityHeal": "{{pokemonName}} recupera alcuni PS\ncon {{abilityName}}!",
|
"typeImmunityHeal": "{{pokemonName}} recupera alcuni PS\ncon {{abilityName}}!",
|
||||||
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} evita il colpo\ncon {{abilityName}}!",
|
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} evita il colpo\ncon {{abilityName}}!",
|
||||||
"postDefendDisguise": "{{pokemonNameWithAffix}} è stato smascherato!",
|
"disguiseAvoidedDamage": "{{pokemonNameWithAffix}} è stato smascherato!",
|
||||||
"moveImmunity": "Non ha effetto su {{pokemonNameWithAffix}}!",
|
"moveImmunity": "Non ha effetto su {{pokemonNameWithAffix}}!",
|
||||||
"reverseDrain": "{{pokemonNameWithAffix}} ha assorbito la melma!",
|
"reverseDrain": "{{pokemonNameWithAffix}} ha assorbito la melma!",
|
||||||
"postDefendTypeChange": "{{abilityName}} di {{pokemonNameWithAffix}}\nlo ha reso di tipo {{typeName}}!",
|
"postDefendTypeChange": "{{abilityName}} di {{pokemonNameWithAffix}}\nlo ha reso di tipo {{typeName}}!",
|
||||||
|
@ -60,6 +60,7 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"turnEndHpRestore": "{{pokemonName}} ha recuperato dei PS.",
|
"turnEndHpRestore": "{{pokemonName}} ha recuperato dei PS.",
|
||||||
"hpIsFull": "{{pokemonName}} ha già\ntutti i PS!",
|
"hpIsFull": "{{pokemonName}} ha già\ntutti i PS!",
|
||||||
"skipItemQuestion": "Sei sicuro di non voler prendere nessun oggetto?",
|
"skipItemQuestion": "Sei sicuro di non voler prendere nessun oggetto?",
|
||||||
|
"itemStackFull": "The stack for {{fullItemName}} is full.\nYou will receive {{itemName}} instead.",
|
||||||
"eggHatching": "Oh?",
|
"eggHatching": "Oh?",
|
||||||
"ivScannerUseQuestion": "Vuoi usare lo scanner di IV su {{pokemonName}}?",
|
"ivScannerUseQuestion": "Vuoi usare lo scanner di IV su {{pokemonName}}?",
|
||||||
"stealEatBerry": "{{pokemonName}} ha rubato e mangiato\nla {{berryName}} di {{targetName}}!",
|
"stealEatBerry": "{{pokemonName}} ha rubato e mangiato\nla {{berryName}} di {{targetName}}!",
|
||||||
@ -95,65 +96,4 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"congratulations": "Congratulazioni!",
|
"congratulations": "Congratulazioni!",
|
||||||
"beatModeFirstTime": "{{speciesName}} ha completato la modalità {{gameMode}} per la prima volta!\nHai ricevuto {{newModifier}}!",
|
"beatModeFirstTime": "{{speciesName}} ha completato la modalità {{gameMode}} per la prima volta!\nHai ricevuto {{newModifier}}!",
|
||||||
"ppReduced": "I PP della mossa {{moveName}} di\n{{targetName}} sono stati ridotti di {{reduction}}!",
|
"ppReduced": "I PP della mossa {{moveName}} di\n{{targetName}} sono stati ridotti di {{reduction}}!",
|
||||||
"battlerTagsRechargingLapse": "{{pokemonNameWithAffix}} deve\nricaricarsi!",
|
|
||||||
"battlerTagsTrappedOnAdd": "{{pokemonNameWithAffix}} non può\npiù fuggire!",
|
|
||||||
"battlerTagsTrappedOnRemove": "{{pokemonNameWithAffix}} è stato liberato\nda {{moveName}}",
|
|
||||||
"battlerTagsFlinchedLapse": "{{pokemonNameWithAffix}} tentenna!",
|
|
||||||
"battlerTagsConfusedOnAdd": "{{pokemonNameWithAffix}} è\nconfuso!",
|
|
||||||
"battlerTagsConfusedOnRemove": "{{pokemonNameWithAffix}} non\nè più confuso!",
|
|
||||||
"battlerTagsConfusedOnOverlap": "{{pokemonNameWithAffix}} è\ngià confuso!",
|
|
||||||
"battlerTagsConfusedLapse": "{{pokemonNameWithAffix}} è\nconfuso!",
|
|
||||||
"battlerTagsConfusedLapseHurtItself": "Si colpisce da solo per via della\nconfusione!",
|
|
||||||
"battlerTagsDestinyBondLapseIsBoss": "{{pokemonNameWithAffix}} è immune\na Destinobbligato.",
|
|
||||||
"battlerTagsDestinyBondLapse": "{{pokemonNameWithAffix}} trascina\ncon sé{{pokemonNameWithAffix2}}!",
|
|
||||||
"battlerTagsInfatuatedOnAdd": "{{pokemonNameWithAffix}} si è infatuato\ndi {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsInfatuatedOnOverlap": "{{pokemonNameWithAffix}} è\ngià infatuato!",
|
|
||||||
"battlerTagsInfatuatedLapse": "{{pokemonNameWithAffix}} è infatuato\ndi {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsInfatuatedLapseImmobilize": "{{pokemonNameWithAffix}} è\nimmobilizzato dall'infatuazione!",
|
|
||||||
"battlerTagsInfatuatedOnRemove": "{{pokemonNameWithAffix}} non è\npiù infatuato.",
|
|
||||||
"battlerTagsSeededOnAdd": "{{pokemonNameWithAffix}} è pieno di semi!",
|
|
||||||
"battlerTagsSeededLapse": "La salute di {{pokemonNameWithAffix}}\nviene prelevata da Parassiseme!",
|
|
||||||
"battlerTagsSeededLapseShed": "Parassiseme di {{pokemonNameWithAffix}}\nha risucchiato la melma!",
|
|
||||||
"battlerTagsNightmareOnAdd": "{{pokemonNameWithAffix}} sta\navendo un Incubo!",
|
|
||||||
"battlerTagsNightmareOnOverlap": "{{pokemonNameWithAffix}} sta\ngià avendo un Incubo!",
|
|
||||||
"battlerTagsNightmareLapse": "{{pokemonNameWithAffix}} è bloccato\nin un Incubo!",
|
|
||||||
"battlerTagsEncoreOnAdd": "{{pokemonNameWithAffix}} ha\nsubito Ripeti!",
|
|
||||||
"battlerTagsEncoreOnRemove": "L'effetto di Ripeti su {{pokemonNameWithAffix}}\n è terminato!",
|
|
||||||
"battlerTagsHelpingHandOnAdd": "{{pokemonNameWithAffix}} è pronto ad\naiutare {{pokemonName}}!",
|
|
||||||
"battlerTagsIngrainLapse": "{{pokemonNameWithAffix}} assorbe\nnutrienti dalle sue radici!",
|
|
||||||
"battlerTagsIngrainOnTrap": "{{pokemonNameWithAffix}} ha messo le radici!",
|
|
||||||
"battlerTagsAquaRingOnAdd": "{{pokemonNameWithAffix}} si è circondato\ncon un velo d'acqua!",
|
|
||||||
"battlerTagsAquaRingLapse": "{{moveName}} ha ripristinato\ni PS di {{pokemonName}}!",
|
|
||||||
"battlerTagsDrowsyOnAdd": "{{pokemonNameWithAffix}} sta per addormentarsi!",
|
|
||||||
"battlerTagsDamagingTrapLapse": "{{pokemonNameWithAffix}} subisce danni\nper via di {{moveName}}!",
|
|
||||||
"battlerTagsBindOnTrap": "{{pokemonNameWithAffix}} viene schiacciato da\n{{moveName}} di {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsWrapOnTrap": "{{pokemonNameWithAffix}} è stato avvinghiato\nda {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsVortexOnTrap": "{{pokemonNameWithAffix}} è intrappolato\nnel vortice!",
|
|
||||||
"battlerTagsClampOnTrap": "{{sourcePokemonNameWithAffix}} sta intenagliando\n{{pokemonName}}!",
|
|
||||||
"battlerTagsSandTombOnTrap": "{{pokemonNameWithAffix}} è intrappolato\nda {{moveName}}!",
|
|
||||||
"battlerTagsMagmaStormOnTrap": "{{pokemonNameWithAffix}} è intrappolato\nnel magma vorticoso!",
|
|
||||||
"battlerTagsSnapTrapOnTrap": "{{pokemonNameWithAffix}} è intrappolato\nin una tagliola!",
|
|
||||||
"battlerTagsThunderCageOnTrap": "{{sourcePokemonNameWithAffix}} ha intrappolato\n{{pokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsInfestationOnTrap": "{{pokemonNameWithAffix}} ha subito un\ninfestazione da parte di {{sourcePokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsProtectedOnAdd": "{{pokemonNameWithAffix}}\nsi è protetto!",
|
|
||||||
"battlerTagsProtectedLapse": "{{pokemonNameWithAffix}}\nsi è protetto!",
|
|
||||||
"battlerTagsEnduringOnAdd": "{{pokemonNameWithAffix}} si prepara a\nsubire il colpo!",
|
|
||||||
"battlerTagsEnduringLapse": "{{pokemonNameWithAffix}} resiste\nal colpo!",
|
|
||||||
"battlerTagsSturdyLapse": "{{pokemonNameWithAffix}} ha resistito\ngrazie a Vigore!",
|
|
||||||
"battlerTagsPerishSongLapse": "Il conto alla rovescia di Ultimocanto per {{pokemonNameWithAffix}} scende a {{turnCount}}.",
|
|
||||||
"battlerTagsCenterOfAttentionOnAdd": "{{pokemonNameWithAffix}} è al centro\ndell’attenzione!",
|
|
||||||
"battlerTagsTruantLapse": "{{pokemonNameWithAffix}} sta\nciondolando!",
|
|
||||||
"battlerTagsSlowStartOnAdd": "{{pokemonNameWithAffix}} non\ningrana!",
|
|
||||||
"battlerTagsSlowStartOnRemove": "{{pokemonNameWithAffix}} ritrova\nlo slancio!",
|
|
||||||
"battlerTagsHighestStatBoostOnAdd": "{{statName}} di {{pokemonNameWithAffix}}\nviene aumentato/a!",
|
|
||||||
"battlerTagsHighestStatBoostOnRemove": "Gli effetti di {{abilityName}}\ndi {{pokemonNameWithAffix}} sono cessati!",
|
|
||||||
"battlerTagsMagnetRisenOnAdd": "{{pokemonNameWithAffix}} si solleva in aria\na causa dell’elettromagnetismo!",
|
|
||||||
"battlerTagsMagnetRisenOnRemove": "L’effetto dell’elettromagnetismo di {{pokemonNameWithAffix}}\nè terminato!",
|
|
||||||
"battlerTagsCritBoostOnAdd": "{{pokemonNameWithAffix}} si prepara\nalla lotta!",
|
|
||||||
"battlerTagsCritBoostOnRemove": "{{pokemonNameWithAffix}} si è rilassato.",
|
|
||||||
"battlerTagsSaltCuredOnAdd": "{{pokemonNameWithAffix}} è stato messo sotto sale!",
|
|
||||||
"battlerTagsSaltCuredLapse": "{{pokemonNameWithAffix}} viene colpito da {{moveName}}!",
|
|
||||||
"battlerTagsCursedOnAdd": "{{pokemonNameWithAffix}} ha sacrificato metà dei suoi PS per\nlanciare una maledizione su {{pokemonName}}!",
|
|
||||||
"battlerTagsCursedLapse": "{{pokemonNameWithAffix}} subisce la maledizione!",
|
|
||||||
"battlerTagsStockpilingOnAdd": "{{pokemonNameWithAffix}} ha usato Accumulo per la\n{{stockpiledCount}}ª volta!"
|
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -9,4 +9,65 @@ export const battlerTags: SimpleTranslationEntries = {
|
|||||||
"nightmareDesc": "nightmares",
|
"nightmareDesc": "nightmares",
|
||||||
"ingrainDesc": "roots",
|
"ingrainDesc": "roots",
|
||||||
"drowsyDesc": "drowsiness",
|
"drowsyDesc": "drowsiness",
|
||||||
|
"rechargingLapse": "{{pokemonNameWithAffix}} deve\nricaricarsi!",
|
||||||
|
"trappedOnAdd": "{{pokemonNameWithAffix}} non può\npiù fuggire!",
|
||||||
|
"trappedOnRemove": "{{pokemonNameWithAffix}} è stato liberato\nda {{moveName}}",
|
||||||
|
"flinchedLapse": "{{pokemonNameWithAffix}} tentenna!",
|
||||||
|
"confusedOnAdd": "{{pokemonNameWithAffix}} è\nconfuso!",
|
||||||
|
"confusedOnRemove": "{{pokemonNameWithAffix}} non\nè più confuso!",
|
||||||
|
"confusedOnOverlap": "{{pokemonNameWithAffix}} è\ngià confuso!",
|
||||||
|
"confusedLapse": "{{pokemonNameWithAffix}} è\nconfuso!",
|
||||||
|
"confusedLapseHurtItself": "Si colpisce da solo per via della\nconfusione!",
|
||||||
|
"destinyBondLapseIsBoss": "{{pokemonNameWithAffix}} è immune\na Destinobbligato.",
|
||||||
|
"destinyBondLapse": "{{pokemonNameWithAffix}} trascina\ncon sé{{pokemonNameWithAffix2}}!",
|
||||||
|
"infatuatedOnAdd": "{{pokemonNameWithAffix}} si è infatuato\ndi {{sourcePokemonName}}!",
|
||||||
|
"infatuatedOnOverlap": "{{pokemonNameWithAffix}} è\ngià infatuato!",
|
||||||
|
"infatuatedLapse": "{{pokemonNameWithAffix}} è infatuato\ndi {{sourcePokemonName}}!",
|
||||||
|
"infatuatedLapseImmobilize": "{{pokemonNameWithAffix}} è\nimmobilizzato dall'infatuazione!",
|
||||||
|
"infatuatedOnRemove": "{{pokemonNameWithAffix}} non è\npiù infatuato.",
|
||||||
|
"seededOnAdd": "{{pokemonNameWithAffix}} è pieno di semi!",
|
||||||
|
"seededLapse": "La salute di {{pokemonNameWithAffix}}\nviene prelevata da Parassiseme!",
|
||||||
|
"seededLapseShed": "Parassiseme di {{pokemonNameWithAffix}}\nha risucchiato la melma!",
|
||||||
|
"nightmareOnAdd": "{{pokemonNameWithAffix}} sta\navendo un Incubo!",
|
||||||
|
"nightmareOnOverlap": "{{pokemonNameWithAffix}} sta\ngià avendo un Incubo!",
|
||||||
|
"nightmareLapse": "{{pokemonNameWithAffix}} è bloccato\nin un Incubo!",
|
||||||
|
"encoreOnAdd": "{{pokemonNameWithAffix}} ha\nsubito Ripeti!",
|
||||||
|
"encoreOnRemove": "L'effetto di Ripeti su {{pokemonNameWithAffix}}\n è terminato!",
|
||||||
|
"helpingHandOnAdd": "{{pokemonNameWithAffix}} è pronto ad\naiutare {{pokemonName}}!",
|
||||||
|
"ingrainLapse": "{{pokemonNameWithAffix}} assorbe\nnutrienti dalle sue radici!",
|
||||||
|
"ingrainOnTrap": "{{pokemonNameWithAffix}} ha messo le radici!",
|
||||||
|
"aquaRingOnAdd": "{{pokemonNameWithAffix}} si è circondato\ncon un velo d'acqua!",
|
||||||
|
"aquaRingLapse": "{{moveName}} ha ripristinato\ni PS di {{pokemonName}}!",
|
||||||
|
"drowsyOnAdd": "{{pokemonNameWithAffix}} sta per addormentarsi!",
|
||||||
|
"damagingTrapLapse": "{{pokemonNameWithAffix}} subisce danni\nper via di {{moveName}}!",
|
||||||
|
"bindOnTrap": "{{pokemonNameWithAffix}} viene schiacciato da\n{{moveName}} di {{sourcePokemonName}}!",
|
||||||
|
"wrapOnTrap": "{{pokemonNameWithAffix}} è stato avvinghiato\nda {{sourcePokemonName}}!",
|
||||||
|
"vortexOnTrap": "{{pokemonNameWithAffix}} è intrappolato\nnel vortice!",
|
||||||
|
"clampOnTrap": "{{sourcePokemonNameWithAffix}} sta intenagliando\n{{pokemonName}}!",
|
||||||
|
"sandTombOnTrap": "{{pokemonNameWithAffix}} è intrappolato\nda {{moveName}}!",
|
||||||
|
"magmaStormOnTrap": "{{pokemonNameWithAffix}} è intrappolato\nnel magma vorticoso!",
|
||||||
|
"snapTrapOnTrap": "{{pokemonNameWithAffix}} è intrappolato\nin una tagliola!",
|
||||||
|
"thunderCageOnTrap": "{{sourcePokemonNameWithAffix}} ha intrappolato\n{{pokemonNameWithAffix}}!",
|
||||||
|
"infestationOnTrap": "{{pokemonNameWithAffix}} ha subito un\ninfestazione da parte di {{sourcePokemonNameWithAffix}}!",
|
||||||
|
"protectedOnAdd": "{{pokemonNameWithAffix}}\nsi è protetto!",
|
||||||
|
"protectedLapse": "{{pokemonNameWithAffix}}\nsi è protetto!",
|
||||||
|
"enduringOnAdd": "{{pokemonNameWithAffix}} si prepara a\nsubire il colpo!",
|
||||||
|
"enduringLapse": "{{pokemonNameWithAffix}} resiste\nal colpo!",
|
||||||
|
"sturdyLapse": "{{pokemonNameWithAffix}} ha resistito\ngrazie a Vigore!",
|
||||||
|
"perishSongLapse": "Il conto alla rovescia di Ultimocanto per {{pokemonNameWithAffix}} scende a {{turnCount}}.",
|
||||||
|
"centerOfAttentionOnAdd": "{{pokemonNameWithAffix}} è al centro\ndell’attenzione!",
|
||||||
|
"truantLapse": "{{pokemonNameWithAffix}} sta\nciondolando!",
|
||||||
|
"slowStartOnAdd": "{{pokemonNameWithAffix}} non\ningrana!",
|
||||||
|
"slowStartOnRemove": "{{pokemonNameWithAffix}} ritrova\nlo slancio!",
|
||||||
|
"highestStatBoostOnAdd": "{{statName}} di {{pokemonNameWithAffix}}\nviene aumentato/a!",
|
||||||
|
"highestStatBoostOnRemove": "Gli effetti di {{abilityName}}\ndi {{pokemonNameWithAffix}} sono cessati!",
|
||||||
|
"magnetRisenOnAdd": "{{pokemonNameWithAffix}} si solleva in aria\na causa dell’elettromagnetismo!",
|
||||||
|
"magnetRisenOnRemove": "L’effetto dell’elettromagnetismo di {{pokemonNameWithAffix}}\nè terminato!",
|
||||||
|
"critBoostOnAdd": "{{pokemonNameWithAffix}} si prepara\nalla lotta!",
|
||||||
|
"critBoostOnRemove": "{{pokemonNameWithAffix}} si è rilassato.",
|
||||||
|
"saltCuredOnAdd": "{{pokemonNameWithAffix}} è stato messo sotto sale!",
|
||||||
|
"saltCuredLapse": "{{pokemonNameWithAffix}} viene colpito da {{moveName}}!",
|
||||||
|
"cursedOnAdd": "{{pokemonNameWithAffix}} ha sacrificato metà dei suoi PS per\nlanciare una maledizione su {{pokemonName}}!",
|
||||||
|
"cursedLapse": "{{pokemonNameWithAffix}} subisce la maledizione!",
|
||||||
|
"stockpilingOnAdd": "{{pokemonNameWithAffix}} ha usato Accumulo per la\n{{stockpiledCount}}ª volta!",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -3,7 +3,7 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
|||||||
export const filterBar: SimpleTranslationEntries = {
|
export const filterBar: SimpleTranslationEntries = {
|
||||||
"genFilter": "Gen",
|
"genFilter": "Gen",
|
||||||
"typeFilter": "Tipo",
|
"typeFilter": "Tipo",
|
||||||
"caughtFilter": "Caught",
|
"caughtFilter": "Catturati",
|
||||||
"unlocksFilter": "Altro",
|
"unlocksFilter": "Altro",
|
||||||
"miscFilter": "Misc",
|
"miscFilter": "Misc",
|
||||||
"sortFilter": "Ordina",
|
"sortFilter": "Ordina",
|
||||||
@ -13,18 +13,25 @@ export const filterBar: SimpleTranslationEntries = {
|
|||||||
"passive": "Passive",
|
"passive": "Passive",
|
||||||
"passiveUnlocked": "Passiva sbloccata",
|
"passiveUnlocked": "Passiva sbloccata",
|
||||||
"passiveLocked": "Passiva bloccata",
|
"passiveLocked": "Passiva bloccata",
|
||||||
"costReduction": "Cost Reduction",
|
"passiveUnlockable": "Passiva sbloccabile",
|
||||||
"costReductionUnlocked": "Cost Reduction Unlocked",
|
"costReduction": "Costo ridotto",
|
||||||
"costReductionLocked": "Cost Reduction Locked",
|
"costReductionUnlocked": "Costo ridotto sbloccato",
|
||||||
"ribbon": "Ribbon",
|
"costReductionLocked": "Costo ridotto bloccato",
|
||||||
"hasWon": "Ribbon - Yes",
|
"costReductionUnlockable": "Costo ridotto sbloccabile",
|
||||||
"hasNotWon": "Ribbon - No",
|
"favorite": "Preferiti",
|
||||||
"hiddenAbility": "Hidden Ability",
|
"isFavorite": "Preferiti - Sì",
|
||||||
"hasHiddenAbility": "Hidden Ability - Yes",
|
"notFavorite": "Preferiti - No",
|
||||||
"noHiddenAbility": "Hidden Ability - No",
|
"ribbon": "Fiocco",
|
||||||
"pokerus": "Pokerus",
|
"hasWon": "Fiocco - Sì",
|
||||||
"hasPokerus": "Pokerus - Yes",
|
"hasNotWon": "Fiocco - No",
|
||||||
"noPokerus": "Pokerus - No",
|
"hiddenAbility": "Abilità speciale",
|
||||||
|
"hasHiddenAbility": "Abilità speciale - Sì",
|
||||||
|
"noHiddenAbility": "Abilità speciale - No",
|
||||||
|
"egg": "Uova",
|
||||||
|
"eggPurchasable": "Uovo acquistabile",
|
||||||
|
"pokerus": "Pokérus",
|
||||||
|
"hasPokerus": "Pokérus - Sì",
|
||||||
|
"noPokerus": "Pokérus - No",
|
||||||
"sortByNumber": "Num. Dex",
|
"sortByNumber": "Num. Dex",
|
||||||
"sortByCost": "Costo",
|
"sortByCost": "Costo",
|
||||||
"sortByCandies": "Caramelle",
|
"sortByCandies": "Caramelle",
|
||||||
|
@ -56,6 +56,7 @@ export const moveTriggers: SimpleTranslationEntries = {
|
|||||||
"sacrificialFullRestore": "{{pokemonName}} riceve i benefici\neffetti di Curardore!",
|
"sacrificialFullRestore": "{{pokemonName}} riceve i benefici\neffetti di Curardore!",
|
||||||
"invertStats": "Le modifiche alle statistiche di {{pokemonName}}\nvengono invertite!",
|
"invertStats": "Le modifiche alle statistiche di {{pokemonName}}\nvengono invertite!",
|
||||||
"resetStats": "Tutte le modifiche alle statistiche sono state annullate!",
|
"resetStats": "Tutte le modifiche alle statistiche sono state annullate!",
|
||||||
|
"statEliminated": "All stat changes were eliminated!",
|
||||||
"faintCountdown": "{{pokemonName}}\nandrà KO dopo {{turnCount}} turni.",
|
"faintCountdown": "{{pokemonName}}\nandrà KO dopo {{turnCount}} turni.",
|
||||||
"copyType": "{{pokemonName}} assume il tipo\ndi {{targetPokemonName}}!",
|
"copyType": "{{pokemonName}} assume il tipo\ndi {{targetPokemonName}}!",
|
||||||
"suppressAbilities": "L’abilità di {{pokemonName}}\nperde ogni efficacia!",
|
"suppressAbilities": "L’abilità di {{pokemonName}}\nperde ogni efficacia!",
|
||||||
|
@ -13,6 +13,7 @@ export const battlePokemonForm: SimpleTranslationEntries = {
|
|||||||
"eternamaxChange": "{{preName}} si Dynamaxxa infinitamente\nin {{pokemonName}}!",
|
"eternamaxChange": "{{preName}} si Dynamaxxa infinitamente\nin {{pokemonName}}!",
|
||||||
"revertChange": "{{pokemonName}} è tornato\nalla sua forma originaria!",
|
"revertChange": "{{pokemonName}} è tornato\nalla sua forma originaria!",
|
||||||
"formChange": "{{preName}} ha cambiato forma!",
|
"formChange": "{{preName}} ha cambiato forma!",
|
||||||
|
"disguiseChange": "Its disguise served it as a decoy!",
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const pokemonForm: SimpleTranslationEntries = {
|
export const pokemonForm: SimpleTranslationEntries = {
|
||||||
|
@ -97,5 +97,6 @@ export const settings: SimpleTranslationEntries = {
|
|||||||
"controller": "Controller",
|
"controller": "Controller",
|
||||||
"gamepadSupport": "Supporto Gamepad",
|
"gamepadSupport": "Supporto Gamepad",
|
||||||
"showBgmBar": "Mostra Nomi Musica",
|
"showBgmBar": "Mostra Nomi Musica",
|
||||||
|
"moveTouchControls": "Move Touch Controls",
|
||||||
"shopOverlayOpacity": "Opacità Finestra Negozio"
|
"shopOverlayOpacity": "Opacità Finestra Negozio"
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -28,6 +28,8 @@ export const starterSelectUiHandler: SimpleTranslationEntries = {
|
|||||||
"toggleIVs": "Vedi/Nascondi IV",
|
"toggleIVs": "Vedi/Nascondi IV",
|
||||||
"manageMoves": "Gestisci mosse",
|
"manageMoves": "Gestisci mosse",
|
||||||
"manageNature": "Gestisci natura",
|
"manageNature": "Gestisci natura",
|
||||||
|
"addToFavorites": "Add to Favorites",
|
||||||
|
"removeFromFavorites": "Remove from Favorites",
|
||||||
"useCandies": "Usa caramelle",
|
"useCandies": "Usa caramelle",
|
||||||
"selectNature": "Seleziona natura.",
|
"selectNature": "Seleziona natura.",
|
||||||
"selectMoveSwapOut": "Seleziona una mossa da scambiare.",
|
"selectMoveSwapOut": "Seleziona una mossa da scambiare.",
|
||||||
|
@ -10,6 +10,7 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"trace": "{{pokemonName}}は 相手の {{targetName}}の\n{{abilityName}}を トレースした!",
|
"trace": "{{pokemonName}}は 相手の {{targetName}}の\n{{abilityName}}を トレースした!",
|
||||||
"windPowerCharged": "{{pokemonName}}は\n{{moveName}}を 受けて じゅうでんした!",
|
"windPowerCharged": "{{pokemonName}}は\n{{moveName}}を 受けて じゅうでんした!",
|
||||||
"quickDraw": "{{pokemonName}}は クイックドロウで\n行動が はやくなった!",
|
"quickDraw": "{{pokemonName}}は クイックドロウで\n行動が はやくなった!",
|
||||||
|
"disguiseAvoidedDamage" : "{{pokemonNameWithAffix}}'s disguise was busted!",
|
||||||
"blockItemTheft": "{{pokemonNameWithAffix}}の {{abilityName}}で\n道具を うばわれない!",
|
"blockItemTheft": "{{pokemonNameWithAffix}}の {{abilityName}}で\n道具を うばわれない!",
|
||||||
"typeImmunityHeal": "{{pokemonNameWithAffix}}は {{abilityName}}で\n体力を 回復した!",
|
"typeImmunityHeal": "{{pokemonNameWithAffix}}は {{abilityName}}で\n体力を 回復した!",
|
||||||
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}}は {{abilityName}}で\nダメージを 受けない。",
|
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}}は {{abilityName}}で\nダメージを 受けない。",
|
||||||
|
@ -1,53 +1,53 @@
|
|||||||
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
||||||
|
|
||||||
export const arenaTag: SimpleTranslationEntries = {
|
export const arenaTag: SimpleTranslationEntries = {
|
||||||
"yourTeam": "your team",
|
"yourTeam": "味方",
|
||||||
"opposingTeam": "the opposing team",
|
"opposingTeam": "相手",
|
||||||
"arenaOnRemove": "{{moveName}}'s effect wore off.",
|
"arenaOnRemove": "{{moveName}}の 効果が 切れた",
|
||||||
"arenaOnRemovePlayer": "{{moveName}}'s effect wore off\non your side.",
|
"arenaOnRemovePlayer": "{{moveName}}の 効果が\n味方から 切れた",
|
||||||
"arenaOnRemoveEnemy": "{{moveName}}'s effect wore off\non the foe's side.",
|
"arenaOnRemoveEnemy": "{{moveName}}の 効果が\n相手から 切れた",
|
||||||
"mistOnAdd": "{{pokemonNameWithAffix}}'s team became\nshrouded in mist!",
|
"mistOnAdd": "{{pokemonNameWithAffix}}の 味方は\n白い霧に 包まれた!",
|
||||||
"mistApply": "The mist prevented\nthe lowering of stats!",
|
"mistApply": "白い霧が\n能力変化の 削減から 守った!",
|
||||||
"reflectOnAdd": "Reflect reduced the damage of physical moves.",
|
"reflectOnAdd": "リフレクターで 物理ダメージを さげた",
|
||||||
"reflectOnAddPlayer": "Reflect reduced the damage of physical moves on your side.",
|
"reflectOnAddPlayer": "味方の リフレクターで\n物理ダメージを さげた",
|
||||||
"reflectOnAddEnemy": "Reflect reduced the damage of physical moves on the foe's side.",
|
"reflectOnAddEnemy": "相手の リフレクターで\n物理ダメージを さげた",
|
||||||
"lightScreenOnAdd": "Light Screen reduced the damage of special moves.",
|
"lightScreenOnAdd": "ひかりのかべで\n特殊ダメージを さげた",
|
||||||
"lightScreenOnAddPlayer": "Light Screen reduced the damage of special moves on your side.",
|
"lightScreenOnAddPlayer": "味方の ひかりのかべで\n特殊ダメージを さげた",
|
||||||
"lightScreenOnAddEnemy": "Light Screen reduced the damage of special moves on the foe's side.",
|
"lightScreenOnAddEnemy": "相手の ひかりのかべで\n特殊ダメージを さげた",
|
||||||
"auroraVeilOnAdd": "Aurora Veil reduced the damage of moves.",
|
"auroraVeilOnAdd": "オーロラベールで\n攻撃の ダメージを さげた",
|
||||||
"auroraVeilOnAddPlayer": "Aurora Veil reduced the damage of moves on your side.",
|
"auroraVeilOnAddPlayer": "味方の オーロラベールで\n攻撃ダメージを さげた",
|
||||||
"auroraVeilOnAddEnemy": "Aurora Veil reduced the damage of moves on the foe's side.",
|
"auroraVeilOnAddEnemy": "相手の オーロラベールで\n攻撃ダメージを さげた",
|
||||||
"conditionalProtectOnAdd": "{{moveName}} protected team!",
|
"conditionalProtectOnAdd": "{{moveName}}に 守られた!",
|
||||||
"conditionalProtectOnAddPlayer": "{{moveName}} protected your team!",
|
"conditionalProtectOnAddPlayer": "見方が {{moveName}}に 守られた!",
|
||||||
"conditionalProtectOnAddEnemy": "{{moveName}} protected the\nopposing team!",
|
"conditionalProtectOnAddEnemy": "相手が {{moveName}}に 守られた!",
|
||||||
"conditionalProtectApply": "{{moveName}} protected {{pokemonNameWithAffix}}!",
|
"conditionalProtectApply": "{{pokemonNameWithAffix}}が\n{{moveName}}に 守られた!",
|
||||||
"matBlockOnAdd": "{{pokemonNameWithAffix}} intends to flip up a mat\nand block incoming attacks!",
|
"matBlockOnAdd": "{{pokemonNameWithAffix}}は\nたたみがえしを ねらっている!",
|
||||||
"noCritOnAddPlayer": "The {{moveName}} shielded your\nteam from critical hits!",
|
"noCritOnAddPlayer": "{{moveName}}の 力で 味方の急所が 隠れた!",
|
||||||
"noCritOnAddEnemy": "The {{moveName}} shielded the opposing\nteam from critical hits!",
|
"noCritOnAddEnemy": "{{moveName}}の 力で 相手の急所が 隠れた!",
|
||||||
"noCritOnRemove": "{{pokemonNameWithAffix}}'s {{moveName}}\nwore off!",
|
"noCritOnRemove": "{{pokemonNameWithAffix}}の {{moveName}}の\n効果が なくなった!",
|
||||||
"wishTagOnAdd": "{{pokemonNameWithAffix}}'s wish\ncame true!",
|
"wishTagOnAdd": "{{pokemonNameWithAffix}}の\nねがいごとが かなった!",
|
||||||
"mudSportOnAdd": "Electricity's power was weakened!",
|
"mudSportOnAdd": "電気の威力が 弱まった!",
|
||||||
"mudSportOnRemove": "The effects of Mud Sport\nhave faded.",
|
"mudSportOnRemove": "どろあそびの 効果が なくなった!",
|
||||||
"waterSportOnAdd": "Fire's power was weakened!",
|
"waterSportOnAdd": "炎の威力が 弱まった!",
|
||||||
"waterSportOnRemove": "The effects of Water Sport\nhave faded.",
|
"waterSportOnRemove": "みずあそびの 効果が なくなった!",
|
||||||
"spikesOnAdd": "{{moveName}} were scattered\nall around {{opponentDesc}}'s feet!",
|
"spikesOnAdd": "{{opponentDesc}}の 足下に\n{{moveName}}が 散らばった!",
|
||||||
"spikesActivateTrap": "{{pokemonNameWithAffix}} is hurt\nby the spikes!",
|
"spikesActivateTrap": "{{pokemonNameWithAffix}}は\nまきびしの ダメージを 受けた!",
|
||||||
"toxicSpikesOnAdd": "{{moveName}} were scattered\nall around {{opponentDesc}}'s feet!",
|
"toxicSpikesOnAdd": "{{opponentDesc}}の 足下に\n{{moveName}}が 散らばった!",
|
||||||
"toxicSpikesActivateTrapPoison": "{{pokemonNameWithAffix}} absorbed the {{moveName}}!",
|
"toxicSpikesActivateTrapPoison": "{{pokemonNameWithAffix}}は {{moveName}}で 毒を あびた!",
|
||||||
"stealthRockOnAdd": "Pointed stones float in the air\naround {{opponentDesc}}!",
|
"stealthRockOnAdd": "{{opponentDesc}}の 周りに\nとがった岩が ただよい始めた!",
|
||||||
"stealthRockActivateTrap": "Pointed stones dug into\n{{pokemonNameWithAffix}}!",
|
"stealthRockActivateTrap": "{{pokemonNameWithAffix}}に\nとがった岩が 食い込んだ!",
|
||||||
"stickyWebOnAdd": "A {{moveName}} has been laid out on the ground around the opposing team!",
|
"stickyWebOnAdd": "相手の 足下に\n{{moveName}}が 広がった!",
|
||||||
"stickyWebActivateTrap": "The opposing {{pokemonName}} was caught in a sticky web!",
|
"stickyWebActivateTrap": "相手の {{pokemonName}}は\nねばねばネットに ひっかかった!",
|
||||||
"trickRoomOnAdd": "{{pokemonNameWithAffix}} twisted\nthe dimensions!",
|
"trickRoomOnAdd": "{{pokemonNameWithAffix}}は\n時空を ゆがめた!",
|
||||||
"trickRoomOnRemove": "The twisted dimensions\nreturned to normal!",
|
"trickRoomOnRemove": "ゆがんだ 時空が 元に戻った!",
|
||||||
"gravityOnAdd": "Gravity intensified!",
|
"gravityOnAdd": "じゅうりょくが 強くなった!",
|
||||||
"gravityOnRemove": "Gravity returned to normal!",
|
"gravityOnRemove": "じゅうりょくが 元に戻った!",
|
||||||
"tailwindOnAdd": "The Tailwind blew from behind team!",
|
"tailwindOnAdd": "追い風が 吹き始めた!",
|
||||||
"tailwindOnAddPlayer": "The Tailwind blew from behind\nyour team!",
|
"tailwindOnAddPlayer": "味方に\n追い風が 吹き始めた!",
|
||||||
"tailwindOnAddEnemy": "The Tailwind blew from behind\nthe opposing team!",
|
"tailwindOnAddEnemy": "相手に\n追い風が 吹き始めた!",
|
||||||
"tailwindOnRemove": "Team's Tailwind petered out!",
|
"tailwindOnRemove": "追い風が 止んだ!",
|
||||||
"tailwindOnRemovePlayer": "Your team's Tailwind petered out!",
|
"tailwindOnRemovePlayer": "味方の 追い風が 止んだ!",
|
||||||
"tailwindOnRemoveEnemy": "The opposing team's Tailwind petered out!",
|
"tailwindOnRemoveEnemy": "相手の 追い風が 止んだ!",
|
||||||
"happyHourOnAdd": "Everyone is caught up in the happy atmosphere!",
|
"happyHourOnAdd": "みんなが ハッピーな気分に\n包まれた!",
|
||||||
"happyHourOnRemove": "The atmosphere returned to normal.",
|
"happyHourOnRemove": "みんなの 気分が 元に戻った",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -1,159 +1,99 @@
|
|||||||
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
||||||
|
|
||||||
export const battle: SimpleTranslationEntries = {
|
export const battle: SimpleTranslationEntries = {
|
||||||
"bossAppeared": "{{bossName}}が あらわれた!",
|
"bossAppeared": "{{bossName}}が 現れた!",
|
||||||
"trainerAppeared": "{{trainerName}}が\nしょうぶを しかけてきた!",
|
"trainerAppeared": "{{trainerName}}が\n勝負を しかけてきた!",
|
||||||
"trainerAppearedDouble": "{{trainerName}}が\nしょうぶを しかけてきた!",
|
"trainerAppearedDouble": "{{trainerName}}が\n勝負を しかけてきた!",
|
||||||
"trainerSendOut": "{{trainerName}}は\n{{pokemonName}}を くりだした!",
|
"trainerSendOut": "{{trainerName}}は\n{{pokemonName}}を 繰り出した!",
|
||||||
"singleWildAppeared": "あっ! やせいの\n{{pokemonName}}が とびだしてきた!",
|
"singleWildAppeared": "あっ! 野生の {{pokemonName}}が 飛び出してきた!",
|
||||||
"multiWildAppeared": "あっ! やせいの {{pokemonName1}}と\n{{pokemonName2}}が とびだしてきた!",
|
"multiWildAppeared": "あっ! 野生の {{pokemonName1}}と\n{{pokemonName2}}が 飛び出してきた!",
|
||||||
"playerComeBack": "{{pokemonName}}! もどれ!",
|
"playerComeBack": "{{pokemonName}}! 戻れ!",
|
||||||
"trainerComeBack": "{{trainerName}}は\n{{pokemonName}}を ひっこめた!",
|
"trainerComeBack": "{{trainerName}}は\n{{pokemonName}}を 引っ込めた!",
|
||||||
"playerGo": "ゆけっ! {{pokemonName}}!",
|
"playerGo": "ゆけっ! {{pokemonName}}!",
|
||||||
"trainerGo": "{{trainerName}}は\n{{pokemonName}}を くりだした!",
|
"trainerGo": "{{trainerName}}は\n{{pokemonName}}を 繰り出した!",
|
||||||
"switchQuestion": "{{pokemonName}}を\nいれかえますか?",
|
"switchQuestion": "{{pokemonName}}を\n入れ替えますか?",
|
||||||
"trainerDefeated": "{{trainerName}}\nとの しょうぶに かった!",
|
"trainerDefeated": "{{trainerName}} との 勝負に 勝った!",
|
||||||
"moneyWon": "しょうきんとして\n₽{{moneyAmount}} てにいれた!",
|
"moneyWon": "賞金として ₽{{moneyAmount}}を 手に入れた!",
|
||||||
"moneyPickedUp": "₽{{moneyAmount}}を ひろった!",
|
"moneyPickedUp": "₽{{moneyAmount}}を 拾った!",
|
||||||
"pokemonCaught": "{{pokemonName}}を\nつかまえたぞ!",
|
"pokemonCaught": "{{pokemonName}}を 捕まえたぞ!",
|
||||||
"addedAsAStarter": "{{pokemonName}} has been\nadded as a starter!",
|
"addedAsAStarter": "今から {{pokemonName}}は 最初のパートナーとして 選べられる!",
|
||||||
"partyFull": "てもちがいっぱいです。\n{{pokemonName}}をいれるために ポケモンを ひとり てばなしますか?",
|
"partyFull": "手持ちが いっぱいです。\n{{pokemonName}}を入れる ために ポケモンを 一つ 逃がすか?",
|
||||||
"pokemon": "ポケモン",
|
"pokemon": "ポケモン",
|
||||||
"sendOutPokemon": "がんばれ! {{pokemonName}}!",
|
"sendOutPokemon": "頑張れ! {{pokemonName}}!",
|
||||||
"hitResultCriticalHit": "きゅうしょに あたった!",
|
"hitResultCriticalHit": "急所に 当たった!",
|
||||||
"hitResultSuperEffective": "こうかは ばつぐんだ!",
|
"hitResultSuperEffective": "効果は バツグンだ!",
|
||||||
"hitResultNotVeryEffective": "こうかは いまひとつの ようだ……",
|
"hitResultNotVeryEffective": "効果は 今ひとつの ようだ……",
|
||||||
"hitResultNoEffect": "{{pokemonName}}には こうかが ないようだ…",
|
"hitResultNoEffect": "{{pokemonName}}には 効果が ないようだ…",
|
||||||
"hitResultOneHitKO": "いちげき ひっさつ!",
|
"hitResultOneHitKO": "一撃必殺!",
|
||||||
"attackFailed": "しかし うまく きまらなかった!!",
|
"attackFailed": "しかし うまく 決まらなかった!!",
|
||||||
"attackMissed": "{{pokemonNameWithAffix}}には あたらなかった!",
|
"attackMissed": "{{pokemonNameWithAffix}}には 当たらなかった!",
|
||||||
"attackHitsCount": "{{count}}かい あたった!",
|
"attackHitsCount": "{{count}}かい 当たった!",
|
||||||
"rewardGain": "{{modifierName}}を\nてにいれた!",
|
"rewardGain": "{{modifierName}}を 手に入れた!",
|
||||||
"expGain": "{{pokemonName}}は\n{{exp}}けいけんちを もらった!",
|
"expGain": "{{pokemonName}}は\n{{exp}}経験値を もらった!",
|
||||||
"levelUp": "{{pokemonName}}は\nレベル{{level}} に あがった!",
|
"levelUp": "{{pokemonName}}は\nレベル{{level}}に 上がった!",
|
||||||
"learnMove": "{{pokemonName}}は あたらしく\n{{moveName}}を おぼえた!",
|
"learnMove": "{{pokemonName}}は 新しく\n{{moveName}}を 覚えた!",
|
||||||
"learnMovePrompt": "{{pokemonName}}は あたらしく\n{{moveName}}を おぼえたい……",
|
"learnMovePrompt": "{{pokemonName}}は 新しく\n{{moveName}}を 覚えたい……",
|
||||||
"learnMoveLimitReached": "しかし {{pokemonName}}は わざを 4つ\nおぼえるので せいいっぱいだ!",
|
"learnMoveLimitReached": "しかし {{pokemonName}}は 技を 4つ\n覚えるので せいいっぱいだ!",
|
||||||
"learnMoveReplaceQuestion": "{{moveName}}の かわりに\nほかの わざを わすれさせますか?",
|
"learnMoveReplaceQuestion": "{{moveName}}の 代わりに\n他の 技を 忘れさせますか?",
|
||||||
"learnMoveStopTeaching": "それでは…… {{moveName}}を\nおぼえるのを あきらめますか?",
|
"learnMoveStopTeaching": "それでは {{moveName}}を\n覚えるのを 諦めますか?",
|
||||||
"learnMoveNotLearned": "{{pokemonName}}は {{moveName}}を\nおぼえずに おわった!",
|
"learnMoveNotLearned": "{{pokemonName}}は {{moveName}}を\n覚えずに 終わった!",
|
||||||
"learnMoveForgetQuestion": "どの わざを\nわすれさせたい?",
|
"learnMoveForgetQuestion": "どの 技を\n忘れさせたい?",
|
||||||
"learnMoveForgetSuccess": "{{pokemonName}}は {{moveName}}の\nつかいかたを きれいに わすれた!",
|
"learnMoveForgetSuccess": "{{pokemonName}}は {{moveName}}の\n使い方を きれいに 忘れた!",
|
||||||
"countdownPoof": "@d{32}1 @d{15}2の @d{15}… @d{15}… @d{15}… @d{15}@s{pb_bounce_1}ポカン!",
|
"countdownPoof": "@d{32}1 @d{15}2の @d{15}… @d{15}… @d{15}… @d{15}@s{pb_bounce_1}ポカン!",
|
||||||
"learnMoveAnd": "そして…",
|
"learnMoveAnd": "そして…",
|
||||||
"levelCapUp": "レベルキャップの\n{{levelCap}}に あがった!",
|
"levelCapUp": "レベルキャップの\n{{levelCap}}に 上がった!",
|
||||||
"moveNotImplemented": "{{moveName}}は まだじっそうされておらず、せんたくできません。",
|
"moveNotImplemented": "{{moveName}}は まだ 実装されておらず 選択できません。",
|
||||||
"moveNoPP": "しかし わざの\nのこりポイントが なかった!",
|
"moveNoPP": "しかし 技の\n残りポイントが なかった!",
|
||||||
"moveDisabled": "かなしばりで\n{{moveName}}が だせない!",
|
"moveDisabled": "かなしばりで\n{{moveName}}が 出せない!",
|
||||||
"noPokeballForce": "みえない ちからの せいで\nボールを なげられない!",
|
"noPokeballForce": "見えない 力の せいで\nボールが 投げられない!",
|
||||||
"noPokeballTrainer": "ひとのものを\nとったら どろぼう!",
|
"noPokeballTrainer": "人の ものを 取ったら 泥棒!",
|
||||||
"noPokeballMulti": "あいての ポケモンが ひとつしか\n いないまえに ボールが つかえない!",
|
"noPokeballMulti": "相手の ポケモンが 一つしか\nいない 前に ボールが 使えない!",
|
||||||
"noPokeballStrong": "あいての ポケモンが つよすぎて つかまえられない!\nまずは よわらせよう!",
|
"noPokeballStrong": "相手の ポケモンが 強すぎて 捕まえられない!\nまずは 弱めよう!",
|
||||||
"noEscapeForce": "みえない ちからの せいで\nにげることが できない!",
|
"noEscapeForce": "見えない 力の せいで\n逃げることが できない!",
|
||||||
"noEscapeTrainer": "ダメだ! しょうぶのさいちゅうに\nあいてに せなかを みせられない!",
|
"noEscapeTrainer": "ダメだ! 勝負の最中に\n相手に 背中を 見せられない!",
|
||||||
"noEscapePokemon": "{{pokemonName}}の {{moveName}}で {{escapeVerb}}!",
|
"noEscapePokemon": "{{pokemonName}}の {{moveName}}で {{escapeVerb}}!",
|
||||||
"runAwaySuccess": " うまく にげきれた!",
|
"runAwaySuccess": " うまく 逃げ切れた!",
|
||||||
"runAwayCannotEscape": "にげることが できない!",
|
"runAwayCannotEscape": "逃げることが できない!",
|
||||||
"escapeVerbSwitch": "いれかえることが できない",
|
"escapeVerbSwitch": "入れ替えることが できない",
|
||||||
"escapeVerbFlee": "にげることが できない",
|
"escapeVerbFlee": "逃げることが できない",
|
||||||
"notDisabled": "{{pokemonName}}の かなしばりが とけた!\nまた {{moveName}}が つかえられる!",
|
"notDisabled": "{{pokemonName}}の かなしばりが 溶けた!\nまた {{moveName}}が 使えられる!",
|
||||||
"turnEndHpRestore": "{{pokemonName}}の たいりょくが かいふくした!",
|
"turnEndHpRestore": "{{pokemonName}}の 体力が 回復した!",
|
||||||
"hpIsFull": "{{pokemonName}}の\nHPが まんたんだ!",
|
"hpIsFull": "{{pokemonName}}の\n体力が 満タンだ!",
|
||||||
"skipItemQuestion": "ほんとに アイテムを とらない?",
|
"skipItemQuestion": "本当に アイテムを 取らずに 進みますか?",
|
||||||
|
"itemStackFull": "{{fullItemName}}の スタックが いっぱいです。\n代わりに {{itemName}}を 取得します。",
|
||||||
"eggHatching": "おや?",
|
"eggHatching": "おや?",
|
||||||
"ivScannerUseQuestion": "{{pokemonName}}を\nこたいちスキャナーで そうさする?",
|
"ivScannerUseQuestion": "{{pokemonName}}を\n個体値スキャナーで 操作しますか?",
|
||||||
"wildPokemonWithAffix": "やせいの {{pokemonName}}",
|
"wildPokemonWithAffix": "野生の {{pokemonName}}",
|
||||||
"foePokemonWithAffix": "あいての {{pokemonName}}",
|
"foePokemonWithAffix": "相手の {{pokemonName}}",
|
||||||
"useMove": "{{pokemonNameWithAffix}}の {{moveName}}!",
|
"useMove": "{{pokemonNameWithAffix}}の {{moveName}}!",
|
||||||
"drainMessage": "{{pokemonName}}から\nたいりょくを すいとった!",
|
"drainMessage": "{{pokemonName}}から\n体力を 吸い取った!",
|
||||||
"regainHealth": "{{pokemonName}}は\nたいりょくを かいふくした!",
|
"regainHealth": "{{pokemonName}}は\n体力を 回復した!",
|
||||||
"stealEatBerry": "{{pokemonName}}は {{targetName}}の\n{{berryName}}を うばって たべた!",
|
"stealEatBerry": "{{pokemonName}}は {{targetName}}の\n{{berryName}}を うばって 食べた!",
|
||||||
"ppHealBerry": "{{pokemonNameWithAffix}}は {{berryName}}で {{moveName}}のPPを かいふくした!",
|
"ppHealBerry": "{{pokemonNameWithAffix}}は {{berryName}}で {{moveName}}のPPを 回復した!",
|
||||||
"hpHealBerry": "{{pokemonNameWithAffix}}は {{berryName}}で たいりょくを かいふくした!",
|
"hpHealBerry": "{{pokemonNameWithAffix}}は {{berryName}}で 体力を 回復した!",
|
||||||
"fainted": "{{pokemonNameWithAffix}}は たおれた!",
|
"fainted": "{{pokemonNameWithAffix}}は 倒れた!",
|
||||||
"statsAnd": "と ",
|
"statsAnd": "と ",
|
||||||
"stats": "のうりょく",
|
"stats": "能力",
|
||||||
"statRose_one": "{{pokemonNameWithAffix}}の {{stats}}が あがった!",
|
"statRose_one": "{{pokemonNameWithAffix}}の {{stats}}が 上がった!",
|
||||||
"statRose_other": "{{pokemonNameWithAffix}}の {{stats}}が あがった!",
|
"statRose_other": "{{pokemonNameWithAffix}}の {{stats}}が 上がった!",
|
||||||
"statSharplyRose_one": "{{pokemonNameWithAffix}}の {{stats}}が ぐーんと あがった!",
|
"statSharplyRose_one": "{{pokemonNameWithAffix}}の {{stats}}が ぐーんと 上がった!",
|
||||||
"statSharplyRose_other": "{{pokemonNameWithAffix}}の {{stats}}が ぐーんと あがった!",
|
"statSharplyRose_other": "{{pokemonNameWithAffix}}の {{stats}}が ぐーんと 上がった!",
|
||||||
"statRoseDrastically_one": "{{pokemonNameWithAffix}}の {{stats}}が ぐぐーんと あがった!",
|
"statRoseDrastically_one": "{{pokemonNameWithAffix}}の {{stats}}が ぐぐーんと 上がった!",
|
||||||
"statRoseDrastically_other": "{{pokemonNameWithAffix}}の {{stats}}が ぐぐーんと あがった!",
|
"statRoseDrastically_other": "{{pokemonNameWithAffix}}の {{stats}}が ぐぐーんと 上がった!",
|
||||||
"statWontGoAnyHigher_one": "{{pokemonNameWithAffix}}の {{stats}}が もう あがらない!",
|
"statWontGoAnyHigher_one": "{{pokemonNameWithAffix}}の {{stats}}が もう 上がらない!",
|
||||||
"statWontGoAnyHigher_other": "{{pokemonNameWithAffix}}の {{stats}}が もう あがらない!",
|
"statWontGoAnyHigher_other": "{{pokemonNameWithAffix}}の {{stats}}が もう 上がらない!",
|
||||||
"statFell_one": "{{pokemonNameWithAffix}}の {{stats}}が さがった!",
|
"statFell_one": "{{pokemonNameWithAffix}}の {{stats}}が 下がった!",
|
||||||
"statFell_other": "{{pokemonNameWithAffix}}の {{stats}}が さがった!",
|
"statFell_other": "{{pokemonNameWithAffix}}の {{stats}}が 下がった!",
|
||||||
"statHarshlyFell_one": "{{pokemonNameWithAffix}}の {{stats}}が がくっと さがった!",
|
"statHarshlyFell_one": "{{pokemonNameWithAffix}}の {{stats}}が がくっと 下がった!",
|
||||||
"statHarshlyFell_other": "{{pokemonNameWithAffix}}の {{stats}}が がくっと さがった!",
|
"statHarshlyFell_other": "{{pokemonNameWithAffix}}の {{stats}}が がくっと 下がった!",
|
||||||
"statSeverelyFell_one": "{{pokemonNameWithAffix}}の {{stats}}が がくーんと さがった!",
|
"statSeverelyFell_one": "{{pokemonNameWithAffix}}の {{stats}}が がくーんと 下がった!",
|
||||||
"statSeverelyFell_other": "{{pokemonNameWithAffix}}の {{stats}}が がくーんと さがった!",
|
"statSeverelyFell_other": "{{pokemonNameWithAffix}}の {{stats}}が がくーんと 下がった!",
|
||||||
"statWontGoAnyLower_one": "{{pokemonNameWithAffix}}の {{stats}}が もう さがらない!",
|
"statWontGoAnyLower_one": "{{pokemonNameWithAffix}}の {{stats}}が もう 下がらない!",
|
||||||
"statWontGoAnyLower_other": "{{pokemonNameWithAffix}}の {{stats}}が もう さがらない!",
|
"statWontGoAnyLower_other": "{{pokemonNameWithAffix}}の {{stats}}が もう 下がらない!",
|
||||||
"transformedIntoType": "{{pokemonName}}は\n{{type}}タイプに へんしんした!",
|
"transformedIntoType": "{{pokemonName}}は\n{{type}}タイプに 変身した!",
|
||||||
"retryBattle": "このせんとうの はじまりから やりなおす?",
|
"retryBattle": "このバトルの 始まりから やり直しますか?",
|
||||||
"unlockedSomething": "{{unlockedThing}}\nを アンロックした!",
|
"unlockedSomething": "{{unlockedThing}}\nを アンロックした!",
|
||||||
"congratulations": "おめでとうございます!!",
|
"congratulations": "おめでとうございます!!",
|
||||||
"beatModeFirstTime": "はじめて {{speciesName}}が {{gameMode}}モードを クリアした!\n{{newModifier}}を てにいれた!",
|
"beatModeFirstTime": "初めて {{speciesName}}が {{gameMode}}モードを クリアした!\n{{newModifier}}を 手に入れた!",
|
||||||
"ppReduced": "{{targetName}}の {{moveName}}を {{reduction}}けずった!",
|
"ppReduced": "{{targetName}}の {{moveName}}を {{reduction}}削った!",
|
||||||
"battlerTagsRechargingLapse": "{{pokemonNameWithAffix}}は こうげきの はんどうで うごけない!",
|
|
||||||
"battlerTagsTrappedOnAdd": "{{pokemonNameWithAffix}}は もう にげられない!",
|
|
||||||
"battlerTagsTrappedOnRemove": "{{pokemonNameWithAffix}}は\n{{moveName}}の こうかが とけた!",
|
|
||||||
"battlerTagsFlinchedLapse": "{{pokemonNameWithAffix}}は ひるんで わざが だせない!",
|
|
||||||
"battlerTagsConfusedOnAdd": "{{pokemonNameWithAffix}}は こんらん した!",
|
|
||||||
"battlerTagsConfusedOnRemove": "{{pokemonNameWithAffix}}の こんらんが とけた!",
|
|
||||||
"battlerTagsConfusedOnOverlap": "{{pokemonNameWithAffix}}は すでに こんらん している!",
|
|
||||||
"battlerTagsConfusedLapse": "{{pokemonNameWithAffix}}は こんらん している!",
|
|
||||||
"battlerTagsConfusedLapseHurtItself": "わけも わからず じぶんを こうげきした!",
|
|
||||||
"battlerTagsDestinyBondLapseIsBoss": "{{pokemonNameWithAffix}}を みちづれに できない!",
|
|
||||||
"battlerTagsDestinyBondLapse": "{{pokemonNameWithAffix}}は あいてを みちづれに した!",
|
|
||||||
"battlerTagsInfatuatedOnAdd": "{{pokemonNameWithAffix}}は {{sourcePokemonName}}に メロメロに なった!",
|
|
||||||
"battlerTagsInfatuatedOnOverlap": "{{pokemonNameWithAffix}}は すでに メロメロだ!",
|
|
||||||
"battlerTagsInfatuatedLapse": "{{pokemonNameWithAffix}}は {{sourcePokemonName}}に メロメロだ!",
|
|
||||||
"battlerTagsInfatuatedLapseImmobilize": "{{pokemonNameWithAffix}}は\nメロメロで わざが だせなかった!",
|
|
||||||
"battlerTagsInfatuatedOnRemove": "{{pokemonNameWithAffix}}は メロメロじょうたいが なおった!",
|
|
||||||
"battlerTagsSeededOnAdd": "{{pokemonNameWithAffix}}に たねを うえつけた!",
|
|
||||||
"battlerTagsSeededLapse": "やどりぎが {{pokemonNameWithAffix}}の たいりょくを うばう!",
|
|
||||||
"battlerTagsSeededLapseShed": "{{pokemonNameWithAffix}}は ヘドロえきを すいとった!",
|
|
||||||
"battlerTagsNightmareOnAdd": "{{pokemonNameWithAffix}}は あくむを みはじめた!",
|
|
||||||
"battlerTagsNightmareOnOverlap": "{{pokemonNameWithAffix}}は すでに うなされている!",
|
|
||||||
"battlerTagsNightmareLapse": "{{pokemonNameWithAffix}}は あくむに うなされている!",
|
|
||||||
"battlerTagsEncoreOnAdd": "{{pokemonNameWithAffix}}は アンコールをうけた!",
|
|
||||||
"battlerTagsEncoreOnRemove": "{{pokemonNameWithAffix}}の アンコールじょうたいが とけた!",
|
|
||||||
"battlerTagsHelpingHandOnAdd": "{{pokemonNameWithAffix}}は {{pokemonName}}を\nてだすけする たいせいに はいった!",
|
|
||||||
"battlerTagsIngrainLapse": "{{pokemonNameWithAffix}}は ねから\n ようぶんを すいとった!",
|
|
||||||
"battlerTagsIngrainOnTrap": "{{pokemonNameWithAffix}}は ねを はった!",
|
|
||||||
"battlerTagsAquaRingOnAdd": "{{pokemonNameWithAffix}}は みずのリングを まとった!",
|
|
||||||
"battlerTagsAquaRingLapse": "{{pokemonName}}は {{moveName}}で\nたいりょくを かいふくした!",
|
|
||||||
"battlerTagsDrowsyOnAdd": "{{pokemonNameWithAffix}} の ねむけを さそった!",
|
|
||||||
"battlerTagsDamagingTrapLapse": "{{pokemonNameWithAffix}}は {{moveName}}の ダメージを うけた!",
|
|
||||||
"battlerTagsBindOnTrap": "{{pokemonNameWithAffix}}は {{sourcePokemonName}}に しめつけられた!",
|
|
||||||
"battlerTagsWrapOnTrap": "{{pokemonNameWithAffix}}は {{sourcePokemonName}}に まきつかれた!",
|
|
||||||
"battlerTagsVortexOnTrap": "{{pokemonNameWithAffix}}は うずの なかに とじこめられた!",
|
|
||||||
"battlerTagsClampOnTrap": "{{pokemonName}}は {{sourcePokemonNameWithAffix}}の\nからに はさまれた!",
|
|
||||||
"battlerTagsSandTombOnTrap": "{{pokemonNameWithAffix}}は {{moveName}}に とらわれた!",
|
|
||||||
"battlerTagsMagmaStormOnTrap": "{{pokemonNameWithAffix}}は マグマの\n うずに とじこめられた!",
|
|
||||||
"battlerTagsSnapTrapOnTrap": "{{pokemonNameWithAffix}}は トラバサミに とらわれた!",
|
|
||||||
"battlerTagsThunderCageOnTrap": "{{sourcePokemonNameWithAffix}}は {{pokemonNameWithAffix}}に とじこめられた!",
|
|
||||||
"battlerTagsInfestationOnTrap": "{{pokemonNameWithAffix}}は {{sourcePokemonNameWithAffix}}に まとわりつかれた!",
|
|
||||||
"battlerTagsProtectedOnAdd": "{{pokemonNameWithAffix}}は\nまもりの たいせいに はいった!",
|
|
||||||
"battlerTagsProtectedLapse": "{{pokemonNameWithAffix}}は\nこうげきから みを まもった!",
|
|
||||||
"battlerTagsEnduringOnAdd": "{{pokemonNameWithAffix}}は\nこらえる たいせいに はいった!",
|
|
||||||
"battlerTagsEnduringLapse": "{{pokemonNameWithAffix}}は\nこうげきを こらえた!",
|
|
||||||
"battlerTagsSturdyLapse": "{{pokemonNameWithAffix}}は\nこうげきを こらえた!",
|
|
||||||
"battlerTagsPerishSongLapse": "{{pokemonNameWithAffix}}の ほろびのカウントが {{turnCount}}になった!",
|
|
||||||
"battlerTagsCenterOfAttentionOnAdd": "{{pokemonNameWithAffix}}は ちゅうもくの まとになった!",
|
|
||||||
"battlerTagsTruantLapse": "{{pokemonNameWithAffix}}は なまけている!",
|
|
||||||
"battlerTagsSlowStartOnAdd": "{{pokemonNameWithAffix}}は ちょうしが あがらない!",
|
|
||||||
"battlerTagsSlowStartOnRemove": "{{pokemonNameWithAffix}}は ちょうしを とりもどした!",
|
|
||||||
"battlerTagsHighestStatBoostOnAdd": "{{pokemonNameWithAffix}}の {{statName}}が\nあがっている じょうたいに なった!",
|
|
||||||
"battlerTagsHighestStatBoostOnRemove": "{{pokemonNameWithAffix}}の {{abilityName}}の こうかが なくなった!",
|
|
||||||
"battlerTagsMagnetRisenOnAdd": "{{pokemonNameWithAffix}}は でんじりょくで うかびあがった!",
|
|
||||||
"battlerTagsMagnetRisenOnRemove": "{{pokemonNameWithAffix}}は でんじりょくが なくなった!",
|
|
||||||
"battlerTagsCritBoostOnAdd": "{{pokemonNameWithAffix}}は はりきっている!",
|
|
||||||
"battlerTagsCritBoostOnRemove": "{{pokemonNameWithAffix}}は おちついた。",
|
|
||||||
"battlerTagsSaltCuredOnAdd": "{{pokemonNameWithAffix}}は しおづけに なった!",
|
|
||||||
"battlerTagsSaltCuredLapse": "{{pokemonNameWithAffix}}は {{moveName}}の\n ダメージを うけている",
|
|
||||||
"battlerTagsCursedOnAdd": "{{pokemonNameWithAffix}}は じぶんの たいりょくを けずって\n{{pokemonName}}に のろいを かけた!",
|
|
||||||
"battlerTagsCursedLapse": "{{pokemonNameWithAffix}}は のろわれている!",
|
|
||||||
"battlerTagsStockpilingOnAdd": "{{pokemonNameWithAffix}}は {{stockpiledCount}}つ たくわえた!"
|
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -9,4 +9,65 @@ export const battlerTags: SimpleTranslationEntries = {
|
|||||||
"nightmareDesc": "nightmares",
|
"nightmareDesc": "nightmares",
|
||||||
"ingrainDesc": "roots",
|
"ingrainDesc": "roots",
|
||||||
"drowsyDesc": "drowsiness",
|
"drowsyDesc": "drowsiness",
|
||||||
|
"rechargingLapse": "{{pokemonNameWithAffix}}は 攻撃の 反動で 動けない!",
|
||||||
|
"trappedOnAdd": "{{pokemonNameWithAffix}}は もう 逃げられない!",
|
||||||
|
"trappedOnRemove": "{{pokemonNameWithAffix}}は\n{{moveName}}の 効果が 解けた!",
|
||||||
|
"flinchedLapse": "{{pokemonNameWithAffix}}は ひるんで 技が出せない!",
|
||||||
|
"confusedOnAdd": "{{pokemonNameWithAffix}}は 混乱 した!",
|
||||||
|
"confusedOnRemove": "{{pokemonNameWithAffix}}の 混乱が 解けた!",
|
||||||
|
"confusedOnOverlap": "{{pokemonNameWithAffix}}は すでに 混乱している!",
|
||||||
|
"confusedLapse": "{{pokemonNameWithAffix}}は 混乱している!",
|
||||||
|
"confusedLapseHurtItself": "わけも わからず 自分を 攻撃した!",
|
||||||
|
"destinyBondLapseIsBoss": "{{pokemonNameWithAffix}}を みちづれに できない!",
|
||||||
|
"destinyBondLapse": "{{pokemonNameWithAffix}}は 相手を みちづれに した!",
|
||||||
|
"infatuatedOnAdd": "{{pokemonNameWithAffix}}は {{sourcePokemonName}}に メロメロに なった!",
|
||||||
|
"infatuatedOnOverlap": "{{pokemonNameWithAffix}}は すでに メロメロだ!",
|
||||||
|
"infatuatedLapse": "{{pokemonNameWithAffix}}は {{sourcePokemonName}}に メロメロだ!",
|
||||||
|
"infatuatedLapseImmobilize": "{{pokemonNameWithAffix}}は\nメロメロで わざが 出せなかった!",
|
||||||
|
"infatuatedOnRemove": "{{pokemonNameWithAffix}}は メロメロ状態が 治った!",
|
||||||
|
"seededOnAdd": "{{pokemonNameWithAffix}}に 種を 植(う)えつけた!",
|
||||||
|
"seededLapse": "やどりぎが {{pokemonNameWithAffix}}の 体力を うばう!",
|
||||||
|
"seededLapseShed": "{{pokemonNameWithAffix}}は ヘドロえきを 吸い取った!",
|
||||||
|
"nightmareOnAdd": "{{pokemonNameWithAffix}}は あくむを 見始めた!",
|
||||||
|
"nightmareOnOverlap": "{{pokemonNameWithAffix}}は すでに うなされている!",
|
||||||
|
"nightmareLapse": "{{pokemonNameWithAffix}}は あくむに うなされている!",
|
||||||
|
"encoreOnAdd": "{{pokemonNameWithAffix}}は アンコールを 受けた!",
|
||||||
|
"encoreOnRemove": "{{pokemonNameWithAffix}}の アンコール状態が 解けた!",
|
||||||
|
"helpingHandOnAdd": "{{pokemonNameWithAffix}}は {{pokemonName}}を\nてだすけする 体制に 入った!",
|
||||||
|
"ingrainLapse": "{{pokemonNameWithAffix}}は 根から\n養分(ようぶん)を 吸い取った!",
|
||||||
|
"ingrainOnTrap": "{{pokemonNameWithAffix}}は 根を 張った!",
|
||||||
|
"aquaRingOnAdd": "{{pokemonNameWithAffix}}は 水のリングを まとった!",
|
||||||
|
"aquaRingLapse": "{{pokemonName}}は {{moveName}}で\n体力を 回復した!",
|
||||||
|
"drowsyOnAdd": "{{pokemonNameWithAffix}} の ねむけを 誘(さそ)った!",
|
||||||
|
"damagingTrapLapse": "{{pokemonNameWithAffix}}は {{moveName}}の ダメージを 受けた!",
|
||||||
|
"bindOnTrap": "{{pokemonNameWithAffix}}は {{sourcePokemonName}}に 締め付けられた!",
|
||||||
|
"wrapOnTrap": "{{pokemonNameWithAffix}}は {{sourcePokemonName}}に 巻き付かれた!",
|
||||||
|
"vortexOnTrap": "{{pokemonNameWithAffix}}は 渦(うず)の中に 閉じ込められた!",
|
||||||
|
"clampOnTrap": "{{pokemonName}}は {{sourcePokemonNameWithAffix}}の\nからに 挟まれた!",
|
||||||
|
"sandTombOnTrap": "{{pokemonNameWithAffix}}は {{moveName}}に 捕らわれた!",
|
||||||
|
"magmaStormOnTrap": "{{pokemonNameWithAffix}}は マグマの\n 渦(うず)に 閉じ込められた!",
|
||||||
|
"snapTrapOnTrap": "{{pokemonNameWithAffix}}は トラバサミに 捕らわれた!",
|
||||||
|
"thunderCageOnTrap": "{{sourcePokemonNameWithAffix}}は {{pokemonNameWithAffix}}に 閉じ込められた!",
|
||||||
|
"infestationOnTrap": "{{pokemonNameWithAffix}}は {{sourcePokemonNameWithAffix}}に まとわりつかれた!",
|
||||||
|
"protectedOnAdd": "{{pokemonNameWithAffix}}は\nまもりの 体制に 入った!",
|
||||||
|
"protectedLapse": "{{pokemonNameWithAffix}}は\n攻撃から 身を守った!",
|
||||||
|
"enduringOnAdd": "{{pokemonNameWithAffix}}は\nこらえる 体制に 入った!",
|
||||||
|
"enduringLapse": "{{pokemonNameWithAffix}}は\n攻撃を こらえた!",
|
||||||
|
"sturdyLapse": "{{pokemonNameWithAffix}}は\n攻撃を こらえた!",
|
||||||
|
"perishSongLapse": "{{pokemonNameWithAffix}}の ほろびのカウントが {{turnCount}}になった!",
|
||||||
|
"centerOfAttentionOnAdd": "{{pokemonNameWithAffix}}は 注目の 的になった!",
|
||||||
|
"truantLapse": "{{pokemonNameWithAffix}}は 怠(なま)けている!",
|
||||||
|
"slowStartOnAdd": "{{pokemonNameWithAffix}}は 調子が 上がらない!",
|
||||||
|
"slowStartOnRemove": "{{pokemonNameWithAffix}}は 調子を 取り戻した!",
|
||||||
|
"highestStatBoostOnAdd": "{{pokemonNameWithAffix}}の {{statName}}が\n上がっている 状態に なった!",
|
||||||
|
"highestStatBoostOnRemove": "{{pokemonNameWithAffix}}の {{abilityName}}の 効果が なくなった!",
|
||||||
|
"magnetRisenOnAdd": "{{pokemonNameWithAffix}}は 電磁力(でんじりょく)で 浮かび上がった!",
|
||||||
|
"magnetRisenOnRemove": "{{pokemonNameWithAffix}}は 電磁力(でんじりょく)が なくなった!",
|
||||||
|
"critBoostOnAdd": "{{pokemonNameWithAffix}}は 張り切っている!",
|
||||||
|
"critBoostOnRemove": "{{pokemonNameWithAffix}}は 落ち着いた。",
|
||||||
|
"saltCuredOnAdd": "{{pokemonNameWithAffix}}は しおづけに なった!",
|
||||||
|
"saltCuredLapse": "{{pokemonNameWithAffix}}は {{moveName}}の\n ダメージを 受けている",
|
||||||
|
"cursedOnAdd": "{{pokemonNameWithAffix}}は 自分の 体力を 削って\n{{pokemonName}}に のろいを かけた!",
|
||||||
|
"cursedLapse": "{{pokemonNameWithAffix}}は のろわれている!",
|
||||||
|
"stockpilingOnAdd": "{{pokemonNameWithAffix}}は {{stockpiledCount}}つ たくわえた!",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -1,21 +1,40 @@
|
|||||||
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
||||||
|
|
||||||
export const filterBar: SimpleTranslationEntries = {
|
export const filterBar: SimpleTranslationEntries = {
|
||||||
"genFilter": "Gen",
|
"genFilter": "世代",
|
||||||
"typeFilter": "Type",
|
"typeFilter": "タイプ",
|
||||||
"unlocksFilter": "Unlocks",
|
"caughtFilter": "捕獲",
|
||||||
"winFilter": "Win",
|
"unlocksFilter": "解放",
|
||||||
"sortFilter": "Sort",
|
"miscFilter": "その他",
|
||||||
"all": "All",
|
"sortFilter": "並べ替え",
|
||||||
"normal": "Normal",
|
"all": "すべて",
|
||||||
"uncaught": "Uncaught",
|
"normal": "非色違い",
|
||||||
"passiveUnlocked": "Passive Unlocked",
|
"uncaught": "未捕獲",
|
||||||
"passiveLocked": "Passive Locked",
|
"passive": "パッシブ",
|
||||||
"hasWon": "Yes",
|
"passiveUnlocked": "パッシブ - 解放済み",
|
||||||
"hasNotWon": "No",
|
"passiveLocked": "パッシブ - 未解放",
|
||||||
|
"passiveUnlockable": "パッシブ - 解放可能",
|
||||||
|
"costReduction": "ポイント削減",
|
||||||
|
"costReductionUnlocked": "ポイント削減 - 解放済み",
|
||||||
|
"costReductionLocked": "ポイント削減 - 未解放",
|
||||||
|
"costReductionUnlockable": "ポイント削減 - 解放可能",
|
||||||
|
"favorite": "お気に入り",
|
||||||
|
"isFavorite": "お気に入り - あり",
|
||||||
|
"notFavorite": "お気に入り - なし",
|
||||||
|
"ribbon": "リボン",
|
||||||
|
"hasWon": "リボン - あり",
|
||||||
|
"hasNotWon": "リボン - なし",
|
||||||
|
"hiddenAbility": "隠れ特性",
|
||||||
|
"hasHiddenAbility": "隠れ特性 - あり",
|
||||||
|
"noHiddenAbility": "隠れ特性 - なし",
|
||||||
|
"egg": "タマゴ",
|
||||||
|
"eggPurchasable": "タマゴ - 購入可能",
|
||||||
|
"pokerus": "ポケルス",
|
||||||
|
"hasPokerus": "ポケルス - あり",
|
||||||
|
"noPokerus": "ポケルス - なし",
|
||||||
"sortByNumber": "No.",
|
"sortByNumber": "No.",
|
||||||
"sortByCost": "Cost",
|
"sortByCost": "ポイント",
|
||||||
"sortByCandies": "Candy Count",
|
"sortByCandies": "飴の数",
|
||||||
"sortByIVs": "IVs",
|
"sortByIVs": "個体値",
|
||||||
"sortByName": "Name",
|
"sortByName": "名前",
|
||||||
};
|
};
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
||||||
|
|
||||||
export const modifier: SimpleTranslationEntries = {
|
export const modifier: SimpleTranslationEntries = {
|
||||||
"surviveDamageApply": "{{pokemonNameWithAffix}} hung on\nusing its {{typeName}}!",
|
"surviveDamageApply": "{{pokemonNameWithAffix}}は\n{{typeName}}で もちこたえた!",
|
||||||
"turnHealApply": "{{pokemonNameWithAffix}} restored a little HP using\nits {{typeName}}!",
|
"turnHealApply": "{{pokemonNameWithAffix}}は\n{{typeName}}で 少し 回復!",
|
||||||
"hitHealApply": "{{pokemonNameWithAffix}} restored a little HP using\nits {{typeName}}!",
|
"hitHealApply": "{{pokemonNameWithAffix}}は\n{{typeName}}で 少し 回復!",
|
||||||
"pokemonInstantReviveApply": "{{pokemonNameWithAffix}} was revived\nby its {{typeName}}!",
|
"pokemonInstantReviveApply": "{{pokemonNameWithAffix}}は\n{{typeName}}で 復活した!",
|
||||||
"pokemonResetNegativeStatStageApply": "{{pokemonNameWithAffix}}'s lowered stats were restored\nby its {{typeName}}!",
|
"pokemonResetNegativeStatStageApply": "{{pokemonNameWithAffix}}は {{typeName}}で\n下がった能力が 元に戻った!",
|
||||||
"moneyInterestApply": "You received interest of ₽{{moneyAmount}}\nfrom the {{typeName}}!",
|
"moneyInterestApply": "{{typeName}}から {{moneyAmount}}円 取得した!",
|
||||||
"turnHeldItemTransferApply": "{{pokemonNameWithAffix}}'s {{itemName}} was absorbed\nby {{pokemonName}}'s {{typeName}}!",
|
"turnHeldItemTransferApply": "{{pokemonName}}の {{typeName}}が\n{{pokemonNameWithAffix}}の {{itemName}}を 吸い取った!",
|
||||||
"contactHeldItemTransferApply": "{{pokemonNameWithAffix}}'s {{itemName}} was snatched\nby {{pokemonName}}'s {{typeName}}!",
|
"contactHeldItemTransferApply": "{{pokemonName}}の {{typeName}}が\n{{pokemonNameWithAffix}}の {{itemName}}を うばい取った!",
|
||||||
"enemyTurnHealApply": "{{pokemonNameWithAffix}}\nrestored some HP!",
|
"enemyTurnHealApply": "{{pokemonNameWithAffix}}は\n体力を 回復!",
|
||||||
"bypassSpeedChanceApply": "{{pokemonName}} can act faster than normal, thanks to its {{itemName}}!",
|
"bypassSpeedChanceApply": "{{pokemonName}}は {{itemName}}で\n行動が はやくなった!",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -56,6 +56,7 @@ export const moveTriggers: SimpleTranslationEntries = {
|
|||||||
"sacrificialFullRestore": "{{pokemonName}}の\nねがいごとが かなった!",
|
"sacrificialFullRestore": "{{pokemonName}}の\nねがいごとが かなった!",
|
||||||
"invertStats": "{{pokemonName}}の\nのうりょくへんかが ぎゃくてんした!",
|
"invertStats": "{{pokemonName}}の\nのうりょくへんかが ぎゃくてんした!",
|
||||||
"resetStats": "{{pokemonName}}の\nのうりょくへんかが もとにもどった!",
|
"resetStats": "{{pokemonName}}の\nのうりょくへんかが もとにもどった!",
|
||||||
|
"statEliminated": "All stat changes were eliminated!",
|
||||||
"faintCountdown": "{{pokemonName}}は\n{{turnCount}}ターンごに ほろびてしまう!",
|
"faintCountdown": "{{pokemonName}}は\n{{turnCount}}ターンごに ほろびてしまう!",
|
||||||
"copyType": "{{pokemonName}}は {{targetPokemonName}}と\n同じタイプに なった!",
|
"copyType": "{{pokemonName}}は {{targetPokemonName}}と\n同じタイプに なった!",
|
||||||
"suppressAbilities": "{{pokemonName}}の とくせいが きかなくなった!",
|
"suppressAbilities": "{{pokemonName}}の とくせいが きかなくなった!",
|
||||||
|
@ -13,6 +13,7 @@ export const battlePokemonForm: SimpleTranslationEntries = {
|
|||||||
"eternamaxChange": "{{preName}} Eternamaxed\ninto {{pokemonName}}!",
|
"eternamaxChange": "{{preName}} Eternamaxed\ninto {{pokemonName}}!",
|
||||||
"revertChange": "{{pokemonName}} reverted\nto its original form!",
|
"revertChange": "{{pokemonName}} reverted\nto its original form!",
|
||||||
"formChange": "{{preName}} changed form!",
|
"formChange": "{{preName}} changed form!",
|
||||||
|
"disguiseChange": "Its disguise served it as a decoy!",
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const pokemonForm: SimpleTranslationEntries = {
|
export const pokemonForm: SimpleTranslationEntries = {
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
||||||
|
|
||||||
export const saveSlotSelectUiHandler: SimpleTranslationEntries = {
|
export const saveSlotSelectUiHandler: SimpleTranslationEntries = {
|
||||||
"overwriteData": "せんたくしたスロットにデータをうわがきしますか?",
|
"overwriteData": "選択した スロットに データを 上書きします?",
|
||||||
"loading": "ローディング...",
|
"loading": "読込中…",
|
||||||
"wave": "Wave",
|
"wave": "波",//This needs to be preceded by 第[x],e.g.第1波、第248波
|
||||||
"lv": "Lv",
|
"lv": "Lv",
|
||||||
"empty": "なし",
|
"empty": "なし",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -6,44 +6,46 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
|||||||
* account interactions, descriptive text, etc.
|
* account interactions, descriptive text, etc.
|
||||||
*/
|
*/
|
||||||
export const starterSelectUiHandler: SimpleTranslationEntries = {
|
export const starterSelectUiHandler: SimpleTranslationEntries = {
|
||||||
"confirmStartTeam": "この じょうけんで チャレンジを しんこうしますか?",
|
"confirmStartTeam": "この条件で チャレンジを 始めますか?",
|
||||||
"confirmExit": "しゅうりょう しますか?",
|
"confirmExit": "終了しますか?",
|
||||||
"invalidParty": "This is not a valid starting party!",
|
"invalidParty": "手持ちは チャレンジの 条件で 認められない!",
|
||||||
"gen1": "1せだい",
|
"gen1": "1世代",
|
||||||
"gen2": "2せだい",
|
"gen2": "2世代",
|
||||||
"gen3": "3せだい",
|
"gen3": "3世代",
|
||||||
"gen4": "4せだい",
|
"gen4": "4世代",
|
||||||
"gen5": "5せだい",
|
"gen5": "5世代",
|
||||||
"gen6": "6せだい",
|
"gen6": "6世代",
|
||||||
"gen7": "7せだい",
|
"gen7": "7世代",
|
||||||
"gen8": "8せだい",
|
"gen8": "8世代",
|
||||||
"gen9": "9せだい",
|
"gen9": "9世代",
|
||||||
"growthRate": "EXPタイプ:",
|
"growthRate": "経験値タイプ:",
|
||||||
"ability": "とくせい:",
|
"ability": "特性:",
|
||||||
"passive": "パッシブ:",
|
"passive": "パッシブ:",
|
||||||
"nature": "せいかく:",
|
"nature": "性格:",
|
||||||
"eggMoves": "タマゴわざ",
|
"eggMoves": "タマゴ技",
|
||||||
"start": "始める",
|
"start": "始める",
|
||||||
"addToParty": "えらぶ",
|
"addToParty": "手持ちに入れる",
|
||||||
"toggleIVs": "個体値を ひょうじ",
|
"toggleIVs": "個体値を表示",
|
||||||
"manageMoves": "わざを ならびかえ",
|
"manageMoves": "技を並び替える",
|
||||||
"manageNature": "せいかくを ならびかえ",
|
"manageNature": "性格を変える",
|
||||||
"useCandies": "アメを つかう",
|
"addToFavorites": "お気に入りにする",
|
||||||
"selectNature": "せいかくをえらんでください",
|
"removeFromFavorites": "お気に入りから除く",
|
||||||
"selectMoveSwapOut": "交換する技を選択してください",
|
"useCandies": "飴を使う",
|
||||||
"selectMoveSwapWith": "交換先の技を選択してください",
|
"selectNature": "性格を選んでください。",
|
||||||
"unlockPassive": "パッシブを かいほうする",
|
"selectMoveSwapOut": "入れ替えたい技を選んでください。",
|
||||||
"reduceCost": "ポケモンの 必要ポイントを へらす",
|
"selectMoveSwapWith": "他の技と交換してください。",
|
||||||
"sameSpeciesEgg": "Buy an Egg",
|
"unlockPassive": "パッシブを開放",
|
||||||
|
"reduceCost": "ポイントを減らす",
|
||||||
|
"sameSpeciesEgg": "タマゴを買う",
|
||||||
"cycleShiny": ": 色違い変更",
|
"cycleShiny": ": 色違い変更",
|
||||||
"cycleForm": ": フォルム変更",
|
"cycleForm": ": フォルム変更",
|
||||||
"cycleGender": ": 性別変更",
|
"cycleGender": ": 性別変更",
|
||||||
"cycleAbility": ": 特性変更",
|
"cycleAbility": ": 特性変更",
|
||||||
"cycleNature": ": 性格変更",
|
"cycleNature": ": 性格変更",
|
||||||
"cycleVariant": ": 色変更",
|
"cycleVariant": ": 色変更",
|
||||||
"enablePassive": "パッシブ ゆうこう",
|
"enablePassive": "パッシブ - オン",
|
||||||
"disablePassive": "パッシブ むこう",
|
"disablePassive": "パッシブ - オフ",
|
||||||
"locked": "Locked",
|
"locked": "開放されていない",
|
||||||
"disabled": "Disabled",
|
"disabled": "無効",
|
||||||
"uncaught": "Uncaught"
|
"uncaught": "捕まっていない"
|
||||||
};
|
};
|
||||||
|
@ -2,10 +2,10 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
|||||||
|
|
||||||
export const voucher: SimpleTranslationEntries = {
|
export const voucher: SimpleTranslationEntries = {
|
||||||
"vouchers": "クーポン",
|
"vouchers": "クーポン",
|
||||||
"eggVoucher": "たまごクーポン",
|
"eggVoucher": "タマゴクーポン",
|
||||||
"eggVoucherPlus": "たまごクーポンプラス",
|
"eggVoucherPlus": "タマゴクーポン・プラス",
|
||||||
"eggVoucherPremium": "たまごクーポンプレミアム",
|
"eggVoucherPremium": "タマゴクーポン・プレミアム",
|
||||||
"eggVoucherGold": "たまごクーポンゴールド",
|
"eggVoucherGold": "タマゴクーポン・ゴールド",
|
||||||
"locked": "Locked",
|
"locked": "なし",
|
||||||
"defeatTrainer": "Defeat {{trainerName}}"
|
"defeatTrainer": "{{trainerName}}を 倒す"
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -4,16 +4,16 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"blockRecoilDamage" : "{{pokemonName}}[[는]] {{abilityName}} 때문에\n반동 데미지를 받지 않는다!",
|
"blockRecoilDamage" : "{{pokemonName}}[[는]] {{abilityName}} 때문에\n반동 데미지를 받지 않는다!",
|
||||||
"badDreams": "{{pokemonName}}[[는]]\n나이트메어 때문에 시달리고 있다!",
|
"badDreams": "{{pokemonName}}[[는]]\n나이트메어 때문에 시달리고 있다!",
|
||||||
"costar": "{{pokemonName}}[[는]] {{allyName}}의\n능력 변화를 복사했다!",
|
"costar": "{{pokemonName}}[[는]] {{allyName}}의\n능력 변화를 복사했다!",
|
||||||
"iceFaceAvoidedDamage": "{{pokemonName}}[[는]] {{abilityName}} 때문에\n데미지를 받지 않는다!",
|
"iceFaceAvoidedDamage": "{{pokemonNameWithAffix}}[[는]] {{abilityName}} 때문에\n데미지를 받지 않는다!",
|
||||||
"perishBody": "{{pokemonName}}의 {{abilityName}} 때문에\n양쪽 포켓몬 모두는 3턴 후에 쓰러져 버린다!",
|
"perishBody": "{{pokemonName}}의 {{abilityName}} 때문에\n양쪽 포켓몬 모두는 3턴 후에 쓰러져 버린다!",
|
||||||
"poisonHeal": "{{pokemonName}}[[는]] {{abilityName}}[[로]]인해\n조금 회복했다.",
|
"poisonHeal": "{{pokemonName}}[[는]] {{abilityName}}[[로]]인해\n조금 회복했다.",
|
||||||
"trace": "{{pokemonName}}[[는]] 상대 {{targetName}}의 \n{{abilityName}}[[를]] 트레이스했다!",
|
"trace": "{{pokemonName}}[[는]] 상대 {{targetName}}의 \n{{abilityName}}[[를]] 트레이스했다!",
|
||||||
"windPowerCharged": "{{pokemonName}}[[는]]\n{{moveName}}에 맞아 충전되었다!",
|
"windPowerCharged": "{{pokemonName}}[[는]]\n{{moveName}}에 맞아 충전되었다!",
|
||||||
"quickDraw": "{{pokemonName}}[[는]]\n퀵드로에 의해 행동이 빨라졌다!",
|
"quickDraw": "{{pokemonName}}[[는]]\n퀵드로에 의해 행동이 빨라졌다!",
|
||||||
|
"disguiseAvoidedDamage" : "{{pokemonNameWithAffix}}의 정체가 드러났다!",
|
||||||
"blockItemTheft": "{{pokemonNameWithAffix}}의 {{abilityName}}에 의해\n도구를 빼앗기지 않는다!",
|
"blockItemTheft": "{{pokemonNameWithAffix}}의 {{abilityName}}에 의해\n도구를 빼앗기지 않는다!",
|
||||||
"typeImmunityHeal": "{{pokemonNameWithAffix}}[[는]]\n{{abilityName}}[[로]] 체력이 회복되었다!",
|
"typeImmunityHeal": "{{pokemonNameWithAffix}}[[는]]\n{{abilityName}}[[로]] 체력이 회복되었다!",
|
||||||
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}}[[는]] {{abilityName}} 때문에\n데미지를 입지 않는다!",
|
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}}[[는]] {{abilityName}} 때문에\n데미지를 입지 않는다!",
|
||||||
"postDefendDisguise": "{{pokemonNameWithAffix}}의\n정체가 드러났다!",
|
|
||||||
"moveImmunity": "{{pokemonNameWithAffix}}에게는\n효과가 없는 것 같다...",
|
"moveImmunity": "{{pokemonNameWithAffix}}에게는\n효과가 없는 것 같다...",
|
||||||
"reverseDrain": "{{pokemonNameWithAffix}}[[는]]\n해감액을 흡수했다!",
|
"reverseDrain": "{{pokemonNameWithAffix}}[[는]]\n해감액을 흡수했다!",
|
||||||
"postDefendTypeChange": "{{pokemonNameWithAffix}}[[는]] {{abilityName}}[[로]] 인해\n{{typeName}}타입이 됐다!",
|
"postDefendTypeChange": "{{pokemonNameWithAffix}}[[는]] {{abilityName}}[[로]] 인해\n{{typeName}}타입이 됐다!",
|
||||||
|
@ -60,6 +60,7 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"turnEndHpRestore": "{{pokemonName}}의\n체력이 회복되었다!",
|
"turnEndHpRestore": "{{pokemonName}}의\n체력이 회복되었다!",
|
||||||
"hpIsFull": "그러나 {{pokemonName}}의\n체력이 가득 찬 상태다!",
|
"hpIsFull": "그러나 {{pokemonName}}의\n체력이 가득 찬 상태다!",
|
||||||
"skipItemQuestion": "아이템을 받지 않고 넘어가시겠습니까?",
|
"skipItemQuestion": "아이템을 받지 않고 넘어가시겠습니까?",
|
||||||
|
"itemStackFull": "{{fullItemName}}의 소지 한도에 도달했습니다.\n{{itemname}}[[를]] 대신 받습니다.",
|
||||||
"eggHatching": "어라…?",
|
"eggHatching": "어라…?",
|
||||||
"ivScannerUseQuestion": "{{pokemonName}}에게 개체값탐지기를 사용하시겠습니까?",
|
"ivScannerUseQuestion": "{{pokemonName}}에게 개체값탐지기를 사용하시겠습니까?",
|
||||||
"wildPokemonWithAffix": "야생 {{pokemonName}}",
|
"wildPokemonWithAffix": "야생 {{pokemonName}}",
|
||||||
@ -95,65 +96,4 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"congratulations": "축하합니다!",
|
"congratulations": "축하합니다!",
|
||||||
"beatModeFirstTime": "{{speciesName}}[[가]] {{gameMode}} 모드를 처음으로 클리어했다!\n{{newModifier}}[[를]] 손에 넣었다!",
|
"beatModeFirstTime": "{{speciesName}}[[가]] {{gameMode}} 모드를 처음으로 클리어했다!\n{{newModifier}}[[를]] 손에 넣었다!",
|
||||||
"ppReduced": "{{targetName}}의\n{{moveName}}[[를]] {{reduction}} 깎았다!",
|
"ppReduced": "{{targetName}}의\n{{moveName}}[[를]] {{reduction}} 깎았다!",
|
||||||
"battlerTagsRechargingLapse": "공격의 반동으로\n{{pokemonNameWithAffix}}[[는]] 움직일 수 없다!",
|
|
||||||
"battlerTagsTrappedOnAdd": "{{pokemonNameWithAffix}}[[는]]\n이제 도망칠 수 없다!",
|
|
||||||
"battlerTagsTrappedOnRemove": "{{pokemonNameWithAffix}}[[는]]\n{{moveName}}로부터 풀려났다!",
|
|
||||||
"battlerTagsFlinchedLapse": "{{pokemonNameWithAffix}}[[는]] 풀이 죽어\n움직일 수 없었다!",
|
|
||||||
"battlerTagsConfusedOnAdd": "{{pokemonNameWithAffix}}[[는]]\n혼란에 빠졌다!",
|
|
||||||
"battlerTagsConfusedOnRemove": "{{pokemonNameWithAffix}}의\n혼란이 풀렸다!",
|
|
||||||
"battlerTagsConfusedOnOverlap": "{{pokemonNameWithAffix}}[[는]]\n이미 혼란에 빠져 있다",
|
|
||||||
"battlerTagsConfusedLapse": "{{pokemonNameWithAffix}}[[는]]\n혼란에 빠져 있다!",
|
|
||||||
"battlerTagsConfusedLapseHurtItself": "영문도 모른채\n자신을 공격했다!",
|
|
||||||
"battlerTagsDestinyBondLapseIsBoss": "{{pokemonNameWithAffix}}[[는]]\n길동무의 영향을 받지 않는다.",
|
|
||||||
"battlerTagsDestinyBondLapse": "{{pokemonNameWithAffix}}[[는]] {{pokemonNameWithAffix2}}[[를]]\n길동무로 삼았다!",
|
|
||||||
"battlerTagsInfatuatedOnAdd": "{{pokemonNameWithAffix}}[[는]]\n헤롱헤롱해졌다!",
|
|
||||||
"battlerTagsInfatuatedOnOverlap": "{{pokemonNameWithAffix}}[[는]]\n이미 헤롱헤롱해있다!",
|
|
||||||
"battlerTagsInfatuatedLapse": "{{pokemonNameWithAffix}}[[는]]\n{{sourcePokemonName}}에게 헤롱헤롱해 있다!",
|
|
||||||
"battlerTagsInfatuatedLapseImmobilize": "{{pokemonNameWithAffix}}[[는]] 헤롱헤롱해서\n기술을 쓸 수 없었다!",
|
|
||||||
"battlerTagsInfatuatedOnRemove": "{{pokemonNameWithAffix}}[[는]]\n헤롱헤롱 상태에서 벗어났다.",
|
|
||||||
"battlerTagsSeededOnAdd": "{{pokemonNameWithAffix}}에게\n씨앗을 심었다!",
|
|
||||||
"battlerTagsSeededLapse": "씨뿌리기가 {{pokemonNameWithAffix}}의\n체력을 빼앗는다!",
|
|
||||||
"battlerTagsSeededLapseShed": "{{pokemonNameWithAffix}}[[는]]\n씨앗을 날려버렸다!",
|
|
||||||
"battlerTagsNightmareOnAdd": "{{pokemonNameWithAffix}}[[는]]\n악몽을 꾸기 시작했다!",
|
|
||||||
"battlerTagsNightmareOnOverlap": "{{pokemonNameWithAffix}}[[는]]\n이미 악몽을 꾸고 있다!",
|
|
||||||
"battlerTagsNightmareLapse": "{{pokemonNameWithAffix}}[[는]]\n악몽에 시달리고 있다!",
|
|
||||||
"battlerTagsEncoreOnAdd": "{{pokemonNameWithAffix}}[[는]]\n앙코르를 받았다!",
|
|
||||||
"battlerTagsEncoreOnRemove": "{{pokemonNameWithAffix}}의\n앙코르 상태가 풀렸다!",
|
|
||||||
"battlerTagsHelpingHandOnAdd": "{{pokemonNameWithAffix}}[[는]] {{pokemonName}}에게\n도우미가 되어주려 한다!",
|
|
||||||
"battlerTagsIngrainLapse": "{{pokemonNameWithAffix}}[[는]] 뿌리로부터\n양분을 흡수했다!",
|
|
||||||
"battlerTagsIngrainOnTrap": "{{pokemonNameWithAffix}}[[는]] 뿌리를 뻗었다!",
|
|
||||||
"battlerTagsAquaRingOnAdd": "{{pokemonNameWithAffix}}[[는]]\n물의 베일을 둘러썼다!",
|
|
||||||
"battlerTagsAquaRingLapse": "{{moveName}} 효과로\n{{pokemonName}}[[는]] HP를 회복했다!",
|
|
||||||
"battlerTagsDrowsyOnAdd": "{{pokemonNameWithAffix}}의\n졸음을 유도했다!",
|
|
||||||
"battlerTagsDamagingTrapLapse": "{{pokemonNameWithAffix}}[[는]] {{moveName}}의\n데미지를 입고 있다!",
|
|
||||||
"battlerTagsBindOnTrap": "{{pokemonNameWithAffix}}[[는]] {{sourcePokemonName}}에게\n{{moveName}}[[를]] 당했다!",
|
|
||||||
"battlerTagsWrapOnTrap": "{{pokemonNameWithAffix}}[[는]] {{sourcePokemonName}}에게\n휘감겼다!",
|
|
||||||
"battlerTagsVortexOnTrap": "{{pokemonNameWithAffix}}[[는]]\n소용돌이 속에 갇혔다!",
|
|
||||||
"battlerTagsClampOnTrap": "{{sourcePokemonNameWithAffix}}[[는]] {{pokemonName}}의\n껍질에 꼈다!",
|
|
||||||
"battlerTagsSandTombOnTrap": "{{pokemonNameWithAffix}}[[는]]\n{{moveName}}에 붙잡혔다!",
|
|
||||||
"battlerTagsMagmaStormOnTrap": "{{pokemonNameWithAffix}}[[는]]\n마그마의 소용돌이에 갇혔다!",
|
|
||||||
"battlerTagsSnapTrapOnTrap": "{{pokemonNameWithAffix}}[[는]]\n집게덫에 붙잡혔다!",
|
|
||||||
"battlerTagsThunderCageOnTrap": "{{sourcePokemonNameWithAffix}}[[는]]\n{{pokemonNameWithAffix}}를 가두었다!",
|
|
||||||
"battlerTagsInfestationOnTrap": "{{pokemonNameWithAffix}}[[는]]\n{{sourcePokemonNameWithAffix}}에게 엉겨 붙었다!",
|
|
||||||
"battlerTagsProtectedOnAdd": "{{pokemonNameWithAffix}}[[는]]\n방어 태세에 들어갔다!",
|
|
||||||
"battlerTagsProtectedLapse": "{{pokemonNameWithAffix}}[[는]]\n공격으로부터 몸을 지켰다!",
|
|
||||||
"battlerTagsEnduringOnAdd": "{{pokemonNameWithAffix}}[[는]]\n버티기 태세에 들어갔다!",
|
|
||||||
"battlerTagsEnduringLapse": "{{pokemonNameWithAffix}}[[는]]\n공격을 버텼다!",
|
|
||||||
"battlerTagsSturdyLapse": "{{pokemonNameWithAffix}}[[는]]\n공격을 버텼다!",
|
|
||||||
"battlerTagsPerishSongLapse": "{{pokemonNameWithAffix}}의 멸망의\n카운트가 {{turnCount}}[[가]] 되었다!",
|
|
||||||
"battlerTagsCenterOfAttentionOnAdd": "{{pokemonNameWithAffix}}[[는]]\n주목의 대상이 되었다!",
|
|
||||||
"battlerTagsTruantLapse": "{{pokemonNameWithAffix}}[[는]] 게으름을 피우고 있다!",
|
|
||||||
"battlerTagsSlowStartOnAdd": "{{pokemonNameWithAffix}}[[는]] 컨디션이\n좋아지지 않는다!",
|
|
||||||
"battlerTagsSlowStartOnRemove": "{{pokemonNameWithAffix}} 는 마침내\n컨디션을 회복했다!",
|
|
||||||
"battlerTagsHighestStatBoostOnAdd": "{{pokemonNameWithAffix}}의\n{{statName}}[[가]] 올라갔다!",
|
|
||||||
"battlerTagsHighestStatBoostOnRemove": "{{pokemonNameWithAffix}}의\n{{abilityName}} 효과가 사라졌다!",
|
|
||||||
"battlerTagsMagnetRisenOnAdd": "{{pokemonNameWithAffix}}[[는]]\n전자력으로 떠올랐다!",
|
|
||||||
"battlerTagsMagnetRisenOnRemove": "{{pokemonNameWithAffix}}의\n전자력이 없어졌다!",
|
|
||||||
"battlerTagsCritBoostOnAdd": "{{pokemonNameWithAffix}}[[는]]\n의욕이 넘치고 있다!",
|
|
||||||
"battlerTagsCritBoostOnRemove": "{{pokemonNameWithAffix}}[[는]] 평소로 돌아왔다.",
|
|
||||||
"battlerTagsSaltCuredOnAdd": "{{pokemonNameWithAffix}}[[는]]\n소금에 절여졌다!",
|
|
||||||
"battlerTagsSaltCuredLapse": "{{pokemonNameWithAffix}}[[는]] 소금절이의\n데미지를 입고 있다.",
|
|
||||||
"battlerTagsCursedOnAdd": "{{pokemonNameWithAffix}}[[는]] 자신의 체력을 깎아서\n{{pokemonName}}에게 저주를 걸었다!",
|
|
||||||
"battlerTagsCursedLapse": "{{pokemonNameWithAffix}}[[는]]\n저주받고 있다!",
|
|
||||||
"battlerTagsStockpilingOnAdd": "{{pokemonNameWithAffix}}[[는]]\n{{stockpiledCount}}개 비축했다!",
|
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -9,4 +9,65 @@ export const battlerTags: SimpleTranslationEntries = {
|
|||||||
"nightmareDesc": "악몽",
|
"nightmareDesc": "악몽",
|
||||||
"ingrainDesc": "뿌리",
|
"ingrainDesc": "뿌리",
|
||||||
"drowsyDesc": "졸음",
|
"drowsyDesc": "졸음",
|
||||||
|
"rechargingLapse": "공격의 반동으로\n{{pokemonNameWithAffix}}[[는]] 움직일 수 없다!",
|
||||||
|
"trappedOnAdd": "{{pokemonNameWithAffix}}[[는]]\n이제 도망칠 수 없다!",
|
||||||
|
"trappedOnRemove": "{{pokemonNameWithAffix}}[[는]]\n{{moveName}}로부터 풀려났다!",
|
||||||
|
"flinchedLapse": "{{pokemonNameWithAffix}}[[는]] 풀이 죽어\n움직일 수 없었다!",
|
||||||
|
"confusedOnAdd": "{{pokemonNameWithAffix}}[[는]]\n혼란에 빠졌다!",
|
||||||
|
"confusedOnRemove": "{{pokemonNameWithAffix}}의\n혼란이 풀렸다!",
|
||||||
|
"confusedOnOverlap": "{{pokemonNameWithAffix}}[[는]]\n이미 혼란에 빠져 있다",
|
||||||
|
"confusedLapse": "{{pokemonNameWithAffix}}[[는]]\n혼란에 빠져 있다!",
|
||||||
|
"confusedLapseHurtItself": "영문도 모른채\n자신을 공격했다!",
|
||||||
|
"destinyBondLapseIsBoss": "{{pokemonNameWithAffix}}[[는]]\n길동무의 영향을 받지 않는다.",
|
||||||
|
"destinyBondLapse": "{{pokemonNameWithAffix}}[[는]] {{pokemonNameWithAffix2}}[[를]]\n길동무로 삼았다!",
|
||||||
|
"infatuatedOnAdd": "{{pokemonNameWithAffix}}[[는]]\n헤롱헤롱해졌다!",
|
||||||
|
"infatuatedOnOverlap": "{{pokemonNameWithAffix}}[[는]]\n이미 헤롱헤롱해있다!",
|
||||||
|
"infatuatedLapse": "{{pokemonNameWithAffix}}[[는]]\n{{sourcePokemonName}}에게 헤롱헤롱해 있다!",
|
||||||
|
"infatuatedLapseImmobilize": "{{pokemonNameWithAffix}}[[는]] 헤롱헤롱해서\n기술을 쓸 수 없었다!",
|
||||||
|
"infatuatedOnRemove": "{{pokemonNameWithAffix}}[[는]]\n헤롱헤롱 상태에서 벗어났다.",
|
||||||
|
"seededOnAdd": "{{pokemonNameWithAffix}}에게\n씨앗을 심었다!",
|
||||||
|
"seededLapse": "씨뿌리기가 {{pokemonNameWithAffix}}의\n체력을 빼앗는다!",
|
||||||
|
"seededLapseShed": "{{pokemonNameWithAffix}}[[는]]\n씨앗을 날려버렸다!",
|
||||||
|
"nightmareOnAdd": "{{pokemonNameWithAffix}}[[는]]\n악몽을 꾸기 시작했다!",
|
||||||
|
"nightmareOnOverlap": "{{pokemonNameWithAffix}}[[는]]\n이미 악몽을 꾸고 있다!",
|
||||||
|
"nightmareLapse": "{{pokemonNameWithAffix}}[[는]]\n악몽에 시달리고 있다!",
|
||||||
|
"encoreOnAdd": "{{pokemonNameWithAffix}}[[는]]\n앙코르를 받았다!",
|
||||||
|
"encoreOnRemove": "{{pokemonNameWithAffix}}의\n앙코르 상태가 풀렸다!",
|
||||||
|
"helpingHandOnAdd": "{{pokemonNameWithAffix}}[[는]] {{pokemonName}}에게\n도우미가 되어주려 한다!",
|
||||||
|
"ingrainLapse": "{{pokemonNameWithAffix}}[[는]] 뿌리로부터\n양분을 흡수했다!",
|
||||||
|
"ingrainOnTrap": "{{pokemonNameWithAffix}}[[는]] 뿌리를 뻗었다!",
|
||||||
|
"aquaRingOnAdd": "{{pokemonNameWithAffix}}[[는]]\n물의 베일을 둘러썼다!",
|
||||||
|
"aquaRingLapse": "{{moveName}} 효과로\n{{pokemonName}}[[는]] HP를 회복했다!",
|
||||||
|
"drowsyOnAdd": "{{pokemonNameWithAffix}}의\n졸음을 유도했다!",
|
||||||
|
"damagingTrapLapse": "{{pokemonNameWithAffix}}[[는]] {{moveName}}의\n데미지를 입고 있다!",
|
||||||
|
"bindOnTrap": "{{pokemonNameWithAffix}}[[는]] {{sourcePokemonName}}에게\n{{moveName}}[[를]] 당했다!",
|
||||||
|
"wrapOnTrap": "{{pokemonNameWithAffix}}[[는]] {{sourcePokemonName}}에게\n휘감겼다!",
|
||||||
|
"vortexOnTrap": "{{pokemonNameWithAffix}}[[는]]\n소용돌이 속에 갇혔다!",
|
||||||
|
"clampOnTrap": "{{sourcePokemonNameWithAffix}}[[는]] {{pokemonName}}의\n껍질에 꼈다!",
|
||||||
|
"sandTombOnTrap": "{{pokemonNameWithAffix}}[[는]]\n{{moveName}}에 붙잡혔다!",
|
||||||
|
"magmaStormOnTrap": "{{pokemonNameWithAffix}}[[는]]\n마그마의 소용돌이에 갇혔다!",
|
||||||
|
"snapTrapOnTrap": "{{pokemonNameWithAffix}}[[는]]\n집게덫에 붙잡혔다!",
|
||||||
|
"thunderCageOnTrap": "{{sourcePokemonNameWithAffix}}[[는]]\n{{pokemonNameWithAffix}}를 가두었다!",
|
||||||
|
"infestationOnTrap": "{{pokemonNameWithAffix}}[[는]]\n{{sourcePokemonNameWithAffix}}에게 엉겨 붙었다!",
|
||||||
|
"protectedOnAdd": "{{pokemonNameWithAffix}}[[는]]\n방어 태세에 들어갔다!",
|
||||||
|
"protectedLapse": "{{pokemonNameWithAffix}}[[는]]\n공격으로부터 몸을 지켰다!",
|
||||||
|
"enduringOnAdd": "{{pokemonNameWithAffix}}[[는]]\n버티기 태세에 들어갔다!",
|
||||||
|
"enduringLapse": "{{pokemonNameWithAffix}}[[는]]\n공격을 버텼다!",
|
||||||
|
"sturdyLapse": "{{pokemonNameWithAffix}}[[는]]\n공격을 버텼다!",
|
||||||
|
"perishSongLapse": "{{pokemonNameWithAffix}}의 멸망의\n카운트가 {{turnCount}}[[가]] 되었다!",
|
||||||
|
"centerOfAttentionOnAdd": "{{pokemonNameWithAffix}}[[는]]\n주목의 대상이 되었다!",
|
||||||
|
"truantLapse": "{{pokemonNameWithAffix}}[[는]] 게으름을 피우고 있다!",
|
||||||
|
"slowStartOnAdd": "{{pokemonNameWithAffix}}[[는]] 컨디션이\n좋아지지 않는다!",
|
||||||
|
"slowStartOnRemove": "{{pokemonNameWithAffix}} 는 마침내\n컨디션을 회복했다!",
|
||||||
|
"highestStatBoostOnAdd": "{{pokemonNameWithAffix}}의\n{{statName}}[[가]] 올라갔다!",
|
||||||
|
"highestStatBoostOnRemove": "{{pokemonNameWithAffix}}의\n{{abilityName}} 효과가 사라졌다!",
|
||||||
|
"magnetRisenOnAdd": "{{pokemonNameWithAffix}}[[는]]\n전자력으로 떠올랐다!",
|
||||||
|
"magnetRisenOnRemove": "{{pokemonNameWithAffix}}의\n전자력이 없어졌다!",
|
||||||
|
"critBoostOnAdd": "{{pokemonNameWithAffix}}[[는]]\n의욕이 넘치고 있다!",
|
||||||
|
"critBoostOnRemove": "{{pokemonNameWithAffix}}[[는]] 평소로 돌아왔다.",
|
||||||
|
"saltCuredOnAdd": "{{pokemonNameWithAffix}}[[는]]\n소금에 절여졌다!",
|
||||||
|
"saltCuredLapse": "{{pokemonNameWithAffix}}[[는]] 소금절이의\n데미지를 입고 있다.",
|
||||||
|
"cursedOnAdd": "{{pokemonNameWithAffix}}[[는]] 자신의 체력을 깎아서\n{{pokemonName}}에게 저주를 걸었다!",
|
||||||
|
"cursedLapse": "{{pokemonNameWithAffix}}[[는]]\n저주받고 있다!",
|
||||||
|
"stockpilingOnAdd": "{{pokemonNameWithAffix}}[[는]]\n{{stockpiledCount}}개 비축했다!",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -13,15 +13,22 @@ export const filterBar: SimpleTranslationEntries = {
|
|||||||
"passive": "패시브",
|
"passive": "패시브",
|
||||||
"passiveUnlocked": "패시브 해금",
|
"passiveUnlocked": "패시브 해금",
|
||||||
"passiveLocked": "패시브 잠김",
|
"passiveLocked": "패시브 잠김",
|
||||||
"costReduction": "코스트 줄이기",
|
"passiveUnlockable": "패시브 해금 가능",
|
||||||
"costReductionUnlocked": "코스트 절감됨",
|
"costReduction": "코스트 감소",
|
||||||
"costReductionLocked": "코스트 절감 없음",
|
"costReductionUnlocked": "코스트 감소됨",
|
||||||
|
"costReductionLocked": "코스트 감소 없음",
|
||||||
|
"costReductionUnlockable": "코스트 감소 가능",
|
||||||
|
"favorite": "즐겨찾기",
|
||||||
|
"isFavorite": "즐겨찾기 등록됨",
|
||||||
|
"notFavorite": "즐겨찾기 제외됨",
|
||||||
"ribbon": "클리어 여부",
|
"ribbon": "클리어 여부",
|
||||||
"hasWon": "클리어 완료",
|
"hasWon": "클리어 완료",
|
||||||
"hasNotWon": "클리어 안함",
|
"hasNotWon": "클리어 안함",
|
||||||
"hiddenAbility": "숨겨진 특성",
|
"hiddenAbility": "숨겨진 특성",
|
||||||
"hasHiddenAbility": "숨겨진 특성 보유",
|
"hasHiddenAbility": "숨겨진 특성 보유",
|
||||||
"noHiddenAbility": "숨겨진 특성 없음",
|
"noHiddenAbility": "숨겨진 특성 없음",
|
||||||
|
"egg": "알",
|
||||||
|
"eggPurchasable": "알 구매 가능",
|
||||||
"pokerus": "포켓러스",
|
"pokerus": "포켓러스",
|
||||||
"hasPokerus": "포켓러스 감염",
|
"hasPokerus": "포켓러스 감염",
|
||||||
"noPokerus": "포켓러스 없음",
|
"noPokerus": "포켓러스 없음",
|
||||||
|
@ -56,6 +56,7 @@ export const moveTriggers: SimpleTranslationEntries = {
|
|||||||
"sacrificialFullRestore": "{{pokemonName}}의\n치유소원이 이루어졌다!",
|
"sacrificialFullRestore": "{{pokemonName}}의\n치유소원이 이루어졌다!",
|
||||||
"invertStats": "{{pokemonName}}[[는]]\n능력 변화가 뒤집혔다!",
|
"invertStats": "{{pokemonName}}[[는]]\n능력 변화가 뒤집혔다!",
|
||||||
"resetStats": "{{pokemonName}}의 모든 상태가\n원래대로 되돌아왔다!",
|
"resetStats": "{{pokemonName}}의 모든 상태가\n원래대로 되돌아왔다!",
|
||||||
|
"statEliminated": "모든 상태가 원래대로 되돌아왔다!",
|
||||||
"faintCountdown": "{{pokemonName}}[[는]]\n{{turnCount}}턴 후에 쓰러져 버린다!",
|
"faintCountdown": "{{pokemonName}}[[는]]\n{{turnCount}}턴 후에 쓰러져 버린다!",
|
||||||
"copyType": "{{pokemonName}}[[는]]\n{{targetPokemonName}}[[와]] 같은 타입이 되었다!",
|
"copyType": "{{pokemonName}}[[는]]\n{{targetPokemonName}}[[와]] 같은 타입이 되었다!",
|
||||||
"suppressAbilities": "{{pokemonName}}의\n특성이 효과를 발휘하지 못하게 되었다!",
|
"suppressAbilities": "{{pokemonName}}의\n특성이 효과를 발휘하지 못하게 되었다!",
|
||||||
|
@ -13,6 +13,7 @@ export const battlePokemonForm: SimpleTranslationEntries = {
|
|||||||
"eternamaxChange": "{{preName}}[[는]]\n{{pokemonName}}가 되었다!",
|
"eternamaxChange": "{{preName}}[[는]]\n{{pokemonName}}가 되었다!",
|
||||||
"revertChange": "{{pokemonName}}[[는]]\n원래 모습으로 되돌아왔다!",
|
"revertChange": "{{pokemonName}}[[는]]\n원래 모습으로 되돌아왔다!",
|
||||||
"formChange": "{{preName}}[[는]]\n다른 모습으로 변화했다!",
|
"formChange": "{{preName}}[[는]]\n다른 모습으로 변화했다!",
|
||||||
|
"disguiseChange": "탈이 대타가 되었다!",
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const pokemonForm: SimpleTranslationEntries = {
|
export const pokemonForm: SimpleTranslationEntries = {
|
||||||
|
@ -97,5 +97,6 @@ export const settings: SimpleTranslationEntries = {
|
|||||||
"controller": "컨트롤러",
|
"controller": "컨트롤러",
|
||||||
"gamepadSupport": "게임패드 지원",
|
"gamepadSupport": "게임패드 지원",
|
||||||
"showBgmBar": "BGM 제목 보여주기",
|
"showBgmBar": "BGM 제목 보여주기",
|
||||||
|
"moveTouchControls": "터치 컨트롤 이동",
|
||||||
"shopOverlayOpacity": "상점 오버레이 투명도"
|
"shopOverlayOpacity": "상점 오버레이 투명도"
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -28,6 +28,8 @@ export const starterSelectUiHandler: SimpleTranslationEntries = {
|
|||||||
"toggleIVs": "개체값 토글",
|
"toggleIVs": "개체값 토글",
|
||||||
"manageMoves": "기술 관리",
|
"manageMoves": "기술 관리",
|
||||||
"manageNature": "성격 관리",
|
"manageNature": "성격 관리",
|
||||||
|
"addToFavorites": "즐겨찾기에 추가",
|
||||||
|
"removeFromFavorites": "즐겨찾기에서 제외",
|
||||||
"useCandies": "사탕 사용",
|
"useCandies": "사탕 사용",
|
||||||
"selectNature": "교체할 성격을 선택해주세요.",
|
"selectNature": "교체할 성격을 선택해주세요.",
|
||||||
"selectMoveSwapOut": "교체할 기술을 선택해주세요.",
|
"selectMoveSwapOut": "교체할 기술을 선택해주세요.",
|
||||||
|
@ -4,16 +4,16 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"blockRecoilDamage": "{{abilityName}} de {{pokemonName}}\nprotegeu-o do dano reverso!",
|
"blockRecoilDamage": "{{abilityName}} de {{pokemonName}}\nprotegeu-o do dano reverso!",
|
||||||
"badDreams": "{{pokemonName}} está tendo pesadelos!",
|
"badDreams": "{{pokemonName}} está tendo pesadelos!",
|
||||||
"costar": "{{pokemonName}} copiou as mudanças\nde atributo de {{allyName}}!",
|
"costar": "{{pokemonName}} copiou as mudanças\nde atributo de {{allyName}}!",
|
||||||
"iceFaceAvoidedDamage": "{{pokemonName}} evitou\ndanos com sua {{abilityName}}!",
|
"iceFaceAvoidedDamage": "{{pokemonNameWithAffix}} evitou\ndanos com sua {{abilityName}}!",
|
||||||
"perishBody": "{{abilityName}} de {{pokemonName}}\nirá desmaiar ambos os Pokémon em 3 turnos!",
|
"perishBody": "{{abilityName}} de {{pokemonName}}\nirá desmaiar ambos os Pokémon em 3 turnos!",
|
||||||
"poisonHeal": "{{abilityName}} de {{pokemonName}}\nrestaurou seus PS um pouco!",
|
"poisonHeal": "{{abilityName}} de {{pokemonName}}\nrestaurou seus PS um pouco!",
|
||||||
"trace": "{{pokemonName}} copiou {{abilityName}}\nde {{targetName}}!",
|
"trace": "{{pokemonName}} copiou {{abilityName}}\nde {{targetName}}!",
|
||||||
"windPowerCharged": "Ser atingido por {{moveName}} carregou {{pokemonName}} com poder!",
|
"windPowerCharged": "Ser atingido por {{moveName}} carregou {{pokemonName}} com poder!",
|
||||||
"quickDraw": "{{pokemonName}} pode agir mais rápido que o normal\ngraças ao seu Quick Draw!",
|
"quickDraw": "{{pokemonName}} pode agir mais rápido que o normal\ngraças ao seu Quick Draw!",
|
||||||
|
"disguiseAvoidedDamage": "O disfarce de {{pokemonNameWithAffix}} foi descoberto!",
|
||||||
"blockItemTheft": "{{abilityName}} de {{pokemonNameWithAffix}}\nprevine o roubo de itens!",
|
"blockItemTheft": "{{abilityName}} de {{pokemonNameWithAffix}}\nprevine o roubo de itens!",
|
||||||
"typeImmunityHeal": "{{abilityName}} de {{pokemonNameWithAffix}}\nrestaurou um pouco de PS!",
|
"typeImmunityHeal": "{{abilityName}} de {{pokemonNameWithAffix}}\nrestaurou um pouco de PS!",
|
||||||
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} evitou dano\ncom {{abilityName}}!",
|
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}} evitou dano\ncom {{abilityName}}!",
|
||||||
"postDefendDisguise": "O disfarce de {{pokemonNameWithAffix}} foi descoberto!",
|
|
||||||
"moveImmunity": "Isso não afeta {{pokemonNameWithAffix}}!",
|
"moveImmunity": "Isso não afeta {{pokemonNameWithAffix}}!",
|
||||||
"reverseDrain": "{{pokemonNameWithAffix}} absorveu a gosma líquida!",
|
"reverseDrain": "{{pokemonNameWithAffix}} absorveu a gosma líquida!",
|
||||||
"postDefendTypeChange": "{{abilityName}} de {{pokemonNameWithAffix}}\ntransformou-o no tipo {{typeName}}!",
|
"postDefendTypeChange": "{{abilityName}} de {{pokemonNameWithAffix}}\ntransformou-o no tipo {{typeName}}!",
|
||||||
|
@ -171,7 +171,7 @@ export const PGMachv: AchievementTranslationEntries = {
|
|||||||
},
|
},
|
||||||
"UNEVOLVED_CLASSIC_VICTORY": {
|
"UNEVOLVED_CLASSIC_VICTORY": {
|
||||||
name: "Tire as Crianças da Sala",
|
name: "Tire as Crianças da Sala",
|
||||||
description: "Vença o jogo no Modo Clássico com pelo menos um membro da equipe não evoluído.."
|
description: "Vença o jogo no Modo Clássico com pelo menos um membro da equipe não evoluído."
|
||||||
},
|
},
|
||||||
|
|
||||||
"MONO_GEN_ONE": {
|
"MONO_GEN_ONE": {
|
||||||
@ -445,8 +445,8 @@ export const PGFachv: AchievementTranslationEntries = {
|
|||||||
description: "Vença o jogo no modo clássico",
|
description: "Vença o jogo no modo clássico",
|
||||||
},
|
},
|
||||||
"UNEVOLVED_CLASSIC_VICTORY": {
|
"UNEVOLVED_CLASSIC_VICTORY": {
|
||||||
name: "Bring Your Child To Work Day",
|
name: "Tire as Crianças da Sala",
|
||||||
description: "Beat the game in Classic Mode with at least one unevolved party member."
|
description: "Vença o jogo no Modo Clássico com pelo menos um membro da equipe não evoluído."
|
||||||
},
|
},
|
||||||
|
|
||||||
"MONO_GEN_ONE": {
|
"MONO_GEN_ONE": {
|
||||||
|
@ -60,6 +60,7 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"turnEndHpRestore": "Os PS de {{pokemonName}} foram restaurados!",
|
"turnEndHpRestore": "Os PS de {{pokemonName}} foram restaurados!",
|
||||||
"hpIsFull": "Os PS de {{pokemonName}}\njá estão cheios!",
|
"hpIsFull": "Os PS de {{pokemonName}}\njá estão cheios!",
|
||||||
"skipItemQuestion": "Tem certeza de que não quer escolher um item?",
|
"skipItemQuestion": "Tem certeza de que não quer escolher um item?",
|
||||||
|
"itemStackFull": "O estoque de {{fullItemName}} está cheio.\nVocê receberá {{itemName}} no lugar.",
|
||||||
"eggHatching": "Opa?",
|
"eggHatching": "Opa?",
|
||||||
"ivScannerUseQuestion": "Quer usar o Scanner de IVs em {{pokemonName}}?",
|
"ivScannerUseQuestion": "Quer usar o Scanner de IVs em {{pokemonName}}?",
|
||||||
"wildPokemonWithAffix": "{{pokemonName}} selvagem",
|
"wildPokemonWithAffix": "{{pokemonName}} selvagem",
|
||||||
@ -67,7 +68,7 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"useMove": "{{pokemonNameWithAffix}} usou {{moveName}}!",
|
"useMove": "{{pokemonNameWithAffix}} usou {{moveName}}!",
|
||||||
"drainMessage": "{{pokemonName}} teve sua\nenergia drenada!",
|
"drainMessage": "{{pokemonName}} teve sua\nenergia drenada!",
|
||||||
"regainHealth": "{{pokemonName}} recuperou\npontos de saúde!",
|
"regainHealth": "{{pokemonName}} recuperou\npontos de saúde!",
|
||||||
"stealEatBerry": "{{pokemonName}} stole and ate\n{{targetName}}'s {{berryName}}!",
|
"stealEatBerry": "{{pokemonName}} roubou e comeu\na {{berryName}} de {{targetName}}!",
|
||||||
"ppHealBerry": "{{pokemonNameWithAffix}} restaurou PP do movimento {{moveName}}\nusando sua {{berryName}}!",
|
"ppHealBerry": "{{pokemonNameWithAffix}} restaurou PP do movimento {{moveName}}\nusando sua {{berryName}}!",
|
||||||
"hpHealBerry": "{{pokemonNameWithAffix}} restarou sua saúde usando\nsua {{berryName}}!",
|
"hpHealBerry": "{{pokemonNameWithAffix}} restarou sua saúde usando\nsua {{berryName}}!",
|
||||||
"fainted": "{{pokemonNameWithAffix}} desmaiou!",
|
"fainted": "{{pokemonNameWithAffix}} desmaiou!",
|
||||||
@ -95,65 +96,4 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"unlockedSomething": "{{unlockedThing}}\nfoi desbloqueado.",
|
"unlockedSomething": "{{unlockedThing}}\nfoi desbloqueado.",
|
||||||
"congratulations": "Parabéns!",
|
"congratulations": "Parabéns!",
|
||||||
"beatModeFirstTime": "{{speciesName}} venceu o Modo {{gameMode}} pela primeira vez!\nVocê recebeu {{newModifier}}!",
|
"beatModeFirstTime": "{{speciesName}} venceu o Modo {{gameMode}} pela primeira vez!\nVocê recebeu {{newModifier}}!",
|
||||||
"battlerTagsRechargingLapse": "{{pokemonNameWithAffix}} precisa\nrecarregar!",
|
|
||||||
"battlerTagsTrappedOnAdd": "{{pokemonNameWithAffix}} não pode\nmais escapar!",
|
|
||||||
"battlerTagsTrappedOnRemove": "{{pokemonNameWithAffix}} foi liberto\nde {{moveName}}!",
|
|
||||||
"battlerTagsFlinchedLapse": "{{pokemonNameWithAffix}} hesitou!",
|
|
||||||
"battlerTagsConfusedOnAdd": "{{pokemonNameWithAffix}} ficou\nconfuso!",
|
|
||||||
"battlerTagsConfusedOnRemove": "{{pokemonNameWithAffix}} saiu\nde sua confusão!",
|
|
||||||
"battlerTagsConfusedOnOverlap": "{{pokemonNameWithAffix}} já\nestá confuso!",
|
|
||||||
"battlerTagsConfusedLapse": "{{pokemonNameWithAffix}} está\nconfuso!",
|
|
||||||
"battlerTagsConfusedLapseHurtItself": "Se machucou em sua\nconfusão!",
|
|
||||||
"battlerTagsDestinyBondLapseIsBoss": "{{pokemonNameWithAffix}} não é afetado\npelos efeitos de Destiny Bond.",
|
|
||||||
"battlerTagsDestinyBondLapse": "{{pokemonNameWithAffix}} levou\n{{pokemonNameWithAffix2}} junto com ele!",
|
|
||||||
"battlerTagsInfatuatedOnAdd": "{{pokemonNameWithAffix}} se apaixonou\npor {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsInfatuatedOnOverlap": "{{pokemonNameWithAffix}} já\nestá apaixonado!",
|
|
||||||
"battlerTagsInfatuatedLapse": "{{pokemonNameWithAffix}} está apaixonado\npor {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsInfatuatedLapseImmobilize": "{{pokemonNameWithAffix}} está\nimobilizado pelo amor!",
|
|
||||||
"battlerTagsInfatuatedOnRemove": "{{pokemonNameWithAffix}} superou\nsua paixão.",
|
|
||||||
"battlerTagsSeededOnAdd": "{{pokemonNameWithAffix}} foi semeado!",
|
|
||||||
"battlerTagsSeededLapse": "A saúde de {{pokemonNameWithAffix}}\nfoi sugada pelo Leech Seed!",
|
|
||||||
"battlerTagsSeededLapseShed": "O Leech Seed de{{pokemonNameWithAffix}}\nsugou todo o gotejamento!",
|
|
||||||
"battlerTagsNightmareOnAdd": "{{pokemonNameWithAffix}} começou\na ter um Nightmare!",
|
|
||||||
"battlerTagsNightmareOnOverlap": "{{pokemonNameWithAffix}} já\nestá preso em um Nightmare!",
|
|
||||||
"battlerTagsNightmareLapse": "{{pokemonNameWithAffix}} está preso\nem um Nightmare!",
|
|
||||||
"battlerTagsEncoreOnAdd": "{{pokemonNameWithAffix}} ganhou\num Encore!",
|
|
||||||
"battlerTagsEncoreOnRemove": "O Encore de {{pokemonNameWithAffix}}\nacabou!",
|
|
||||||
"battlerTagsHelpingHandOnAdd": "{{pokemonNameWithAffix}} está pronto para\najudar {{pokemonName}}!",
|
|
||||||
"battlerTagsIngrainLapse": "{{pokemonNameWithAffix}} absorveu\nnutrientes com suas raízes!",
|
|
||||||
"battlerTagsIngrainOnTrap": "{{pokemonNameWithAffix}} plantou suas raízes!",
|
|
||||||
"battlerTagsAquaRingOnAdd": "{{pokemonNameWithAffix}} se cercou\ncom um véu de água!",
|
|
||||||
"battlerTagsAquaRingLapse": "{{moveName}} restaurou\nPS de {{pokemonName}}!",
|
|
||||||
"battlerTagsDrowsyOnAdd": "{{pokemonNameWithAffix}} ficou com sono!",
|
|
||||||
"battlerTagsDamagingTrapLapse": "{{pokemonNameWithAffix}} foi ferido\npelo {{moveName}}!",
|
|
||||||
"battlerTagsBindOnTrap": "{{pokemonNameWithAffix}} foi espremido\npelo {{moveName}} de {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsWrapOnTrap": "{{pokemonNameWithAffix}} foi enrolado\npor {{sourcePokemonName}}!",
|
|
||||||
"battlerTagsVortexOnTrap": "{{pokemonNameWithAffix}} ficou preso\nno vórtice!",
|
|
||||||
"battlerTagsClampOnTrap": "{{sourcePokemonNameWithAffix}} prendeu\n{{pokemonName}}!",
|
|
||||||
"battlerTagsSandTombOnTrap": "{{pokemonNameWithAffix}} foi preso\npor {{moveName}}!",
|
|
||||||
"battlerTagsMagmaStormOnTrap": "{{pokemonNameWithAffix}} foi preso\npor um redemoinho de magma!",
|
|
||||||
"battlerTagsSnapTrapOnTrap": "{{pokemonNameWithAffix}} foi preso\npor uma armadilha!",
|
|
||||||
"battlerTagsThunderCageOnTrap": "{{sourcePokemonNameWithAffix}} prendeu\n{{pokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsInfestationOnTrap": "{{pokemonNameWithAffix}} foi ferido por \numa infestação de {{sourcePokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsProtectedOnAdd": "{{pokemonNameWithAffix}}\nse protegeu!",
|
|
||||||
"battlerTagsProtectedLapse": "{{pokemonNameWithAffix}}\nse protegeu!",
|
|
||||||
"battlerTagsEnduringOnAdd": "{{pokemonNameWithAffix}} está\npreparado!",
|
|
||||||
"battlerTagsEnduringLapse": "{{pokemonNameWithAffix}} suportou\no golpe!",
|
|
||||||
"battlerTagsSturdyLapse": "{{pokemonNameWithAffix}} suportou\no golpe!",
|
|
||||||
"battlerTagsPerishSongLapse": "O tempo restante de {{pokemonNameWithAffix}} diminuiu para {{turnCount}}.",
|
|
||||||
"battlerTagsCenterOfAttentionOnAdd": "{{pokemonNameWithAffix}} virou o centro\ndas atenções!",
|
|
||||||
"battlerTagsTruantLapse": "{{pokemonNameWithAffix}} está\nviajando na maionese!",
|
|
||||||
"battlerTagsSlowStartOnAdd": "{{pokemonNameWithAffix}} não\nestá preparado!",
|
|
||||||
"battlerTagsSlowStartOnRemove": "{{pokemonNameWithAffix}} finalmente\nconseguiu se recompor!",
|
|
||||||
"battlerTagsHighestStatBoostOnAdd": "O atributo de {{statName}} de\n{{pokemonNameWithAffix}} aumentou!",
|
|
||||||
"battlerTagsHighestStatBoostOnRemove": "Os efeitos do {{abilityName}} de\n{{pokemonNameWithAffix}} acabaram!",
|
|
||||||
"battlerTagsMagnetRisenOnAdd": "{{pokemonNameWithAffix}} levitou com eletromagnetismo!",
|
|
||||||
"battlerTagsMagnetRisenOnRemove": "O eletromagnetismo de {{pokemonNameWithAffix}} sumiu!",
|
|
||||||
"battlerTagsCritBoostOnAdd": "{{pokemonNameWithAffix}} está ficando\nbombado!",
|
|
||||||
"battlerTagsCritBoostOnRemove": "{{pokemonNameWithAffix}} relaxou.",
|
|
||||||
"battlerTagsSaltCuredOnAdd": "{{pokemonNameWithAffix}} está sendo curado com sal!",
|
|
||||||
"battlerTagsSaltCuredLapse": "{{pokemonNameWithAffix}} foi ferido pelo {{moveName}}!",
|
|
||||||
"battlerTagsCursedOnAdd": "{{pokemonNameWithAffix}} cortou seus PS pela metade e amaldiçoou {{pokemonName}}!",
|
|
||||||
"battlerTagsCursedLapse": "{{pokemonNameWithAffix}} foi ferido pelo Curse!",
|
|
||||||
"battlerTagsStockpilingOnAdd": "{{pokemonNameWithAffix}} estocou {{stockpiledCount}}!",
|
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -9,4 +9,65 @@ export const battlerTags: SimpleTranslationEntries = {
|
|||||||
"nightmareDesc": "os pesadelos",
|
"nightmareDesc": "os pesadelos",
|
||||||
"ingrainDesc": "o enraizamento",
|
"ingrainDesc": "o enraizamento",
|
||||||
"drowsyDesc": "a sonolência",
|
"drowsyDesc": "a sonolência",
|
||||||
|
"rechargingLapse": "{{pokemonNameWithAffix}} precisa\nrecarregar!",
|
||||||
|
"trappedOnAdd": "{{pokemonNameWithAffix}} não pode\nmais escapar!",
|
||||||
|
"trappedOnRemove": "{{pokemonNameWithAffix}} foi liberto\nde {{moveName}}!",
|
||||||
|
"flinchedLapse": "{{pokemonNameWithAffix}} hesitou!",
|
||||||
|
"confusedOnAdd": "{{pokemonNameWithAffix}} ficou\nconfuso!",
|
||||||
|
"confusedOnRemove": "{{pokemonNameWithAffix}} saiu\nde sua confusão!",
|
||||||
|
"confusedOnOverlap": "{{pokemonNameWithAffix}} já\nestá confuso!",
|
||||||
|
"confusedLapse": "{{pokemonNameWithAffix}} está\nconfuso!",
|
||||||
|
"confusedLapseHurtItself": "Se machucou em sua\nconfusão!",
|
||||||
|
"destinyBondLapseIsBoss": "{{pokemonNameWithAffix}} não é afetado\npelos efeitos de Destiny Bond.",
|
||||||
|
"destinyBondLapse": "{{pokemonNameWithAffix}} levou\n{{pokemonNameWithAffix2}} junto com ele!",
|
||||||
|
"infatuatedOnAdd": "{{pokemonNameWithAffix}} se apaixonou\npor {{sourcePokemonName}}!",
|
||||||
|
"infatuatedOnOverlap": "{{pokemonNameWithAffix}} já\nestá apaixonado!",
|
||||||
|
"infatuatedLapse": "{{pokemonNameWithAffix}} está apaixonado\npor {{sourcePokemonName}}!",
|
||||||
|
"infatuatedLapseImmobilize": "{{pokemonNameWithAffix}} está\nimobilizado pelo amor!",
|
||||||
|
"infatuatedOnRemove": "{{pokemonNameWithAffix}} superou\nsua paixão.",
|
||||||
|
"seededOnAdd": "{{pokemonNameWithAffix}} foi semeado!",
|
||||||
|
"seededLapse": "A saúde de {{pokemonNameWithAffix}}\nfoi sugada pelo Leech Seed!",
|
||||||
|
"seededLapseShed": "O Leech Seed de{{pokemonNameWithAffix}}\nsugou todo o gotejamento!",
|
||||||
|
"nightmareOnAdd": "{{pokemonNameWithAffix}} começou\na ter um Nightmare!",
|
||||||
|
"nightmareOnOverlap": "{{pokemonNameWithAffix}} já\nestá preso em um Nightmare!",
|
||||||
|
"nightmareLapse": "{{pokemonNameWithAffix}} está preso\nem um Nightmare!",
|
||||||
|
"encoreOnAdd": "{{pokemonNameWithAffix}} ganhou\num Encore!",
|
||||||
|
"encoreOnRemove": "O Encore de {{pokemonNameWithAffix}}\nacabou!",
|
||||||
|
"helpingHandOnAdd": "{{pokemonNameWithAffix}} está pronto para\najudar {{pokemonName}}!",
|
||||||
|
"ingrainLapse": "{{pokemonNameWithAffix}} absorveu\nnutrientes com suas raízes!",
|
||||||
|
"ingrainOnTrap": "{{pokemonNameWithAffix}} plantou suas raízes!",
|
||||||
|
"aquaRingOnAdd": "{{pokemonNameWithAffix}} se cercou\ncom um véu de água!",
|
||||||
|
"aquaRingLapse": "{{moveName}} restaurou\nPS de {{pokemonName}}!",
|
||||||
|
"drowsyOnAdd": "{{pokemonNameWithAffix}} ficou com sono!",
|
||||||
|
"damagingTrapLapse": "{{pokemonNameWithAffix}} foi ferido\npelo {{moveName}}!",
|
||||||
|
"bindOnTrap": "{{pokemonNameWithAffix}} foi espremido\npelo {{moveName}} de {{sourcePokemonName}}!",
|
||||||
|
"wrapOnTrap": "{{pokemonNameWithAffix}} foi enrolado\npor {{sourcePokemonName}}!",
|
||||||
|
"vortexOnTrap": "{{pokemonNameWithAffix}} ficou preso\nno vórtice!",
|
||||||
|
"clampOnTrap": "{{sourcePokemonNameWithAffix}} prendeu\n{{pokemonName}}!",
|
||||||
|
"sandTombOnTrap": "{{pokemonNameWithAffix}} foi preso\npor {{moveName}}!",
|
||||||
|
"magmaStormOnTrap": "{{pokemonNameWithAffix}} foi preso\npor um redemoinho de magma!",
|
||||||
|
"snapTrapOnTrap": "{{pokemonNameWithAffix}} foi preso\npor uma armadilha!",
|
||||||
|
"thunderCageOnTrap": "{{sourcePokemonNameWithAffix}} prendeu\n{{pokemonNameWithAffix}}!",
|
||||||
|
"infestationOnTrap": "{{pokemonNameWithAffix}} foi ferido por \numa infestação de {{sourcePokemonNameWithAffix}}!",
|
||||||
|
"protectedOnAdd": "{{pokemonNameWithAffix}}\nse protegeu!",
|
||||||
|
"protectedLapse": "{{pokemonNameWithAffix}}\nse protegeu!",
|
||||||
|
"enduringOnAdd": "{{pokemonNameWithAffix}} está\npreparado!",
|
||||||
|
"enduringLapse": "{{pokemonNameWithAffix}} suportou\no golpe!",
|
||||||
|
"sturdyLapse": "{{pokemonNameWithAffix}} suportou\no golpe!",
|
||||||
|
"perishSongLapse": "O tempo restante de {{pokemonNameWithAffix}} diminuiu para {{turnCount}}.",
|
||||||
|
"centerOfAttentionOnAdd": "{{pokemonNameWithAffix}} virou o centro\ndas atenções!",
|
||||||
|
"truantLapse": "{{pokemonNameWithAffix}} está\nviajando na maionese!",
|
||||||
|
"slowStartOnAdd": "{{pokemonNameWithAffix}} não\nestá preparado!",
|
||||||
|
"slowStartOnRemove": "{{pokemonNameWithAffix}} finalmente\nconseguiu se recompor!",
|
||||||
|
"highestStatBoostOnAdd": "O atributo de {{statName}} de\n{{pokemonNameWithAffix}} aumentou!",
|
||||||
|
"highestStatBoostOnRemove": "Os efeitos do {{abilityName}} de\n{{pokemonNameWithAffix}} acabaram!",
|
||||||
|
"magnetRisenOnAdd": "{{pokemonNameWithAffix}} levitou com eletromagnetismo!",
|
||||||
|
"magnetRisenOnRemove": "O eletromagnetismo de {{pokemonNameWithAffix}} sumiu!",
|
||||||
|
"critBoostOnAdd": "{{pokemonNameWithAffix}} está ficando\nbombado!",
|
||||||
|
"critBoostOnRemove": "{{pokemonNameWithAffix}} relaxou.",
|
||||||
|
"saltCuredOnAdd": "{{pokemonNameWithAffix}} está sendo curado com sal!",
|
||||||
|
"saltCuredLapse": "{{pokemonNameWithAffix}} foi ferido pelo {{moveName}}!",
|
||||||
|
"cursedOnAdd": "{{pokemonNameWithAffix}} cortou seus PS pela metade e amaldiçoou {{pokemonName}}!",
|
||||||
|
"cursedLapse": "{{pokemonNameWithAffix}} foi ferido pelo Curse!",
|
||||||
|
"stockpilingOnAdd": "{{pokemonNameWithAffix}} estocou {{stockpiledCount}}!",
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -35,6 +35,7 @@ import { modifier } from "./modifier";
|
|||||||
import { modifierSelectUiHandler } from "./modifier-select-ui-handler";
|
import { modifierSelectUiHandler } from "./modifier-select-ui-handler";
|
||||||
import { modifierType } from "./modifier-type";
|
import { modifierType } from "./modifier-type";
|
||||||
import { move } from "./move";
|
import { move } from "./move";
|
||||||
|
import { moveTriggers } from "./move-trigger";
|
||||||
import { nature } from "./nature";
|
import { nature } from "./nature";
|
||||||
import { partyUiHandler } from "./party-ui-handler";
|
import { partyUiHandler } from "./party-ui-handler";
|
||||||
import { pokeball } from "./pokeball";
|
import { pokeball } from "./pokeball";
|
||||||
@ -53,7 +54,6 @@ import { titles, trainerClasses, trainerNames } from "./trainers";
|
|||||||
import { tutorial } from "./tutorial";
|
import { tutorial } from "./tutorial";
|
||||||
import { voucher } from "./voucher";
|
import { voucher } from "./voucher";
|
||||||
import { terrain, weather } from "./weather";
|
import { terrain, weather } from "./weather";
|
||||||
import { moveTriggers } from "./move-trigger";
|
|
||||||
|
|
||||||
export const ptBrConfig = {
|
export const ptBrConfig = {
|
||||||
ability: ability,
|
ability: ability,
|
||||||
@ -90,9 +90,12 @@ export const ptBrConfig = {
|
|||||||
menu: menu,
|
menu: menu,
|
||||||
menuUiHandler: menuUiHandler,
|
menuUiHandler: menuUiHandler,
|
||||||
modifier: modifier,
|
modifier: modifier,
|
||||||
|
modifierSelectUiHandler: modifierSelectUiHandler,
|
||||||
modifierType: modifierType,
|
modifierType: modifierType,
|
||||||
move: move,
|
move: move,
|
||||||
|
moveTriggers: moveTriggers,
|
||||||
nature: nature,
|
nature: nature,
|
||||||
|
partyUiHandler: partyUiHandler,
|
||||||
pokeball: pokeball,
|
pokeball: pokeball,
|
||||||
pokemon: pokemon,
|
pokemon: pokemon,
|
||||||
pokemonForm: pokemonForm,
|
pokemonForm: pokemonForm,
|
||||||
@ -111,8 +114,5 @@ export const ptBrConfig = {
|
|||||||
trainerNames: trainerNames,
|
trainerNames: trainerNames,
|
||||||
tutorial: tutorial,
|
tutorial: tutorial,
|
||||||
voucher: voucher,
|
voucher: voucher,
|
||||||
weather: weather,
|
weather: weather
|
||||||
partyUiHandler: partyUiHandler,
|
|
||||||
modifierSelectUiHandler: modifierSelectUiHandler,
|
|
||||||
moveTriggers: moveTriggers
|
|
||||||
};
|
};
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -13,15 +13,22 @@ export const filterBar: SimpleTranslationEntries = {
|
|||||||
"passive": "Passiva",
|
"passive": "Passiva",
|
||||||
"passiveUnlocked": "Passiva Desbloqueada",
|
"passiveUnlocked": "Passiva Desbloqueada",
|
||||||
"passiveLocked": "Passiva Bloqueada",
|
"passiveLocked": "Passiva Bloqueada",
|
||||||
|
"passiveUnlockable": "Passiva - Pode Desbloquear",
|
||||||
"costReduction": "Redução de Custo",
|
"costReduction": "Redução de Custo",
|
||||||
"costReductionUnlocked": "Redução de Custo Desbloq.",
|
"costReductionUnlocked": "Redução de Custo Desbloq.",
|
||||||
"costReductionLocked": "Redução de Custo Bloq.",
|
"costReductionLocked": "Redução de Custo Bloqueada",
|
||||||
|
"costReductionUnlockable": "Redução de Custo Disponível",
|
||||||
|
"favorite": "Favoritos",
|
||||||
|
"isFavorite": "Favoritos - Sim",
|
||||||
|
"notFavorite": "Favoritos - Não",
|
||||||
"ribbon": "Fita",
|
"ribbon": "Fita",
|
||||||
"hasWon": "Fita - Sim",
|
"hasWon": "Fita - Sim",
|
||||||
"hasNotWon": "Fita - Não",
|
"hasNotWon": "Fita - Não",
|
||||||
"hiddenAbility": "Habilidade Oculta",
|
"hiddenAbility": "Habilidade Oculta",
|
||||||
"hasHiddenAbility": "Habilidade Oculta - Sim",
|
"hasHiddenAbility": "Habilidade Oculta - Sim",
|
||||||
"noHiddenAbility": "Habilidade Oculta - Não",
|
"noHiddenAbility": "Habilidade Oculta - Não",
|
||||||
|
"egg": "Ovo",
|
||||||
|
"eggPurchasable": "Ovo Comprável",
|
||||||
"pokerus": "Pokérus",
|
"pokerus": "Pokérus",
|
||||||
"hasPokerus": "Pokérus - Sim",
|
"hasPokerus": "Pokérus - Sim",
|
||||||
"noPokerus": "Pokérus - Não",
|
"noPokerus": "Pokérus - Não",
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
import { SimpleTranslationEntries } from "#app/interfaces/locales";
|
||||||
|
|
||||||
export const moveTriggers: SimpleTranslationEntries = {
|
export const moveTriggers: SimpleTranslationEntries = {
|
||||||
"hitWithRecoil" : "{{pokemonName}} foi ferido pelo dano reverso!",
|
"hitWithRecoil": "{{pokemonName}} foi ferido pelo dano reverso!",
|
||||||
"cutHpPowerUpMove": "{{pokemonName}} diminuiu seus PS para aumentar o poder do ataque!",
|
"cutHpPowerUpMove": "{{pokemonName}} diminuiu seus PS para aumentar o poder do ataque!",
|
||||||
"absorbedElectricity": "{{pokemonName}} absorveu eletricidade!",
|
"absorbedElectricity": "{{pokemonName}} absorveu eletricidade!",
|
||||||
"switchedStatChanges": "{{pokemonName}} trocou as mudanças de atributo com o alvo!",
|
"switchedStatChanges": "{{pokemonName}} trocou as mudanças de atributo com o alvo!",
|
||||||
"goingAllOutForAttack": "{{pokemonName}} está arriscando tudo nesse ataque!",
|
"goingAllOutForAttack": "{{pokemonName}} está arriscando tudo nesse ataque!",
|
||||||
"regainedHealth": "{{pokemonName}} recuperou/nsaúde!",
|
"regainedHealth": "{{pokemonName}} recuperou/nsaúde!",
|
||||||
"keptGoingAndCrashed": "{{pokemonName}} continuou/nindo e bateu!",
|
"keptGoingAndCrashed": "{{pokemonName}} errou o alvo/ne se arrebentou!",
|
||||||
"fled": "{{pokemonName}} fugiu!",
|
"fled": "{{pokemonName}} fugiu!",
|
||||||
"cannotBeSwitchedOut": "{{pokemonName}} não pode ser trocado!",
|
"cannotBeSwitchedOut": "{{pokemonName}} não pode ser trocado!",
|
||||||
"swappedAbilitiesWithTarget": "{{pokemonName}} trocou/nde habilidades com o alvo!",
|
"swappedAbilitiesWithTarget": "{{pokemonName}} trocou/nde habilidades com o alvo!",
|
||||||
@ -56,6 +56,7 @@ export const moveTriggers: SimpleTranslationEntries = {
|
|||||||
"sacrificialFullRestore": "O Healing Wish de {{pokemonName}}\nfoi concedido!",
|
"sacrificialFullRestore": "O Healing Wish de {{pokemonName}}\nfoi concedido!",
|
||||||
"invertStats": "As mudanças de atributo de {{pokemonName}}\nforam revertidas!",
|
"invertStats": "As mudanças de atributo de {{pokemonName}}\nforam revertidas!",
|
||||||
"resetStats": "As mudanças de atributo de {{pokemonName}}\nforam eliminadas!",
|
"resetStats": "As mudanças de atributo de {{pokemonName}}\nforam eliminadas!",
|
||||||
|
"statEliminated": "Todas as mudanças de atributo foram eliminadas!",
|
||||||
"faintCountdown": "{{pokemonName}}\nirá desmaiar em {{turnCount}} turnos.",
|
"faintCountdown": "{{pokemonName}}\nirá desmaiar em {{turnCount}} turnos.",
|
||||||
"copyType": "O tipo de {{pokemonName}}\nmudou para combinar com {{targetPokemonName}}!",
|
"copyType": "O tipo de {{pokemonName}}\nmudou para combinar com {{targetPokemonName}}!",
|
||||||
"suppressAbilities": "A habilidade de {{pokemonName}}\nfoi suprimida!",
|
"suppressAbilities": "A habilidade de {{pokemonName}}\nfoi suprimida!",
|
||||||
|
@ -13,6 +13,7 @@ export const battlePokemonForm: SimpleTranslationEntries = {
|
|||||||
"eternamaxChange": "{{preName}} Eternamaxou\npara {{pokemonName}}!",
|
"eternamaxChange": "{{preName}} Eternamaxou\npara {{pokemonName}}!",
|
||||||
"revertChange": "{{pokemonName}} voltou\npara sua forma original!",
|
"revertChange": "{{pokemonName}} voltou\npara sua forma original!",
|
||||||
"formChange": "{{preName}} mudou de forma!",
|
"formChange": "{{preName}} mudou de forma!",
|
||||||
|
"disguiseChange": "O seu disfarce serviu-lhe de isca!",
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
export const pokemonForm: SimpleTranslationEntries = {
|
export const pokemonForm: SimpleTranslationEntries = {
|
||||||
@ -180,15 +181,15 @@ export const pokemonForm: SimpleTranslationEntries = {
|
|||||||
"gimmighoulChest": "Baú",
|
"gimmighoulChest": "Baú",
|
||||||
"gimmighoulRoaming": "Perambulante",
|
"gimmighoulRoaming": "Perambulante",
|
||||||
"koraidonApexBuild": "Apex Build",
|
"koraidonApexBuild": "Apex Build",
|
||||||
"koraidonLimitedBuild":"Limited Build",
|
"koraidonLimitedBuild": "Limited Build",
|
||||||
"koraidonSprintingBuild":"Sprinting Build",
|
"koraidonSprintingBuild": "Sprinting Build",
|
||||||
"koraidonSwimmingBuild":"Swimming Build",
|
"koraidonSwimmingBuild": "Swimming Build",
|
||||||
"koraidonGlidingBuild":"Gliding Build",
|
"koraidonGlidingBuild": "Gliding Build",
|
||||||
"miraidonUltimateMode":"Ultimate Mode",
|
"miraidonUltimateMode": "Ultimate Mode",
|
||||||
"miraidonLowPowerMode":"Low Power Mode",
|
"miraidonLowPowerMode": "Low Power Mode",
|
||||||
"miraidonDriveMode":"Drive Mode",
|
"miraidonDriveMode": "Drive Mode",
|
||||||
"miraidonAquaticMode":"Aquatic Mode",
|
"miraidonAquaticMode": "Aquatic Mode",
|
||||||
"miraidonGlideMode":"Glide Mode",
|
"miraidonGlideMode": "Glide Mode",
|
||||||
"poltchageistCounterfeit": "Imitação",
|
"poltchageistCounterfeit": "Imitação",
|
||||||
"poltchageistArtisan": "Artesão",
|
"poltchageistArtisan": "Artesão",
|
||||||
"paldeaTaurosCombat": "Combate",
|
"paldeaTaurosCombat": "Combate",
|
||||||
|
@ -97,5 +97,6 @@ export const settings: SimpleTranslationEntries = {
|
|||||||
"controller": "Controle",
|
"controller": "Controle",
|
||||||
"gamepadSupport": "Suporte para Controle",
|
"gamepadSupport": "Suporte para Controle",
|
||||||
"showBgmBar": "Exibir Nomes das Músicas",
|
"showBgmBar": "Exibir Nomes das Músicas",
|
||||||
|
"moveTouchControls": "Move Touch Controls",
|
||||||
"shopOverlayOpacity": "Opacidade da Loja"
|
"shopOverlayOpacity": "Opacidade da Loja"
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -28,6 +28,8 @@ export const starterSelectUiHandler: SimpleTranslationEntries = {
|
|||||||
"toggleIVs": "Mostrar IVs",
|
"toggleIVs": "Mostrar IVs",
|
||||||
"manageMoves": "Mudar Movimentos",
|
"manageMoves": "Mudar Movimentos",
|
||||||
"manageNature": "Mudar Natureza",
|
"manageNature": "Mudar Natureza",
|
||||||
|
"addToFavorites": "Adicionar aos Favoritos",
|
||||||
|
"removeFromFavorites": "Remover dos Favoritos",
|
||||||
"useCandies": "Usar Doces",
|
"useCandies": "Usar Doces",
|
||||||
"selectNature": "Escolha uma natureza.",
|
"selectNature": "Escolha uma natureza.",
|
||||||
"selectMoveSwapOut": "Escolha um movimento para substituir.",
|
"selectMoveSwapOut": "Escolha um movimento para substituir.",
|
||||||
|
@ -20,18 +20,18 @@ export const titles: SimpleTranslationEntries = {
|
|||||||
"plasma_boss": "Chefe da Equipe Plasma",
|
"plasma_boss": "Chefe da Equipe Plasma",
|
||||||
"flare_boss": "Chefe da Equipe Flare",
|
"flare_boss": "Chefe da Equipe Flare",
|
||||||
|
|
||||||
"rocket_admin": "Team Rocket Admin",
|
"rocket_admin": "Admin da Equipe Rocket",
|
||||||
"rocket_admin_female": "Team Rocket Admin",
|
"rocket_admin_female": "Admin da Equipe Rocket",
|
||||||
"magma_admin": "Team Magma Admin",
|
"magma_admin": "Admin da Equipe Magma",
|
||||||
"magma_admin_female": "Team Magma Admin",
|
"magma_admin_female": "Admin da Equipe Magma",
|
||||||
"aqua_admin": "Team Aqua Admin",
|
"aqua_admin": "Admin da Equipe Aqua",
|
||||||
"aqua_admin_female": "Team Aqua Admin",
|
"aqua_admin_female": "Admin da Equipe Aqua",
|
||||||
"galactic_commander": "Team Galactic Commander",
|
"galactic_commander": "Comandante da Equipe Galáctica",
|
||||||
"galactic_commander_female": "Team Galactic Commander",
|
"galactic_commander_female": "Comandante da Equipe Galáctica",
|
||||||
"plasma_sage": "Team Plasma Sage",
|
"plasma_sage": "Sábio da Equipe Plasma",
|
||||||
"plasma_admin": "Team Plasma Admin",
|
"plasma_admin": "Admin da Equipe Plasma",
|
||||||
"flare_admin": "Team Flare Admin",
|
"flare_admin": "Admin da Equipe Flare",
|
||||||
"flare_admin_female": "Team Flare Admin",
|
"flare_admin_female": "Admin da Equipe Flare",
|
||||||
// Maybe if we add the evil teams we can add "Team Rocket" and "Team Aqua" etc. here as well as "Team Rocket Boss" and "Team Aqua Admin" etc.
|
// Maybe if we add the evil teams we can add "Team Rocket" and "Team Aqua" etc. here as well as "Team Rocket Boss" and "Team Aqua Admin" etc.
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
@ -138,24 +138,24 @@ export const trainerClasses: SimpleTranslationEntries = {
|
|||||||
"worker_female": "Operária",
|
"worker_female": "Operária",
|
||||||
"workers": "Operários",
|
"workers": "Operários",
|
||||||
"youngster": "Jovem",
|
"youngster": "Jovem",
|
||||||
"rocket_grunt": "Recruta da Equipe Rocket",
|
"rocket_grunt": "Capanga da Equipe Rocket",
|
||||||
"rocket_grunt_female": "Recruta da Equipe Rocket",
|
"rocket_grunt_female": "Capanga da Equipe Rocket",
|
||||||
"rocket_grunts": "Recrutas da Equipe Rocket",
|
"rocket_grunts": "Capangas da Equipe Rocket",
|
||||||
"magma_grunt": "Recruta da Equipe Magma",
|
"magma_grunt": "Capanga da Equipe Magma",
|
||||||
"magma_grunt_female": "Recruta da Equipe Magma",
|
"magma_grunt_female": "Capanga da Equipe Magma",
|
||||||
"magma_grunts": "Recrutas da Equipe Magma",
|
"magma_grunts": "Capangas da Equipe Magma",
|
||||||
"aqua_grunt": "Recruta da Equipe Aqua",
|
"aqua_grunt": "Capanga da Equipe Aqua",
|
||||||
"aqua_grunt_female": "Recruta da Equipe Aqua",
|
"aqua_grunt_female": "Capanga da Equipe Aqua",
|
||||||
"aqua_grunts": "Recrutas da Equipe Aqua",
|
"aqua_grunts": "Capangas da Equipe Aqua",
|
||||||
"galactic_grunt": "Recruta da Equipe Galáctica",
|
"galactic_grunt": "Capanga da Equipe Galáctica",
|
||||||
"galactic_grunt_female": "Recruta da Equipe Galáctica",
|
"galactic_grunt_female": "Capanga da Equipe Galáctica",
|
||||||
"galactic_grunts": "Recrutas da Equipe Galáctica",
|
"galactic_grunts": "Capangas da Equipe Galáctica",
|
||||||
"plasma_grunt": "Recruta da Equipe Plasma",
|
"plasma_grunt": "Capanga da Equipe Plasma",
|
||||||
"plasma_grunt_female": "Recruta da Equipe Plasma",
|
"plasma_grunt_female": "Capanga da Equipe Plasma",
|
||||||
"plasma_grunts": "Recrutas da Equipe Plasma",
|
"plasma_grunts": "Capangas da Equipe Plasma",
|
||||||
"flare_grunt": "Recruta da Equipe Flare",
|
"flare_grunt": "Capanga da Equipe Flare",
|
||||||
"flare_grunt_female": "Recruta da Equipe Flare",
|
"flare_grunt_female": "Capanga da Equipe Flare",
|
||||||
"flare_grunts": "Recrutas da Equipe Flare",
|
"flare_grunts": "Capangas da Equipe Flare",
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
// Names of special trainers like gym leaders, elite four, and the champion
|
// Names of special trainers like gym leaders, elite four, and the champion
|
||||||
|
@ -4,16 +4,16 @@ export const abilityTriggers: SimpleTranslationEntries = {
|
|||||||
"blockRecoilDamage" : "{{pokemonName}}的{{abilityName}}\n抵消了反作用力!",
|
"blockRecoilDamage" : "{{pokemonName}}的{{abilityName}}\n抵消了反作用力!",
|
||||||
"badDreams": "{{pokemonName}}被折磨着!",
|
"badDreams": "{{pokemonName}}被折磨着!",
|
||||||
"costar": "{{pokemonName}}复制了{{allyName}}的能力变化!",
|
"costar": "{{pokemonName}}复制了{{allyName}}的能力变化!",
|
||||||
"iceFaceAvoidedDamage": "{{pokemonName}}因为{{abilityName}}\n避免了伤害!",
|
"iceFaceAvoidedDamage": "{{pokemonNameWithAffix}}因为{{abilityName}}\n避免了伤害!",
|
||||||
"perishBody": "因为{{pokemonName}}的{{abilityName}}\n双方将在3回合后灭亡!",
|
"perishBody": "因为{{pokemonName}}的{{abilityName}}\n双方将在3回合后灭亡!",
|
||||||
"poisonHeal": "{{pokemonName}}因{{abilityName}}\n回复了少许HP!",
|
"poisonHeal": "{{pokemonName}}因{{abilityName}}\n回复了少许HP!",
|
||||||
"trace": "{{pokemonName}}复制了{{targetName}}的\n{{abilityName}}!",
|
"trace": "{{pokemonName}}复制了{{targetName}}的\n{{abilityName}}!",
|
||||||
"windPowerCharged": "受{{moveName}}的影响,{{pokemonName}}提升了能力!",
|
"windPowerCharged": "受{{moveName}}的影响,{{pokemonName}}提升了能力!",
|
||||||
"quickDraw":"因为速击效果发动,\n{{pokemonName}}比平常出招更快了!",
|
"quickDraw":"因为速击效果发动,\n{{pokemonName}}比平常出招更快了!",
|
||||||
|
"disguiseAvoidedDamage" : "{{pokemonNameWithAffix}}的画皮脱落了!",
|
||||||
"blockItemTheft": "{{pokemonNameWithAffix}}的{{abilityName}}\n阻止了对方夺取道具!",
|
"blockItemTheft": "{{pokemonNameWithAffix}}的{{abilityName}}\n阻止了对方夺取道具!",
|
||||||
"typeImmunityHeal": "{{pokemonNameWithAffix}}因{{abilityName}}\n回复了少许HP!",
|
"typeImmunityHeal": "{{pokemonNameWithAffix}}因{{abilityName}}\n回复了少许HP!",
|
||||||
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}}因{{abilityName}}\n避免了伤害!",
|
"nonSuperEffectiveImmunity": "{{pokemonNameWithAffix}}因{{abilityName}}\n避免了伤害!",
|
||||||
"postDefendDisguise": "{{pokemonNameWithAffix}}的\n画皮脱落了",
|
|
||||||
"moveImmunity": "对{{pokemonNameWithAffix}}没有效果!",
|
"moveImmunity": "对{{pokemonNameWithAffix}}没有效果!",
|
||||||
"reverseDrain": "{{pokemonNameWithAffix}}\n吸到了污泥浆!",
|
"reverseDrain": "{{pokemonNameWithAffix}}\n吸到了污泥浆!",
|
||||||
"postDefendTypeChange": "{{pokemonNameWithAffix}}因{{abilityName}}\n变成了{{typeName}}属性!",
|
"postDefendTypeChange": "{{pokemonNameWithAffix}}因{{abilityName}}\n变成了{{typeName}}属性!",
|
||||||
|
@ -60,6 +60,7 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"turnEndHpRestore": "{{pokemonName}}的体力恢复了。",
|
"turnEndHpRestore": "{{pokemonName}}的体力恢复了。",
|
||||||
"hpIsFull": "{{pokemonName}}的体力已满!",
|
"hpIsFull": "{{pokemonName}}的体力已满!",
|
||||||
"skipItemQuestion": "你确定要跳过拾取道具吗?",
|
"skipItemQuestion": "你确定要跳过拾取道具吗?",
|
||||||
|
"itemStackFull": "{{fullItemName}}持有数达到上限,\n你获得了{{itemName}}作为替代。",
|
||||||
"eggHatching": "咦?",
|
"eggHatching": "咦?",
|
||||||
"stealEatBerry": "{{pokemonName}}夺取并吃掉了\n{{targetName}}的{{berryName}}!",
|
"stealEatBerry": "{{pokemonName}}夺取并吃掉了\n{{targetName}}的{{berryName}}!",
|
||||||
"ppHealBerry": "{{pokemonNameWithAffix}}用{{berryName}}\n回复了{{moveName}}的PP!",
|
"ppHealBerry": "{{pokemonNameWithAffix}}用{{berryName}}\n回复了{{moveName}}的PP!",
|
||||||
@ -87,65 +88,4 @@ export const battle: SimpleTranslationEntries = {
|
|||||||
"unlockedSomething": "{{unlockedThing}}\n已解锁。",
|
"unlockedSomething": "{{unlockedThing}}\n已解锁。",
|
||||||
"congratulations": "恭喜!",
|
"congratulations": "恭喜!",
|
||||||
"beatModeFirstTime": "{{speciesName}}首次击败了{{gameMode}}!\n你获得了{{newModifier}}!",
|
"beatModeFirstTime": "{{speciesName}}首次击败了{{gameMode}}!\n你获得了{{newModifier}}!",
|
||||||
"battlerTagsRechargingLapse": "{{pokemonNameWithAffix}}\n因攻击的反作用力而无法动弹!",
|
|
||||||
"battlerTagsTrappedOnAdd": "{{pokemonNameWithAffix}}不能逃跑!",
|
|
||||||
"battlerTagsTrappedOnRemove": "{{pokemonNameWithAffix}}\n摆脱了{{moveName}}!",
|
|
||||||
"battlerTagsFlinchedLapse": "{{pokemonNameWithAffix}}\n畏缩了,无法使出招式!",
|
|
||||||
"battlerTagsConfusedOnAdd": "{{pokemonNameWithAffix}}\n混乱了!",
|
|
||||||
"battlerTagsConfusedOnRemove": "{{pokemonNameWithAffix}}\n的混乱解除了!",
|
|
||||||
"battlerTagsConfusedOnOverlap": "{{pokemonNameWithAffix}}\n已经混乱了。",
|
|
||||||
"battlerTagsConfusedLapse": "{{pokemonNameWithAffix}}\n正在混乱中!",
|
|
||||||
"battlerTagsConfusedLapseHurtItself": "不知所以地攻击了自己!",
|
|
||||||
"battlerTagsDestinyBondLapseIsBoss": "{{pokemonNameWithAffix}}\n不再受到同命的影响",
|
|
||||||
"battlerTagsDestinyBondLapse": "{{pokemonNameWithAffix}}\n和{{pokemonNameWithAffix2}}同归于尽了!",
|
|
||||||
"battlerTagsInfatuatedOnAdd": "{{pokemonNameWithAffix}}\n对{{sourcePokemonName}}着迷了!",
|
|
||||||
"battlerTagsInfatuatedOnOverlap": "{{pokemonNameWithAffix}}\n已经着迷了!",
|
|
||||||
"battlerTagsInfatuatedLapse": "{{pokemonNameWithAffix}}\n对{{sourcePokemonName}}着迷中!",
|
|
||||||
"battlerTagsInfatuatedLapseImmobilize": "{{pokemonNameWithAffix}}\n不会着迷!",
|
|
||||||
"battlerTagsInfatuatedOnRemove": "{{pokemonNameWithAffix}}\n治愈了着迷状态!",
|
|
||||||
"battlerTagsSeededOnAdd": "将种子种植在了\n{{pokemonNameWithAffix}}的身上!",
|
|
||||||
"battlerTagsSeededLapse": "{{pokemonNameWithAffix}}\n被寄生种子吸取了体力!",
|
|
||||||
"battlerTagsSeededLapseShed": "{{pokemonNameWithAffix}}\n吸到了污泥浆!",
|
|
||||||
"battlerTagsNightmareOnAdd": "{{pokemonNameWithAffix}}\n开始做恶梦了!",
|
|
||||||
"battlerTagsNightmareOnOverlap": "{{pokemonNameWithAffix}}\n已经被恶梦缠身!",
|
|
||||||
"battlerTagsNightmareLapse": "{{pokemonNameWithAffix}}\n正被恶梦缠身!",
|
|
||||||
"battlerTagsEncoreOnAdd": "{{pokemonNameWithAffix}}\n接受了再来一次!",
|
|
||||||
"battlerTagsEncoreOnRemove": "{{pokemonNameWithAffix}}\n的再来一次状态解除了!",
|
|
||||||
"battlerTagsHelpingHandOnAdd": "{{pokemonNameWithAffix}}\n摆出了帮助{{pokemonName}}的架势!",
|
|
||||||
"battlerTagsIngrainLapse": "{{pokemonNameWithAffix}}\n用扎根回复了体力!",
|
|
||||||
"battlerTagsIngrainOnTrap": "{{pokemonNameWithAffix}}\n扎根了!",
|
|
||||||
"battlerTagsAquaRingOnAdd": "{{pokemonNameWithAffix}}\n用水流环包裹了自己!",
|
|
||||||
"battlerTagsAquaRingLapse": "{{moveName}}回复了\n{{pokemonName}}的体力!",
|
|
||||||
"battlerTagsDrowsyOnAdd": "{{pokemonNameWithAffix}}\n产生睡意了!",
|
|
||||||
"battlerTagsDamagingTrapLapse": "{{pokemonNameWithAffix}}受到了\n{{moveName}}的伤害!",
|
|
||||||
"battlerTagsBindOnTrap": "{{pokemonNameWithAffix}}被\n{{sourcePokemonName}}的{{moveName}}紧紧束缚住了!",
|
|
||||||
"battlerTagsWrapOnTrap": "{{pokemonNameWithAffix}}被\n{{sourcePokemonName}}绑紧了!",
|
|
||||||
"battlerTagsVortexOnTrap": "{{pokemonNameWithAffix}}\n被困在了旋涡之中!",
|
|
||||||
"battlerTagsClampOnTrap": "{{sourcePokemonNameWithAffix}}用贝壳\n夹住了{{pokemonName}}!",
|
|
||||||
"battlerTagsSandTombOnTrap": "{{pokemonNameWithAffix}}\n被{{moveName}}困住了!",
|
|
||||||
"battlerTagsMagmaStormOnTrap": "{{pokemonNameWithAffix}}\n被困在了熔岩风暴之中!",
|
|
||||||
"battlerTagsSnapTrapOnTrap": "{{pokemonNameWithAffix}}\n被捕兽夹困住了!",
|
|
||||||
"battlerTagsThunderCageOnTrap": "{{sourcePokemonNameWithAffix}}困住了\n{{pokemonNameWithAffix}}!",
|
|
||||||
"battlerTagsInfestationOnTrap": "{{pokemonNameWithAffix}}受到了\n{{sourcePokemonNameWithAffix}}的死缠烂打!",
|
|
||||||
"battlerTagsProtectedOnAdd": "{{pokemonNameWithAffix}}\n摆出了防守的架势!",
|
|
||||||
"battlerTagsProtectedLapse": "{{pokemonNameWithAffix}}\n在攻击中保护了自己!",
|
|
||||||
"battlerTagsEnduringOnAdd": "{{pokemonNameWithAffix}}\n摆出了挺住攻击的架势!",
|
|
||||||
"battlerTagsEnduringLapse": "{{pokemonNameWithAffix}}\n挺住了攻击!",
|
|
||||||
"battlerTagsSturdyLapse": "{{pokemonNameWithAffix}}\n挺住了攻击!",
|
|
||||||
"battlerTagsPerishSongLapse": "{{pokemonNameWithAffix}}\n的灭亡计时变成{{turnCount}}了!",
|
|
||||||
"battlerTagsCenterOfAttentionOnAdd": "{{pokemonNameWithAffix}}\n变得万众瞩目了!",
|
|
||||||
"battlerTagsTruantLapse": "{{pokemonNameWithAffix}}\n正在偷懒!",
|
|
||||||
"battlerTagsSlowStartOnAdd": "{{pokemonNameWithAffix}}\n无法拿出平时的水平!",
|
|
||||||
"battlerTagsSlowStartOnRemove": "{{pokemonNameWithAffix}}\n恢复了平时的水平!",
|
|
||||||
"battlerTagsHighestStatBoostOnAdd": "{{pokemonNameWithAffix}}的\n{{statName}}提高了!",
|
|
||||||
"battlerTagsHighestStatBoostOnRemove": "{{pokemonNameWithAffix}}的\n{{abilityName}}效果解除了!",
|
|
||||||
"battlerTagsMagnetRisenOnAdd": "{{pokemonNameWithAffix}}\n因电磁力浮了起来!",
|
|
||||||
"battlerTagsMagnetRisenOnRemove": "{{pokemonNameWithAffix}}的\n电磁力消失了!",
|
|
||||||
"battlerTagsCritBoostOnAdd": "{{pokemonNameWithAffix}}\n现在干劲十足!",
|
|
||||||
"battlerTagsCritBoostOnRemove": "{{pokemonNameWithAffix}}\n如释重负似地放松了下来。",
|
|
||||||
"battlerTagsSaltCuredOnAdd": "{{pokemonNameWithAffix}}\n陷入了盐腌状态!",
|
|
||||||
"battlerTagsSaltCuredLapse": "{{pokemonNameWithAffix}}\n受到了{{moveName}}的伤害!",
|
|
||||||
"battlerTagsCursedOnAdd": "{{pokemonNameWithAffix}}削减了自己的体力,\n并诅咒了{{pokemonName}}!",
|
|
||||||
"battlerTagsCursedLapse": "{{pokemonNameWithAffix}}\n正受到诅咒!",
|
|
||||||
"battlerTagsStockpilingOnAdd": "{{pokemonNameWithAffix}}蓄力了{{stockpiledCount}}次!"
|
|
||||||
} as const;
|
} as const;
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user