mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-07-05 16:02:20 +02:00
Merge branch 'pagefaultgames:main' into color_scanner_ivs
This commit is contained in:
commit
edd5966be8
@ -138,9 +138,9 @@ export abstract class PokemonSpeciesForm {
|
||||
this.genderDiffs = genderDiffs;
|
||||
}
|
||||
|
||||
getRootSpeciesId(): Species {
|
||||
getRootSpeciesId(forStarter: boolean = false): Species {
|
||||
let ret = this.speciesId;
|
||||
while (pokemonPrevolutions.hasOwnProperty(ret))
|
||||
while (pokemonPrevolutions.hasOwnProperty(ret) && (!forStarter || !speciesStarters.hasOwnProperty(ret)))
|
||||
ret = pokemonPrevolutions[ret];
|
||||
return ret;
|
||||
}
|
||||
|
@ -19,7 +19,7 @@ import { BattleStat, getBattleStatLevelChangeDescription, getBattleStatName } fr
|
||||
import { biomeLinks, getBiomeName } from "./data/biomes";
|
||||
import { Biome } from "./data/enums/biome";
|
||||
import { ModifierTier } from "./modifier/modifier-tier";
|
||||
import { FusePokemonModifierType, ModifierPoolType, ModifierType, ModifierTypeFunc, ModifierTypeOption, PokemonModifierType, PokemonMoveModifierType, RememberMoveModifierType, TmModifierType, getDailyRunStarterModifiers, getEnemyBuffModifierForWave, getModifierType, getPlayerModifierTypeOptions, getPlayerShopModifierTypeOptionsForWave, modifierTypes, regenerateModifierPoolThresholds } from "./modifier/modifier-type";
|
||||
import { FusePokemonModifierType, ModifierPoolType, ModifierType, ModifierTypeFunc, ModifierTypeOption, PokemonModifierType, PokemonMoveModifierType, PokemonPpRestoreModifierType, PokemonPpUpModifierType, RememberMoveModifierType, TmModifierType, getDailyRunStarterModifiers, getEnemyBuffModifierForWave, getModifierType, getPlayerModifierTypeOptions, getPlayerShopModifierTypeOptionsForWave, modifierTypes, regenerateModifierPoolThresholds } from "./modifier/modifier-type";
|
||||
import SoundFade from "phaser3-rex-plugins/plugins/soundfade";
|
||||
import { BattlerTagLapseType, EncoreTag, HideSpriteTag as HiddenTag, ProtectedTag, TrappedTag } from "./data/battler-tags";
|
||||
import { BattlerTagType } from "./data/enums/battler-tag-type";
|
||||
@ -4340,6 +4340,7 @@ export class SelectModifierPhase extends BattlePhase {
|
||||
const isMoveModifier = modifierType instanceof PokemonMoveModifierType;
|
||||
const isTmModifier = modifierType instanceof TmModifierType;
|
||||
const isRememberMoveModifier = modifierType instanceof RememberMoveModifierType;
|
||||
const isPpRestoreModifier = modifierType instanceof PokemonPpRestoreModifierType;
|
||||
const partyUiMode = isMoveModifier ? PartyUiMode.MOVE_MODIFIER
|
||||
: isTmModifier ? PartyUiMode.TM_MODIFIER
|
||||
: isRememberMoveModifier ? PartyUiMode.REMEMBER_MOVE_MODIFIER
|
||||
@ -4359,7 +4360,7 @@ export class SelectModifierPhase extends BattlePhase {
|
||||
});
|
||||
} else
|
||||
this.scene.ui.setMode(Mode.MODIFIER_SELECT, this.isPlayer(), typeOptions, modifierSelectCallback, this.getRerollCost(typeOptions, this.scene.lockModifierTiers));
|
||||
}, pokemonModifierType.selectFilter, modifierType instanceof PokemonMoveModifierType ? (modifierType as PokemonMoveModifierType).moveSelectFilter : undefined, tmMoveId);
|
||||
}, pokemonModifierType.selectFilter, modifierType instanceof PokemonMoveModifierType ? (modifierType as PokemonMoveModifierType).moveSelectFilter : undefined, tmMoveId, isPpRestoreModifier);
|
||||
}
|
||||
} else
|
||||
applyModifier(modifierType.newModifier());
|
||||
|
@ -5,6 +5,7 @@ import * as Utils from "../utils";
|
||||
import MessageUiHandler from "./message-ui-handler";
|
||||
import { getStatName, Stat } from "../data/pokemon-stat";
|
||||
import { addWindow } from "./ui-theme";
|
||||
import BBCodeText from "phaser3-rex-plugins/plugins/bbcodetext";
|
||||
|
||||
export default class BattleMessageUiHandler extends MessageUiHandler {
|
||||
private levelUpStatsContainer: Phaser.GameObjects.Container;
|
||||
@ -223,8 +224,9 @@ export default class BattleMessageUiHandler extends MessageUiHandler {
|
||||
}
|
||||
|
||||
getIvDescriptor(value: integer, typeIv: integer): string {
|
||||
let starterIvs: number[] = this.scene.gameData.dexData[this.scene.getEnemyPokemon().species.speciesId].ivs;
|
||||
let uiTheme = (this.scene as BattleScene).uiTheme; // Assuming uiTheme is accessible
|
||||
const starterSpecies = this.scene.getEnemyPokemon().species.getRootSpeciesId(true);
|
||||
const starterIvs: number[] = this.scene.gameData.dexData[starterSpecies].ivs;
|
||||
const uiTheme = (this.scene as BattleScene).uiTheme; // Assuming uiTheme is accessible
|
||||
|
||||
// Function to wrap text in color based on comparison
|
||||
const coloredText = (text: string, isBetter: boolean) => {
|
||||
|
@ -90,6 +90,7 @@ export default class PartyUiHandler extends MessageUiHandler {
|
||||
private selectFilter: PokemonSelectFilter | PokemonModifierTransferSelectFilter;
|
||||
private moveSelectFilter: PokemonMoveSelectFilter;
|
||||
private tmMoveId: Moves;
|
||||
private showMovePp: boolean;
|
||||
|
||||
private iconAnimHandler: PokemonIconAnimHandler;
|
||||
|
||||
@ -185,6 +186,7 @@ export default class PartyUiHandler extends MessageUiHandler {
|
||||
? args[4] as PokemonMoveSelectFilter
|
||||
: PartyUiHandler.FilterAllMoves;
|
||||
this.tmMoveId = args.length > 5 && args[5] ? args[5] : Moves.NONE;
|
||||
this.showMovePp = args.length > 6 && args[6];
|
||||
|
||||
this.partyContainer.setVisible(true);
|
||||
this.partyBg.setTexture(`party_bg${this.scene.currentBattle.double ? '_double' : ''}`);
|
||||
@ -663,7 +665,14 @@ export default class PartyUiHandler extends MessageUiHandler {
|
||||
case PartyOption.MOVE_2:
|
||||
case PartyOption.MOVE_3:
|
||||
case PartyOption.MOVE_4:
|
||||
optionName = pokemon.moveset[option - PartyOption.MOVE_1].getName();
|
||||
const move = pokemon.moveset[option - PartyOption.MOVE_1];
|
||||
if(this.showMovePp) {
|
||||
const maxPP = move.getMovePp();
|
||||
const currPP = maxPP - move.ppUsed;
|
||||
optionName = `${move.getName()} ${currPP}/${maxPP}`;
|
||||
} else {
|
||||
optionName = move.getName();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
if (formChangeItemModifiers && option >= PartyOption.FORM_CHANGE_ITEM) {
|
||||
|
@ -161,8 +161,9 @@ export default class PokemonInfoContainer extends Phaser.GameObjects.Container {
|
||||
if (isFusion)
|
||||
this.pokemonFusionShinyIcon.setTint(getVariantTint(pokemon.fusionVariant));
|
||||
|
||||
const originalIvs: integer[] = this.scene.gameData.dexData[pokemon.species.speciesId].caughtAttr
|
||||
? this.scene.gameData.dexData[pokemon.species.speciesId].ivs
|
||||
const starterSpeciesId = pokemon.species.getRootSpeciesId(true);
|
||||
const originalIvs: integer[] = this.scene.gameData.dexData[starterSpeciesId].caughtAttr
|
||||
? this.scene.gameData.dexData[starterSpeciesId].ivs
|
||||
: null;
|
||||
|
||||
this.statsContainer.updateIvs(pokemon.ivs, originalIvs);
|
||||
|
Loading…
Reference in New Issue
Block a user