Champions: Fix EV guesser (#2673)

* Champions: Fix EV guesser

* Champions: Disable level input box

* Disable happiness in Let's Go
This commit is contained in:
André Bastos Dias 2026-05-08 03:34:50 +01:00 committed by GitHub
parent a78a54c920
commit eeab7e68ae
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 24 additions and 17 deletions

View File

@ -2907,7 +2907,12 @@
buf += '<div class="resultheader"><h3>Details</h3></div>';
buf += '<form class="detailsform">';
buf += '<div class="formrow"><label class="formlabel">Level:</label><div><input type="number" min="1" max="100" step="1" name="level" value="' + (typeof set.level === 'number' ? set.level : 100) + '" class="textbox inputform numform" /></div></div>';
buf += '<div class="formrow"><label class="formlabel">Level:</label><div>' +
'<input type="number" min="1" max="100" step="1" name="level" value="' +
(typeof set.level === 'number' ? set.level : 100) +
'" class="textbox inputform numform"' +
(isChampions ? ' disabled' : '') +
' /></div></div>';
if (this.curTeam.gen > 1) {
buf += '<div class="formrow"><label class="formlabel">Gender:</label><div>';
@ -2926,7 +2931,7 @@
buf += '</div></div>';
if (isLetsGo) {
buf += '<div class="formrow"><label class="formlabel">Happiness:</label><div><input type="number" name="happiness" value="70" class="textbox inputform numform" /></div></div>';
buf += '<div class="formrow"><label class="formlabel">Happiness:</label><div><input type="number" name="happiness" value="70" class="textbox inputform numform" disabled /></div></div>';
} else {
if (this.curTeam.gen < 8 || isNatDex) buf += '<div class="formrow"><label class="formlabel">Happiness:</label><div><input type="number" min="0" max="255" step="1" name="happiness" value="' + (typeof set.happiness === 'number' ? set.happiness : 255) + '" class="textbox inputform numform" /></div></div>';
}

View File

@ -3253,7 +3253,7 @@ export class BattleStatGuesser {
if (!moveCount['PhysicalAttack']) evs.atk = 0;
if (!moveCount['SpecialAttack']) evs.spa = 0;
if (hasMove['gyroball'] || hasMove['trickroom']) evs.spe = 0;
} else if (!this.supportsEVs) {
} else if (!this.supportsEVs && !this.useStatPoints) {
// Let's Go, AVs disabled
// no change
} else if (this.ignoreEVLimits) {
@ -3346,20 +3346,22 @@ export class BattleStatGuesser {
if (hp || evs['hp']) evs['hp'] = hp;
}
if (species.id === 'tentacruel') {
evTotal = this.ensureMinEVs(evs, 'spe', 16, evTotal);
} else if (species.id === 'skarmory') {
evTotal = this.ensureMinEVs(evs, 'spe', 24, evTotal);
} else if (species.id === 'jirachi') {
evTotal = this.ensureMinEVs(evs, 'spe', 32, evTotal);
} else if (species.id === 'celebi') {
evTotal = this.ensureMinEVs(evs, 'spe', 36, evTotal);
} else if (species.id === 'volcarona') {
evTotal = this.ensureMinEVs(evs, 'spe', 52, evTotal);
} else if (species.id === 'gliscor') {
evTotal = this.ensureMinEVs(evs, 'spe', 72, evTotal);
} else if (species.id === 'dragonite' && evs['hp']) {
evTotal = this.ensureMaxEVs(evs, 'spe', 220, evTotal);
if (this.supportsEVs) {
if (species.id === 'tentacruel') {
evTotal = this.ensureMinEVs(evs, 'spe', 16, evTotal);
} else if (species.id === 'skarmory') {
evTotal = this.ensureMinEVs(evs, 'spe', 24, evTotal);
} else if (species.id === 'jirachi') {
evTotal = this.ensureMinEVs(evs, 'spe', 32, evTotal);
} else if (species.id === 'celebi') {
evTotal = this.ensureMinEVs(evs, 'spe', 36, evTotal);
} else if (species.id === 'volcarona') {
evTotal = this.ensureMinEVs(evs, 'spe', 52, evTotal);
} else if (species.id === 'gliscor') {
evTotal = this.ensureMinEVs(evs, 'spe', 72, evTotal);
} else if (species.id === 'dragonite' && evs['hp']) {
evTotal = this.ensureMaxEVs(evs, 'spe', 220, evTotal);
}
}
if (evTotal < totalPoints) {