Compare commits
19 Commits
65ea5486ff
...
1022c3360a
Author | SHA1 | Date |
---|---|---|
Jannik Tappert | 1022c3360a | |
Jannik Tappert | df432156d5 | |
Jannik Tappert | 867f769b80 | |
Jannik Tappert | 390e8e4c16 | |
Jannik Tappert | 286aead7da | |
Jannik Tappert | 03d0ccf897 | |
Jannik Tappert | 0968c31e04 | |
Jannik Tappert | f13606c9f3 | |
Jannik Tappert | c736400e91 | |
Jannik Tappert | eacfaf5a28 | |
Jannik Tappert | c05c5aa02c | |
Jannik Tappert | 2e2fb61b50 | |
EnochG1 | 8c3b26824d | |
EnochG1 | dd29eae9e9 | |
EnochG1 | 61e5089843 | |
Enoch | c839411beb | |
MokaStitcher | 51bb80cb66 | |
innerthunder | 605ae9e1c3 | |
Madmadness65 | 81ea1296b3 |
|
@ -56,7 +56,7 @@ Check out [Github Issues](https://github.com/pagefaultgames/pokerogue/issues) to
|
|||
- Pokémon Legends: Arceus
|
||||
- Pokémon Scarlet/Violet
|
||||
- Firel (Custom Ice Cave, Laboratory, Metropolis, Plains, Power Plant, Seabed, Space, and Volcano biome music)
|
||||
- Lmz (Custom Jungle biome music)
|
||||
- Lmz (Custom Ancient Ruins, Jungle, and Lake biome music)
|
||||
- Andr06 (Custom Slum and Sea biome music)
|
||||
|
||||
### 🎵 Sound Effects
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -3974,18 +3974,17 @@ export class StatusCategoryOnAllyAttr extends VariableMoveCategoryAttr {
|
|||
export class ShellSideArmCategoryAttr extends VariableMoveCategoryAttr {
|
||||
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
|
||||
const category = (args[0] as Utils.NumberHolder);
|
||||
const atkRatio = user.getEffectiveStat(Stat.ATK, target, move) / target.getEffectiveStat(Stat.DEF, user, move);
|
||||
const specialRatio = user.getEffectiveStat(Stat.SPATK, target, move) / target.getEffectiveStat(Stat.SPDEF, user, move);
|
||||
|
||||
// Shell Side Arm is much more complicated than it looks, this is a partial implementation to try to achieve something similar to the games
|
||||
if (atkRatio > specialRatio) {
|
||||
const predictedPhysDmg = target.getBaseDamage(user, move, MoveCategory.PHYSICAL, true, true);
|
||||
const predictedSpecDmg = target.getBaseDamage(user, move, MoveCategory.SPECIAL, true, true);
|
||||
|
||||
if (predictedPhysDmg > predictedSpecDmg) {
|
||||
category.value = MoveCategory.PHYSICAL;
|
||||
return true;
|
||||
} else if (atkRatio === specialRatio && user.randSeedInt(2) === 0) {
|
||||
} else if (predictedPhysDmg === predictedSpecDmg && user.randSeedInt(2) === 0) {
|
||||
category.value = MoveCategory.PHYSICAL;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -9106,7 +9105,7 @@ export function initMoves() {
|
|||
new AttackMove(Moves.SHELL_SIDE_ARM, Type.POISON, MoveCategory.SPECIAL, 90, 100, 10, 20, 0, 8)
|
||||
.attr(ShellSideArmCategoryAttr)
|
||||
.attr(StatusEffectAttr, StatusEffect.POISON)
|
||||
.partial(),
|
||||
.partial(), // Physical version of the move does not make contact
|
||||
new AttackMove(Moves.MISTY_EXPLOSION, Type.FAIRY, MoveCategory.SPECIAL, 100, 100, 5, -1, 0, 8)
|
||||
.attr(SacrificialAttr)
|
||||
.target(MoveTarget.ALL_NEAR_OTHERS)
|
||||
|
|
|
@ -762,7 +762,7 @@ export class Arena {
|
|||
case Biome.BEACH:
|
||||
return 3.462;
|
||||
case Biome.LAKE:
|
||||
return 5.350;
|
||||
return 7.215;
|
||||
case Biome.SEABED:
|
||||
return 2.600;
|
||||
case Biome.MOUNTAIN:
|
||||
|
@ -788,7 +788,7 @@ export class Arena {
|
|||
case Biome.FACTORY:
|
||||
return 4.985;
|
||||
case Biome.RUINS:
|
||||
return 2.270;
|
||||
return 0.000;
|
||||
case Biome.WASTELAND:
|
||||
return 6.336;
|
||||
case Biome.ABYSS:
|
||||
|
|
|
@ -2322,11 +2322,61 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||
return accuracyMultiplier.value / evasionMultiplier.value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Calculates the base damage of the given move against this Pokemon when attacked by the given source.
|
||||
* Used during damage calculation and for Shell Side Arm's forecasting effect.
|
||||
* @param source the attacking {@linkcode Pokemon}.
|
||||
* @param move the {@linkcode Move} used in the attack.
|
||||
* @param moveCategory the move's {@linkcode MoveCategory} after variable-category effects are applied.
|
||||
* @param ignoreAbility if `true`, ignores this Pokemon's defensive ability effects (defaults to `false`).
|
||||
* @param ignoreSourceAbility if `true`, ignore's the attacking Pokemon's ability effects (defaults to `false`).
|
||||
* @param isCritical if `true`, calculates effective stats as if the hit were critical (defaults to `false`).
|
||||
* @param simulated if `true`, suppresses changes to game state during calculation (defaults to `true`).
|
||||
* @returns The move's base damage against this Pokemon when used by the source Pokemon.
|
||||
*/
|
||||
getBaseDamage(source: Pokemon, move: Move, moveCategory: MoveCategory, ignoreAbility: boolean = false, ignoreSourceAbility: boolean = false, isCritical: boolean = false, simulated: boolean = true): number {
|
||||
const isPhysical = moveCategory === MoveCategory.PHYSICAL;
|
||||
|
||||
/** A base damage multiplier based on the source's level */
|
||||
const levelMultiplier = (2 * source.level / 5 + 2);
|
||||
|
||||
/** The power of the move after power boosts from abilities, etc. have applied */
|
||||
const power = move.calculateBattlePower(source, this, simulated);
|
||||
|
||||
/**
|
||||
* The attacker's offensive stat for the given move's category.
|
||||
* Critical hits cause negative stat stages to be ignored.
|
||||
*/
|
||||
const sourceAtk = new Utils.NumberHolder(source.getEffectiveStat(isPhysical ? Stat.ATK : Stat.SPATK, this, undefined, ignoreSourceAbility, ignoreAbility, isCritical, simulated));
|
||||
applyMoveAttrs(VariableAtkAttr, source, this, move, sourceAtk);
|
||||
|
||||
/**
|
||||
* This Pokemon's defensive stat for the given move's category.
|
||||
* Critical hits cause positive stat stages to be ignored.
|
||||
*/
|
||||
const targetDef = new Utils.NumberHolder(this.getEffectiveStat(isPhysical ? Stat.DEF : Stat.SPDEF, source, move, ignoreAbility, ignoreSourceAbility, isCritical, simulated));
|
||||
applyMoveAttrs(VariableDefAttr, source, this, move, targetDef);
|
||||
|
||||
/**
|
||||
* The attack's base damage, as determined by the source's level, move power
|
||||
* and Attack stat as well as this Pokemon's Defense stat
|
||||
*/
|
||||
const baseDamage = ((levelMultiplier * power * sourceAtk.value / targetDef.value) / 50) + 2;
|
||||
|
||||
/** Debug message for non-simulated calls (i.e. when damage is actually dealt) */
|
||||
if (!simulated) {
|
||||
console.log("base damage", baseDamage, move.name, power, sourceAtk.value, targetDef.value);
|
||||
}
|
||||
|
||||
return baseDamage;
|
||||
}
|
||||
|
||||
/**
|
||||
* Calculates the damage of an attack made by another Pokemon against this Pokemon
|
||||
* @param source {@linkcode Pokemon} the attacking Pokemon
|
||||
* @param move {@linkcode Pokemon} the move used in the attack
|
||||
* @param ignoreAbility If `true`, ignores this Pokemon's defensive ability effects
|
||||
* @param ignoreSourceAbility If `true`, ignores the attacking Pokemon's ability effects
|
||||
* @param isCritical If `true`, calculates damage for a critical hit.
|
||||
* @param simulated If `true`, suppresses changes to game state during the calculation.
|
||||
* @returns a {@linkcode DamageCalculationResult} object with three fields:
|
||||
|
@ -2395,35 +2445,11 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||
};
|
||||
}
|
||||
|
||||
// ----- BEGIN BASE DAMAGE MULTIPLIERS -----
|
||||
|
||||
/** A base damage multiplier based on the source's level */
|
||||
const levelMultiplier = (2 * source.level / 5 + 2);
|
||||
|
||||
/** The power of the move after power boosts from abilities, etc. have applied */
|
||||
const power = move.calculateBattlePower(source, this, simulated);
|
||||
|
||||
/**
|
||||
* The attacker's offensive stat for the given move's category.
|
||||
* Critical hits ignore negative stat stages.
|
||||
*/
|
||||
const sourceAtk = new Utils.NumberHolder(source.getEffectiveStat(isPhysical ? Stat.ATK : Stat.SPATK, this, undefined, ignoreSourceAbility, ignoreAbility, isCritical, simulated));
|
||||
applyMoveAttrs(VariableAtkAttr, source, this, move, sourceAtk);
|
||||
|
||||
/**
|
||||
* This Pokemon's defensive stat for the given move's category.
|
||||
* Critical hits ignore positive stat stages.
|
||||
*/
|
||||
const targetDef = new Utils.NumberHolder(this.getEffectiveStat(isPhysical ? Stat.DEF : Stat.SPDEF, source, move, ignoreAbility, ignoreSourceAbility, isCritical, simulated));
|
||||
applyMoveAttrs(VariableDefAttr, source, this, move, targetDef);
|
||||
|
||||
/**
|
||||
* The attack's base damage, as determined by the source's level, move power
|
||||
* and Attack stat as well as this Pokemon's Defense stat
|
||||
*/
|
||||
const baseDamage = ((levelMultiplier * power * sourceAtk.value / targetDef.value) / 50) + 2;
|
||||
|
||||
// ------ END BASE DAMAGE MULTIPLIERS ------
|
||||
const baseDamage = this.getBaseDamage(source, move, moveCategory, ignoreAbility, ignoreSourceAbility, isCritical, simulated);
|
||||
|
||||
/** 25% damage debuff on moves hitting more than one non-fainted target (regardless of immunities) */
|
||||
const { targets, multiple } = getMoveTargets(source, move.id);
|
||||
|
@ -2549,7 +2575,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
|
|||
|
||||
// debug message for when damage is applied (i.e. not simulated)
|
||||
if (!simulated) {
|
||||
console.log("damage", damage.value, move.name, power, sourceAtk, targetDef);
|
||||
console.log("damage", damage.value, move.name);
|
||||
}
|
||||
|
||||
let hitResult: HitResult;
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
"pikachu": "Normal",
|
||||
"pikachuCosplay": "Cosplay",
|
||||
"pikachuCoolCosplay": "Rocker-Pikachu",
|
||||
"pikachuBeautyCosplay": "Damen-Pikachu",
|
||||
|
@ -6,7 +7,9 @@
|
|||
"pikachuSmartCosplay": "Professoren-Pikachu",
|
||||
"pikachuToughCosplay": "Wrestler-Pikachu",
|
||||
"pikachuPartner": "Partner-Pikachu",
|
||||
"eevee": "Normal",
|
||||
"eeveePartner": "Partner-Evoli",
|
||||
"pichu": "Normal",
|
||||
"pichuSpiky": "Strubbelohr-Pichu",
|
||||
"unownA": "A",
|
||||
"unownB": "B",
|
||||
|
@ -36,6 +39,7 @@
|
|||
"unownZ": "Z",
|
||||
"unownExclamation": "!",
|
||||
"unownQuestion": "?",
|
||||
"castform": "Normalform",
|
||||
"castformSunny": "Sonnenform",
|
||||
"castformRainy": "Regenform",
|
||||
"castformSnowy": "Schneeform",
|
||||
|
@ -50,12 +54,15 @@
|
|||
"cherubiSunshine": "Sonnenform",
|
||||
"shellosEast": "Östliches Meer",
|
||||
"shellosWest": "Westliches Meer",
|
||||
"rotom": "Normalform",
|
||||
"rotomHeat": "Hitze-Rotom",
|
||||
"rotomWash": "Wasch-Rotom",
|
||||
"rotomFrost": "Frost-Rotom",
|
||||
"rotomFan": "Wirbel-Rotom",
|
||||
"rotomMow": "Schneid-Rotom",
|
||||
"dialga": "Normalform",
|
||||
"dialgaOrigin": "Urform",
|
||||
"palkia": "Normalform",
|
||||
"palkiaOrigin": "Urform",
|
||||
"giratinaAltered": "Wandelform",
|
||||
"giratinaOrigin": "Urform",
|
||||
|
@ -64,6 +71,7 @@
|
|||
"basculinRedStriped": "Rotlinige Form",
|
||||
"basculinBlueStriped": "Blaulinige Form",
|
||||
"basculinWhiteStriped": "Weißlinige Form",
|
||||
"darumaka": "Normalmodus",
|
||||
"darumakaZen": "Trance-Modus",
|
||||
"deerlingSpring": "Frühlingsform",
|
||||
"deerlingSummer": "Sommerform",
|
||||
|
@ -75,17 +83,21 @@
|
|||
"thundurusTherian": "Tiergeistform",
|
||||
"landorusIncarnate": "Inkarnationsform",
|
||||
"landorusTherian": "Tiergeistform",
|
||||
"kyurem": "Normal",
|
||||
"kyuremBlack": "Schwarzes Kyurem",
|
||||
"kyuremWhite": "Weißes Kyurem",
|
||||
"keldeoOrdinary": "Standardform",
|
||||
"keldeoResolute": "Resolutform",
|
||||
"meloettaAria": "Gesangsform",
|
||||
"meloettaPirouette": "Tanzform",
|
||||
"genesect": "Normal",
|
||||
"genesectShock": "Blitzmodul",
|
||||
"genesectBurn": "Flammenmodul",
|
||||
"genesectChill": "Gefriermodul",
|
||||
"genesectDouse": "Aquamodul",
|
||||
"froakieBattleBond": "Ash-Form",
|
||||
"froakie": "Normalform",
|
||||
"froakieBattleBond": "Freundschaftsakt",
|
||||
"froakieAsh": "Ash-Form",
|
||||
"scatterbugMeadow": "Blumenmeermuster",
|
||||
"scatterbugIcySnow": "Frostmuster",
|
||||
"scatterbugPolar": "Schneefeldmuster",
|
||||
|
@ -111,6 +123,7 @@
|
|||
"flabebeOrange": "Orangeblütler",
|
||||
"flabebeBlue": "Blaublütler",
|
||||
"flabebeWhite": "Weißblütler",
|
||||
"furfrou": "Zottelform",
|
||||
"furfrouHeart": "Herzchenschnitt",
|
||||
"furfrouStar": "Sternchenschnitt",
|
||||
"furfrouDiamond": "Diamantenschitt",
|
||||
|
@ -124,6 +137,7 @@
|
|||
"espurrFemale": "weiblich",
|
||||
"honedgeShiled": "Schildform",
|
||||
"honedgeBlade": "Klingenform",
|
||||
"pumpkaboo": "Größe M",
|
||||
"pumpkabooSmall": "Größe S",
|
||||
"pumpkabooLarge": "Größe L",
|
||||
"pumpkabooSuper": "Größe XL",
|
||||
|
@ -134,15 +148,18 @@
|
|||
"zygarde50Pc": "50% Form Scharwandel",
|
||||
"zygarde10Pc": "10% Form Scharwandel",
|
||||
"zygardeComplete": "Optimum-Form",
|
||||
"hoopa": "Gebanntes Hoopa",
|
||||
"hoopaUnbound": "Entfesseltes Hoopa",
|
||||
"oricorioBaile": "Flamenco-Stil",
|
||||
"oricorioPompom": "Cheerleading-Stil",
|
||||
"oricorioPau": "Hula-Stil",
|
||||
"oricorioSensu": "Buyo-Stil",
|
||||
"rockruff": "Normalform",
|
||||
"rockruffOwnTempo": "Gleichmut",
|
||||
"rockruffMidday": "Tagform",
|
||||
"rockruffMidnight": "Nachtform",
|
||||
"rockruffMidnight": "Zwielichtform",
|
||||
"rockruffDusk": "Zwielichtform",
|
||||
"wishiwashi": "Einzelform",
|
||||
"wishiwashiSchool": "Schwarmform",
|
||||
"typeNullNormal": "Typ:Normal",
|
||||
"typeNullFighting": "Typ:Kampf",
|
||||
|
@ -178,11 +195,19 @@
|
|||
"miniorViolet": "Violetter Kern",
|
||||
"mimikyuDisguised": "Verkleidete Form",
|
||||
"mimikyuBusted": "Entlarvte Form",
|
||||
"necrozma": "Normalform",
|
||||
"necrozmaDuskMane": "Abendmähne",
|
||||
"necrozmaDawnWings": "Morgenschwingen",
|
||||
"necrozmaUltra": "Ultra-Necrozma",
|
||||
"magearna": "Normalform",
|
||||
"magearnaOriginal": "Originalfarbe",
|
||||
"marshadow": "Normalform",
|
||||
"marshadowZenith": "Zenitform",
|
||||
"cramorant": "Normalform",
|
||||
"cramorantGulping": "Schlingform",
|
||||
"cramorantGorging": "Stopfform",
|
||||
"toxelAmped": "Hoch-Form",
|
||||
"toxelLowkey": "Tief-Form",
|
||||
"sinisteaPhony": "Fälschungsform",
|
||||
"sinisteaAntique": "Originalform",
|
||||
"milceryVanillaCream": "Vanille-Creme",
|
||||
|
@ -194,6 +219,7 @@
|
|||
"milceryRubySwirl": "Ruby-Mix",
|
||||
"milceryCaramelSwirl": "Karamell-Mix",
|
||||
"milceryRainbowSwirl": "Trio-Mix",
|
||||
"eiscue": "Tiefkühlkopf",
|
||||
"eiscueNoIce": "Wohlfühlkopf",
|
||||
"indeedeeMale": "männlich",
|
||||
"indeedeeFemale": "weiblich",
|
||||
|
@ -205,7 +231,9 @@
|
|||
"zamazentaCrowned": "König des Schildes",
|
||||
"kubfuSingleStrike": "Fokussierter Stil",
|
||||
"kubfuRapidStrike": "Fließender Stil",
|
||||
"zarude": "Normalform",
|
||||
"zarudeDada": "Papa",
|
||||
"calyrex": "Normalform",
|
||||
"calyrexIce": "Schimmelreiter",
|
||||
"calyrexShadow": "Rappenreiter",
|
||||
"basculinMale": "männlich",
|
||||
|
@ -251,8 +279,10 @@
|
|||
"ogerponHearthflameMaskTera": "Ofenmaske (Terakristallisiert)",
|
||||
"ogerponCornerstoneMask": "Fundamentmaske",
|
||||
"ogerponCornerstoneMaskTera": "Fundamentmaske (Terakristallisiert)",
|
||||
"terpagos": "Normalform",
|
||||
"terpagosTerastal": "Terakristall-Form",
|
||||
"terpagosStellar": "Stellarform",
|
||||
"galarDarumaka": "Normalmodus",
|
||||
"galarDarumakaZen": "Trance-Modus",
|
||||
"paldeaTaurosCombat": "Gefechtsvariante",
|
||||
"paldeaTaurosBlaze": "Flammenvariante",
|
||||
|
|
|
@ -112,13 +112,13 @@
|
|||
"island": "PMD EoS Craggy Coast",
|
||||
"jungle": "Lmz - Jungle",
|
||||
"laboratory": "Firel - Laboratory",
|
||||
"lake": "PMD EoS Crystal Cave",
|
||||
"lake": "Lmz - Lake",
|
||||
"meadow": "PMD EoS Sky Peak Forest",
|
||||
"metropolis": "Firel - Metropolis",
|
||||
"mountain": "PMD EoS Mt. Horn",
|
||||
"plains": "Firel - Route 888",
|
||||
"power_plant": "Firel - The Klink",
|
||||
"ruins": "PMD EoS Deep Sealed Ruin",
|
||||
"ruins": "Lmz - Ancient Ruins",
|
||||
"sea": "Andr06 - Marine Mystique",
|
||||
"seabed": "Firel - Seabed",
|
||||
"slum": "Andr06 - Sneaky Snom",
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
"pikachu": "Normal",
|
||||
"pikachuCosplay": "Cosplay",
|
||||
"pikachuCoolCosplay": "Cool Cosplay",
|
||||
"pikachuBeautyCosplay": "Beauty Cosplay",
|
||||
|
@ -6,8 +7,10 @@
|
|||
"pikachuSmartCosplay": "Smart Cosplay",
|
||||
"pikachuToughCosplay": "Tough Cosplay",
|
||||
"pikachuPartner": "Partner",
|
||||
"eevee": "Normal",
|
||||
"eeveePartner": "Partner",
|
||||
"pichuSpiky": "Spiky",
|
||||
"pichu": "Normal",
|
||||
"pichuSpiky": "Spiky-Eared",
|
||||
"unownA": "A",
|
||||
"unownB": "B",
|
||||
"unownC": "C",
|
||||
|
@ -36,113 +39,127 @@
|
|||
"unownZ": "Z",
|
||||
"unownExclamation": "!",
|
||||
"unownQuestion": "?",
|
||||
"castformSunny": "Sunny",
|
||||
"castformRainy": "Rainy",
|
||||
"castformSnowy": "Snowy",
|
||||
"deoxysNormal": "Normal",
|
||||
"deoxysAttack": "Attack",
|
||||
"deoxysDefense": "Defense",
|
||||
"deoxysSpeed": "Speed",
|
||||
"burmyPlant": "Plant",
|
||||
"burmySandy": "Sandy",
|
||||
"burmyTrash": "Trash",
|
||||
"cherubiOvercast": "Overcast",
|
||||
"cherubiSunshine": "Sunshine",
|
||||
"shellosEast": "East",
|
||||
"shellosWest": "West",
|
||||
"castform": "Normal Form",
|
||||
"castformSunny": "Sunny Form",
|
||||
"castformRainy": "Rainy Form",
|
||||
"castformSnowy": "Snowy Form",
|
||||
"deoxysNormal": "Normal Forme",
|
||||
"deoxysAttack": "Attack Forme",
|
||||
"deoxysDefense": "Defense Forme",
|
||||
"deoxysSpeed": "Speed Forme",
|
||||
"burmyPlant": "Plant Cloak",
|
||||
"burmySandy": "Sandy Cloak",
|
||||
"burmyTrash": "Trash Cloak",
|
||||
"cherubiOvercast": "Overcast Form",
|
||||
"cherubiSunshine": "Sunshine Form",
|
||||
"shellosEast": "East Sea",
|
||||
"shellosWest": "West Sea",
|
||||
"rotom": "Normal",
|
||||
"rotomHeat": "Heat",
|
||||
"rotomWash": "Wash",
|
||||
"rotomFrost": "Frost",
|
||||
"rotomFan": "Fan",
|
||||
"rotomMow": "Mow",
|
||||
"dialgaOrigin": "Origin",
|
||||
"palkiaOrigin": "Origin",
|
||||
"giratinaAltered": "Altered",
|
||||
"giratinaOrigin": "Origin",
|
||||
"shayminLand": "Land",
|
||||
"shayminSky": "Sky",
|
||||
"basculinRedStriped": "Red Striped",
|
||||
"basculinBlueStriped": "Blue Striped",
|
||||
"basculinWhiteStriped": "White Striped",
|
||||
"darumakaZen": "Zen",
|
||||
"deerlingSpring": "Spring",
|
||||
"deerlingSummer": "Summer",
|
||||
"deerlingAutumn": "Autumn",
|
||||
"deerlingWinter": "Winter",
|
||||
"tornadusIncarnate": "Incarnate",
|
||||
"tornadusTherian": "Therian",
|
||||
"thundurusIncarnate": "Incarnate",
|
||||
"thundurusTherian": "Therian",
|
||||
"landorusIncarnate": "Incarnate",
|
||||
"landorusTherian": "Therian",
|
||||
"dialga": "Normal",
|
||||
"dialgaOrigin": "Origin Forme",
|
||||
"palkia": "Normal",
|
||||
"palkiaOrigin": "Origin Forme",
|
||||
"giratinaAltered": "Altered Forme",
|
||||
"giratinaOrigin": "Origin Forme",
|
||||
"shayminLand": "Land Forme",
|
||||
"shayminSky": "Sky Forme",
|
||||
"basculinRedStriped": "Red-Striped Form",
|
||||
"basculinBlueStriped": "Blue-Striped Form",
|
||||
"basculinWhiteStriped": "White-Striped Form",
|
||||
"darumaka": "Standard Mode",
|
||||
"darumakaZen": "Zen Mode",
|
||||
"deerlingSpring": "Spring Form",
|
||||
"deerlingSummer": "Summer Form",
|
||||
"deerlingAutumn": "Autumn Form",
|
||||
"deerlingWinter": "Winter Form",
|
||||
"tornadusIncarnate": "Incarnate Forme",
|
||||
"tornadusTherian": "Therian Forme",
|
||||
"thundurusIncarnate": "Incarnate Forme",
|
||||
"thundurusTherian": "Therian Forme",
|
||||
"landorusIncarnate": "Incarnate Forme",
|
||||
"landorusTherian": "Therian Forme",
|
||||
"kyurem": "Normal",
|
||||
"kyuremBlack": "Black",
|
||||
"kyuremWhite": "White",
|
||||
"keldeoOrdinary": "Ordinary",
|
||||
"keldeoOrdinary": "Ordinary Form",
|
||||
"keldeoResolute": "Resolute",
|
||||
"meloettaAria": "Aria",
|
||||
"meloettaPirouette": "Pirouette",
|
||||
"meloettaAria": "Aria Forme",
|
||||
"meloettaPirouette": "Pirouette Forme",
|
||||
"genesect": "Normal",
|
||||
"genesectShock": "Shock Drive",
|
||||
"genesectBurn": "Burn Drive",
|
||||
"genesectChill": "Chill Drive",
|
||||
"genesectDouse": "Douse Drive",
|
||||
"froakie": "Normal",
|
||||
"froakieBattleBond": "Battle Bond",
|
||||
"scatterbugMeadow": "Meadow",
|
||||
"scatterbugIcySnow": "Icy Snow",
|
||||
"scatterbugPolar": "Polar",
|
||||
"scatterbugTundra": "Tundra",
|
||||
"scatterbugContinental": "Continental",
|
||||
"scatterbugGarden": "Garden",
|
||||
"scatterbugElegant": "Elegant",
|
||||
"scatterbugModern": "Modern",
|
||||
"scatterbugMarine": "Marine",
|
||||
"scatterbugArchipelago": "Archipelago",
|
||||
"scatterbugHighPlains": "High Plains",
|
||||
"scatterbugSandstorm": "Sandstorm",
|
||||
"scatterbugRiver": "River",
|
||||
"scatterbugMonsoon": "Monsoon",
|
||||
"scatterbugSavanna": "Savanna",
|
||||
"scatterbugSun": "Sun",
|
||||
"scatterbugOcean": "Ocean",
|
||||
"scatterbugJungle": "Jungle",
|
||||
"scatterbugFancy": "Fancy",
|
||||
"scatterbugPokeBall": "Poké Ball",
|
||||
"flabebeRed": "Red",
|
||||
"flabebeYellow": "Yellow",
|
||||
"flabebeOrange": "Orange",
|
||||
"flabebeBlue": "Blue",
|
||||
"flabebeWhite": "White",
|
||||
"furfrouHeart": "Heart",
|
||||
"furfrouStar": "Star",
|
||||
"furfrouDiamond": "Diamond",
|
||||
"furfrouDebutante": "Debutante",
|
||||
"furfrouMatron": "Matron",
|
||||
"furfrouDandy": "Dandy",
|
||||
"furfrouLaReine": "La Reine",
|
||||
"furfrouKabuki": "Kabuki",
|
||||
"furfrouPharaoh": "Pharaoh",
|
||||
"froakieAsh": "Ash",
|
||||
"scatterbugMeadow": "Meadow Pattern",
|
||||
"scatterbugIcySnow": "Icy Snow Pattern",
|
||||
"scatterbugPolar": "Polar Pattern",
|
||||
"scatterbugTundra": "Tundra Pattern",
|
||||
"scatterbugContinental": "Continental Pattern",
|
||||
"scatterbugGarden": "Garden Pattern",
|
||||
"scatterbugElegant": "Elegant Pattern",
|
||||
"scatterbugModern": "Modern Pattern",
|
||||
"scatterbugMarine": "Marine Pattern",
|
||||
"scatterbugArchipelago": "Archipelago Pattern",
|
||||
"scatterbugHighPlains": "High Plains Pattern",
|
||||
"scatterbugSandstorm": "Sandstorm Pattern",
|
||||
"scatterbugRiver": "River Pattern",
|
||||
"scatterbugMonsoon": "Monsoon Pattern",
|
||||
"scatterbugSavanna": "Savanna Pattern",
|
||||
"scatterbugSun": "Sun Pattern",
|
||||
"scatterbugOcean": "Ocean Pattern",
|
||||
"scatterbugJungle": "Jungle Pattern",
|
||||
"scatterbugFancy": "Fancy Pattern",
|
||||
"scatterbugPokeBall": "Poké Ball Pattern",
|
||||
"flabebeRed": "Red Flower",
|
||||
"flabebeYellow": "Yellow Flower",
|
||||
"flabebeOrange": "Orange Flower",
|
||||
"flabebeBlue": "Blue Flower",
|
||||
"flabebeWhite": "White Flower",
|
||||
"furfrou": "Natural Form",
|
||||
"furfrouHeart": "Heart Trim",
|
||||
"furfrouStar": "Star Trim",
|
||||
"furfrouDiamond": "Diamond Trim",
|
||||
"furfrouDebutante": "Debutante Trim",
|
||||
"furfrouMatron": "Matron Trim",
|
||||
"furfrouDandy": "Dandy Trim",
|
||||
"furfrouLaReine": "La Reine Trim",
|
||||
"furfrouKabuki": "Kabuki Trim",
|
||||
"furfrouPharaoh": "Pharaoh Trim",
|
||||
"espurrMale": "Male",
|
||||
"espurrFemale": "Female",
|
||||
"honedgeShiled": "Shield",
|
||||
"honedgeBlade": "Blade",
|
||||
"pumpkabooSmall": "Small",
|
||||
"pumpkabooLarge": "Large",
|
||||
"pumpkabooSuper": "Super",
|
||||
"xerneasNeutral": "Neutral",
|
||||
"xerneasActive": "Active",
|
||||
"honedgeShiled": "Shield Forme",
|
||||
"honedgeBlade": "Blade Forme",
|
||||
"pumpkaboo": "Average Size",
|
||||
"pumpkabooSmall": "Small Size",
|
||||
"pumpkabooLarge": "Large Size",
|
||||
"pumpkabooSuper": "Super Size",
|
||||
"xerneasNeutral": "Neutral Mode",
|
||||
"xerneasActive": "Active Mode",
|
||||
"zygarde50": "50% Forme",
|
||||
"zygarde10": "10% Forme",
|
||||
"zygarde50Pc": "50% Forme Power Construct",
|
||||
"zygarde10Pc": "10% Forme Power Construct",
|
||||
"zygardeComplete": "Complete Forme",
|
||||
"hoopa": "Confined",
|
||||
"hoopaUnbound": "Unbound",
|
||||
"oricorioBaile": "Baile",
|
||||
"oricorioPompom": "Pom-Pom",
|
||||
"oricorioPau": "Pau",
|
||||
"oricorioSensu": "Sensu",
|
||||
"oricorioBaile": "Baile Style",
|
||||
"oricorioPompom": "Pom-Pom Style",
|
||||
"oricorioPau": "Pau Style",
|
||||
"oricorioSensu": "Sensu Style",
|
||||
"rockruff": "Normal",
|
||||
"rockruffOwnTempo": "Own Tempo",
|
||||
"rockruffMidday": "Midday",
|
||||
"rockruffMidnight": "Midnight",
|
||||
"rockruffMidnight": "Dusk",
|
||||
"rockruffMidday": "Midday Form",
|
||||
"rockruffMidnight": "Midnight Form",
|
||||
"rockruffDusk": "Dusk Form",
|
||||
"wishiwashi": "Solo Form",
|
||||
"wishiwashiSchool": "School",
|
||||
"typeNullNormal": "Type: Normal",
|
||||
"typeNullFighting": "Type: Fighting",
|
||||
|
@ -162,29 +179,37 @@
|
|||
"typeNullDragon": "Type: Dragon",
|
||||
"typeNullDark": "Type: Dark",
|
||||
"typeNullFairy": "Type: Fairy",
|
||||
"miniorRedMeteor": "Red Meteor",
|
||||
"miniorOrangeMeteor": "Orange Meteor",
|
||||
"miniorYellowMeteor": "Yellow Meteor",
|
||||
"miniorGreenMeteor": "Green Meteor",
|
||||
"miniorBlueMeteor": "Blue Meteor",
|
||||
"miniorIndigoMeteor": "Indigo Meteor",
|
||||
"miniorVioletMeteor": "Violet Meteor",
|
||||
"miniorRed": "Red",
|
||||
"miniorOrange": "Orange",
|
||||
"miniorYellow": "Yellow",
|
||||
"miniorGreen": "Green",
|
||||
"miniorBlue": "Blue",
|
||||
"miniorIndigo": "Indigo",
|
||||
"miniorViolet": "Violet",
|
||||
"mimikyuDisguised": "Disguised",
|
||||
"mimikyuBusted": "Busted",
|
||||
"miniorRedMeteor": "Red Meteor Form",
|
||||
"miniorOrangeMeteor": "Orange Meteor Form",
|
||||
"miniorYellowMeteor": "Yellow Meteor Form",
|
||||
"miniorGreenMeteor": "Green Meteor Form",
|
||||
"miniorBlueMeteor": "Blue Meteor Form",
|
||||
"miniorIndigoMeteor": "Indigo Meteor Form",
|
||||
"miniorVioletMeteor": "Violet Meteor Form",
|
||||
"miniorRed": "Red Core Form",
|
||||
"miniorOrange": "Orange Core Form",
|
||||
"miniorYellow": "Yellow Core Form",
|
||||
"miniorGreen": "Green Core Form",
|
||||
"miniorBlue": "Blue Core Form",
|
||||
"miniorIndigo": "Indigo Core Form",
|
||||
"miniorViolet": "Violet Core Form",
|
||||
"mimikyuDisguised": "Disguised Form",
|
||||
"mimikyuBusted": "Busted Form",
|
||||
"necrozma": "Normal",
|
||||
"necrozmaDuskMane": "Dusk Mane",
|
||||
"necrozmaDawnWings": "Dawn Wings",
|
||||
"necrozmaUltra": "Ultra",
|
||||
"magearna": "Normal",
|
||||
"magearnaOriginal": "Original",
|
||||
"marshadow": "Normal",
|
||||
"marshadowZenith": "Zenith",
|
||||
"sinisteaPhony": "Phony",
|
||||
"sinisteaAntique": "Antique",
|
||||
"cramorant": "Normal",
|
||||
"cramorantGulping": "Gulping Form",
|
||||
"cramorantGorging": "Gorging Form",
|
||||
"toxelAmped": "Amped Form",
|
||||
"toxelLowkey": "Low-Key Form",
|
||||
"sinisteaPhony": "Phony Form",
|
||||
"sinisteaAntique": "Antique Form",
|
||||
"milceryVanillaCream": "Vanilla Cream",
|
||||
"milceryRubyCream": "Ruby Cream",
|
||||
"milceryMatchaCream": "Matcha Cream",
|
||||
|
@ -194,24 +219,27 @@
|
|||
"milceryRubySwirl": "Ruby Swirl",
|
||||
"milceryCaramelSwirl": "Caramel Swirl",
|
||||
"milceryRainbowSwirl": "Rainbow Swirl",
|
||||
"eiscue": "Ice Face",
|
||||
"eiscueNoIce": "No Ice",
|
||||
"indeedeeMale": "Male",
|
||||
"indeedeeFemale": "Female",
|
||||
"morpekoFullBelly": "Full Belly",
|
||||
"morpekoHangry": "Hangry",
|
||||
"morpekoFullBelly": "Full Belly Mode",
|
||||
"morpekoHangry": "Hangry Mode",
|
||||
"zacianHeroOfManyBattles": "Hero Of Many Battles",
|
||||
"zacianCrowned": "Crowned",
|
||||
"zamazentaHeroOfManyBattles": "Hero Of Many Battles",
|
||||
"zamazentaCrowned": "Crowned",
|
||||
"kubfuSingleStrike": "Single Strike",
|
||||
"kubfuRapidStrike": "Rapid Strike",
|
||||
"kubfuSingleStrike": "Single Strike Style",
|
||||
"kubfuRapidStrike": "Rapid Strike Style",
|
||||
"zarude": "Normal",
|
||||
"zarudeDada": "Dada",
|
||||
"calyrex": "Normal",
|
||||
"calyrexIce": "Ice Rider",
|
||||
"calyrexShadow": "Shadow Rider",
|
||||
"basculinMale": "Male",
|
||||
"basculinFemale": "Female",
|
||||
"enamorusIncarnate": "Incarnate",
|
||||
"enamorusTherian": "Therian",
|
||||
"enamorusIncarnate": "Incarnate Forme",
|
||||
"enamorusTherian": "Therian Forme",
|
||||
"lechonkMale": "Male",
|
||||
"lechonkFemale": "Female",
|
||||
"tandemausFour": "Family of Four",
|
||||
|
@ -220,29 +248,29 @@
|
|||
"squawkabillyBluePlumage": "Blue Plumage",
|
||||
"squawkabillyYellowPlumage": "Yellow Plumage",
|
||||
"squawkabillyWhitePlumage": "White Plumage",
|
||||
"finizenZero": "Zero",
|
||||
"finizenHero": "Hero",
|
||||
"tatsugiriCurly": "Curly",
|
||||
"tatsugiriDroopy": "Droopy",
|
||||
"tatsugiriStretchy": "Stretchy",
|
||||
"dunsparceTwo": "Two-Segment",
|
||||
"dunsparceThree": "Three-Segment",
|
||||
"gimmighoulChest": "Chest",
|
||||
"gimmighoulRoaming": "Roaming",
|
||||
"finizenZero": "Zero Form",
|
||||
"finizenHero": "Hero Form",
|
||||
"tatsugiriCurly": "Curly Form",
|
||||
"tatsugiriDroopy": "Droopy Form",
|
||||
"tatsugiriStretchy": "Stretchy Form",
|
||||
"dunsparceTwo": "Two-Segment Form",
|
||||
"dunsparceThree": "Three-Segment Form",
|
||||
"gimmighoulChest": "Chest Form",
|
||||
"gimmighoulRoaming": "Roaming Form",
|
||||
"koraidonApexBuild": "Apex Build",
|
||||
"koraidonLimitedBuild": "Limited Build",
|
||||
"koraidonSprintingBuild": "Sprinting Build",
|
||||
"koraidonSwimmingBuild": "Swimming Build",
|
||||
"koraidonGlidingBuild": "Gliding Build",
|
||||
"miraidonUltimateMode": "Ultimate Mode",
|
||||
"miraidonLowPowerMode": "Low Power Mode",
|
||||
"miraidonLowPowerMode": "Low-Power Mode",
|
||||
"miraidonDriveMode": "Drive Mode",
|
||||
"miraidonAquaticMode": "Aquatic Mode",
|
||||
"miraidonGlideMode": "Glide Mode",
|
||||
"poltchageistCounterfeit": "Counterfeit",
|
||||
"poltchageistArtisan": "Artisan",
|
||||
"poltchageistUnremarkable": "Unremarkable",
|
||||
"poltchageistMasterpiece": "Masterpiece",
|
||||
"poltchageistCounterfeit": "Counterfeit Form",
|
||||
"poltchageistArtisan": "Artisan Form",
|
||||
"poltchageistUnremarkable": "Unremarkable Form",
|
||||
"poltchageistMasterpiece": "Masterpiece Form",
|
||||
"ogerponTealMask": "Teal Mask",
|
||||
"ogerponTealMaskTera": "Teal Mask Terastallized",
|
||||
"ogerponWellspringMask": "Wellspring Mask",
|
||||
|
@ -251,10 +279,12 @@
|
|||
"ogerponHearthflameMaskTera": "Hearthflame Mask Terastallized",
|
||||
"ogerponCornerstoneMask": "Cornerstone Mask",
|
||||
"ogerponCornerstoneMaskTera": "Cornerstone Mask Terastallized",
|
||||
"terpagosTerastal": "Terastal",
|
||||
"terpagosStellar": "Stellar",
|
||||
"galarDarumakaZen": "Zen",
|
||||
"paldeaTaurosCombat": "Combat",
|
||||
"paldeaTaurosBlaze": "Blaze",
|
||||
"paldeaTaurosAqua": "Aqua"
|
||||
"terpagos": "Normal Form",
|
||||
"terpagosTerastal": "Terastal Form",
|
||||
"terpagosStellar": "Stellar Form",
|
||||
"galarDarumaka": "Standard Mode",
|
||||
"galarDarumakaZen": "Zen Mode",
|
||||
"paldeaTaurosCombat": "Combat Breed",
|
||||
"paldeaTaurosBlaze": "Blaze Breed",
|
||||
"paldeaTaurosAqua": "Aqua Breed"
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
"pikachu": "Normal",
|
||||
"pikachuCosplay": "Coqueta",
|
||||
"pikachuCoolCosplay": "Roquera",
|
||||
"pikachuBeautyCosplay": "Aristócrata",
|
||||
|
@ -6,7 +7,9 @@
|
|||
"pikachuSmartCosplay": "Erudita",
|
||||
"pikachuToughCosplay": "Enmascarada",
|
||||
"pikachuPartner": "Compañero",
|
||||
"eevee": "Normal",
|
||||
"eeveePartner": "Compañero",
|
||||
"pichu": "Normal",
|
||||
"pichuSpiky": "Picoreja",
|
||||
"unownA": "A",
|
||||
"unownB": "B",
|
||||
|
@ -36,6 +39,7 @@
|
|||
"unownZ": "Z",
|
||||
"unownExclamation": "!",
|
||||
"unownQuestion": "?",
|
||||
"castform": "Normal Form",
|
||||
"castformSunny": "Sol",
|
||||
"castformRainy": "Lluvia",
|
||||
"castformSnowy": "Nieve",
|
||||
|
@ -50,12 +54,15 @@
|
|||
"cherubiSunshine": "Soleado",
|
||||
"shellosEast": "Este",
|
||||
"shellosWest": "Oeste",
|
||||
"rotom": "Normal",
|
||||
"rotomHeat": "Calor",
|
||||
"rotomWash": "Lavado",
|
||||
"rotomFrost": "Frío",
|
||||
"rotomFan": "Ventilador",
|
||||
"rotomMow": "Corte",
|
||||
"dialga": "Normal",
|
||||
"dialgaOrigin": "Origen",
|
||||
"palkia": "Normal",
|
||||
"palkiaOrigin": "Origen",
|
||||
"giratinaAltered": "Modificada",
|
||||
"giratinaOrigin": "Origen",
|
||||
|
@ -64,6 +71,7 @@
|
|||
"basculinRedStriped": "Raya Roja",
|
||||
"basculinBlueStriped": "Raya Azul",
|
||||
"basculinWhiteStriped": "Raya Blanca",
|
||||
"darumaka": "Standard Mode",
|
||||
"darumakaZen": "Daruma",
|
||||
"deerlingSpring": "Primavera",
|
||||
"deerlingSummer": "Verano",
|
||||
|
@ -75,17 +83,21 @@
|
|||
"thundurusTherian": "Tótem",
|
||||
"landorusIncarnate": "Avatar",
|
||||
"landorusTherian": "Tótem",
|
||||
"kyurem": "Normal",
|
||||
"kyuremBlack": "Negro",
|
||||
"kyuremWhite": "Blanco",
|
||||
"keldeoOrdinary": "Habitual",
|
||||
"keldeoResolute": "Brío",
|
||||
"meloettaAria": "Lírica",
|
||||
"meloettaPirouette": "Danza",
|
||||
"genesect": "Normal",
|
||||
"genesectShock": "FulgoROM",
|
||||
"genesectBurn": "PiroROM",
|
||||
"genesectChill": "CrioROM",
|
||||
"genesectDouse": "HidroROM",
|
||||
"froakie": "Normal",
|
||||
"froakieBattleBond": "Fuerte Afecto",
|
||||
"froakieAsh": "Ash",
|
||||
"scatterbugMeadow": "Floral",
|
||||
"scatterbugIcySnow": "Polar",
|
||||
"scatterbugPolar": "Taiga",
|
||||
|
@ -111,6 +123,7 @@
|
|||
"flabebeOrange": "Naranja",
|
||||
"flabebeBlue": "Azul",
|
||||
"flabebeWhite": "Blanco",
|
||||
"furfrou": "Natural Form",
|
||||
"furfrouHeart": "Corazón",
|
||||
"furfrouStar": "Estrella",
|
||||
"furfrouDiamond": "Diamante",
|
||||
|
@ -124,6 +137,7 @@
|
|||
"espurrFemale": "Hembra",
|
||||
"honedgeShiled": "Escudo",
|
||||
"honedgeBlade": "Filo",
|
||||
"pumpkaboo": "Average Size",
|
||||
"pumpkabooSmall": "Pequeño",
|
||||
"pumpkabooLarge": "Grande",
|
||||
"pumpkabooSuper": "Enorme",
|
||||
|
@ -134,15 +148,18 @@
|
|||
"zygarde50Pc": "Zygarde al 50%",
|
||||
"zygarde10Pc": "Zygarde al 10%",
|
||||
"zygardeComplete": "Zygarde Completo",
|
||||
"hoopa": "Confined",
|
||||
"hoopaUnbound": "Desatado",
|
||||
"oricorioBaile": "Apasionado",
|
||||
"oricorioPompom": "Animado",
|
||||
"oricorioPau": "Plácido",
|
||||
"oricorioSensu": "Refinado",
|
||||
"rockruff": "Normal",
|
||||
"rockruffOwnTempo": "Ritmo Propio",
|
||||
"rockruffMidday": "Diurna",
|
||||
"rockruffMidnight": "Nocturna",
|
||||
"rockruffMidnight": "Crepuscular",
|
||||
"rockruffDusk": "Crepuscular",
|
||||
"wishiwashi": "Solo Form",
|
||||
"wishiwashiSchool": "Banco",
|
||||
"typeNullNormal": "Tipo Normal",
|
||||
"typeNullFighting": "Tipo Lucha",
|
||||
|
@ -178,11 +195,19 @@
|
|||
"miniorViolet": "Violeta",
|
||||
"mimikyuDisguised": "Encubierta",
|
||||
"mimikyuBusted": "Descubierta",
|
||||
"necrozma": "Normal",
|
||||
"necrozmaDuskMane": "Melena Crepuscular",
|
||||
"necrozmaDawnWings": "Asas Alvorada",
|
||||
"necrozmaUltra": "Ultra",
|
||||
"magearna": "Normal",
|
||||
"magearnaOriginal": "Vetusto",
|
||||
"marshadow": "Normal",
|
||||
"marshadowZenith": "Cénit",
|
||||
"cramorant": "Normal",
|
||||
"cramorantGulping": "Gulping Form",
|
||||
"cramorantGorging": "Gorging Form",
|
||||
"toxelAmped": "Amped Form",
|
||||
"toxelLowkey": "Low-Key Form",
|
||||
"sinisteaPhony": "Falsificada",
|
||||
"sinisteaAntique": "Genuina",
|
||||
"milceryVanillaCream": "Crema de Vainilla",
|
||||
|
@ -194,6 +219,7 @@
|
|||
"milceryRubySwirl": "Mezcla Rosa",
|
||||
"milceryCaramelSwirl": "Mezcla Caramelo",
|
||||
"milceryRainbowSwirl": "Tres Sabores",
|
||||
"eiscue": "Ice Face",
|
||||
"eiscueNoIce": "Cara Deshielo",
|
||||
"indeedeeMale": "Macho",
|
||||
"indeedeeFemale": "Hembra",
|
||||
|
@ -205,7 +231,9 @@
|
|||
"zamazentaCrowned": "Escudo Supremo",
|
||||
"kubfuSingleStrike": "Estilo Brusco",
|
||||
"kubfuRapidStrike": "Estilo Fluido",
|
||||
"zarude": "Normal",
|
||||
"zarudeDada": "Papá",
|
||||
"calyrex": "Normal",
|
||||
"calyrexIce": "Jinete Glacial",
|
||||
"calyrexShadow": "Jinete Espectral",
|
||||
"basculinMale": "Macho",
|
||||
|
@ -251,8 +279,10 @@
|
|||
"ogerponHearthflameMaskTera": "Máscara Horno Teracristal",
|
||||
"ogerponCornerstoneMask": "Máscara Cimiento",
|
||||
"ogerponCornerstoneMaskTera": "Máscara Cimiento Teracristal",
|
||||
"terpagos": "Normal Form",
|
||||
"terpagosTerastal": "Teracristal",
|
||||
"terpagosStellar": "Astral",
|
||||
"galarDarumaka": "Standard Mode",
|
||||
"galarDarumakaZen": "Daruma",
|
||||
"paldeaTaurosCombat": "Combatiente",
|
||||
"paldeaTaurosBlaze": "Ardiente",
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
"pikachu": "Normal",
|
||||
"pikachuCosplay": "Cosplayeur",
|
||||
"pikachuCoolCosplay": "Cosplay Rockeur",
|
||||
"pikachuBeautyCosplay": "Cosplay Lady",
|
||||
|
@ -6,7 +7,9 @@
|
|||
"pikachuSmartCosplay": "Cosplay Docteur",
|
||||
"pikachuToughCosplay": "Cosplay Catcheur",
|
||||
"pikachuPartner": "Partenaire",
|
||||
"eevee": "Normal",
|
||||
"eeveePartner": "Partenaire",
|
||||
"pichu": "Normal",
|
||||
"pichuSpiky": "Troizépi",
|
||||
"unownA": "A",
|
||||
"unownB": "B",
|
||||
|
@ -36,6 +39,7 @@
|
|||
"unownZ": "Z",
|
||||
"unownExclamation": "!",
|
||||
"unownQuestion": "?",
|
||||
"castform": "Normal Form",
|
||||
"castformSunny": "Solaire",
|
||||
"castformRainy": "Eau de Pluie",
|
||||
"castformSnowy": "Blizzard",
|
||||
|
@ -50,12 +54,15 @@
|
|||
"cherubiSunshine": "Ensoleillé",
|
||||
"shellosEast": "Orient",
|
||||
"shellosWest": "Occident",
|
||||
"rotom": "Normal",
|
||||
"rotomHeat": "Chaleur",
|
||||
"rotomWash": "Lavage",
|
||||
"rotomFrost": "Froid",
|
||||
"rotomFan": "Hélice",
|
||||
"rotomMow": "Tonte",
|
||||
"dialga": "Normal",
|
||||
"dialgaOrigin": "Originel",
|
||||
"palkia": "Normal",
|
||||
"palkiaOrigin": "Originel",
|
||||
"giratinaAltered": "Alternatif",
|
||||
"giratinaOrigin": "Originel",
|
||||
|
@ -64,6 +71,7 @@
|
|||
"basculinRedStriped": "Motif Rouge",
|
||||
"basculinBlueStriped": "Motif Bleu",
|
||||
"basculinWhiteStriped": "Motif Blanc",
|
||||
"darumaka": "Standard Mode",
|
||||
"darumakaZen": "Zen",
|
||||
"deerlingSpring": "Printemps",
|
||||
"deerlingSummer": "Été",
|
||||
|
@ -75,17 +83,21 @@
|
|||
"thundurusTherian": "Totémique",
|
||||
"landorusIncarnate": "Avatar",
|
||||
"landorusTherian": "Totémique",
|
||||
"kyurem": "Normal",
|
||||
"kyuremBlack": "Noir",
|
||||
"kyuremWhite": "Blanc",
|
||||
"keldeoOrdinary": "Normal",
|
||||
"keldeoResolute": "Décidé",
|
||||
"meloettaAria": "Chant",
|
||||
"meloettaPirouette": "Danse",
|
||||
"genesect": "Normal",
|
||||
"genesectShock": "Module Choc",
|
||||
"genesectBurn": "Module Pyro",
|
||||
"genesectChill": "Module Cryo",
|
||||
"genesectDouse": "Module Aqua",
|
||||
"froakie": "Normal",
|
||||
"froakieBattleBond": "Synergie",
|
||||
"froakieAsh": "Ash",
|
||||
"scatterbugMeadow": "Floraison",
|
||||
"scatterbugIcySnow": "Blizzard",
|
||||
"scatterbugPolar": "Banquise",
|
||||
|
@ -111,6 +123,7 @@
|
|||
"flabebeOrange": "Orange",
|
||||
"flabebeBlue": "Bleu",
|
||||
"flabebeWhite": "Blanc",
|
||||
"furfrou": "Natural Form",
|
||||
"furfrouHeart": "Cœur",
|
||||
"furfrouStar": "Étoile",
|
||||
"furfrouDiamond": "Diamant",
|
||||
|
@ -124,6 +137,7 @@
|
|||
"espurrFemale": "Femelle",
|
||||
"honedgeShiled": "Parade",
|
||||
"honedgeBlade": "Assaut",
|
||||
"pumpkaboo": "Average Size",
|
||||
"pumpkabooSmall": "Mini",
|
||||
"pumpkabooLarge": "Maxi",
|
||||
"pumpkabooSuper": "Ultra",
|
||||
|
@ -133,16 +147,19 @@
|
|||
"zygarde10": "Forme 10%",
|
||||
"zygarde50Pc": "Rassemblement Forme 50%",
|
||||
"zygarde10Pc": "Rassemblement Forme 10%",
|
||||
"hoopa": "Confined",
|
||||
"hoopaUnbound": "Déchainé",
|
||||
"zygardeComplete": "Parfait",
|
||||
"oricorioBaile": "Flamenco",
|
||||
"oricorioPompom": "Pom-Pom",
|
||||
"oricorioPau": "Hula",
|
||||
"oricorioSensu": "Buyō",
|
||||
"rockruff": "Normal",
|
||||
"rockruffOwnTempo": "Tempo Perso",
|
||||
"rockruffMidday": "Diurne",
|
||||
"rockruffMidnight": "Nocturne",
|
||||
"rockruffMidnight": "Crépusculaire",
|
||||
"rockruffDusk": "Crépusculaire",
|
||||
"wishiwashi": "Solo Form",
|
||||
"wishiwashiSchool": "Banc",
|
||||
"typeNullNormal": "Type: Normal",
|
||||
"typeNullFighting": "Type: Combat",
|
||||
|
@ -178,11 +195,19 @@
|
|||
"miniorViolet": "Violet",
|
||||
"mimikyuDisguised": "Déguisé",
|
||||
"mimikyuBusted": "Démasqué",
|
||||
"necrozma": "Normal",
|
||||
"necrozmaDuskMane": "Crinière du Couchant",
|
||||
"necrozmaDawnWings": "Ailes de l’Aurore",
|
||||
"necrozmaUltra": "Ultra",
|
||||
"magearna": "Normal",
|
||||
"magearnaOriginal": "Couleur du Passé",
|
||||
"marshadow": "Normal",
|
||||
"marshadowZenith": "Zénith",
|
||||
"cramorant": "Normal",
|
||||
"cramorantGulping": "Gulping Form",
|
||||
"cramorantGorging": "Gorging Form",
|
||||
"toxelAmped": "Amped Form",
|
||||
"toxelLowkey": "Low-Key Form",
|
||||
"sinisteaPhony": "Contrefaçon",
|
||||
"sinisteaAntique": "Authentique",
|
||||
"milceryVanillaCream": "Lait Vanille",
|
||||
|
@ -194,6 +219,7 @@
|
|||
"milceryRubySwirl": "Mélange Ruby",
|
||||
"milceryCaramelSwirl": "Mélange Caramel",
|
||||
"milceryRainbowSwirl": "Mélange Tricolore",
|
||||
"eiscue": "Ice Face",
|
||||
"eiscueNoIce": "Tête Dégel",
|
||||
"indeedeeMale": "Mâle",
|
||||
"indeedeeFemale": "Femelle",
|
||||
|
@ -205,7 +231,9 @@
|
|||
"zamazentaCrowned": "Bouclier Suprême",
|
||||
"kubfuSingleStrike": "Poing Final",
|
||||
"kubfuRapidStrike": "Mille Poings",
|
||||
"zarude": "Normal",
|
||||
"zarudeDada": "Papa",
|
||||
"calyrex": "Normal",
|
||||
"calyrexIce": "Cavalier du Froid",
|
||||
"calyrexShadow": "Cavalier d’Effroi",
|
||||
"basculinMale": "Mâle",
|
||||
|
@ -251,8 +279,10 @@
|
|||
"ogerponHearthflameMaskTera": "Masque du Fourneau Téracristal",
|
||||
"ogerponCornerstoneMask": "Masque de la Pierre",
|
||||
"ogerponCornerstoneMaskTera": "Masque de la Pierre Téracristal",
|
||||
"terpagos": "Normal Form",
|
||||
"terpagosTerastal": "Téracristal",
|
||||
"terpagosStellar": "Stellaire",
|
||||
"galarDarumaka": "Standard Mode",
|
||||
"galarDarumakaZen": "Zen",
|
||||
"paldeaTaurosCombat": "Combatif",
|
||||
"paldeaTaurosBlaze": "Flamboyant",
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
"pikachu": "Normal",
|
||||
"pikachuCosplay": "Cosplay",
|
||||
"pikachuCoolCosplay": "Cosplay classe",
|
||||
"pikachuBeautyCosplay": "Cosplay bellezza",
|
||||
|
@ -6,7 +7,9 @@
|
|||
"pikachuSmartCosplay": "Cosplay acume",
|
||||
"pikachuToughCosplay": "Cosplay grinta",
|
||||
"pikachuPartner": "Compagno",
|
||||
"eevee": "Normal",
|
||||
"eeveePartner": "Compagno",
|
||||
"pichu": "Normal",
|
||||
"pichuSpiky": "Spunzorek",
|
||||
"unownA": "A",
|
||||
"unownB": "B",
|
||||
|
@ -36,6 +39,7 @@
|
|||
"unownZ": "Z",
|
||||
"unownExclamation": "!",
|
||||
"unownQuestion": "?",
|
||||
"castform": "Normal Form",
|
||||
"castformSunny": "Sole",
|
||||
"castformRainy": "Pioggia",
|
||||
"castformSnowy": "Nuvola di neve",
|
||||
|
@ -50,12 +54,15 @@
|
|||
"cherubiSunshine": "Splendore",
|
||||
"shellosEast": "Est",
|
||||
"shellosWest": "Ovest",
|
||||
"rotom": "Normal",
|
||||
"rotomHeat": "Calore",
|
||||
"rotomWash": "Lavaggio",
|
||||
"rotomFrost": "Gelo",
|
||||
"rotomFan": "Vortice",
|
||||
"rotomMow": "Taglio",
|
||||
"dialga": "Normal",
|
||||
"dialgaOrigin": "Originale",
|
||||
"palkia": "Normal",
|
||||
"palkiaOrigin": "Originale",
|
||||
"giratinaAltered": "Alterata",
|
||||
"giratinaOrigin": "Originale",
|
||||
|
@ -64,6 +71,7 @@
|
|||
"basculinRedStriped": "Linearossa",
|
||||
"basculinBlueStriped": "Lineablu",
|
||||
"basculinWhiteStriped": "Lineabianca",
|
||||
"darumaka": "Standard Mode",
|
||||
"darumakaZen": "Zen",
|
||||
"deerlingSpring": "Primavera",
|
||||
"deerlingSummer": "Estate",
|
||||
|
@ -75,17 +83,21 @@
|
|||
"thundurusTherian": "Totem",
|
||||
"landorusIncarnate": "Incarnazione",
|
||||
"landorusTherian": "Totem",
|
||||
"kyurem": "Normal",
|
||||
"kyuremBlack": "Nero",
|
||||
"kyuremWhite": "Bianco",
|
||||
"keldeoOrdinary": "Normale",
|
||||
"keldeoResolute": "Risoluta",
|
||||
"meloettaAria": "Canto",
|
||||
"meloettaPirouette": "Danza",
|
||||
"genesect": "Normal",
|
||||
"genesectShock": "Voltmodulo",
|
||||
"genesectBurn": "Piromodulo",
|
||||
"genesectChill": "Gelomodulo",
|
||||
"genesectDouse": "Idromodulo",
|
||||
"froakie": "Normal",
|
||||
"froakieBattleBond": "Morfosintonia",
|
||||
"froakieAsh": "Ash",
|
||||
"scatterbugMeadow": "Giardinfiore",
|
||||
"scatterbugIcySnow": "Nevi perenni",
|
||||
"scatterbugPolar": "Nordico",
|
||||
|
@ -111,6 +123,7 @@
|
|||
"flabebeOrange": "Arancione",
|
||||
"flabebeBlue": "Blu",
|
||||
"flabebeWhite": "Bianco",
|
||||
"furfrou": "Natural Form",
|
||||
"furfrouHeart": "Cuore",
|
||||
"furfrouStar": "Stella",
|
||||
"furfrouDiamond": "Diamante",
|
||||
|
@ -124,6 +137,7 @@
|
|||
"espurrFemale": "Femmina",
|
||||
"honedgeShiled": "Scudo",
|
||||
"honedgeBlade": "Spada",
|
||||
"pumpkaboo": "Average Size",
|
||||
"pumpkabooSmall": "Mini",
|
||||
"pumpkabooLarge": "Grande",
|
||||
"pumpkabooSuper": "Maxi",
|
||||
|
@ -134,15 +148,18 @@
|
|||
"zygarde50Pc": "Forma 50% Sciamefusione",
|
||||
"zygarde10Pc": "Forma 10% Sciamefusione",
|
||||
"zygardeComplete": "Forma perfetta",
|
||||
"hoopa": "Confined",
|
||||
"hoopaUnbound": "Libero",
|
||||
"oricorioBaile": "Flamenco",
|
||||
"oricorioPompom": "Cheerdance",
|
||||
"oricorioPau": "Hula",
|
||||
"oricorioSensu": "Buyō",
|
||||
"rockruff": "Normal",
|
||||
"rockruffOwnTempo": "Mentelocale",
|
||||
"rockruffMidday": "Giorno",
|
||||
"rockruffMidnight": "Notte",
|
||||
"rockruffMidnight": "Crepuscolo",
|
||||
"rockruffDusk": "Crepuscolo",
|
||||
"wishiwashi": "Solo Form",
|
||||
"wishiwashiSchool": "Banco",
|
||||
"typeNullNormal": "Tipo Normale",
|
||||
"typeNullFighting": "Tipo Lotta",
|
||||
|
@ -178,11 +195,19 @@
|
|||
"miniorViolet": "Violetto",
|
||||
"mimikyuDisguised": "Mascherata",
|
||||
"mimikyuBusted": "Smascherata",
|
||||
"necrozma": "Normal",
|
||||
"necrozmaDuskMane": "Criniera del Vespro",
|
||||
"necrozmaDawnWings": "Ali dell'Aurora",
|
||||
"necrozmaUltra": "Ultra",
|
||||
"magearna": "Normal",
|
||||
"magearnaOriginal": "Colore Antico",
|
||||
"marshadow": "Normal",
|
||||
"marshadowZenith": "Zenith",
|
||||
"cramorant": "Normal",
|
||||
"cramorantGulping": "Gulping Form",
|
||||
"cramorantGorging": "Gorging Form",
|
||||
"toxelAmped": "Amped Form",
|
||||
"toxelLowkey": "Low-Key Form",
|
||||
"sinisteaPhony": "Contraffatta",
|
||||
"sinisteaAntique": "Autentica",
|
||||
"milceryVanillaCream": "Lattevaniglia",
|
||||
|
@ -194,6 +219,7 @@
|
|||
"milceryRubySwirl": "Rosamix",
|
||||
"milceryCaramelSwirl": "Caramelmix",
|
||||
"milceryRainbowSwirl": "Triplomix",
|
||||
"eiscue": "Ice Face",
|
||||
"eiscueNoIce": "Liquefaccia",
|
||||
"indeedeeMale": "Maschio",
|
||||
"indeedeeFemale": "Femmina",
|
||||
|
@ -205,7 +231,9 @@
|
|||
"zamazentaCrowned": "Re degli Scudi",
|
||||
"kubfuSingleStrike": "Singolcolpo",
|
||||
"kubfuRapidStrike": "Pluricolpo",
|
||||
"zarude": "Normal",
|
||||
"zarudeDada": "Papà",
|
||||
"calyrex": "Normal",
|
||||
"calyrexIce": "Cavaliere Glaciale",
|
||||
"calyrexShadow": "Cavaliere Spettrale",
|
||||
"basculinMale": "Maschio",
|
||||
|
@ -251,8 +279,10 @@
|
|||
"ogerponHearthflameMaskTera": "Maschera Focolare Teracristal",
|
||||
"ogerponCornerstoneMask": "Maschera Fondamenta",
|
||||
"ogerponCornerstoneMaskTera": "Maschera Fondamenta Teracristal",
|
||||
"terpagos": "Normal Form",
|
||||
"terpagosTerastal": "Teracristal",
|
||||
"terpagosStellar": "Astrale",
|
||||
"galarDarumaka": "Standard Mode",
|
||||
"galarDarumakaZen": "Zen",
|
||||
"paldeaTaurosCombat": "Combattiva",
|
||||
"paldeaTaurosBlaze": "Infuocata",
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
"pikachu": "Normal",
|
||||
"pikachuCosplay": "コスプレ",
|
||||
"pikachuCoolCosplay": "クールなコスプレ",
|
||||
"pikachuBeautyCosplay": "きれいなコスプレ",
|
||||
|
@ -6,7 +7,9 @@
|
|||
"pikachuSmartCosplay": "かしこいコスプレ",
|
||||
"pikachuToughCosplay": "パワフルなコスプレ",
|
||||
"pikachuPartner": "パートナー",
|
||||
"eevee": "Normal",
|
||||
"eeveePartner": "パートナー",
|
||||
"pichu": "Normal",
|
||||
"pichuSpiky": "ギザみみ",
|
||||
"unownA": "A",
|
||||
"unownB": "B",
|
||||
|
@ -36,6 +39,7 @@
|
|||
"unownZ": "Z",
|
||||
"unownExclamation": "!",
|
||||
"unownQuestion": "?",
|
||||
"castform": "Normal Form",
|
||||
"castformSunny": "たいよう",
|
||||
"castformRainy": "あまみず",
|
||||
"castformSnowy": "ゆきぐも",
|
||||
|
@ -50,12 +54,15 @@
|
|||
"cherubiSunshine": "Sunshine",
|
||||
"shellosEast": "ひがし",
|
||||
"shellosWest": "にし",
|
||||
"rotom": "Normal",
|
||||
"rotomHeat": "ヒート",
|
||||
"rotomWash": "ウォッシュ",
|
||||
"rotomFrost": "フロスト",
|
||||
"rotomFan": "スピン",
|
||||
"rotomMow": "カット",
|
||||
"dialga": "Normal",
|
||||
"dialgaOrigin": "Origin",
|
||||
"palkia": "Normal",
|
||||
"palkiaOrigin": "Origin",
|
||||
"giratinaAltered": "アナザー",
|
||||
"giratinaOrigin": "Origin",
|
||||
|
@ -64,6 +71,7 @@
|
|||
"basculinRedStriped": "赤筋",
|
||||
"basculinBlueStriped": "青筋",
|
||||
"basculinWhiteStriped": "白筋",
|
||||
"darumaka": "Standard Mode",
|
||||
"darumakaZen": "Zen",
|
||||
"deerlingSpring": "春",
|
||||
"deerlingSummer": "夏",
|
||||
|
@ -75,17 +83,21 @@
|
|||
"thundurusTherian": "Therian",
|
||||
"landorusIncarnate": "けしん",
|
||||
"landorusTherian": "Therian",
|
||||
"kyurem": "Normal",
|
||||
"kyuremBlack": "Black",
|
||||
"kyuremWhite": "White",
|
||||
"keldeoOrdinary": "いつも",
|
||||
"keldeoResolute": "Resolute",
|
||||
"meloettaAria": "ボイス",
|
||||
"meloettaPirouette": "ステップ",
|
||||
"genesect": "Normal",
|
||||
"genesectShock": "Shock Drive",
|
||||
"genesectBurn": "Burn Drive",
|
||||
"genesectChill": "Chill Drive",
|
||||
"genesectDouse": "Douse Drive",
|
||||
"froakie": "Normal",
|
||||
"froakieBattleBond": "きずなへんげ",
|
||||
"froakieAsh": "Ash",
|
||||
"scatterbugMeadow": "はなぞの",
|
||||
"scatterbugIcySnow": "ひょうせつ",
|
||||
"scatterbugPolar": "ゆきぐに",
|
||||
|
@ -111,6 +123,7 @@
|
|||
"flabebeOrange": "オレンジ",
|
||||
"flabebeBlue": "青",
|
||||
"flabebeWhite": "白",
|
||||
"furfrou": "Natural Form",
|
||||
"furfrouHeart": "ハート",
|
||||
"furfrouStar": "スター",
|
||||
"furfrouDiamond": "ダイア",
|
||||
|
@ -124,6 +137,7 @@
|
|||
"espurrFemale": "Female",
|
||||
"honedgeShiled": "Shield",
|
||||
"honedgeBlade": "Blade",
|
||||
"pumpkaboo": "Average Size",
|
||||
"pumpkabooSmall": "ちいさい",
|
||||
"pumpkabooLarge": "おおきい",
|
||||
"pumpkabooSuper": "とくだい",
|
||||
|
@ -134,15 +148,18 @@
|
|||
"zygarde50Pc": "50%フォルム スワームチェンジ",
|
||||
"zygarde10Pc": "10%フォルム スワームチェンジ",
|
||||
"zygardeComplete": "パーフェクトフォルム",
|
||||
"hoopa": "Confined",
|
||||
"hoopaUnbound": "Unbound",
|
||||
"oricorioBaile": "めらめら",
|
||||
"oricorioPompom": "ぱちぱち",
|
||||
"oricorioPau": "ふらふら",
|
||||
"oricorioSensu": "まいまい",
|
||||
"rockruff": "Normal",
|
||||
"rockruffOwnTempo": "マイペース",
|
||||
"rockruffMidday": "Midday",
|
||||
"rockruffMidnight": "Midnight",
|
||||
"rockruffMidnight": "Dusk",
|
||||
"rockruffDusk": "Dusk",
|
||||
"wishiwashi": "Solo Form",
|
||||
"wishiwashiSchool": "School",
|
||||
"typeNullNormal": "Type: Normal",
|
||||
"typeNullFighting": "Type: Fighting",
|
||||
|
@ -178,11 +195,19 @@
|
|||
"miniorViolet": "紫",
|
||||
"mimikyuDisguised": "ばけたすがた",
|
||||
"mimikyuBusted": "ばれたすがた",
|
||||
"necrozma": "Normal",
|
||||
"necrozmaDuskMane": "Dusk Mane",
|
||||
"necrozmaDawnWings": "Dawn Wings",
|
||||
"necrozmaUltra": "Ultra",
|
||||
"magearna": "Normal",
|
||||
"magearnaOriginal": "500ねんまえ",
|
||||
"marshadow": "Normal",
|
||||
"marshadowZenith": "Zパワー",
|
||||
"cramorant": "Normal",
|
||||
"cramorantGulping": "Gulping Form",
|
||||
"cramorantGorging": "Gorging Form",
|
||||
"toxelAmped": "Amped Form",
|
||||
"toxelLowkey": "Low-Key Form",
|
||||
"sinisteaPhony": "がんさく",
|
||||
"sinisteaAntique": "しんさく",
|
||||
"milceryVanillaCream": "Vanilla Cream",
|
||||
|
@ -194,6 +219,7 @@
|
|||
"milceryRubySwirl": "Ruby Swirl",
|
||||
"milceryCaramelSwirl": "Caramel Swirl",
|
||||
"milceryRainbowSwirl": "Rainbow Swirl",
|
||||
"eiscue": "Ice Face",
|
||||
"eiscueNoIce": "ナイスなし",
|
||||
"indeedeeMale": "オス",
|
||||
"indeedeeFemale": "メス",
|
||||
|
@ -205,7 +231,9 @@
|
|||
"zamazentaCrowned": "Crowned",
|
||||
"kubfuSingleStrike": "Single Strike",
|
||||
"kubfuRapidStrike": "Rapid Strike",
|
||||
"zarude": "Normal",
|
||||
"zarudeDada": "とうちゃん",
|
||||
"calyrex": "Normal",
|
||||
"calyrexIce": "Ice Rider",
|
||||
"calyrexShadow": "Shadow Rider",
|
||||
"basculinMale": "Male",
|
||||
|
@ -251,8 +279,10 @@
|
|||
"ogerponHearthflameMaskTera": "Hearthflame Mask Terastallized",
|
||||
"ogerponCornerstoneMask": "Cornerstone Mask",
|
||||
"ogerponCornerstoneMaskTera": "Cornerstone Mask Terastallized",
|
||||
"terpagos": "Normal Form",
|
||||
"terpagosTerastal": "Terastal",
|
||||
"terpagosStellar": "Stellar",
|
||||
"galarDarumaka": "Standard Mode",
|
||||
"galarDarumakaZen": "Zen",
|
||||
"paldeaTaurosCombat": "コンバット",
|
||||
"paldeaTaurosBlaze": "ブレイズ",
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
"pikachu": "일반",
|
||||
"pikachuCosplay": "옷갈아입기",
|
||||
"pikachuCoolCosplay": "하드록",
|
||||
"pikachuBeautyCosplay": "마담",
|
||||
|
@ -6,7 +7,9 @@
|
|||
"pikachuSmartCosplay": "닥터",
|
||||
"pikachuToughCosplay": "마스크드",
|
||||
"pikachuPartner": "파트너",
|
||||
"eevee": "일반",
|
||||
"eeveePartner": "파트너",
|
||||
"pichu": "일반",
|
||||
"pichuSpiky": "삐쭉귀",
|
||||
"unownA": "A",
|
||||
"unownB": "B",
|
||||
|
@ -36,6 +39,7 @@
|
|||
"unownZ": "Z",
|
||||
"unownExclamation": "!",
|
||||
"unownQuestion": "?",
|
||||
"castform": "평상시",
|
||||
"castformSunny": "태양의 모습",
|
||||
"castformRainy": "빗방울의 모습",
|
||||
"castformSnowy": "설운의 모습",
|
||||
|
@ -46,46 +50,54 @@
|
|||
"burmyPlant": "초목도롱",
|
||||
"burmySandy": "모래땅도롱",
|
||||
"burmyTrash": "슈레도롱",
|
||||
"cherubiOvercast": "Overcast",
|
||||
"cherubiSunshine": "Sunshine",
|
||||
"cherubiOvercast": "네거폼",
|
||||
"cherubiSunshine": "포지폼",
|
||||
"shellosEast": "동쪽바다의 모습",
|
||||
"shellosWest": "서쪽바다의 모습",
|
||||
"rotomHeat": "히트",
|
||||
"rotomWash": "워시",
|
||||
"rotomFrost": "프로스트",
|
||||
"rotomFan": "스핀",
|
||||
"rotomMow": "커트",
|
||||
"dialgaOrigin": "Origin",
|
||||
"palkiaOrigin": "Origin",
|
||||
"rotom": "로토무",
|
||||
"rotomHeat": "히트로토무",
|
||||
"rotomWash": "워시로토무",
|
||||
"rotomFrost": "프로스트로토무",
|
||||
"rotomFan": "스핀로토무",
|
||||
"rotomMow": "커트로토무",
|
||||
"dialga": "어나더폼",
|
||||
"dialgaOrigin": "오리진폼",
|
||||
"palkia": "어나더폼",
|
||||
"palkiaOrigin": "오리진폼",
|
||||
"giratinaAltered": "어나더폼",
|
||||
"giratinaOrigin": "Origin",
|
||||
"giratinaOrigin": "오리진폼",
|
||||
"shayminLand": "랜드폼",
|
||||
"shayminSky": "Sky",
|
||||
"shayminSky": "스카이폼",
|
||||
"basculinRedStriped": "적색근의 모습",
|
||||
"basculinBlueStriped": "청색근의 모습",
|
||||
"basculinWhiteStriped": "백색근의 모습",
|
||||
"darumakaZen": "Zen",
|
||||
"darumaka": "노말모드",
|
||||
"darumakaZen": "달마모드",
|
||||
"deerlingSpring": "봄의 모습",
|
||||
"deerlingSummer": "여름의 모습",
|
||||
"deerlingAutumn": "가을의 모습",
|
||||
"deerlingWinter": "겨울의 모습",
|
||||
"tornadusIncarnate": "화신폼",
|
||||
"tornadusTherian": "Therian",
|
||||
"tornadusTherian": "영물폼",
|
||||
"thundurusIncarnate": "화신폼",
|
||||
"thundurusTherian": "Therian",
|
||||
"thundurusTherian": "영물폼",
|
||||
"landorusIncarnate": "화신폼",
|
||||
"landorusTherian": "Therian",
|
||||
"kyuremBlack": "Black",
|
||||
"kyuremWhite": "White",
|
||||
"landorusTherian": "영물폼",
|
||||
"kyurem": "큐레무",
|
||||
"kyuremBlack": "블랙큐레무",
|
||||
"kyuremWhite": "화이트큐레무",
|
||||
"keldeoOrdinary": "평상시 모습",
|
||||
"keldeoResolute": "Resolute",
|
||||
"keldeoResolute": "각오의 모습",
|
||||
"meloettaAria": "보이스폼",
|
||||
"meloettaPirouette": "스텝폼",
|
||||
"genesectShock": "Shock Drive",
|
||||
"genesectBurn": "Burn Drive",
|
||||
"genesectChill": "Chill Drive",
|
||||
"genesectDouse": "Douse Drive",
|
||||
"genesect": "노말폼",
|
||||
"genesectShock": "라이트닝폼",
|
||||
"genesectBurn": "블레이즈폼",
|
||||
"genesectChill": "프리즈폼",
|
||||
"genesectDouse": "아쿠아폼",
|
||||
"froakie": "개굴닌자",
|
||||
"froakieBattleBond": "유대변화",
|
||||
"froakieAsh": "지우개굴닌자",
|
||||
"scatterbugMeadow": "화원의 모양",
|
||||
"scatterbugIcySnow": "빙설의 모양",
|
||||
"scatterbugPolar": "설국의 모양",
|
||||
|
@ -111,6 +123,7 @@
|
|||
"flabebeOrange": "오렌지색 꽃",
|
||||
"flabebeBlue": "파란 꽃",
|
||||
"flabebeWhite": "하얀 꽃",
|
||||
"furfrou": "일반",
|
||||
"furfrouHeart": "하트컷",
|
||||
"furfrouStar": "스타컷",
|
||||
"furfrouDiamond": "다이아컷",
|
||||
|
@ -120,10 +133,11 @@
|
|||
"furfrouLaReine": "퀸컷",
|
||||
"furfrouKabuki": "가부키컷",
|
||||
"furfrouPharaoh": "킹덤컷",
|
||||
"espurrMale": "Male",
|
||||
"espurrFemale": "Female",
|
||||
"honedgeShiled": "Shield",
|
||||
"honedgeBlade": "Blade",
|
||||
"espurrMale": "수컷의 모습",
|
||||
"espurrFemale": "암컷의 모습",
|
||||
"honedgeShiled": "실드폼",
|
||||
"honedgeBlade": "블레이드폼",
|
||||
"pumpkaboo": "보통 사이즈",
|
||||
"pumpkabooSmall": "작은 사이즈",
|
||||
"pumpkabooLarge": "큰 사이즈",
|
||||
"pumpkabooSuper": "특대 사이즈",
|
||||
|
@ -134,34 +148,37 @@
|
|||
"zygarde50Pc": "스웜체인지 50%폼",
|
||||
"zygarde10Pc": "스웜체인지 10%폼",
|
||||
"zygardeComplete": "퍼펙트폼",
|
||||
"hoopaUnbound": "Unbound",
|
||||
"hoopa": "굴레에 빠진 모습",
|
||||
"hoopaUnbound": "굴레를 벗어난 모습",
|
||||
"oricorioBaile": "이글이글스타일",
|
||||
"oricorioPompom": "파칙파칙스타일",
|
||||
"oricorioPau": "훌라훌라스타일",
|
||||
"oricorioSensu": "하늘하늘스타일",
|
||||
"rockruff": "일반",
|
||||
"rockruffOwnTempo": "마이페이스",
|
||||
"rockruffMidday": "Midday",
|
||||
"rockruffMidnight": "Midnight",
|
||||
"rockruffMidnight": "Dusk",
|
||||
"wishiwashiSchool": "School",
|
||||
"typeNullNormal": "Type: Normal",
|
||||
"typeNullFighting": "Type: Fighting",
|
||||
"typeNullFlying": "Type: Flying",
|
||||
"typeNullPoison": "Type: Poison",
|
||||
"typeNullGround": "Type: Ground",
|
||||
"typeNullRock": "Type: Rock",
|
||||
"typeNullBug": "Type: Bug",
|
||||
"typeNullGhost": "Type: Ghost",
|
||||
"typeNullSteel": "Type: Steel",
|
||||
"typeNullFire": "Type: Fire",
|
||||
"typeNullWater": "Type: Water",
|
||||
"typeNullGrass": "Type: Grass",
|
||||
"typeNullElectric": "Type: Electric",
|
||||
"typeNullPsychic": "Type: Psychic",
|
||||
"typeNullIce": "Type: Ice",
|
||||
"typeNullDragon": "Type: Dragon",
|
||||
"typeNullDark": "Type: Dark",
|
||||
"typeNullFairy": "Type: Fairy",
|
||||
"rockruffMidday": "한낮의 모습",
|
||||
"rockruffMidnight": "한밤중의 모습",
|
||||
"rockruffDusk": "황혼의 모습",
|
||||
"wishiwashi": "단독의 모습",
|
||||
"wishiwashiSchool": "군집의 모습",
|
||||
"typeNullNormal": "노말",
|
||||
"typeNullFighting": "격투",
|
||||
"typeNullFlying": "비행",
|
||||
"typeNullPoison": "독",
|
||||
"typeNullGround": "땅",
|
||||
"typeNullRock": "바위",
|
||||
"typeNullBug": "벌레",
|
||||
"typeNullGhost": "고스트",
|
||||
"typeNullSteel": "강철",
|
||||
"typeNullFire": "불꽃",
|
||||
"typeNullWater": "물",
|
||||
"typeNullGrass": "풀",
|
||||
"typeNullElectric": "전기",
|
||||
"typeNullPsychic": "에스퍼",
|
||||
"typeNullIce": "얼음",
|
||||
"typeNullDragon": "드래곤",
|
||||
"typeNullDark": "악",
|
||||
"typeNullFairy": "페어리",
|
||||
"miniorRedMeteor": "유성의 모습(빨강)",
|
||||
"miniorOrangeMeteor": "유성의 모습(주황)",
|
||||
"miniorYellowMeteor": "유성의 모습(노랑)",
|
||||
|
@ -178,55 +195,66 @@
|
|||
"miniorViolet": "보라색 코어",
|
||||
"mimikyuDisguised": "둔갑한 모습",
|
||||
"mimikyuBusted": "들킨 모습",
|
||||
"necrozmaDuskMane": "Dusk Mane",
|
||||
"necrozmaDawnWings": "Dawn Wings",
|
||||
"necrozmaUltra": "Ultra",
|
||||
"necrozma": "네크로즈마",
|
||||
"necrozmaDuskMane": "황혼의 갈기",
|
||||
"necrozmaDawnWings": "새벽의 날개",
|
||||
"necrozmaUltra": "울트라네크로즈마",
|
||||
"magearna": "일반적인 모습",
|
||||
"magearnaOriginal": "500년 전의 색",
|
||||
"marshadowZenith": "투지를 불태운 마샤도",
|
||||
"marshadow": "일반적인 모습",
|
||||
"marshadowZenith": "타오르는 투지의 모습",
|
||||
"cramorant": "일반",
|
||||
"cramorantGulping": "그대로 삼킨 모습",
|
||||
"cramorantGorging": "통째로 삼킨 모습",
|
||||
"toxelAmped": "하이한 모습",
|
||||
"toxelLowkey": "로우한 모습",
|
||||
"sinisteaPhony": "위작품",
|
||||
"sinisteaAntique": "진작품",
|
||||
"milceryVanillaCream": "Vanilla Cream",
|
||||
"milceryRubyCream": "Ruby Cream",
|
||||
"milceryMatchaCream": "Matcha Cream",
|
||||
"milceryMintCream": "Mint Cream",
|
||||
"milceryLemonCream": "Lemon Cream",
|
||||
"milcerySaltedCream": "Salted Cream",
|
||||
"milceryRubySwirl": "Ruby Swirl",
|
||||
"milceryCaramelSwirl": "Caramel Swirl",
|
||||
"milceryRainbowSwirl": "Rainbow Swirl",
|
||||
"milceryVanillaCream": "밀키바닐라",
|
||||
"milceryRubyCream": "밀키루비",
|
||||
"milceryMatchaCream": "밀키말차",
|
||||
"milceryMintCream": "밀키민트",
|
||||
"milceryLemonCream": "밀키레몬",
|
||||
"milcerySaltedCream": "밀키솔트",
|
||||
"milceryRubySwirl": "루비믹스",
|
||||
"milceryCaramelSwirl": "캐러멜믹스",
|
||||
"milceryRainbowSwirl": "트리플믹스",
|
||||
"eiscue": "아이스페이스",
|
||||
"eiscueNoIce": "나이스페이스",
|
||||
"indeedeeMale": "수컷의 모습",
|
||||
"indeedeeFemale": "암컷의 모습",
|
||||
"morpekoFullBelly": "배부른 모양",
|
||||
"morpekoHangry": "Hangry",
|
||||
"morpekoHangry": "배고픈 모양",
|
||||
"zacianHeroOfManyBattles": "역전의 용사",
|
||||
"zacianCrowned": "Crowned",
|
||||
"zacianCrowned": "검왕",
|
||||
"zamazentaHeroOfManyBattles": "역전의 용사",
|
||||
"zamazentaCrowned": "Crowned",
|
||||
"kubfuSingleStrike": "Single Strike",
|
||||
"kubfuRapidStrike": "Rapid Strike",
|
||||
"zamazentaCrowned": "방패왕",
|
||||
"kubfuSingleStrike": "일격의 태세",
|
||||
"kubfuRapidStrike": "연격의 태세",
|
||||
"zarude": "일반",
|
||||
"zarudeDada": "아빠",
|
||||
"calyrexIce": "Ice Rider",
|
||||
"calyrexShadow": "Shadow Rider",
|
||||
"basculinMale": "Male",
|
||||
"basculinFemale": "Female",
|
||||
"calyrex": "일반",
|
||||
"calyrexIce": "백마 탄 모습",
|
||||
"calyrexShadow": "흑마 탄 모습",
|
||||
"basculinMale": "수컷의 모습",
|
||||
"basculinFemale": "암컷의 모습",
|
||||
"enamorusIncarnate": "화신폼",
|
||||
"enamorusTherian": "Therian",
|
||||
"lechonkMale": "Male",
|
||||
"lechonkFemale": "Female",
|
||||
"tandemausFour": "Family of Four",
|
||||
"tandemausThree": "Family of Three",
|
||||
"enamorusTherian": "영물폼",
|
||||
"lechonkMale": "수컷의 모습",
|
||||
"lechonkFemale": "암컷의 모습",
|
||||
"tandemausFour": "네 식구",
|
||||
"tandemausThree": "세 식구",
|
||||
"squawkabillyGreenPlumage": "그린 페더",
|
||||
"squawkabillyBluePlumage": "블루 페더",
|
||||
"squawkabillyYellowPlumage": "옐로 페더",
|
||||
"squawkabillyWhitePlumage": "화이트 페더",
|
||||
"finizenZero": "Zero",
|
||||
"finizenHero": "Hero",
|
||||
"finizenZero": "나이브폼",
|
||||
"finizenHero": "마이티폼",
|
||||
"tatsugiriCurly": "젖힌 모습",
|
||||
"tatsugiriDroopy": "늘어진 모습",
|
||||
"tatsugiriStretchy": "뻗은 모습",
|
||||
"dunsparceTwo": "Two-Segment",
|
||||
"dunsparceThree": "Three-Segment",
|
||||
"dunsparceTwo": "두 마디 폼",
|
||||
"dunsparceThree": "세 마디 폼",
|
||||
"gimmighoulChest": "상자폼",
|
||||
"gimmighoulRoaming": "도보폼",
|
||||
"koraidonApexBuild": "완전형태",
|
||||
|
@ -241,19 +269,21 @@
|
|||
"miraidonGlideMode": "글라이드모드",
|
||||
"poltchageistCounterfeit": "가짜배기의 모습",
|
||||
"poltchageistArtisan": "알짜배기의 모습",
|
||||
"poltchageistUnremarkable": "Unremarkable",
|
||||
"poltchageistMasterpiece": "Masterpiece",
|
||||
"ogerponTealMask": "Teal Mask",
|
||||
"ogerponTealMaskTera": "Teal Mask Terastallized",
|
||||
"ogerponWellspringMask": "Wellspring Mask",
|
||||
"ogerponWellspringMaskTera": "Wellspring Mask Terastallized",
|
||||
"ogerponHearthflameMask": "Hearthflame Mask",
|
||||
"ogerponHearthflameMaskTera": "Hearthflame Mask Terastallized",
|
||||
"ogerponCornerstoneMask": "Cornerstone Mask",
|
||||
"ogerponCornerstoneMaskTera": "Cornerstone Mask Terastallized",
|
||||
"terpagosTerastal": "Terastal",
|
||||
"terpagosStellar": "Stellar",
|
||||
"galarDarumakaZen": "Zen",
|
||||
"poltchageistUnremarkable": "범작의 모습",
|
||||
"poltchageistMasterpiece": "걸작의 모습",
|
||||
"ogerponTealMask": "벽록의가면",
|
||||
"ogerponTealMaskTera": "벽록의가면 테라스탈",
|
||||
"ogerponWellspringMask": "우물의가면",
|
||||
"ogerponWellspringMaskTera": "우물의가면 테라스탈",
|
||||
"ogerponHearthflameMask": "화덕의가면",
|
||||
"ogerponHearthflameMaskTera": "화덕의가면 테라스탈",
|
||||
"ogerponCornerstoneMask": "주춧돌의가면",
|
||||
"ogerponCornerstoneMaskTera": "주춧돌의가면 테라스탈",
|
||||
"terpagos": "노말폼",
|
||||
"terpagosTerastal": "테라스탈폼",
|
||||
"terpagosStellar": "스텔라폼",
|
||||
"galarDarumaka": "노말모드",
|
||||
"galarDarumakaZen": "달마모드",
|
||||
"paldeaTaurosCombat": "컴뱃종",
|
||||
"paldeaTaurosBlaze": "블레이즈종",
|
||||
"paldeaTaurosAqua": "워터종"
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
"pikachu": "Normal",
|
||||
"pikachuCosplay": "Cosplay",
|
||||
"pikachuCoolCosplay": "Cosplay Legal",
|
||||
"pikachuBeautyCosplay": "Cosplay Bonito",
|
||||
|
@ -6,7 +7,9 @@
|
|||
"pikachuSmartCosplay": "Cosplay Inteligente",
|
||||
"pikachuToughCosplay": "Cosplay Forte",
|
||||
"pikachuPartner": "Parceiro",
|
||||
"eevee": "Normal",
|
||||
"eeveePartner": "Parceiro",
|
||||
"pichu": "Normal",
|
||||
"pichuSpiky": "Orelha Espetada",
|
||||
"unownA": "A",
|
||||
"unownB": "B",
|
||||
|
@ -36,6 +39,7 @@
|
|||
"unownZ": "Z",
|
||||
"unownExclamation": "!",
|
||||
"unownQuestion": "?",
|
||||
"castform": "Normal Form",
|
||||
"castformSunny": "Ensolarado",
|
||||
"castformRainy": "Chuvoso",
|
||||
"castformSnowy": "Nevado",
|
||||
|
@ -50,12 +54,15 @@
|
|||
"cherubiSunshine": "Solar",
|
||||
"shellosEast": "Leste",
|
||||
"shellosWest": "Oeste",
|
||||
"rotom": "Normal",
|
||||
"rotomHeat": "Calor",
|
||||
"rotomWash": "Lavagem",
|
||||
"rotomFrost": "Congelante",
|
||||
"rotomFan": "Ventilador",
|
||||
"rotomMow": "Corte",
|
||||
"dialga": "Normal",
|
||||
"dialgaOrigin": "Origem",
|
||||
"palkia": "Normal",
|
||||
"palkiaOrigin": "Origem",
|
||||
"giratinaAltered": "Alterado",
|
||||
"giratinaOrigin": "Origem",
|
||||
|
@ -64,6 +71,7 @@
|
|||
"basculinRedStriped": "Listras Vermelhas",
|
||||
"basculinBlueStriped": "Listras Azuis",
|
||||
"basculinWhiteStriped": "Listras Brancas",
|
||||
"darumaka": "Standard Mode",
|
||||
"darumakaZen": "Zen",
|
||||
"deerlingSpring": "Primavera",
|
||||
"deerlingSummer": "Verão",
|
||||
|
@ -75,17 +83,21 @@
|
|||
"thundurusTherian": "Therian",
|
||||
"landorusIncarnate": "Materializado",
|
||||
"landorusTherian": "Therian",
|
||||
"kyurem": "Normal",
|
||||
"kyuremBlack": "Preto",
|
||||
"kyuremWhite": "Branco",
|
||||
"keldeoOrdinary": "Comum",
|
||||
"keldeoResolute": "Resoluto",
|
||||
"meloettaAria": "Ária",
|
||||
"meloettaPirouette": "Pirueta",
|
||||
"genesect": "Normal",
|
||||
"genesectShock": "Disco Elétrico",
|
||||
"genesectBurn": "Disco Incendiante",
|
||||
"genesectChill": "Disco Congelante",
|
||||
"genesectDouse": "Disco Hídrico",
|
||||
"froakie": "Normal",
|
||||
"froakieBattleBond": "Vínculo de Batalha",
|
||||
"froakieAsh": "Ash",
|
||||
"scatterbugMeadow": "Prado",
|
||||
"scatterbugIcySnow": "Neve Congelada",
|
||||
"scatterbugPolar": "Polar",
|
||||
|
@ -111,6 +123,7 @@
|
|||
"flabebeOrange": "Laranja",
|
||||
"flabebeBlue": "Azul",
|
||||
"flabebeWhite": "Branca",
|
||||
"furfrou": "Natural Form",
|
||||
"furfrouHeart": "Coração",
|
||||
"furfrouStar": "Estrela",
|
||||
"furfrouDiamond": "Diamante",
|
||||
|
@ -124,6 +137,7 @@
|
|||
"espurrFemale": "Fêmea",
|
||||
"honedgeShiled": "Escudo",
|
||||
"honedgeBlade": "Lâmina",
|
||||
"pumpkaboo": "Average Size",
|
||||
"pumpkabooSmall": "Pequeno",
|
||||
"pumpkabooLarge": "Grande",
|
||||
"pumpkabooSuper": "Extragrande",
|
||||
|
@ -134,15 +148,18 @@
|
|||
"zygarde50Pc": "Forma 50% Agrupada",
|
||||
"zygarde10Pc": "Forma 10% Agrupada",
|
||||
"zygardeComplete": "Forma Completa",
|
||||
"hoopa": "Confined",
|
||||
"hoopaUnbound": "Libertado",
|
||||
"oricorioBaile": "Flamenco",
|
||||
"oricorioPompom": "Pompom",
|
||||
"oricorioPau": "Hula",
|
||||
"oricorioSensu": "Leque",
|
||||
"rockruff": "Normal",
|
||||
"rockruffOwnTempo": "Próprio Tempo",
|
||||
"rockruffMidday": "Diurno",
|
||||
"rockruffMidnight": "Noturno",
|
||||
"rockruffMidnight": "Crepúsculo",
|
||||
"rockruffDusk": "Crepúsculo",
|
||||
"wishiwashi": "Solo Form",
|
||||
"wishiwashiSchool": "Cardume",
|
||||
"typeNullNormal": "Tipo: Normal",
|
||||
"typeNullFighting": "Tipo: Lutador",
|
||||
|
@ -178,11 +195,19 @@
|
|||
"miniorViolet": "Violeta",
|
||||
"mimikyuDisguised": "Disfarçado",
|
||||
"mimikyuBusted": "Descoberto",
|
||||
"necrozma": "Normal",
|
||||
"necrozmaDuskMane": "Juba Crepúsculo",
|
||||
"necrozmaDawnWings": "Asas Alvorada",
|
||||
"necrozmaUltra": "Ultra",
|
||||
"magearna": "Normal",
|
||||
"magearnaOriginal": "Original",
|
||||
"marshadow": "Normal",
|
||||
"marshadowZenith": "Zênite",
|
||||
"cramorant": "Normal",
|
||||
"cramorantGulping": "Gulping Form",
|
||||
"cramorantGorging": "Gorging Form",
|
||||
"toxelAmped": "Amped Form",
|
||||
"toxelLowkey": "Low-Key Form",
|
||||
"sinisteaPhony": "Falsificado",
|
||||
"sinisteaAntique": "Autêntico",
|
||||
"milceryVanillaCream": "Creme de Baunilha",
|
||||
|
@ -194,6 +219,7 @@
|
|||
"milceryRubySwirl": "Mistura Rubi",
|
||||
"milceryCaramelSwirl": "Mistura de Caramelo",
|
||||
"milceryRainbowSwirl": "Mistura Tricolor",
|
||||
"eiscue": "Ice Face",
|
||||
"eiscueNoIce": "Descongelado",
|
||||
"indeedeeMale": "Macho",
|
||||
"indeedeeFemale": "Fêmea",
|
||||
|
@ -205,7 +231,9 @@
|
|||
"zamazentaCrowned": "Coroado",
|
||||
"kubfuSingleStrike": "Golpe Decisivo",
|
||||
"kubfuRapidStrike": "Golpe Fluido",
|
||||
"zarude": "Normal",
|
||||
"zarudeDada": "Papa",
|
||||
"calyrex": "Normal",
|
||||
"calyrexIce": "Cavaleiro Glacial",
|
||||
"calyrexShadow": "Cavaleiro Espectral",
|
||||
"basculinMale": "Macho",
|
||||
|
@ -251,8 +279,10 @@
|
|||
"ogerponHearthflameMaskTera": "Máscara Fornalha Terastalizada",
|
||||
"ogerponCornerstoneMask": "Máscara Alicerce",
|
||||
"ogerponCornerstoneMaskTera": "Máscara Alicerce Terastalizada",
|
||||
"terpagos": "Normal Form",
|
||||
"terpagosTerastal": "Teracristal",
|
||||
"terpagosStellar": "Astral",
|
||||
"galarDarumaka": "Standard Mode",
|
||||
"galarDarumakaZen": "Zen",
|
||||
"paldeaTaurosCombat": "Combate",
|
||||
"paldeaTaurosBlaze": "Chamas",
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
"pikachu": "Normal",
|
||||
"pikachuCosplay": "换装",
|
||||
"pikachuCoolCosplay": "摇滚巨星",
|
||||
"pikachuBeautyCosplay": "贵妇",
|
||||
|
@ -6,7 +7,9 @@
|
|||
"pikachuSmartCosplay": "博士",
|
||||
"pikachuToughCosplay": "面罩摔跤手",
|
||||
"pikachuPartner": "搭档",
|
||||
"eevee": "Normal",
|
||||
"eeveePartner": "搭档",
|
||||
"pichu": "Normal",
|
||||
"pichuSpiky": "刺刺耳",
|
||||
"unownA": "A",
|
||||
"unownB": "B",
|
||||
|
@ -36,6 +39,7 @@
|
|||
"unownZ": "Z",
|
||||
"unownExclamation": "!",
|
||||
"unownQuestion": "?",
|
||||
"castform": "Normal Form",
|
||||
"castformSunny": "晴天",
|
||||
"castformRainy": "雨天",
|
||||
"castformSnowy": "雪天",
|
||||
|
@ -50,12 +54,15 @@
|
|||
"cherubiSunshine": "Sunshine",
|
||||
"shellosEast": "东海",
|
||||
"shellosWest": "西海",
|
||||
"rotom": "Normal",
|
||||
"rotomHeat": "加热",
|
||||
"rotomWash": "清洗",
|
||||
"rotomFrost": "结冰",
|
||||
"rotomFan": "旋转",
|
||||
"rotomMow": "切割",
|
||||
"dialga": "Normal",
|
||||
"dialgaOrigin": "Origin",
|
||||
"palkia": "Normal",
|
||||
"palkiaOrigin": "Origin",
|
||||
"giratinaAltered": "别种",
|
||||
"giratinaOrigin": "Origin",
|
||||
|
@ -64,6 +71,7 @@
|
|||
"basculinRedStriped": "红条纹",
|
||||
"basculinBlueStriped": "蓝条纹",
|
||||
"basculinWhiteStriped": "白条纹",
|
||||
"darumaka": "Standard Mode",
|
||||
"darumakaZen": "Zen",
|
||||
"deerlingSpring": "春天",
|
||||
"deerlingSummer": "夏天",
|
||||
|
@ -75,17 +83,21 @@
|
|||
"thundurusTherian": "Therian",
|
||||
"landorusIncarnate": "化身",
|
||||
"landorusTherian": "Therian",
|
||||
"kyurem": "Normal",
|
||||
"kyuremBlack": "Black",
|
||||
"kyuremWhite": "White",
|
||||
"keldeoOrdinary": "通常",
|
||||
"keldeoResolute": "Resolute",
|
||||
"meloettaAria": "歌声",
|
||||
"meloettaPirouette": "舞步形态",
|
||||
"genesect": "Normal",
|
||||
"genesectShock": "Shock Drive",
|
||||
"genesectBurn": "Burn Drive",
|
||||
"genesectChill": "Chill Drive",
|
||||
"genesectDouse": "Douse Drive",
|
||||
"froakie": "Normal",
|
||||
"froakieBattleBond": "牵绊变身",
|
||||
"froakieAsh": "Ash",
|
||||
"scatterbugMeadow": "花园花纹",
|
||||
"scatterbugIcySnow": "冰雪花纹",
|
||||
"scatterbugPolar": "雪国花纹",
|
||||
|
@ -111,6 +123,7 @@
|
|||
"flabebeOrange": "橙花",
|
||||
"flabebeBlue": "蓝花",
|
||||
"flabebeWhite": "白花",
|
||||
"furfrou": "Natural Form",
|
||||
"furfrouHeart": "心形造型",
|
||||
"furfrouStar": "星形造型",
|
||||
"furfrouDiamond": "菱形造型",
|
||||
|
@ -124,6 +137,7 @@
|
|||
"espurrFemale": "Female",
|
||||
"honedgeShiled": "Shield",
|
||||
"honedgeBlade": "Blade",
|
||||
"pumpkaboo": "Average Size",
|
||||
"pumpkabooSmall": "小尺寸",
|
||||
"pumpkabooLarge": "大尺寸",
|
||||
"pumpkabooSuper": "特大尺寸",
|
||||
|
@ -134,15 +148,18 @@
|
|||
"zygarde50Pc": "50%形态 群聚变形",
|
||||
"zygarde10Pc": "10%形态 群聚变形",
|
||||
"zygardeComplete": "完全体形态",
|
||||
"hoopa": "Confined",
|
||||
"hoopaUnbound": "Unbound",
|
||||
"oricorioBaile": "热辣热辣风格",
|
||||
"oricorioPompom": "啪滋啪滋风格",
|
||||
"oricorioPau": "呼拉呼拉风格",
|
||||
"oricorioSensu": "轻盈轻盈风格",
|
||||
"rockruff": "Normal",
|
||||
"rockruffOwnTempo": "特殊岩狗狗",
|
||||
"rockruffMidday": "Midday",
|
||||
"rockruffMidnight": "Midnight",
|
||||
"rockruffMidnight": "Dusk",
|
||||
"rockruffDusk": "Dusk",
|
||||
"wishiwashi": "Solo Form",
|
||||
"wishiwashiSchool": "School",
|
||||
"typeNullNormal": "Type: Normal",
|
||||
"typeNullFighting": "Type: Fighting",
|
||||
|
@ -178,11 +195,19 @@
|
|||
"miniorViolet": "紫色",
|
||||
"mimikyuDisguised": "化形",
|
||||
"mimikyuBusted": "现形",
|
||||
"necrozma": "Normal",
|
||||
"necrozmaDuskMane": "Dusk Mane",
|
||||
"necrozmaDawnWings": "Dawn Wings",
|
||||
"necrozmaUltra": "Ultra",
|
||||
"magearna": "Normal",
|
||||
"magearnaOriginal": "500年前的颜色",
|
||||
"marshadow": "Normal",
|
||||
"marshadowZenith": "全力",
|
||||
"cramorant": "Normal",
|
||||
"cramorantGulping": "Gulping Form",
|
||||
"cramorantGorging": "Gorging Form",
|
||||
"toxelAmped": "Amped Form",
|
||||
"toxelLowkey": "Low-Key Form",
|
||||
"sinisteaPhony": "赝品",
|
||||
"sinisteaAntique": "真品",
|
||||
"milceryVanillaCream": "Vanilla Cream",
|
||||
|
@ -194,6 +219,7 @@
|
|||
"milceryRubySwirl": "Ruby Swirl",
|
||||
"milceryCaramelSwirl": "Caramel Swirl",
|
||||
"milceryRainbowSwirl": "Rainbow Swirl",
|
||||
"eiscue": "Ice Face",
|
||||
"eiscueNoIce": "解冻头",
|
||||
"indeedeeMale": "雄性",
|
||||
"indeedeeFemale": "雌性",
|
||||
|
@ -205,7 +231,9 @@
|
|||
"zamazentaCrowned": "Crowned",
|
||||
"kubfuSingleStrike": "Single Strike",
|
||||
"kubfuRapidStrike": "Rapid Strike",
|
||||
"zarude": "Normal",
|
||||
"zarudeDada": "老爹",
|
||||
"calyrex": "Normal",
|
||||
"calyrexIce": "Ice Rider",
|
||||
"calyrexShadow": "Shadow Rider",
|
||||
"basculinMale": "Male",
|
||||
|
@ -251,8 +279,10 @@
|
|||
"ogerponHearthflameMaskTera": "Hearthflame Mask Terastallized",
|
||||
"ogerponCornerstoneMask": "Cornerstone Mask",
|
||||
"ogerponCornerstoneMaskTera": "Cornerstone Mask Terastallized",
|
||||
"terpagos": "Normal Form",
|
||||
"terpagosTerastal": "Terastal",
|
||||
"terpagosStellar": "Stellar",
|
||||
"galarDarumaka": "Standard Mode",
|
||||
"galarDarumakaZen": "Zen",
|
||||
"paldeaTaurosCombat": "斗战种",
|
||||
"paldeaTaurosBlaze": "火炽种",
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
"pikachu": "Normal",
|
||||
"pikachuCosplay": "換裝",
|
||||
"pikachuCoolCosplay": "搖滾巨星",
|
||||
"pikachuBeautyCosplay": "貴婦",
|
||||
|
@ -6,7 +7,9 @@
|
|||
"pikachuSmartCosplay": "博士",
|
||||
"pikachuToughCosplay": "面罩摔跤手",
|
||||
"pikachuPartner": "搭檔",
|
||||
"eevee": "Normal",
|
||||
"eeveePartner": "搭檔",
|
||||
"pichu": "Normal",
|
||||
"pichuSpiky": "刺刺耳",
|
||||
"unownA": "A",
|
||||
"unownB": "B",
|
||||
|
@ -36,6 +39,7 @@
|
|||
"unownZ": "Z",
|
||||
"unownExclamation": "!",
|
||||
"unownQuestion": "?",
|
||||
"castform": "Normal Form",
|
||||
"castformSunny": "晴天",
|
||||
"castformRainy": "雨天",
|
||||
"castformSnowy": "雪天",
|
||||
|
@ -50,12 +54,15 @@
|
|||
"cherubiSunshine": "Sunshine",
|
||||
"shellosEast": "東海",
|
||||
"shellosWest": "西海",
|
||||
"rotom": "Normal",
|
||||
"rotomHeat": "加熱",
|
||||
"rotomWash": "清洗",
|
||||
"rotomFrost": "結冰",
|
||||
"rotomFan": "旋轉",
|
||||
"rotomMow": "切割",
|
||||
"dialga": "Normal",
|
||||
"dialgaOrigin": "Origin",
|
||||
"palkia": "Normal",
|
||||
"palkiaOrigin": "Origin",
|
||||
"giratinaAltered": "別種",
|
||||
"giratinaOrigin": "Origin",
|
||||
|
@ -64,6 +71,7 @@
|
|||
"basculinRedStriped": "紅條紋",
|
||||
"basculinBlueStriped": "藍條紋",
|
||||
"basculinWhiteStriped": "白條紋",
|
||||
"darumaka": "Standard Mode",
|
||||
"darumakaZen": "Zen",
|
||||
"deerlingSpring": "春天",
|
||||
"deerlingSummer": "夏天",
|
||||
|
@ -75,17 +83,21 @@
|
|||
"thundurusTherian": "Therian",
|
||||
"landorusIncarnate": "化身",
|
||||
"landorusTherian": "Therian",
|
||||
"kyurem": "Normal",
|
||||
"kyuremBlack": "Black",
|
||||
"kyuremWhite": "White",
|
||||
"keldeoOrdinary": "通常",
|
||||
"keldeoResolute": "Resolute",
|
||||
"meloettaAria": "歌聲",
|
||||
"meloettaPirouette": "舞步形態",
|
||||
"genesect": "Normal",
|
||||
"genesectShock": "Shock Drive",
|
||||
"genesectBurn": "Burn Drive",
|
||||
"genesectChill": "Chill Drive",
|
||||
"genesectDouse": "Douse Drive",
|
||||
"froakie": "Normal",
|
||||
"froakieBattleBond": "牽絆變身",
|
||||
"froakieAsh": "Ash",
|
||||
"scatterbugMeadow": "花園花紋",
|
||||
"scatterbugIcySnow": "冰雪花紋",
|
||||
"scatterbugPolar": "雪國花紋",
|
||||
|
@ -111,6 +123,7 @@
|
|||
"flabebeOrange": "橙花",
|
||||
"flabebeBlue": "藍花",
|
||||
"flabebeWhite": "白花",
|
||||
"furfrou": "Natural Form",
|
||||
"furfrouHeart": "心形造型",
|
||||
"furfrouStar": "星形造型",
|
||||
"furfrouDiamond": "菱形造型",
|
||||
|
@ -124,6 +137,7 @@
|
|||
"espurrFemale": "Female",
|
||||
"honedgeShiled": "Shield",
|
||||
"honedgeBlade": "Blade",
|
||||
"pumpkaboo": "Average Size",
|
||||
"pumpkabooSmall": "小尺寸",
|
||||
"pumpkabooLarge": "大尺寸",
|
||||
"pumpkabooSuper": "特大尺寸",
|
||||
|
@ -134,15 +148,18 @@
|
|||
"zygarde50Pc": "50%形態 群聚變形",
|
||||
"zygarde10Pc": "10%形態 群聚變形",
|
||||
"zygardeComplete": "完全體形態",
|
||||
"hoopa": "Confined",
|
||||
"hoopaUnbound": "Unbound",
|
||||
"oricorioBaile": "熱辣熱辣風格",
|
||||
"oricorioPompom": "啪滋啪滋風格",
|
||||
"oricorioPau": "呼拉呼拉風格",
|
||||
"oricorioSensu": "輕盈輕盈風格",
|
||||
"rockruff": "Normal",
|
||||
"rockruffOwnTempo": "特殊岩狗狗",
|
||||
"rockruffMidday": "Midday",
|
||||
"rockruffMidnight": "Midnight",
|
||||
"rockruffMidnight": "Dusk",
|
||||
"rockruffDusk": "Dusk",
|
||||
"wishiwashi": "Solo Form",
|
||||
"wishiwashiSchool": "School",
|
||||
"typeNullNormal": "Type: Normal",
|
||||
"typeNullFighting": "Type: Fighting",
|
||||
|
@ -178,11 +195,19 @@
|
|||
"miniorViolet": "紫色",
|
||||
"mimikyuDisguised": "化形",
|
||||
"mimikyuBusted": "現形",
|
||||
"necrozma": "Normal",
|
||||
"necrozmaDuskMane": "Dusk Mane",
|
||||
"necrozmaDawnWings": "Dawn Wings",
|
||||
"necrozmaUltra": "Ultra",
|
||||
"magearna": "Normal",
|
||||
"magearnaOriginal": "500年前的顔色",
|
||||
"marshadow": "Normal",
|
||||
"marshadowZenith": "全力",
|
||||
"cramorant": "Normal",
|
||||
"cramorantGulping": "Gulping Form",
|
||||
"cramorantGorging": "Gorging Form",
|
||||
"toxelAmped": "Amped Form",
|
||||
"toxelLowkey": "Low-Key Form",
|
||||
"sinisteaPhony": "赝品",
|
||||
"sinisteaAntique": "真品",
|
||||
"milceryVanillaCream": "Vanilla Cream",
|
||||
|
@ -194,6 +219,7 @@
|
|||
"milceryRubySwirl": "Ruby Swirl",
|
||||
"milceryCaramelSwirl": "Caramel Swirl",
|
||||
"milceryRainbowSwirl": "Rainbow Swirl",
|
||||
"eiscue": "Ice Face",
|
||||
"eiscueNoIce": "解凍頭",
|
||||
"indeedeeMale": "雄性",
|
||||
"indeedeeFemale": "雌性",
|
||||
|
@ -205,7 +231,9 @@
|
|||
"zamazentaCrowned": "Crowned",
|
||||
"kubfuSingleStrike": "Single Strike",
|
||||
"kubfuRapidStrike": "Rapid Strike",
|
||||
"zarude": "Normal",
|
||||
"zarudeDada": "老爹",
|
||||
"calyrex": "Normal",
|
||||
"calyrexIce": "Ice Rider",
|
||||
"calyrexShadow": "Shadow Rider",
|
||||
"basculinMale": "Male",
|
||||
|
@ -251,8 +279,10 @@
|
|||
"ogerponHearthflameMaskTera": "Hearthflame Mask Terastallized",
|
||||
"ogerponCornerstoneMask": "Cornerstone Mask",
|
||||
"ogerponCornerstoneMaskTera": "Cornerstone Mask Terastallized",
|
||||
"terpagos": "Normal Form",
|
||||
"terpagosTerastal": "Terastal",
|
||||
"terpagosStellar": "Stellar",
|
||||
"galarDarumaka": "Standard Mode",
|
||||
"galarDarumakaZen": "Zen",
|
||||
"paldeaTaurosCombat": "鬥戰種",
|
||||
"paldeaTaurosBlaze": "火熾種",
|
||||
|
|
|
@ -0,0 +1,87 @@
|
|||
import { BattlerIndex } from "#app/battle";
|
||||
import { allMoves, ShellSideArmCategoryAttr } from "#app/data/move";
|
||||
import { Abilities } from "#enums/abilities";
|
||||
import { Moves } from "#enums/moves";
|
||||
import { Species } from "#enums/species";
|
||||
import GameManager from "#test/utils/gameManager";
|
||||
import Phaser from "phaser";
|
||||
import { afterEach, beforeAll, beforeEach, describe, it, expect, vi } from "vitest";
|
||||
|
||||
describe("Moves - Shell Side Arm", () => {
|
||||
let phaserGame: Phaser.Game;
|
||||
let game: GameManager;
|
||||
const TIMEOUT = 20 * 1000;
|
||||
|
||||
beforeAll(() => {
|
||||
phaserGame = new Phaser.Game({
|
||||
type: Phaser.HEADLESS,
|
||||
});
|
||||
});
|
||||
|
||||
afterEach(() => {
|
||||
game.phaseInterceptor.restoreOg();
|
||||
});
|
||||
|
||||
beforeEach(() => {
|
||||
game = new GameManager(phaserGame);
|
||||
game.override
|
||||
.moveset([Moves.SHELL_SIDE_ARM])
|
||||
.battleType("single")
|
||||
.startingLevel(100)
|
||||
.enemyLevel(100)
|
||||
.enemyAbility(Abilities.BALL_FETCH)
|
||||
.enemyMoveset(Moves.SPLASH);
|
||||
});
|
||||
|
||||
it("becomes a physical attack if forecasted to deal more damage as physical", async () => {
|
||||
game.override.enemySpecies(Species.SNORLAX);
|
||||
|
||||
await game.classicMode.startBattle([Species.MANAPHY]);
|
||||
|
||||
const shellSideArm = allMoves[Moves.SHELL_SIDE_ARM];
|
||||
const shellSideArmAttr = shellSideArm.getAttrs(ShellSideArmCategoryAttr)[0];
|
||||
vi.spyOn(shellSideArmAttr, "apply");
|
||||
|
||||
game.move.select(Moves.SHELL_SIDE_ARM);
|
||||
|
||||
await game.phaseInterceptor.to("MoveEffectPhase");
|
||||
|
||||
expect(shellSideArmAttr.apply).toHaveLastReturnedWith(true);
|
||||
}, TIMEOUT);
|
||||
|
||||
it("remains a special attack if forecasted to deal more damage as special", async () => {
|
||||
game.override.enemySpecies(Species.SLOWBRO);
|
||||
|
||||
await game.classicMode.startBattle([Species.MANAPHY]);
|
||||
|
||||
const shellSideArm = allMoves[Moves.SHELL_SIDE_ARM];
|
||||
const shellSideArmAttr = shellSideArm.getAttrs(ShellSideArmCategoryAttr)[0];
|
||||
vi.spyOn(shellSideArmAttr, "apply");
|
||||
|
||||
game.move.select(Moves.SHELL_SIDE_ARM);
|
||||
|
||||
await game.phaseInterceptor.to("MoveEffectPhase");
|
||||
|
||||
expect(shellSideArmAttr.apply).toHaveLastReturnedWith(false);
|
||||
}, TIMEOUT);
|
||||
|
||||
it("respects stat stage changes when forecasting base damage", async () => {
|
||||
game.override
|
||||
.enemySpecies(Species.SNORLAX)
|
||||
.enemyMoveset(Moves.COTTON_GUARD);
|
||||
|
||||
await game.classicMode.startBattle([Species.MANAPHY]);
|
||||
|
||||
const shellSideArm = allMoves[Moves.SHELL_SIDE_ARM];
|
||||
const shellSideArmAttr = shellSideArm.getAttrs(ShellSideArmCategoryAttr)[0];
|
||||
vi.spyOn(shellSideArmAttr, "apply");
|
||||
|
||||
game.move.select(Moves.SHELL_SIDE_ARM);
|
||||
|
||||
await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]);
|
||||
|
||||
await game.phaseInterceptor.to("BerryPhase", false);
|
||||
|
||||
expect(shellSideArmAttr.apply).toHaveLastReturnedWith(false);
|
||||
}, TIMEOUT);
|
||||
});
|
|
@ -344,6 +344,7 @@ export default abstract class AbstractOptionSelectUiHandler extends UiHandler {
|
|||
super.clear();
|
||||
this.config = null;
|
||||
this.optionSelectContainer.setVisible(false);
|
||||
this.scrollCursor = 0;
|
||||
this.eraseCursor();
|
||||
}
|
||||
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
import BattleScene from "../battle-scene";
|
||||
import BattleScene from "#app/battle-scene";
|
||||
import { Button } from "#enums/buttons";
|
||||
import i18next from "i18next";
|
||||
import { Achv, achvs, getAchievementDescription } from "../system/achv";
|
||||
import { Voucher, getVoucherTypeIcon, getVoucherTypeName, vouchers } from "../system/voucher";
|
||||
import MessageUiHandler from "./message-ui-handler";
|
||||
import { addTextObject, TextStyle } from "./text";
|
||||
import { Mode } from "./ui";
|
||||
import { addWindow } from "./ui-theme";
|
||||
import { Achv, achvs, getAchievementDescription } from "#app/system/achv";
|
||||
import { Voucher, getVoucherTypeIcon, getVoucherTypeName, vouchers } from "#app/system/voucher";
|
||||
import MessageUiHandler from "#app/ui/message-ui-handler";
|
||||
import { addTextObject, TextStyle } from "#app/ui/text";
|
||||
import { Mode } from "#app/ui/ui";
|
||||
import { addWindow } from "#app/ui/ui-theme";
|
||||
import { ScrollBar } from "#app/ui/scroll-bar";
|
||||
import { PlayerGender } from "#enums/player-gender";
|
||||
|
||||
enum Page {
|
||||
|
@ -49,6 +50,7 @@ export default class AchvsUiHandler extends MessageUiHandler {
|
|||
private vouchersTotal: number;
|
||||
private currentTotal: number;
|
||||
|
||||
private scrollBar: ScrollBar;
|
||||
private scrollCursor: number;
|
||||
private cursorObj: Phaser.GameObjects.NineSlice | null;
|
||||
private currentPage: Page;
|
||||
|
@ -91,7 +93,10 @@ export default class AchvsUiHandler extends MessageUiHandler {
|
|||
this.iconsBg = addWindow(this.scene, 0, this.headerBg.height, (this.scene.game.canvas.width / 6) - 2, (this.scene.game.canvas.height / 6) - this.headerBg.height - 68);
|
||||
this.iconsBg.setOrigin(0, 0);
|
||||
|
||||
this.iconsContainer = this.scene.add.container(6, this.headerBg.height + 6);
|
||||
const yOffset = 6;
|
||||
this.scrollBar = new ScrollBar(this.scene, this.iconsBg.width - 9, this.iconsBg.y + yOffset, 4, this.iconsBg.height - yOffset * 2, this.ROWS);
|
||||
|
||||
this.iconsContainer = this.scene.add.container(5, this.headerBg.height + 8);
|
||||
|
||||
this.icons = [];
|
||||
|
||||
|
@ -148,6 +153,7 @@ export default class AchvsUiHandler extends MessageUiHandler {
|
|||
this.mainContainer.add(this.headerText);
|
||||
this.mainContainer.add(this.headerActionText);
|
||||
this.mainContainer.add(this.iconsBg);
|
||||
this.mainContainer.add(this.scrollBar);
|
||||
this.mainContainer.add(this.iconsContainer);
|
||||
this.mainContainer.add(titleBg);
|
||||
this.mainContainer.add(this.titleText);
|
||||
|
@ -162,6 +168,7 @@ export default class AchvsUiHandler extends MessageUiHandler {
|
|||
|
||||
this.currentPage = Page.ACHIEVEMENTS;
|
||||
this.setCursor(0);
|
||||
this.setScrollCursor(0);
|
||||
|
||||
this.mainContainer.setVisible(false);
|
||||
}
|
||||
|
@ -175,6 +182,8 @@ export default class AchvsUiHandler extends MessageUiHandler {
|
|||
this.mainContainer.setVisible(true);
|
||||
this.setCursor(0);
|
||||
this.setScrollCursor(0);
|
||||
this.scrollBar.setTotalRows(Math.ceil(this.currentTotal / this.COLS));
|
||||
this.scrollBar.setScrollCursor(0);
|
||||
|
||||
this.getUi().moveTo(this.mainContainer, this.getUi().length - 1);
|
||||
|
||||
|
@ -224,6 +233,8 @@ export default class AchvsUiHandler extends MessageUiHandler {
|
|||
this.updateAchvIcons();
|
||||
}
|
||||
this.setCursor(0, true);
|
||||
this.scrollBar.setTotalRows(Math.ceil(this.currentTotal / this.COLS));
|
||||
this.scrollBar.setScrollCursor(0);
|
||||
this.mainContainer.update();
|
||||
}
|
||||
if (button === Button.CANCEL) {
|
||||
|
@ -237,32 +248,44 @@ export default class AchvsUiHandler extends MessageUiHandler {
|
|||
if (this.cursor < this.COLS) {
|
||||
if (this.scrollCursor) {
|
||||
success = this.setScrollCursor(this.scrollCursor - 1);
|
||||
} else {
|
||||
// Wrap around to the last row
|
||||
success = this.setScrollCursor(Math.ceil(this.currentTotal / this.COLS) - this.ROWS);
|
||||
let newCursorIndex = this.cursor + (this.ROWS - 1) * this.COLS;
|
||||
if (newCursorIndex > this.currentTotal - this.scrollCursor * this.COLS -1) {
|
||||
newCursorIndex -= this.COLS;
|
||||
}
|
||||
success = success && this.setCursor(newCursorIndex);
|
||||
}
|
||||
} else {
|
||||
success = this.setCursor(this.cursor - this.COLS);
|
||||
}
|
||||
break;
|
||||
case Button.DOWN:
|
||||
const canMoveDown = (this.cursor + itemOffset) + this.COLS < this.currentTotal;
|
||||
const canMoveDown = itemOffset + 1 < this.currentTotal;
|
||||
if (rowIndex >= this.ROWS - 1) {
|
||||
if (this.scrollCursor < Math.ceil(this.currentTotal / this.COLS) - this.ROWS && canMoveDown) {
|
||||
// scroll down one row
|
||||
success = this.setScrollCursor(this.scrollCursor + 1);
|
||||
} else {
|
||||
// wrap back to the first row
|
||||
success = this.setScrollCursor(0) && this.setCursor(this.cursor % this.COLS);
|
||||
}
|
||||
} else if (canMoveDown) {
|
||||
success = this.setCursor(this.cursor + this.COLS);
|
||||
success = this.setCursor(Math.min(this.cursor + this.COLS, this.currentTotal - itemOffset - 1));
|
||||
}
|
||||
break;
|
||||
case Button.LEFT:
|
||||
if (!this.cursor && this.scrollCursor) {
|
||||
success = this.setScrollCursor(this.scrollCursor - 1) && this.setCursor(this.cursor + (this.COLS - 1));
|
||||
} else if (this.cursor) {
|
||||
if (this.cursor % this.COLS === 0) {
|
||||
success = this.setCursor(Math.min(this.cursor + this.COLS - 1, this.currentTotal - itemOffset - 1));
|
||||
} else {
|
||||
success = this.setCursor(this.cursor - 1);
|
||||
}
|
||||
break;
|
||||
case Button.RIGHT:
|
||||
if (this.cursor + 1 === this.ROWS * this.COLS && this.scrollCursor < Math.ceil(this.currentTotal / this.COLS) - this.ROWS) {
|
||||
success = this.setScrollCursor(this.scrollCursor + 1) && this.setCursor(this.cursor - (this.COLS - 1));
|
||||
} else if (this.cursor + itemOffset < this.currentTotal - 1) {
|
||||
if ((this.cursor + 1) % this.COLS === 0 || (this.cursor + itemOffset) === (this.currentTotal - 1)) {
|
||||
success = this.setCursor(this.cursor - this.cursor % this.COLS);
|
||||
} else {
|
||||
success = this.setCursor(this.cursor + 1);
|
||||
}
|
||||
break;
|
||||
|
@ -315,15 +338,22 @@ export default class AchvsUiHandler extends MessageUiHandler {
|
|||
}
|
||||
|
||||
this.scrollCursor = scrollCursor;
|
||||
this.scrollBar.setScrollCursor(this.scrollCursor);
|
||||
|
||||
// Cursor cannot go farther than the last element in the list
|
||||
const maxCursor = Math.min(this.cursor, this.currentTotal - this.scrollCursor * this.COLS - 1);
|
||||
if (maxCursor !== this.cursor) {
|
||||
this.setCursor(maxCursor);
|
||||
}
|
||||
|
||||
switch (this.currentPage) {
|
||||
case Page.ACHIEVEMENTS:
|
||||
this.updateAchvIcons();
|
||||
this.showAchv(achvs[Object.keys(achvs)[Math.min(this.cursor + this.scrollCursor * this.COLS, Object.values(achvs).length - 1)]]);
|
||||
this.showAchv(achvs[Object.keys(achvs)[this.cursor + this.scrollCursor * this.COLS]]);
|
||||
break;
|
||||
case Page.VOUCHERS:
|
||||
this.updateVoucherIcons();
|
||||
this.showVoucher(vouchers[Object.keys(vouchers)[Math.min(this.cursor + this.scrollCursor * this.COLS, Object.values(vouchers).length - 1)]]);
|
||||
this.showVoucher(vouchers[Object.keys(vouchers)[this.cursor + this.scrollCursor * this.COLS]]);
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
|
@ -411,6 +441,7 @@ export default class AchvsUiHandler extends MessageUiHandler {
|
|||
super.clear();
|
||||
this.currentPage = Page.ACHIEVEMENTS;
|
||||
this.mainContainer.setVisible(false);
|
||||
this.setScrollCursor(0);
|
||||
this.eraseCursor();
|
||||
}
|
||||
|
||||
|
|
|
@ -235,7 +235,19 @@ export default class PokemonInfoContainer extends Phaser.GameObjects.Container {
|
|||
this.pokemonGenderText.setVisible(false);
|
||||
}
|
||||
|
||||
if (pokemon.species.forms?.[pokemon.formIndex]?.formName && pokemon.species.forms?.[pokemon.formIndex]?.formName !== "Normal") {
|
||||
const formKey = (pokemon.species?.forms?.[pokemon.formIndex!]?.formKey);
|
||||
const formText = Utils.capitalizeString(formKey, "-", false, false) || "";
|
||||
const speciesName = Utils.capitalizeString(Species[pokemon.species.getRootSpeciesId()], "_", true, false);
|
||||
|
||||
let formName = "";
|
||||
if (pokemon.species.speciesId === Species.ARCEUS) {
|
||||
formName = i18next.t(`pokemonInfo:Type.${formText?.toUpperCase()}`);
|
||||
} else {
|
||||
const i18key = `pokemonForm:${speciesName}${formText}`;
|
||||
formName = i18next.exists(i18key) ? i18next.t(i18key) : formText;
|
||||
}
|
||||
|
||||
if (formName) {
|
||||
this.pokemonFormLabelText.setVisible(true);
|
||||
this.pokemonFormText.setVisible(true);
|
||||
const newForm = BigInt(1 << pokemon.formIndex) * DexAttr.DEFAULT_FORM;
|
||||
|
@ -248,18 +260,6 @@ export default class PokemonInfoContainer extends Phaser.GameObjects.Container {
|
|||
this.pokemonFormLabelText.setShadowColor(getTextColor(TextStyle.WINDOW, true, this.scene.uiTheme));
|
||||
}
|
||||
|
||||
const pokemonForm = (pokemon.species?.forms?.[pokemon.formIndex!]?.formKey) || "";
|
||||
let formName = "";
|
||||
if (pokemonForm !== "") {
|
||||
const formText = Utils.capitalizeString(pokemonForm, "-", false, false);
|
||||
|
||||
const speciesName = Utils.capitalizeString(Species[pokemon.species.getRootSpeciesId()], "_", true, false);
|
||||
if (pokemon.species.speciesId === Species.ARCEUS) {
|
||||
formName = i18next.t(`pokemonInfo:Type.${formText?.toUpperCase()}`);
|
||||
} else {
|
||||
formName = formText ? i18next.t(`pokemonForm:${speciesName}${formText}`) : "";
|
||||
}
|
||||
|
||||
this.pokemonFormText.setText(formName.length > this.numCharsBeforeCutoff ? formName.substring(0, this.numCharsBeforeCutoff - 3) + "..." : formName);
|
||||
if (formName.length > this.numCharsBeforeCutoff) {
|
||||
this.pokemonFormText.setInteractive(new Phaser.Geom.Rectangle(0, 0, this.pokemonFormText.width, this.pokemonFormText.height), Phaser.Geom.Rectangle.Contains);
|
||||
|
@ -268,7 +268,6 @@ export default class PokemonInfoContainer extends Phaser.GameObjects.Container {
|
|||
} else {
|
||||
this.pokemonFormText.disableInteractive();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.pokemonFormLabelText.setVisible(false);
|
||||
this.pokemonFormText.setVisible(false);
|
||||
|
|
|
@ -1,36 +1,65 @@
|
|||
/**
|
||||
* A vertical scrollbar element that resizes dynamically based on the current scrolling
|
||||
* and number of elements that can be shown on screen
|
||||
*/
|
||||
export class ScrollBar extends Phaser.GameObjects.Container {
|
||||
private bg: Phaser.GameObjects.Image;
|
||||
private bg: Phaser.GameObjects.NineSlice;
|
||||
private handleBody: Phaser.GameObjects.Rectangle;
|
||||
private handleBottom: Phaser.GameObjects.Image;
|
||||
private pages: number;
|
||||
private page: number;
|
||||
private handleBottom: Phaser.GameObjects.NineSlice;
|
||||
private currentRow: number;
|
||||
private totalRows: number;
|
||||
private maxRows: number;
|
||||
|
||||
constructor(scene: Phaser.Scene, x: number, y: number, pages: number) {
|
||||
/**
|
||||
* @param scene the current scene
|
||||
* @param x the scrollbar's x position (origin: top left)
|
||||
* @param y the scrollbar's y position (origin: top left)
|
||||
* @param width the scrollbar's width
|
||||
* @param height the scrollbar's height
|
||||
* @param maxRows the maximum number of rows that can be shown at once
|
||||
*/
|
||||
constructor(scene: Phaser.Scene, x: number, y: number, width: number, height: number, maxRows: number) {
|
||||
super(scene, x, y);
|
||||
|
||||
this.bg = scene.add.image(0, 0, "scroll_bar");
|
||||
this.maxRows = maxRows;
|
||||
|
||||
const borderSize = 2;
|
||||
width = Math.max(width, 4);
|
||||
|
||||
this.bg = scene.add.nineslice(0, 0, "scroll_bar", undefined, width, height, borderSize, borderSize, borderSize, borderSize);
|
||||
this.bg.setOrigin(0, 0);
|
||||
this.add(this.bg);
|
||||
|
||||
this.handleBody = scene.add.rectangle(1, 1, 3, 4, 0xaaaaaa);
|
||||
this.handleBody = scene.add.rectangle(1, 1, width - 2, 4, 0xaaaaaa);
|
||||
this.handleBody.setOrigin(0, 0);
|
||||
this.add(this.handleBody);
|
||||
|
||||
this.handleBottom = scene.add.image(1, 1, "scroll_bar_handle");
|
||||
this.handleBottom = scene.add.nineslice(1, 1, "scroll_bar_handle", undefined, width - 2, 2, 2, 0, 0, 0);
|
||||
this.handleBottom.setOrigin(0, 0);
|
||||
this.add(this.handleBottom);
|
||||
}
|
||||
|
||||
setPage(page: number): void {
|
||||
this.page = page;
|
||||
this.handleBody.y = 1 + (this.bg.displayHeight - 1 - this.handleBottom.displayHeight) / this.pages * page;
|
||||
/**
|
||||
* Set the current row that is displayed
|
||||
* Moves the bar handle up or down accordingly
|
||||
* @param scrollCursor how many times the view was scrolled down
|
||||
*/
|
||||
setScrollCursor(scrollCursor: number): void {
|
||||
this.currentRow = scrollCursor;
|
||||
this.handleBody.y = 1 + (this.bg.displayHeight - 1 - this.handleBottom.displayHeight) / this.totalRows * this.currentRow;
|
||||
this.handleBottom.y = this.handleBody.y + this.handleBody.displayHeight;
|
||||
}
|
||||
|
||||
setPages(pages: number): void {
|
||||
this.pages = pages;
|
||||
this.handleBody.height = (this.bg.displayHeight - 1 - this.handleBottom.displayHeight) * 9 / this.pages;
|
||||
/**
|
||||
* Set the total number of rows to display
|
||||
* If it's smaller than the maximum number of rows on screen the bar will get hidden
|
||||
* Otherwise the scrollbar handle gets resized based on the ratio to the maximum number of rows
|
||||
* @param rows how many rows of data there are in total
|
||||
*/
|
||||
setTotalRows(rows: number): void {
|
||||
this.totalRows = rows;
|
||||
this.handleBody.height = (this.bg.displayHeight - 1 - this.handleBottom.displayHeight) * this.maxRows / this.totalRows;
|
||||
|
||||
this.setVisible(this.pages > 9);
|
||||
this.setVisible(this.totalRows > this.maxRows);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
import UiHandler from "../ui-handler";
|
||||
import BattleScene from "../../battle-scene";
|
||||
import {Mode} from "../ui";
|
||||
import {InterfaceConfig} from "../../inputs-controller";
|
||||
import {addWindow} from "../ui-theme";
|
||||
import {addTextObject, TextStyle} from "../text";
|
||||
import UiHandler from "#app/ui/ui-handler";
|
||||
import BattleScene from "#app/battle-scene";
|
||||
import { Mode } from "#app/ui/ui";
|
||||
import { InterfaceConfig } from "#app/inputs-controller";
|
||||
import { addWindow } from "#app/ui/ui-theme";
|
||||
import { addTextObject, TextStyle } from "#app/ui/text";
|
||||
import { ScrollBar } from "#app/ui/scroll-bar";
|
||||
import { getIconWithSettingName } from "#app/configs/inputs/configHandler";
|
||||
import NavigationMenu, { NavigationManager } from "#app/ui/settings/navigationMenu";
|
||||
import { Device } from "#enums/devices";
|
||||
|
@ -19,7 +20,7 @@ export interface LayoutConfig {
|
|||
inputsIcons: InputsIcons;
|
||||
settingLabels: Phaser.GameObjects.Text[];
|
||||
optionValueLabels: Phaser.GameObjects.Text[][];
|
||||
optionCursors: integer[];
|
||||
optionCursors: number[];
|
||||
keys: string[];
|
||||
bindingSettings: Array<String>;
|
||||
}
|
||||
|
@ -31,8 +32,9 @@ export default abstract class AbstractControlSettingsUiHandler extends UiHandler
|
|||
protected optionsContainer: Phaser.GameObjects.Container;
|
||||
protected navigationContainer: NavigationMenu;
|
||||
|
||||
protected scrollCursor: integer;
|
||||
protected optionCursors: integer[];
|
||||
protected scrollBar: ScrollBar;
|
||||
protected scrollCursor: number;
|
||||
protected optionCursors: number[];
|
||||
protected cursorObj: Phaser.GameObjects.NineSlice | null;
|
||||
|
||||
protected optionsBg: Phaser.GameObjects.NineSlice;
|
||||
|
@ -65,7 +67,7 @@ export default abstract class AbstractControlSettingsUiHandler extends UiHandler
|
|||
protected device: Device;
|
||||
|
||||
abstract saveSettingToLocalStorage(setting, cursor): void;
|
||||
abstract setSetting(scene: BattleScene, setting, value: integer): boolean;
|
||||
abstract setSetting(scene: BattleScene, setting, value: number): boolean;
|
||||
|
||||
/**
|
||||
* Constructor for the AbstractSettingsUiHandler.
|
||||
|
@ -241,7 +243,7 @@ export default abstract class AbstractControlSettingsUiHandler extends UiHandler
|
|||
|
||||
// Calculate the total available space for placing option labels next to their setting label
|
||||
// We reserve space for the setting label and then distribute the remaining space evenly
|
||||
const totalSpace = (300 - labelWidth) - totalWidth / 6;
|
||||
const totalSpace = (297 - labelWidth) - totalWidth / 6;
|
||||
// Calculate the spacing between options based on the available space divided by the number of gaps between labels
|
||||
const optionSpacing = Math.floor(totalSpace / (optionValueLabels[s].length - 1));
|
||||
|
||||
|
@ -269,6 +271,11 @@ export default abstract class AbstractControlSettingsUiHandler extends UiHandler
|
|||
// Add the options container to the overall settings container to be displayed in the UI.
|
||||
this.settingsContainer.add(optionsContainer);
|
||||
}
|
||||
|
||||
// Add vertical scrollbar
|
||||
this.scrollBar = new ScrollBar(this.scene, this.optionsBg.width - 9, this.optionsBg.y + 5, 4, this.optionsBg.height - 11, this.rowsToDisplay);
|
||||
this.settingsContainer.add(this.scrollBar);
|
||||
|
||||
// Add the settings container to the UI.
|
||||
ui.add(this.settingsContainer);
|
||||
|
||||
|
@ -413,6 +420,8 @@ export default abstract class AbstractControlSettingsUiHandler extends UiHandler
|
|||
this.optionCursors = layout.optionCursors;
|
||||
this.inputsIcons = layout.inputsIcons;
|
||||
this.bindingSettings = layout.bindingSettings;
|
||||
this.scrollBar.setTotalRows(layout.settingLabels.length);
|
||||
this.scrollBar.setScrollCursor(0);
|
||||
|
||||
// Return true indicating the layout was successfully applied.
|
||||
return true;
|
||||
|
@ -538,7 +547,7 @@ export default abstract class AbstractControlSettingsUiHandler extends UiHandler
|
|||
* @param cursor - The cursor position to set.
|
||||
* @returns `true` if the cursor was set successfully.
|
||||
*/
|
||||
setCursor(cursor: integer): boolean {
|
||||
setCursor(cursor: number): boolean {
|
||||
const ret = super.setCursor(cursor);
|
||||
// If the optionsContainer is not initialized, return the result from the parent class directly.
|
||||
if (!this.optionsContainer) {
|
||||
|
@ -547,7 +556,8 @@ export default abstract class AbstractControlSettingsUiHandler extends UiHandler
|
|||
|
||||
// Check if the cursor object exists, if not, create it.
|
||||
if (!this.cursorObj) {
|
||||
this.cursorObj = this.scene.add.nineslice(0, 0, "summary_moves_cursor", undefined, (this.scene.game.canvas.width / 6) - 10, 16, 1, 1, 1, 1);
|
||||
const cursorWidth = (this.scene.game.canvas.width / 6) - (this.scrollBar.visible? 16 : 10);
|
||||
this.cursorObj = this.scene.add.nineslice(0, 0, "summary_moves_cursor", undefined, cursorWidth, 16, 1, 1, 1, 1);
|
||||
this.cursorObj.setOrigin(0, 0); // Set the origin to the top-left corner.
|
||||
this.optionsContainer.add(this.cursorObj); // Add the cursor to the options container.
|
||||
}
|
||||
|
@ -564,7 +574,7 @@ export default abstract class AbstractControlSettingsUiHandler extends UiHandler
|
|||
* @param scrollCursor - The scroll cursor position to set.
|
||||
* @returns `true` if the scroll cursor was set successfully.
|
||||
*/
|
||||
setScrollCursor(scrollCursor: integer): boolean {
|
||||
setScrollCursor(scrollCursor: number): boolean {
|
||||
// Check if the new scroll position is the same as the current one; if so, do not update.
|
||||
if (scrollCursor === this.scrollCursor) {
|
||||
return false;
|
||||
|
@ -572,6 +582,7 @@ export default abstract class AbstractControlSettingsUiHandler extends UiHandler
|
|||
|
||||
// Update the internal scroll cursor state
|
||||
this.scrollCursor = scrollCursor;
|
||||
this.scrollBar.setScrollCursor(this.scrollCursor);
|
||||
|
||||
// Apply the new scroll position to the settings UI.
|
||||
this.updateSettingsScroll();
|
||||
|
@ -590,7 +601,7 @@ export default abstract class AbstractControlSettingsUiHandler extends UiHandler
|
|||
* @param save - Whether to save the setting to local storage.
|
||||
* @returns `true` if the option cursor was set successfully.
|
||||
*/
|
||||
setOptionCursor(settingIndex: integer, cursor: integer, save?: boolean): boolean {
|
||||
setOptionCursor(settingIndex: number, cursor: number, save?: boolean): boolean {
|
||||
// Retrieve the specific setting using the settingIndex from the settingDevice enumeration.
|
||||
const setting = this.setting[Object.keys(this.setting)[settingIndex]];
|
||||
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
import BattleScene from "../../battle-scene";
|
||||
import { hasTouchscreen, isMobile } from "../../touch-controls";
|
||||
import { TextStyle, addTextObject } from "../text";
|
||||
import { Mode } from "../ui";
|
||||
import UiHandler from "../ui-handler";
|
||||
import { addWindow } from "../ui-theme";
|
||||
import BattleScene from "#app/battle-scene";
|
||||
import { hasTouchscreen, isMobile } from "#app/touch-controls";
|
||||
import { TextStyle, addTextObject } from "#app/ui/text";
|
||||
import { Mode } from "#app/ui/ui";
|
||||
import UiHandler from "#app/ui/ui-handler";
|
||||
import { addWindow } from "#app/ui/ui-theme";
|
||||
import { ScrollBar } from "#app/ui/scroll-bar";
|
||||
import { Button } from "#enums/buttons";
|
||||
import { InputsIcons } from "#app/ui/settings/abstract-control-settings-ui-handler";
|
||||
import NavigationMenu, { NavigationManager } from "#app/ui/settings/navigationMenu";
|
||||
|
@ -19,11 +20,12 @@ export default class AbstractSettingsUiHandler extends UiHandler {
|
|||
private optionsContainer: Phaser.GameObjects.Container;
|
||||
private navigationContainer: NavigationMenu;
|
||||
|
||||
private scrollCursor: integer;
|
||||
private scrollCursor: number;
|
||||
private scrollBar: ScrollBar;
|
||||
|
||||
private optionsBg: Phaser.GameObjects.NineSlice;
|
||||
|
||||
private optionCursors: integer[];
|
||||
private optionCursors: number[];
|
||||
|
||||
private settingLabels: Phaser.GameObjects.Text[];
|
||||
private optionValueLabels: Phaser.GameObjects.Text[][];
|
||||
|
@ -117,7 +119,7 @@ export default class AbstractSettingsUiHandler extends UiHandler {
|
|||
|
||||
const labelWidth = Math.max(78, this.settingLabels[s].displayWidth + 8);
|
||||
|
||||
const totalSpace = (300 - labelWidth) - totalWidth / 6;
|
||||
const totalSpace = (297 - labelWidth) - totalWidth / 6;
|
||||
const optionSpacing = Math.floor(totalSpace / (this.optionValueLabels[s].length - 1));
|
||||
|
||||
let xOffset = 0;
|
||||
|
@ -130,7 +132,11 @@ export default class AbstractSettingsUiHandler extends UiHandler {
|
|||
|
||||
this.optionCursors = this.settings.map(setting => setting.default);
|
||||
|
||||
this.scrollBar = new ScrollBar(this.scene, this.optionsBg.width - 9, this.optionsBg.y + 5, 4, this.optionsBg.height - 11, this.rowsToDisplay);
|
||||
this.scrollBar.setTotalRows(this.settings.length);
|
||||
|
||||
this.settingsContainer.add(this.optionsBg);
|
||||
this.settingsContainer.add(this.scrollBar);
|
||||
this.settingsContainer.add(this.navigationContainer);
|
||||
this.settingsContainer.add(actionsBg);
|
||||
this.settingsContainer.add(this.optionsContainer);
|
||||
|
@ -186,6 +192,7 @@ export default class AbstractSettingsUiHandler extends UiHandler {
|
|||
|
||||
this.settingsContainer.setVisible(true);
|
||||
this.setCursor(0);
|
||||
this.setScrollCursor(0);
|
||||
|
||||
this.getUi().moveTo(this.settingsContainer, this.getUi().length - 1);
|
||||
|
||||
|
@ -301,11 +308,12 @@ export default class AbstractSettingsUiHandler extends UiHandler {
|
|||
* @param cursor - The cursor position to set.
|
||||
* @returns `true` if the cursor was set successfully.
|
||||
*/
|
||||
setCursor(cursor: integer): boolean {
|
||||
setCursor(cursor: number): boolean {
|
||||
const ret = super.setCursor(cursor);
|
||||
|
||||
if (!this.cursorObj) {
|
||||
this.cursorObj = this.scene.add.nineslice(0, 0, "summary_moves_cursor", undefined, (this.scene.game.canvas.width / 6) - 10, 16, 1, 1, 1, 1);
|
||||
const cursorWidth = (this.scene.game.canvas.width / 6) - (this.scrollBar.visible? 16 : 10);
|
||||
this.cursorObj = this.scene.add.nineslice(0, 0, "summary_moves_cursor", undefined, cursorWidth, 16, 1, 1, 1, 1);
|
||||
this.cursorObj.setOrigin(0, 0);
|
||||
this.optionsContainer.add(this.cursorObj);
|
||||
}
|
||||
|
@ -323,7 +331,7 @@ export default class AbstractSettingsUiHandler extends UiHandler {
|
|||
* @param save - Whether to save the setting to local storage.
|
||||
* @returns `true` if the option cursor was set successfully.
|
||||
*/
|
||||
setOptionCursor(settingIndex: integer, cursor: integer, save?: boolean): boolean {
|
||||
setOptionCursor(settingIndex: number, cursor: number, save?: boolean): boolean {
|
||||
const setting = this.settings[settingIndex];
|
||||
|
||||
if (setting.key === SettingKeys.Touch_Controls && cursor && hasTouchscreen() && isMobile()) {
|
||||
|
@ -359,12 +367,13 @@ export default class AbstractSettingsUiHandler extends UiHandler {
|
|||
* @param scrollCursor - The scroll cursor position to set.
|
||||
* @returns `true` if the scroll cursor was set successfully.
|
||||
*/
|
||||
setScrollCursor(scrollCursor: integer): boolean {
|
||||
setScrollCursor(scrollCursor: number): boolean {
|
||||
if (scrollCursor === this.scrollCursor) {
|
||||
return false;
|
||||
}
|
||||
|
||||
this.scrollCursor = scrollCursor;
|
||||
this.scrollBar.setScrollCursor(this.scrollCursor);
|
||||
|
||||
this.updateSettingsScroll();
|
||||
|
||||
|
@ -394,6 +403,7 @@ export default class AbstractSettingsUiHandler extends UiHandler {
|
|||
clear() {
|
||||
super.clear();
|
||||
this.settingsContainer.setVisible(false);
|
||||
this.setScrollCursor(0);
|
||||
this.eraseCursor();
|
||||
this.getUi().bgmBar.toggleBgmBar(this.scene.showBgmBar);
|
||||
if (this.reloadRequired) {
|
||||
|
|
|
@ -627,7 +627,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
|
|||
|
||||
const starterBoxContainer = this.scene.add.container(speciesContainerX + 6, 9); //115
|
||||
|
||||
this.starterSelectScrollBar = new ScrollBar(this.scene, 161, 12, 0);
|
||||
this.starterSelectScrollBar = new ScrollBar(this.scene, 161, 12, 5, starterContainerWindow.height - 6, 9);
|
||||
|
||||
starterBoxContainer.add(this.starterSelectScrollBar);
|
||||
|
||||
|
@ -2540,8 +2540,8 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
|
|||
}
|
||||
});
|
||||
|
||||
this.starterSelectScrollBar.setPages(Math.max(Math.ceil(this.filteredStarterContainers.length / 9), 1));
|
||||
this.starterSelectScrollBar.setPage(0);
|
||||
this.starterSelectScrollBar.setTotalRows(Math.max(Math.ceil(this.filteredStarterContainers.length / 9), 1));
|
||||
this.starterSelectScrollBar.setScrollCursor(0);
|
||||
|
||||
// sort
|
||||
const sort = this.filterBar.getVals(DropDownColumn.SORT)[0];
|
||||
|
@ -2576,7 +2576,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
|
|||
const onScreenFirstIndex = this.scrollCursor * maxColumns;
|
||||
const onScreenLastIndex = Math.min(this.filteredStarterContainers.length - 1, onScreenFirstIndex + maxRows * maxColumns -1);
|
||||
|
||||
this.starterSelectScrollBar.setPage(this.scrollCursor);
|
||||
this.starterSelectScrollBar.setScrollCursor(this.scrollCursor);
|
||||
|
||||
let pokerusCursorIndex = 0;
|
||||
this.filteredStarterContainers.forEach((container, i) => {
|
||||
|
|
Loading…
Reference in New Issue