From c055649db6829d397a330b4bbda4441db2b17f0d Mon Sep 17 00:00:00 2001 From: NightKev <34855794+DayKev@users.noreply.github.com> Date: Fri, 8 Nov 2024 16:46:07 -0800 Subject: [PATCH] Replace `* as Utils` imports with named imports --- src/phases/attempt-run-phase.ts | 10 ++++---- src/phases/berry-phase.ts | 6 ++--- src/phases/damage-phase.ts | 6 ++--- src/phases/egg-hatch-phase.ts | 28 ++++++++++----------- src/phases/evolution-phase.ts | 28 ++++++++++----------- src/phases/exp-phase.ts | 4 +-- src/phases/form-change-phase.ts | 8 +++--- src/phases/game-over-phase.ts | 4 +-- src/phases/level-up-phase.ts | 4 +-- src/phases/login-phase.ts | 12 ++++----- src/phases/money-reward-phase.ts | 4 +-- src/phases/mystery-encounter-phases.ts | 5 ++-- src/phases/party-heal-phase.ts | 4 +-- src/phases/pokemon-heal-phase.ts | 6 ++--- src/phases/post-turn-status-effect-phase.ts | 6 ++--- src/phases/reload-session-phase.ts | 4 +-- src/phases/select-biome-phase.ts | 8 +++--- src/phases/select-modifier-phase.ts | 3 +-- src/phases/show-party-exp-bar-phase.ts | 4 +-- src/phases/title-phase.ts | 4 +-- src/phases/trainer-victory-phase.ts | 4 +-- src/phases/turn-start-phase.ts | 10 ++++---- src/phases/weather-effect-phase.ts | 8 +++--- 23 files changed, 89 insertions(+), 91 deletions(-) diff --git a/src/phases/attempt-run-phase.ts b/src/phases/attempt-run-phase.ts index b4768dc9a26..86df333c89b 100644 --- a/src/phases/attempt-run-phase.ts +++ b/src/phases/attempt-run-phase.ts @@ -1,10 +1,10 @@ import BattleScene from "#app/battle-scene"; import { applyAbAttrs, RunSuccessAbAttr } from "#app/data/ability"; -import { Stat } from "#app/enums/stat"; -import { StatusEffect } from "#app/enums/status-effect"; +import { Stat } from "#enums/stat"; +import { StatusEffect } from "#enums/status-effect"; import Pokemon, { PlayerPokemon, EnemyPokemon } from "#app/field/pokemon"; import i18next from "i18next"; -import * as Utils from "#app/utils"; +import { NumberHolder } from "#app/utils"; import { BattleEndPhase } from "./battle-end-phase"; import { NewBattlePhase } from "./new-battle-phase"; import { PokemonPhase } from "./pokemon-phase"; @@ -26,7 +26,7 @@ export class AttemptRunPhase extends PokemonPhase { const playerPokemon = this.getPokemon(); - const escapeChance = new Utils.NumberHolder(0); + const escapeChance = new NumberHolder(0); this.attemptRunAway(playerField, enemyField, escapeChance); @@ -62,7 +62,7 @@ export class AttemptRunPhase extends PokemonPhase { this.end(); } - attemptRunAway(playerField: PlayerPokemon[], enemyField: EnemyPokemon[], escapeChance: Utils.NumberHolder) { + attemptRunAway(playerField: PlayerPokemon[], enemyField: EnemyPokemon[], escapeChance: NumberHolder) { /** Sum of the speed of all enemy pokemon on the field */ const enemySpeed = enemyField.reduce((total: number, enemyPokemon: Pokemon) => total + enemyPokemon.getStat(Stat.SPD), 0); /** Sum of the speed of all player pokemon on the field */ diff --git a/src/phases/berry-phase.ts b/src/phases/berry-phase.ts index e419aa6692d..7404766ebd5 100644 --- a/src/phases/berry-phase.ts +++ b/src/phases/berry-phase.ts @@ -4,7 +4,7 @@ import { BerryUsedEvent } from "#app/events/battle-scene"; import { getPokemonNameWithAffix } from "#app/messages"; import { BerryModifier } from "#app/modifier/modifier"; import i18next from "i18next"; -import * as Utils from "#app/utils"; +import { BooleanHolder } from "#app/utils"; import { FieldPhase } from "./field-phase"; import { CommonAnimPhase } from "./common-anim-phase"; @@ -19,7 +19,7 @@ export class BerryPhase extends FieldPhase { }, pokemon.isPlayer()); if (hasUsableBerry) { - const cancelled = new Utils.BooleanHolder(false); + const cancelled = new BooleanHolder(false); pokemon.getOpponents().map((opp) => applyAbAttrs(PreventBerryUseAbAttr, opp, cancelled)); if (cancelled.value) { @@ -42,7 +42,7 @@ export class BerryPhase extends FieldPhase { this.scene.updateModifiers(pokemon.isPlayer()); - applyAbAttrs(HealFromBerryUseAbAttr, pokemon, new Utils.BooleanHolder(false)); + applyAbAttrs(HealFromBerryUseAbAttr, pokemon, new BooleanHolder(false)); } } }); diff --git a/src/phases/damage-phase.ts b/src/phases/damage-phase.ts index ba3947bd595..22794c28a4a 100644 --- a/src/phases/damage-phase.ts +++ b/src/phases/damage-phase.ts @@ -1,8 +1,8 @@ import BattleScene from "#app/battle-scene"; import { BattlerIndex } from "#app/battle"; -import { BattleSpec } from "#app/enums/battle-spec"; +import { BattleSpec } from "#enums/battle-spec"; import { DamageResult, HitResult } from "#app/field/pokemon"; -import * as Utils from "#app/utils"; +import { fixedInt } from "#app/utils"; import { PokemonPhase } from "./pokemon-phase"; export class DamagePhase extends PokemonPhase { @@ -25,7 +25,7 @@ export class DamagePhase extends PokemonPhase { if (this.scene.moveAnimations) { this.scene.toggleInvert(true); } - this.scene.time.delayedCall(Utils.fixedInt(1000), () => { + this.scene.time.delayedCall(fixedInt(1000), () => { this.scene.toggleInvert(false); this.applyDamage(); }); diff --git a/src/phases/egg-hatch-phase.ts b/src/phases/egg-hatch-phase.ts index 00954ea895f..1de28cc39ae 100644 --- a/src/phases/egg-hatch-phase.ts +++ b/src/phases/egg-hatch-phase.ts @@ -11,7 +11,7 @@ import PokemonInfoContainer from "#app/ui/pokemon-info-container"; import { Mode } from "#app/ui/ui"; import i18next from "i18next"; import SoundFade from "phaser3-rex-plugins/plugins/soundfade"; -import * as Utils from "#app/utils"; +import { fixedInt, getFrameMs, randInt } from "#app/utils"; import { EggLapsePhase } from "./egg-lapse-phase"; import { EggHatchData } from "#app/data/egg-hatch-data"; @@ -285,15 +285,15 @@ export class EggHatchPhase extends Phase { this.canSkip = false; this.hatched = true; if (this.evolutionBgm) { - SoundFade.fadeOut(this.scene, this.evolutionBgm, Utils.fixedInt(100)); + SoundFade.fadeOut(this.scene, this.evolutionBgm, fixedInt(100)); } for (let e = 0; e < 5; e++) { - this.scene.time.delayedCall(Utils.fixedInt(375 * e), () => this.scene.playSound("se/egg_hatch", { volume: 1 - (e * 0.2) })); + this.scene.time.delayedCall(fixedInt(375 * e), () => this.scene.playSound("se/egg_hatch", { volume: 1 - (e * 0.2) })); } this.eggLightraysOverlay.setVisible(true); this.eggLightraysOverlay.play("egg_lightrays"); this.scene.tweens.add({ - duration: Utils.fixedInt(125), + duration: fixedInt(125), targets: this.eggHatchOverlay, alpha: 1, ease: "Cubic.easeIn", @@ -302,7 +302,7 @@ export class EggHatchPhase extends Phase { this.canSkip = true; } }); - this.scene.time.delayedCall(Utils.fixedInt(1500), () => { + this.scene.time.delayedCall(fixedInt(1500), () => { this.canSkip = false; if (!this.skipped) { this.doReveal(); @@ -335,17 +335,17 @@ export class EggHatchPhase extends Phase { this.pokemonSprite.setPipelineData("shiny", this.pokemon.shiny); this.pokemonSprite.setPipelineData("variant", this.pokemon.variant); this.pokemonSprite.setVisible(true); - this.scene.time.delayedCall(Utils.fixedInt(250), () => { + this.scene.time.delayedCall(fixedInt(250), () => { this.eggsToHatchCount--; this.eggHatchHandler.eventTarget.dispatchEvent(new EggCountChangedEvent(this.eggsToHatchCount)); this.pokemon.cry(); if (isShiny) { - this.scene.time.delayedCall(Utils.fixedInt(500), () => { + this.scene.time.delayedCall(fixedInt(500), () => { this.pokemonShinySparkle.play(`sparkle${this.pokemon.variant ? `_${this.pokemon.variant + 1}` : ""}`); this.scene.playSound("se/sparkle"); }); } - this.scene.time.delayedCall(Utils.fixedInt(!this.skipped ? !isShiny ? 1250 : 1750 : !isShiny ? 250 : 750), () => { + this.scene.time.delayedCall(fixedInt(!this.skipped ? !isShiny ? 1250 : 1750 : !isShiny ? 250 : 750), () => { this.infoContainer.show(this.pokemon, false, this.skipped ? 2 : 1); this.scene.playSoundWithoutBgm("evolution_fanfare"); @@ -363,7 +363,7 @@ export class EggHatchPhase extends Phase { }); }); this.scene.tweens.add({ - duration: Utils.fixedInt(this.skipped ? 500 : 3000), + duration: fixedInt(this.skipped ? 500 : 3000), targets: this.eggHatchOverlay, alpha: 0, ease: "Cubic.easeOut" @@ -388,9 +388,9 @@ export class EggHatchPhase extends Phase { doSpray(intensity: number, offsetY?: number) { this.scene.tweens.addCounter({ repeat: intensity, - duration: Utils.getFrameMs(1), + duration: getFrameMs(1), onRepeat: () => { - this.doSprayParticle(Utils.randInt(8), offsetY || 0); + this.doSprayParticle(randInt(8), offsetY || 0); } }); } @@ -409,12 +409,12 @@ export class EggHatchPhase extends Phase { let f = 0; let yOffset = 0; - const speed = 3 - Utils.randInt(8); - const amp = 24 + Utils.randInt(32); + const speed = 3 - randInt(8); + const amp = 24 + randInt(32); const particleTimer = this.scene.tweens.addCounter({ repeat: -1, - duration: Utils.getFrameMs(1), + duration: getFrameMs(1), onRepeat: () => { updateParticle(); } diff --git a/src/phases/evolution-phase.ts b/src/phases/evolution-phase.ts index beadc3910ba..bf521fd3afa 100644 --- a/src/phases/evolution-phase.ts +++ b/src/phases/evolution-phase.ts @@ -3,7 +3,7 @@ import { Phase } from "#app/phase"; import BattleScene, { AnySound } from "#app/battle-scene"; import { SpeciesFormEvolution } from "#app/data/balance/pokemon-evolutions"; import EvolutionSceneHandler from "#app/ui/evolution-scene-handler"; -import * as Utils from "#app/utils"; +import { fixedInt, getFrameMs, randInt } from "#app/utils"; import { Mode } from "#app/ui/ui"; import { cos, sin } from "#app/field/anims"; import Pokemon, { PlayerPokemon } from "#app/field/pokemon"; @@ -251,8 +251,8 @@ export class EvolutionPhase extends Phase { this.scene.playSoundWithoutBgm("evolution_fanfare"); evolvedPokemon.destroy(); - this.scene.ui.showText(i18next.t("menu:evolutionDone", { pokemonName: this.preEvolvedPokemonName, evolvedPokemonName: this.pokemon.name }), null, () => this.end(), null, true, Utils.fixedInt(4000)); - this.scene.time.delayedCall(Utils.fixedInt(4250), () => this.scene.playBgm()); + this.scene.ui.showText(i18next.t("menu:evolutionDone", { pokemonName: this.preEvolvedPokemonName, evolvedPokemonName: this.pokemon.name }), null, () => this.end(), null, true, fixedInt(4000)); + this.scene.time.delayedCall(fixedInt(4250), () => this.scene.playBgm()); }); }); }; @@ -303,7 +303,7 @@ export class EvolutionPhase extends Phase { this.scene.tweens.addCounter({ repeat: 64, - duration: Utils.getFrameMs(1), + duration: getFrameMs(1), onRepeat: () => { if (f < 64) { if (!(f & 7)) { @@ -322,7 +322,7 @@ export class EvolutionPhase extends Phase { this.scene.tweens.addCounter({ repeat: 96, - duration: Utils.getFrameMs(1), + duration: getFrameMs(1), onRepeat: () => { if (f < 96) { if (f < 6) { @@ -372,7 +372,7 @@ export class EvolutionPhase extends Phase { this.scene.tweens.addCounter({ repeat: 48, - duration: Utils.getFrameMs(1), + duration: getFrameMs(1), onRepeat: () => { if (!f) { for (let i = 0; i < 16; i++) { @@ -393,14 +393,14 @@ export class EvolutionPhase extends Phase { this.scene.tweens.addCounter({ repeat: 48, - duration: Utils.getFrameMs(1), + duration: getFrameMs(1), onRepeat: () => { if (!f) { for (let i = 0; i < 8; i++) { this.doSprayParticle(i); } } else if (f < 50) { - this.doSprayParticle(Utils.randInt(8)); + this.doSprayParticle(randInt(8)); } f++; } @@ -417,7 +417,7 @@ export class EvolutionPhase extends Phase { const particleTimer = this.scene.tweens.addCounter({ repeat: -1, - duration: Utils.getFrameMs(1), + duration: getFrameMs(1), onRepeat: () => { updateParticle(); } @@ -454,7 +454,7 @@ export class EvolutionPhase extends Phase { const particleTimer = this.scene.tweens.addCounter({ repeat: -1, - duration: Utils.getFrameMs(1), + duration: getFrameMs(1), onRepeat: () => { updateParticle(); } @@ -486,7 +486,7 @@ export class EvolutionPhase extends Phase { const particleTimer = this.scene.tweens.addCounter({ repeat: -1, - duration: Utils.getFrameMs(1), + duration: getFrameMs(1), onRepeat: () => { updateParticle(); } @@ -516,12 +516,12 @@ export class EvolutionPhase extends Phase { let f = 0; let yOffset = 0; - const speed = 3 - Utils.randInt(8); - const amp = 48 + Utils.randInt(64); + const speed = 3 - randInt(8); + const amp = 48 + randInt(64); const particleTimer = this.scene.tweens.addCounter({ repeat: -1, - duration: Utils.getFrameMs(1), + duration: getFrameMs(1), onRepeat: () => { updateParticle(); } diff --git a/src/phases/exp-phase.ts b/src/phases/exp-phase.ts index 9c445f28298..ab06de2bd88 100644 --- a/src/phases/exp-phase.ts +++ b/src/phases/exp-phase.ts @@ -2,7 +2,7 @@ import BattleScene from "#app/battle-scene"; import { getPokemonNameWithAffix } from "#app/messages"; import { ExpBoosterModifier } from "#app/modifier/modifier"; import i18next from "i18next"; -import * as Utils from "#app/utils"; +import { NumberHolder } from "#app/utils"; import { PlayerPartyMemberPokemonPhase } from "./player-party-member-pokemon-phase"; import { LevelUpPhase } from "./level-up-phase"; @@ -19,7 +19,7 @@ export class ExpPhase extends PlayerPartyMemberPokemonPhase { super.start(); const pokemon = this.getPokemon(); - const exp = new Utils.NumberHolder(this.expValue); + const exp = new NumberHolder(this.expValue); this.scene.applyModifiers(ExpBoosterModifier, true, exp); exp.value = Math.floor(exp.value); this.scene.ui.showText(i18next.t("battle:expGain", { pokemonName: getPokemonNameWithAffix(pokemon), exp: exp.value }), null, () => { diff --git a/src/phases/form-change-phase.ts b/src/phases/form-change-phase.ts index 410163a70e4..67839db57b7 100644 --- a/src/phases/form-change-phase.ts +++ b/src/phases/form-change-phase.ts @@ -1,5 +1,5 @@ import BattleScene from "../battle-scene"; -import * as Utils from "../utils"; +import { fixedInt } from "#app/utils"; import { achvs } from "../system/achv"; import { SpeciesFormChange, getSpeciesFormChangeMessage } from "../data/pokemon-forms"; import { PlayerPokemon } from "../field/pokemon"; @@ -8,7 +8,7 @@ import PartyUiHandler from "../ui/party-ui-handler"; import { getPokemonNameWithAffix } from "../messages"; import { EndEvolutionPhase } from "./end-evolution-phase"; import { EvolutionPhase } from "./evolution-phase"; -import { BattlerTagType } from "#app/enums/battler-tag-type"; +import { BattlerTagType } from "#enums/battler-tag-type"; import { SpeciesFormKey } from "#enums/species-form-key"; export class FormChangePhase extends EvolutionPhase { @@ -134,8 +134,8 @@ export class FormChangePhase extends EvolutionPhase { this.scene.playSoundWithoutBgm(playEvolutionFanfare ? "evolution_fanfare" : "minor_fanfare"); transformedPokemon.destroy(); - this.scene.ui.showText(getSpeciesFormChangeMessage(this.pokemon, this.formChange, preName), null, () => this.end(), null, true, Utils.fixedInt(delay)); - this.scene.time.delayedCall(Utils.fixedInt(delay + 250), () => this.scene.playBgm()); + this.scene.ui.showText(getSpeciesFormChangeMessage(this.pokemon, this.formChange, preName), null, () => this.end(), null, true, fixedInt(delay)); + this.scene.time.delayedCall(fixedInt(delay + 250), () => this.scene.playBgm()); }); }); } diff --git a/src/phases/game-over-phase.ts b/src/phases/game-over-phase.ts index 78fca492aae..331ab27bf30 100644 --- a/src/phases/game-over-phase.ts +++ b/src/phases/game-over-phase.ts @@ -19,7 +19,7 @@ import { UnlockPhase } from "#app/phases/unlock-phase"; import { achvs, ChallengeAchv } from "#app/system/achv"; import { Unlockables } from "#app/system/unlockables"; import { Mode } from "#app/ui/ui"; -import * as Utils from "#app/utils"; +import { isLocal, isLocalServerConnected } from "#app/utils"; import { PlayerGender } from "#enums/player-gender"; import { TrainerType } from "#enums/trainer-type"; import i18next from "i18next"; @@ -177,7 +177,7 @@ export class GameOverPhase extends BattlePhase { If Online, execute apiFetch as intended If Offline, execute offlineNewClear(), a localStorage implementation of newClear daily run checks */ if (this.victory) { - if (!Utils.isLocal || Utils.isLocalServerConnected) { + if (!isLocal || isLocalServerConnected) { pokerogueApi.savedata.session.newclear({ slot: this.scene.sessionSlotId, clientSessionId }) .then((success) => doGameOver(!!success)); } else { diff --git a/src/phases/level-up-phase.ts b/src/phases/level-up-phase.ts index c48c92720ea..29abb6d0c38 100644 --- a/src/phases/level-up-phase.ts +++ b/src/phases/level-up-phase.ts @@ -5,7 +5,7 @@ import { PlayerPokemon } from "#app/field/pokemon"; import { getPokemonNameWithAffix } from "#app/messages"; import { LevelAchv } from "#app/system/achv"; import i18next from "i18next"; -import * as Utils from "#app/utils"; +import { NumberHolder } from "#app/utils"; import { PlayerPartyMemberPokemonPhase } from "./player-party-member-pokemon-phase"; import { LearnMovePhase } from "./learn-move-phase"; @@ -28,7 +28,7 @@ export class LevelUpPhase extends PlayerPartyMemberPokemonPhase { this.scene.gameData.gameStats.highestLevel = this.level; } - this.scene.validateAchvs(LevelAchv, new Utils.NumberHolder(this.level)); + this.scene.validateAchvs(LevelAchv, new NumberHolder(this.level)); const pokemon = this.getPokemon(); const prevStats = pokemon.stats.slice(0); diff --git a/src/phases/login-phase.ts b/src/phases/login-phase.ts index d181fb08613..787942d159e 100644 --- a/src/phases/login-phase.ts +++ b/src/phases/login-phase.ts @@ -4,7 +4,7 @@ import { Phase } from "#app/phase"; import { handleTutorial, Tutorial } from "#app/tutorial"; import { Mode } from "#app/ui/ui"; import i18next, { t } from "i18next"; -import * as Utils from "#app/utils"; +import { getCookie, sessionIdKey, executeIf, removeCookie } from "#app/utils"; import { SelectGenderPhase } from "./select-gender-phase"; import { UnavailablePhase } from "./unavailable-phase"; @@ -20,10 +20,10 @@ export class LoginPhase extends Phase { start(): void { super.start(); - const hasSession = !!Utils.getCookie(Utils.sessionIdKey); + const hasSession = !!getCookie(sessionIdKey); this.scene.ui.setMode(Mode.LOADING, { buttonActions: []}); - Utils.executeIf(bypassLogin || hasSession, updateUserInfo).then(response => { + executeIf(bypassLogin || hasSession, updateUserInfo).then(response => { const success = response ? response[0] : false; const statusCode = response ? response[1] : null; if (!success) { @@ -37,7 +37,7 @@ export class LoginPhase extends Phase { const loadData = () => { updateUserInfo().then(success => { if (!success[0]) { - Utils.removeCookie(Utils.sessionIdKey); + removeCookie(sessionIdKey); this.scene.reset(true, true); return; } @@ -58,7 +58,7 @@ export class LoginPhase extends Phase { this.scene.ui.playSelect(); updateUserInfo().then(success => { if (!success[0]) { - Utils.removeCookie(Utils.sessionIdKey); + removeCookie(sessionIdKey); this.scene.reset(true, true); return; } @@ -84,7 +84,7 @@ export class LoginPhase extends Phase { ] }); } else if (statusCode === 401) { - Utils.removeCookie(Utils.sessionIdKey); + removeCookie(sessionIdKey); this.scene.reset(true, true); } else { this.scene.unshiftPhase(new UnavailablePhase(this.scene)); diff --git a/src/phases/money-reward-phase.ts b/src/phases/money-reward-phase.ts index 3b7ea6787d9..cc26b7114cd 100644 --- a/src/phases/money-reward-phase.ts +++ b/src/phases/money-reward-phase.ts @@ -2,7 +2,7 @@ import BattleScene from "#app/battle-scene"; import { ArenaTagType } from "#app/enums/arena-tag-type"; import { MoneyMultiplierModifier } from "#app/modifier/modifier"; import i18next from "i18next"; -import * as Utils from "#app/utils"; +import { NumberHolder } from "#app/utils"; import { BattlePhase } from "./battle-phase"; export class MoneyRewardPhase extends BattlePhase { @@ -15,7 +15,7 @@ export class MoneyRewardPhase extends BattlePhase { } start() { - const moneyAmount = new Utils.NumberHolder(this.scene.getWaveMoneyAmount(this.moneyMultiplier)); + const moneyAmount = new NumberHolder(this.scene.getWaveMoneyAmount(this.moneyMultiplier)); this.scene.applyModifiers(MoneyMultiplierModifier, true, moneyAmount); diff --git a/src/phases/mystery-encounter-phases.ts b/src/phases/mystery-encounter-phases.ts index 2d1c3c4ae31..9e0a940fb28 100644 --- a/src/phases/mystery-encounter-phases.ts +++ b/src/phases/mystery-encounter-phases.ts @@ -24,8 +24,7 @@ import { TrainerSlot } from "../data/trainer-config"; import { IvScannerModifier } from "../modifier/modifier"; import { Phase } from "../phase"; import { Mode } from "../ui/ui"; -import * as Utils from "../utils"; -import { isNullOrUndefined } from "../utils"; +import { isNullOrUndefined, randSeedItem } from "#app/utils"; /** * Will handle (in order): @@ -368,7 +367,7 @@ export class MysteryEncounterBattlePhase extends Phase { } else { const trainer = this.scene.currentBattle.trainer; let message: string; - scene.executeWithSeedOffset(() => message = Utils.randSeedItem(encounterMessages), this.scene.currentBattle.mysteryEncounter?.getSeedOffset()); + scene.executeWithSeedOffset(() => message = randSeedItem(encounterMessages), this.scene.currentBattle.mysteryEncounter?.getSeedOffset()); message = message!; // tell TS compiler it's defined now const showDialogueAndSummon = () => { scene.ui.showDialogue(message, trainer?.getName(TrainerSlot.NONE, true), null, () => { diff --git a/src/phases/party-heal-phase.ts b/src/phases/party-heal-phase.ts index 4841bf9a5b4..2d047bab16d 100644 --- a/src/phases/party-heal-phase.ts +++ b/src/phases/party-heal-phase.ts @@ -1,5 +1,5 @@ import BattleScene from "#app/battle-scene"; -import * as Utils from "#app/utils"; +import { fixedInt } from "#app/utils"; import { BattlePhase } from "./battle-phase"; export class PartyHealPhase extends BattlePhase { @@ -28,7 +28,7 @@ export class PartyHealPhase extends BattlePhase { pokemon.updateInfo(true); } const healSong = this.scene.playSoundWithoutBgm("heal"); - this.scene.time.delayedCall(Utils.fixedInt(healSong.totalDuration * 1000), () => { + this.scene.time.delayedCall(fixedInt(healSong.totalDuration * 1000), () => { healSong.destroy(); if (this.resumeBgm && bgmPlaying) { this.scene.playBgm(); diff --git a/src/phases/pokemon-heal-phase.ts b/src/phases/pokemon-heal-phase.ts index 1cafdf18c10..b2af92de2f5 100644 --- a/src/phases/pokemon-heal-phase.ts +++ b/src/phases/pokemon-heal-phase.ts @@ -8,7 +8,7 @@ import { getPokemonNameWithAffix } from "#app/messages"; import { HealingBoosterModifier } from "#app/modifier/modifier"; import { HealAchv } from "#app/system/achv"; import i18next from "i18next"; -import * as Utils from "#app/utils"; +import { NumberHolder } from "#app/utils"; import { CommonAnimPhase } from "./common-anim-phase"; import { BattlerTagType } from "#app/enums/battler-tag-type"; import { HealBlockTag } from "#app/data/battler-tags"; @@ -59,11 +59,11 @@ export class PokemonHealPhase extends CommonAnimPhase { this.message = null; return super.end(); } else if (healOrDamage) { - const hpRestoreMultiplier = new Utils.NumberHolder(1); + const hpRestoreMultiplier = new NumberHolder(1); if (!this.revive) { this.scene.applyModifiers(HealingBoosterModifier, this.player, hpRestoreMultiplier); } - const healAmount = new Utils.NumberHolder(Math.floor(this.hpHealed * hpRestoreMultiplier.value)); + const healAmount = new NumberHolder(Math.floor(this.hpHealed * hpRestoreMultiplier.value)); if (healAmount.value < 0) { pokemon.damageAndUpdate(healAmount.value * -1, HitResult.HEAL as DamageResult); healAmount.value = 0; diff --git a/src/phases/post-turn-status-effect-phase.ts b/src/phases/post-turn-status-effect-phase.ts index 08e4d7cb952..f10d654cec1 100644 --- a/src/phases/post-turn-status-effect-phase.ts +++ b/src/phases/post-turn-status-effect-phase.ts @@ -6,7 +6,7 @@ import { getStatusEffectActivationText } from "#app/data/status-effect"; import { BattleSpec } from "#app/enums/battle-spec"; import { StatusEffect } from "#app/enums/status-effect"; import { getPokemonNameWithAffix } from "#app/messages"; -import * as Utils from "#app/utils"; +import { BooleanHolder, NumberHolder } from "#app/utils"; import { PokemonPhase } from "./pokemon-phase"; export class PostTurnStatusEffectPhase extends PokemonPhase { @@ -18,13 +18,13 @@ export class PostTurnStatusEffectPhase extends PokemonPhase { const pokemon = this.getPokemon(); if (pokemon?.isActive(true) && pokemon.status && pokemon.status.isPostTurn()) { pokemon.status.incrementTurn(); - const cancelled = new Utils.BooleanHolder(false); + const cancelled = new BooleanHolder(false); applyAbAttrs(BlockNonDirectDamageAbAttr, pokemon, cancelled); applyAbAttrs(BlockStatusDamageAbAttr, pokemon, cancelled); if (!cancelled.value) { this.scene.queueMessage(getStatusEffectActivationText(pokemon.status.effect, getPokemonNameWithAffix(pokemon))); - const damage = new Utils.NumberHolder(0); + const damage = new NumberHolder(0); switch (pokemon.status.effect) { case StatusEffect.POISON: damage.value = Math.max(pokemon.getMaxHp() >> 3, 1); diff --git a/src/phases/reload-session-phase.ts b/src/phases/reload-session-phase.ts index 16cefe02c14..0ab8004a08d 100644 --- a/src/phases/reload-session-phase.ts +++ b/src/phases/reload-session-phase.ts @@ -1,7 +1,7 @@ import BattleScene from "#app/battle-scene"; import { Phase } from "#app/phase"; import { Mode } from "#app/ui/ui"; -import * as Utils from "#app/utils"; +import { fixedInt } from "#app/utils"; export class ReloadSessionPhase extends Phase { private systemDataStr?: string; @@ -18,7 +18,7 @@ export class ReloadSessionPhase extends Phase { let delayElapsed = false; let loaded = false; - this.scene.time.delayedCall(Utils.fixedInt(1500), () => { + this.scene.time.delayedCall(fixedInt(1500), () => { if (loaded) { this.end(); } else { diff --git a/src/phases/select-biome-phase.ts b/src/phases/select-biome-phase.ts index e03d0b4c025..f9a14e0c72a 100644 --- a/src/phases/select-biome-phase.ts +++ b/src/phases/select-biome-phase.ts @@ -5,7 +5,7 @@ import { MoneyInterestModifier, MapModifier } from "#app/modifier/modifier"; import { OptionSelectItem } from "#app/ui/abstact-option-select-ui-handler"; import { Mode } from "#app/ui/ui"; import { BattlePhase } from "./battle-phase"; -import * as Utils from "#app/utils"; +import { randSeedInt } from "#app/utils"; import { PartyHealPhase } from "./party-heal-phase"; import { SwitchBiomePhase } from "./switch-biome-phase"; @@ -38,7 +38,7 @@ export class SelectBiomePhase extends BattlePhase { let biomes: Biome[] = []; this.scene.executeWithSeedOffset(() => { biomes = (biomeLinks[currentBiome] as (Biome | [Biome, number])[]) - .filter(b => !Array.isArray(b) || !Utils.randSeedInt(b[1])) + .filter(b => !Array.isArray(b) || !randSeedInt(b[1])) .map(b => !Array.isArray(b) ? b : b[0]); }, this.scene.currentBattle.waveIndex); if (biomes.length > 1 && this.scene.findModifier(m => m instanceof MapModifier)) { @@ -47,7 +47,7 @@ export class SelectBiomePhase extends BattlePhase { biomeChoices = (!Array.isArray(biomeLinks[currentBiome]) ? [ biomeLinks[currentBiome] as Biome ] : biomeLinks[currentBiome] as (Biome | [Biome, number])[]) - .filter((b, i) => !Array.isArray(b) || !Utils.randSeedInt(b[1])) + .filter((b, i) => !Array.isArray(b) || !randSeedInt(b[1])) .map(b => Array.isArray(b) ? b[0] : b); }, this.scene.currentBattle.waveIndex); const biomeSelectItems = biomeChoices.map(b => { @@ -66,7 +66,7 @@ export class SelectBiomePhase extends BattlePhase { delay: 1000 }); } else { - setNextBiome(biomes[Utils.randSeedInt(biomes.length)]); + setNextBiome(biomes[randSeedInt(biomes.length)]); } } else if (biomeLinks.hasOwnProperty(currentBiome)) { setNextBiome(biomeLinks[currentBiome] as Biome); diff --git a/src/phases/select-modifier-phase.ts b/src/phases/select-modifier-phase.ts index 972e187dbab..dbc4b3402c9 100644 --- a/src/phases/select-modifier-phase.ts +++ b/src/phases/select-modifier-phase.ts @@ -6,7 +6,6 @@ import ModifierSelectUiHandler, { SHOP_OPTIONS_ROW_LIMIT } from "#app/ui/modifie import PartyUiHandler, { PartyUiMode, PartyOption } from "#app/ui/party-ui-handler"; import { Mode } from "#app/ui/ui"; import i18next from "i18next"; -import * as Utils from "#app/utils"; import { BattlePhase } from "./battle-phase"; import Overrides from "#app/overrides"; import { CustomModifierSettings } from "#app/modifier/modifier-type"; @@ -42,7 +41,7 @@ export class SelectModifierPhase extends BattlePhase { if (!this.isCopy) { regenerateModifierPoolThresholds(party, this.getPoolType(), this.rerollCount); } - const modifierCount = new Utils.NumberHolder(3); + const modifierCount = new NumberHolder(3); if (this.isPlayer()) { this.scene.applyModifiers(ExtraModifierModifier, true, modifierCount); this.scene.applyModifiers(TempExtraModifierModifier, true, modifierCount); diff --git a/src/phases/show-party-exp-bar-phase.ts b/src/phases/show-party-exp-bar-phase.ts index 0cdc660d701..e4234afb732 100644 --- a/src/phases/show-party-exp-bar-phase.ts +++ b/src/phases/show-party-exp-bar-phase.ts @@ -2,7 +2,7 @@ import BattleScene from "#app/battle-scene"; import { ExpGainsSpeed } from "#app/enums/exp-gains-speed"; import { ExpNotification } from "#app/enums/exp-notification"; import { ExpBoosterModifier } from "#app/modifier/modifier"; -import * as Utils from "#app/utils"; +import { NumberHolder } from "#app/utils"; import { HidePartyExpBarPhase } from "./hide-party-exp-bar-phase"; import { LevelUpPhase } from "./level-up-phase"; import { PlayerPartyMemberPokemonPhase } from "./player-party-member-pokemon-phase"; @@ -20,7 +20,7 @@ export class ShowPartyExpBarPhase extends PlayerPartyMemberPokemonPhase { super.start(); const pokemon = this.getPokemon(); - const exp = new Utils.NumberHolder(this.expValue); + const exp = new NumberHolder(this.expValue); this.scene.applyModifiers(ExpBoosterModifier, true, exp); exp.value = Math.floor(exp.value); diff --git a/src/phases/title-phase.ts b/src/phases/title-phase.ts index 220a2da5256..98fe0690d7b 100644 --- a/src/phases/title-phase.ts +++ b/src/phases/title-phase.ts @@ -13,7 +13,7 @@ import { vouchers } from "#app/system/voucher"; import { OptionSelectConfig, OptionSelectItem } from "#app/ui/abstact-option-select-ui-handler"; import { SaveSlotUiMode } from "#app/ui/save-slot-select-ui-handler"; import { Mode } from "#app/ui/ui"; -import * as Utils from "#app/utils"; +import { isLocal, isLocalServerConnected } from "#app/utils"; import i18next from "i18next"; import { CheckSwitchPhase } from "./check-switch-phase"; import { EncounterPhase } from "./encounter-phase"; @@ -236,7 +236,7 @@ export class TitlePhase extends Phase { }; // If Online, calls seed fetch from db to generate daily run. If Offline, generates a daily run based on current date. - if (!Utils.isLocal || Utils.isLocalServerConnected) { + if (!isLocal || isLocalServerConnected) { fetchDailyRunSeed().then(seed => { if (seed) { generateDaily(seed); diff --git a/src/phases/trainer-victory-phase.ts b/src/phases/trainer-victory-phase.ts index dc1b962f47e..b192462928e 100644 --- a/src/phases/trainer-victory-phase.ts +++ b/src/phases/trainer-victory-phase.ts @@ -4,7 +4,7 @@ import { TrainerType } from "#app/enums/trainer-type"; import { modifierTypes } from "#app/modifier/modifier-type"; import { vouchers } from "#app/system/voucher"; import i18next from "i18next"; -import * as Utils from "#app/utils"; +import { randSeedItem } from "#app/utils"; import { BattlePhase } from "./battle-phase"; import { ModifierRewardPhase } from "./modifier-reward-phase"; import { MoneyRewardPhase } from "./money-reward-phase"; @@ -43,7 +43,7 @@ export class TrainerVictoryPhase extends BattlePhase { this.scene.ui.showText(i18next.t("battle:trainerDefeated", { trainerName: this.scene.currentBattle.trainer?.getName(TrainerSlot.NONE, true) }), null, () => { const victoryMessages = this.scene.currentBattle.trainer?.getVictoryMessages()!; // TODO: is this bang correct? let message: string; - this.scene.executeWithSeedOffset(() => message = Utils.randSeedItem(victoryMessages), this.scene.currentBattle.waveIndex); + this.scene.executeWithSeedOffset(() => message = randSeedItem(victoryMessages), this.scene.currentBattle.waveIndex); message = message!; // tell TS compiler it's defined now const showMessage = () => { diff --git a/src/phases/turn-start-phase.ts b/src/phases/turn-start-phase.ts index b48b018a046..9b06c1d48b2 100644 --- a/src/phases/turn-start-phase.ts +++ b/src/phases/turn-start-phase.ts @@ -6,7 +6,7 @@ import { Stat } from "#app/enums/stat"; import Pokemon, { PokemonMove } from "#app/field/pokemon"; import { BypassSpeedChanceModifier } from "#app/modifier/modifier"; import { Command } from "#app/ui/command-ui-handler"; -import * as Utils from "#app/utils"; +import { randSeedShuffle, BooleanHolder } from "#app/utils"; import { AttemptCapturePhase } from "./attempt-capture-phase"; import { AttemptRunPhase } from "./attempt-run-phase"; import { BerryPhase } from "./berry-phase"; @@ -40,11 +40,11 @@ export class TurnStartPhase extends FieldPhase { // We seed it with the current turn to prevent an inconsistency where it // was varying based on how long since you last reloaded this.scene.executeWithSeedOffset(() => { - orderedTargets = Utils.randSeedShuffle(orderedTargets); + orderedTargets = randSeedShuffle(orderedTargets); }, this.scene.currentBattle.turn, this.scene.waveSeed); // Next, a check for Trick Room is applied to determine sort order. - const speedReversed = new Utils.BooleanHolder(false); + const speedReversed = new BooleanHolder(false); this.scene.arena.applyTags(TrickRoomTag, false, speedReversed); // Adjust the sort function based on whether Trick Room is active. @@ -71,8 +71,8 @@ export class TurnStartPhase extends FieldPhase { const battlerBypassSpeed = {}; this.scene.getField(true).filter(p => p.summonData).map(p => { - const bypassSpeed = new Utils.BooleanHolder(false); - const canCheckHeldItems = new Utils.BooleanHolder(true); + const bypassSpeed = new BooleanHolder(false); + const canCheckHeldItems = new BooleanHolder(true); applyAbAttrs(BypassSpeedChanceAbAttr, p, null, false, bypassSpeed); applyAbAttrs(PreventBypassSpeedChanceAbAttr, p, null, false, bypassSpeed, canCheckHeldItems); if (canCheckHeldItems.value) { diff --git a/src/phases/weather-effect-phase.ts b/src/phases/weather-effect-phase.ts index 2e7af91a849..4e1caf9f0f7 100644 --- a/src/phases/weather-effect-phase.ts +++ b/src/phases/weather-effect-phase.ts @@ -5,7 +5,7 @@ import { Weather, getWeatherDamageMessage, getWeatherLapseMessage } from "#app/d import { BattlerTagType } from "#app/enums/battler-tag-type"; import { WeatherType } from "#app/enums/weather-type"; import Pokemon, { HitResult } from "#app/field/pokemon"; -import * as Utils from "#app/utils"; +import { BooleanHolder, toDmgValue } from "#app/utils"; import { CommonAnimPhase } from "./common-anim-phase"; export class WeatherEffectPhase extends CommonAnimPhase { @@ -28,13 +28,13 @@ export class WeatherEffectPhase extends CommonAnimPhase { if (this.weather.isDamaging()) { - const cancelled = new Utils.BooleanHolder(false); + const cancelled = new BooleanHolder(false); this.executeForAll((pokemon: Pokemon) => applyPreWeatherEffectAbAttrs(SuppressWeatherEffectAbAttr, pokemon, this.weather, cancelled)); if (!cancelled.value) { const inflictDamage = (pokemon: Pokemon) => { - const cancelled = new Utils.BooleanHolder(false); + const cancelled = new BooleanHolder(false); applyPreWeatherEffectAbAttrs(PreWeatherDamageAbAttr, pokemon, this.weather, cancelled); applyAbAttrs(BlockNonDirectDamageAbAttr, pokemon, cancelled); @@ -43,7 +43,7 @@ export class WeatherEffectPhase extends CommonAnimPhase { return; } - const damage = Utils.toDmgValue(pokemon.getMaxHp() / 16); + const damage = toDmgValue(pokemon.getMaxHp() / 16); this.scene.queueMessage(getWeatherDamageMessage(this.weather!.weatherType, pokemon) ?? ""); pokemon.damageAndUpdate(damage, HitResult.EFFECTIVE, false, false, true);