[Balance] Change Tyrogue to move-based evolutions (#4694)

This commit is contained in:
innerthunder 2024-10-23 23:17:55 -07:00 committed by GitHub
parent a2419c4fc3
commit 414e0a5447
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 24 additions and 4 deletions

View File

@ -1,7 +1,6 @@
import { Gender } from "#app/data/gender";
import { PokeballType } from "#app/data/pokeball";
import Pokemon from "#app/field/pokemon";
import { Stat } from "#enums/stat";
import { Type } from "#app/data/type";
import * as Utils from "#app/utils";
import { WeatherType } from "#app/data/weather";
@ -271,9 +270,21 @@ export const pokemonEvolutions: PokemonEvolutions = {
new SpeciesEvolution(Species.MAROWAK, 28, null, new SpeciesEvolutionCondition(p => p.scene.arena.getTimeOfDay() === TimeOfDay.DAWN || p.scene.arena.getTimeOfDay() === TimeOfDay.DAY))
],
[Species.TYROGUE]: [
new SpeciesEvolution(Species.HITMONLEE, 20, null, new SpeciesEvolutionCondition(p => p.stats[Stat.ATK] > p.stats[Stat.DEF])),
new SpeciesEvolution(Species.HITMONCHAN, 20, null, new SpeciesEvolutionCondition(p => p.stats[Stat.ATK] < p.stats[Stat.DEF])),
new SpeciesEvolution(Species.HITMONTOP, 20, null, new SpeciesEvolutionCondition(p => p.stats[Stat.ATK] === p.stats[Stat.DEF]))
/**
* Custom: Evolves into Hitmonlee, Hitmonchan or Hitmontop at level 20
* if it knows Low Sweep, Mach Punch, or Rapid Spin, respectively.
* If Tyrogue knows multiple of these moves, its evolution is based on
* the first qualifying move in its moveset.
*/
new SpeciesEvolution(Species.HITMONLEE, 20, null, new SpeciesEvolutionCondition(p =>
p.getMoveset(true).find(move => move && [ Moves.LOW_SWEEP, Moves.MACH_PUNCH, Moves.RAPID_SPIN ].includes(move?.moveId))?.moveId === Moves.LOW_SWEEP
)),
new SpeciesEvolution(Species.HITMONCHAN, 20, null, new SpeciesEvolutionCondition(p =>
p.getMoveset(true).find(move => move && [ Moves.LOW_SWEEP, Moves.MACH_PUNCH, Moves.RAPID_SPIN ].includes(move?.moveId))?.moveId === Moves.MACH_PUNCH
)),
new SpeciesEvolution(Species.HITMONTOP, 20, null, new SpeciesEvolutionCondition(p =>
p.getMoveset(true).find(move => move && [ Moves.LOW_SWEEP, Moves.MACH_PUNCH, Moves.RAPID_SPIN ].includes(move?.moveId))?.moveId === Moves.RAPID_SPIN
)),
],
[Species.KOFFING]: [
new SpeciesEvolution(Species.GALAR_WEEZING, 35, null, new SpeciesEvolutionCondition(p => p.scene.arena.getTimeOfDay() === TimeOfDay.DUSK || p.scene.arena.getTimeOfDay() === TimeOfDay.NIGHT)),

View File

@ -1835,6 +1835,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.LOW_SWEEP ],
[ 1, Moves.JUMP_KICK ],
[ 1, Moves.ROLLING_KICK ],
[ 1, Moves.MACH_PUNCH ], // Previous Stage Move, Custom
[ 1, Moves.RAPID_SPIN ], // Previous Stage Move, Custom
[ 4, Moves.DOUBLE_KICK ],
[ 8, Moves.LOW_KICK ],
[ 12, Moves.ENDURE ],
@ -1857,6 +1859,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.FEINT ],
[ 1, Moves.PURSUIT ],
[ 1, Moves.COMET_PUNCH ],
[ 1, Moves.LOW_SWEEP ], // Previous Stage Move, Custom
[ 1, Moves.RAPID_SPIN ], // Previous Stage Move, Custom
[ 4, Moves.MACH_PUNCH ],
[ 8, Moves.VACUUM_WAVE ],
[ 12, Moves.DETECT ],
@ -4148,6 +4152,9 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.FOCUS_ENERGY ],
[ 1, Moves.FAKE_OUT ],
[ 1, Moves.HELPING_HAND ],
[ 10, Moves.LOW_SWEEP ], // Custom
[ 10, Moves.MACH_PUNCH ], // Custom
[ 10, Moves.RAPID_SPIN ], // Custom
],
[Species.HITMONTOP]: [
[ EVOLVE_MOVE, Moves.TRIPLE_KICK ],
@ -4159,6 +4166,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.FEINT ],
[ 1, Moves.PURSUIT ],
[ 1, Moves.ROLLING_KICK ],
[ 1, Moves.LOW_SWEEP ], // Previous Stage Move, Custom
[ 1, Moves.MACH_PUNCH ], // Previous Stage Move, Custom
[ 4, Moves.QUICK_ATTACK ],
[ 8, Moves.GYRO_BALL ],
[ 12, Moves.DETECT ],