From 878fe3b9bd737a38cf12562486879019f8e732cb Mon Sep 17 00:00:00 2001 From: Ice Date: Thu, 2 May 2024 23:42:16 -0500 Subject: [PATCH] Add Disable IV Scanner Option --- src/battle-scene.ts | 1 + src/phases.ts | 2 +- src/system/settings.ts | 6 ++++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/battle-scene.ts b/src/battle-scene.ts index cbf363f689a..87a1f0eaddb 100644 --- a/src/battle-scene.ts +++ b/src/battle-scene.ts @@ -112,6 +112,7 @@ export default class BattleScene extends SceneBase { public gameSpeed: integer = 1; public damageNumbersMode: integer = 0; public showLevelUpStats: boolean = true; + public disableIVScanner: boolean = true; public enableTutorials: boolean = import.meta.env.VITE_BYPASS_TUTORIAL === "1"; public enableRetries: boolean = false; public uiTheme: UiTheme = UiTheme.DEFAULT; diff --git a/src/phases.ts b/src/phases.ts index 4c2f5536268..91c645e2b28 100644 --- a/src/phases.ts +++ b/src/phases.ts @@ -898,7 +898,7 @@ export class EncounterPhase extends BattlePhase { if (this.scene.currentBattle.battleType !== BattleType.TRAINER) { enemyField.map(p => this.scene.pushPhase(new PostSummonPhase(this.scene, p.getBattlerIndex()))); const ivScannerModifier = this.scene.findModifier(m => m instanceof IvScannerModifier); - if (ivScannerModifier) + if (ivScannerModifier && !this.scene.disableIVScanner) enemyField.map(p => this.scene.pushPhase(new ScanIvsPhase(this.scene, p.getBattlerIndex(), Math.min(ivScannerModifier.getStackCount() * 2, 6)))); } diff --git a/src/system/settings.ts b/src/system/settings.ts index df4f894c949..2276d9eb723 100644 --- a/src/system/settings.ts +++ b/src/system/settings.ts @@ -20,6 +20,7 @@ export enum Setting { Sprite_Set = "SPRITE_SET", Move_Animations = "MOVE_ANIMATIONS", Show_Stats_on_Level_Up = "SHOW_LEVEL_UP_STATS", + Disable_IV_Scanner = "DISABLE_IV_SCANNER", EXP_Gains_Speed = "EXP_GAINS_SPEED", HP_Bar_Speed = "HP_BAR_SPEED", Fusion_Palette_Swaps = "FUSION_PALETTE_SWAPS", @@ -51,6 +52,7 @@ export const settingOptions: SettingOptions = { [Setting.Sprite_Set]: [ 'Consistent', 'Mixed Animated' ], [Setting.Move_Animations]: [ 'Off', 'On' ], [Setting.Show_Stats_on_Level_Up]: [ 'Off', 'On' ], + [Setting.Disable_IV_Scanner]: [ 'On', 'Off' ], [Setting.EXP_Gains_Speed]: [ 'Normal', 'Fast', 'Faster', 'Skip' ], [Setting.HP_Bar_Speed]: [ 'Normal', 'Fast', 'Faster', 'Instant' ], [Setting.Fusion_Palette_Swaps]: [ 'Off', 'On' ], @@ -74,6 +76,7 @@ export const settingDefaults: SettingDefaults = { [Setting.Sprite_Set]: 0, [Setting.Move_Animations]: 1, [Setting.Show_Stats_on_Level_Up]: 1, + [Setting.Disable_IV_Scanner]: 1, [Setting.EXP_Gains_Speed]: 0, [Setting.HP_Bar_Speed]: 0, [Setting.Fusion_Palette_Swaps]: 1, @@ -128,6 +131,9 @@ export function setSetting(scene: BattleScene, setting: Setting, value: integer) case Setting.Show_Stats_on_Level_Up: scene.showLevelUpStats = settingOptions[setting][value] === 'On'; break; + case Setting.Disable_IV_Scanner: + scene.disableIVScanner = settingOptions[setting][value] === 'On'; + break; case Setting.EXP_Gains_Speed: scene.expGainsSpeed = value; break;