Fix strong trainer party members often not evolving due to dividing by 0

This commit is contained in:
Flashfyre 2024-03-29 13:42:54 -04:00
parent a240a45318
commit c59c5ca413
3 changed files with 6 additions and 3 deletions

View File

@ -58,6 +58,7 @@ import { initTouchControls } from './touch-controls';
export const bypassLogin = false;
export const SEED_OVERRIDE = '';
export const STARTING_LEVEL_OVERRIDE = 0;
export const STARTING_WAVE_OVERRIDE = 0;
export const STARTING_BIOME_OVERRIDE = Biome.TOWN;
@ -779,7 +780,7 @@ export default class BattleScene extends Phaser.Scene {
reset(clearScene?: boolean): void {
this.gameMode = gameModes[GameModes.CLASSIC];
this.setSeed(Utils.randomString(24));
this.setSeed(SEED_OVERRIDE || Utils.randomString(24));
console.log('Seed:', this.seed);
this.score = 0;

View File

@ -498,8 +498,8 @@ export default class PokemonSpecies extends PokemonSpeciesForm {
evolutionChance = Math.min(minChance + easeInFunc(Math.min(level - ev.level, maxLevelDiff) / maxLevelDiff) * (1 - minChance), 1);
}
} else {
let preferredMinLevel = (ev.level - 1) + ev.wildDelay * this.getStrengthLevelDiff(strength + 1);
let evolutionLevel = ev.level > 1 ? ev.level : Math.floor(preferredMinLevel / 2);
let preferredMinLevel = Math.max((ev.level - 1) + ev.wildDelay * this.getStrengthLevelDiff(strength + 1), 1);
let evolutionLevel = Math.max(ev.level > 1 ? ev.level : Math.floor(preferredMinLevel / 2), 1);
if (ev.level <= 1 && pokemonPrevolutions.hasOwnProperty(this.speciesId)) {
const prevolutionLevel = pokemonEvolutions[pokemonPrevolutions[this.speciesId]].find(ev => ev.speciesId === this.speciesId).level;

View File

@ -548,6 +548,8 @@ export class GameData {
scene.setSeed(sessionData.seed || scene.game.config.seed[0]);
scene.resetSeed();
console.log('Seed:', scene.seed);
scene.sessionPlayTime = sessionData.playTime || 0;
const loadPokemonAssets: Promise<void>[] = [];