Remove logic that makes all status moves 100 accuracy

This commit is contained in:
Flashfyre 2023-07-28 10:23:37 -04:00
parent 6804476a3c
commit e633ff1577
2 changed files with 14 additions and 14 deletions

View File

@ -1392,21 +1392,17 @@ class MoveEffectPhase extends PokemonPhase {
if (!this.move.getMove().getAttrs(OneHitKOAttr).length && this.scene.arena.getTag(ArenaTagType.GRAVITY)) if (!this.move.getMove().getAttrs(OneHitKOAttr).length && this.scene.arena.getTag(ArenaTagType.GRAVITY))
moveAccuracy.value = Math.floor(moveAccuracy.value * 1.67); moveAccuracy.value = Math.floor(moveAccuracy.value * 1.67);
if (this.move.getMove().category !== MoveCategory.STATUS) { const userAccuracyLevel = new Utils.IntegerHolder(this.getUserPokemon().summonData.battleStats[BattleStat.ACC]);
const userAccuracyLevel = new Utils.IntegerHolder(this.getUserPokemon().summonData.battleStats[BattleStat.ACC]); const targetEvasionLevel = new Utils.IntegerHolder(target.summonData.battleStats[BattleStat.EVA]);
const targetEvasionLevel = new Utils.IntegerHolder(target.summonData.battleStats[BattleStat.EVA]); this.scene.applyModifiers(TempBattleStatBoosterModifier, this.player, TempBattleStat.ACC, userAccuracyLevel);
this.scene.applyModifiers(TempBattleStatBoosterModifier, this.player, TempBattleStat.ACC, userAccuracyLevel); const rand = Utils.randInt(100, 1);
const rand = Utils.randInt(100, 1); let accuracyMultiplier = 1;
let accuracyMultiplier = 1; if (userAccuracyLevel.value !== targetEvasionLevel.value) {
if (userAccuracyLevel.value !== targetEvasionLevel.value) { accuracyMultiplier = userAccuracyLevel.value > targetEvasionLevel.value
accuracyMultiplier = userAccuracyLevel.value > targetEvasionLevel.value ? (3 + Math.min(userAccuracyLevel.value - targetEvasionLevel.value, 6)) / 3
? (3 + Math.min(userAccuracyLevel.value - targetEvasionLevel.value, 6)) / 3 : 3 / (3 + Math.min(targetEvasionLevel.value - userAccuracyLevel.value, 6));
: 3 / (3 + Math.min(targetEvasionLevel.value - userAccuracyLevel.value, 6));
}
return rand <= moveAccuracy.value * accuracyMultiplier;
} }
return rand <= moveAccuracy.value * accuracyMultiplier;
return true;
} }
getUserPokemon(): Pokemon { getUserPokemon(): Pokemon {

View File

@ -1651,6 +1651,10 @@ export class DisableMoveAttr extends MoveEffectAttr {
} }
}; };
} }
getTargetBenefitScore(user: Pokemon, target: Pokemon, move: Move): integer {
return -5;
}
} }
export class FrenzyAttr extends MoveEffectAttr { export class FrenzyAttr extends MoveEffectAttr {