diff --git a/play.pokemonshowdown.com/src/battle-choices.ts b/play.pokemonshowdown.com/src/battle-choices.ts index 3c97f1f6b..0f893997e 100644 --- a/play.pokemonshowdown.com/src/battle-choices.ts +++ b/play.pokemonshowdown.com/src/battle-choices.ts @@ -295,7 +295,11 @@ export class BattleChoiceBuilder { const request = this.request; switch (request.requestType) { case 'move': - while (this.choices.length < request.active.length && !request.active[this.choices.length]) { + while ( + (this.choices.length < request.active.length && + !request.active[this.choices.length]) || + request.side?.pokemon[this.choices.length]?.commanding + ) { this.choices.push('pass'); } break; diff --git a/play.pokemonshowdown.com/src/battle.ts b/play.pokemonshowdown.com/src/battle.ts index 0fba1a79f..fcae1ba8b 100644 --- a/play.pokemonshowdown.com/src/battle.ts +++ b/play.pokemonshowdown.com/src/battle.ts @@ -1031,6 +1031,7 @@ export interface ServerPokemon extends PokemonDetails, PokemonHealth { condition: string; active: boolean; reviving: boolean; + commanding: boolean; /** unboosted stats */ stats: { atk: number,