From fd12027dc653b06117ffac02d2552686cb318818 Mon Sep 17 00:00:00 2001 From: AJ Fontaine Date: Mon, 4 Nov 2024 13:51:46 -0500 Subject: [PATCH] Move shake check for crit captures to after first shake --- src/phases/attempt-capture-phase.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/phases/attempt-capture-phase.ts b/src/phases/attempt-capture-phase.ts index 6e3c2c5a331..546ea3bfca5 100644 --- a/src/phases/attempt-capture-phase.ts +++ b/src/phases/attempt-capture-phase.ts @@ -122,13 +122,17 @@ export class AttemptCapturePhase extends PokemonPhase { shakeCounter.stop(); this.failCatch(shakeCount); } else if (shakeCount++ < (isCritical ? 1 : 3)) { - // Shake check (skip the first for critical captures) - if (pokeballMultiplier === -1 || isCritical && shakeCount === 1 || pokemon.randSeedInt(65536) < shakeProbability) { + // Shake check (skip check for critical captures, but still play the sound) + if (pokeballMultiplier === -1 || isCritical || pokemon.randSeedInt(65536) < shakeProbability) { this.scene.playSound("se/pb_move"); } else { shakeCounter.stop(); this.failCatch(shakeCount); } + } else if (isCritical && pokemon.randSeedInt(65536) >= shakeProbability) { + // Above, perform the one shake check for critical captures after the ball shakes once + shakeCounter.stop(); + this.failCatch(shakeCount); } else { this.scene.playSound("se/pb_lock"); addPokeballCaptureStars(this.scene, this.pokeball);