From 6383762eb23f0d2f13c3a7fa009c792e06a0f31d Mon Sep 17 00:00:00 2001 From: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com> Date: Thu, 10 Apr 2025 21:44:39 -0500 Subject: [PATCH] Move fieldPosition to its own file --- src/data/moves/move.ts | 4 ++-- .../encounters/fun-and-games-encounter.ts | 2 +- .../utils/encounter-phase-utils.ts | 3 ++- src/enums/field-position.ts | 6 ++++++ src/field/pokemon.ts | 21 +++---------------- src/interfaces/attack-move-result.ts | 12 +++++++++++ src/phases/command-phase.ts | 2 +- src/phases/encounter-phase.ts | 2 +- src/phases/summon-phase.ts | 2 +- src/phases/toggle-double-position-phase.ts | 2 +- 10 files changed, 30 insertions(+), 26 deletions(-) create mode 100644 src/enums/field-position.ts create mode 100644 src/interfaces/attack-move-result.ts diff --git a/src/data/moves/move.ts b/src/data/moves/move.ts index e7fed1fd6d0..449bd2967a7 100644 --- a/src/data/moves/move.ts +++ b/src/data/moves/move.ts @@ -12,16 +12,16 @@ import { TypeBoostTag, } from "../battler-tags"; import { getPokemonNameWithAffix } from "../../messages"; -import type { AttackMoveResult } from "../../field/pokemon"; +import type { AttackMoveResult } from "#app/interfaces/attack-move-result"; import type { TurnMove } from "#app/interfaces/turn-move"; import type Pokemon from "../../field/pokemon"; import { EnemyPokemon, - FieldPosition, HitResult, MoveResult, PlayerPokemon, } from "../../field/pokemon"; +import { FieldPosition } from "#enums/field-position"; import { PokemonMove } from "./pokemon-move"; import { getNonVolatileStatusEffects, diff --git a/src/data/mystery-encounters/encounters/fun-and-games-encounter.ts b/src/data/mystery-encounters/encounters/fun-and-games-encounter.ts index 282c6c149ff..a9fc24c70b7 100644 --- a/src/data/mystery-encounters/encounters/fun-and-games-encounter.ts +++ b/src/data/mystery-encounters/encounters/fun-and-games-encounter.ts @@ -13,7 +13,7 @@ import { MysteryEncounterOptionBuilder } from "#app/data/mystery-encounters/myst import { TrainerSlot } from "#enums/trainer-slot"; import type { PlayerPokemon } from "#app/field/pokemon"; import type Pokemon from "#app/field/pokemon"; -import { FieldPosition } from "#app/field/pokemon"; +import { FieldPosition } from "#enums/field-position"; import { getPokemonSpecies } from "#app/data/pokemon-species"; import { MoneyRequirement } from "#app/data/mystery-encounters/mystery-encounter-requirements"; import { queueEncounterMessage, showEncounterText } from "#app/data/mystery-encounters/utils/encounter-dialogue-utils"; diff --git a/src/data/mystery-encounters/utils/encounter-phase-utils.ts b/src/data/mystery-encounters/utils/encounter-phase-utils.ts index f4e486ad9d5..6ab650d5f9b 100644 --- a/src/data/mystery-encounters/utils/encounter-phase-utils.ts +++ b/src/data/mystery-encounters/utils/encounter-phase-utils.ts @@ -10,7 +10,8 @@ import { showEncounterText } from "#app/data/mystery-encounters/utils/encounter- import type { PlayerPokemon } from "#app/field/pokemon"; import type { AiType } from "#enums/ai-type"; import type Pokemon from "#app/field/pokemon"; -import { EnemyPokemon, FieldPosition, PokemonSummonData } from "#app/field/pokemon"; +import { EnemyPokemon, PokemonSummonData } from "#app/field/pokemon"; +import { FieldPosition } from "#enums/field-position"; import { PokemonMove } from "#app/data/moves/pokemon-move"; import type { CustomModifierSettings, ModifierType } from "#app/modifier/modifier-type"; import { diff --git a/src/enums/field-position.ts b/src/enums/field-position.ts new file mode 100644 index 00000000000..ed9a046f4fd --- /dev/null +++ b/src/enums/field-position.ts @@ -0,0 +1,6 @@ + +export enum FieldPosition { + CENTER, + LEFT, + RIGHT +} diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index 7ff5a3a5384..188d3cc1e65 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -214,7 +214,7 @@ import { SpeciesFormChangeActiveTrigger, SpeciesFormChangeLapseTeraTrigger, SpeciesFormChangeMoveLearnedTrigger, - SpeciesFormChangePostMoveTrigger + SpeciesFormChangePostMoveTrigger, } from "#app/data/pokemon-forms"; import { TerrainType } from "#app/data/terrain"; import type { TrainerSlot } from "#enums/trainer-slot"; @@ -264,12 +264,8 @@ import { TurnMove } from "#app/interfaces/turn-move"; import { AiType } from "#enums/ai-type"; import { PokemonMove } from "#app/data/moves/pokemon-move"; import { DamageCalculationResult } from "#app/interfaces/damage-calculation-result"; - -export enum FieldPosition { - CENTER, - LEFT, - RIGHT, -} +import { FieldPosition } from "#enums/field-position"; +import { AttackMoveResult } from "#app/interfaces/attack-move-result"; export default abstract class Pokemon extends Phaser.GameObjects.Container { public id: number; @@ -7775,15 +7771,6 @@ interface IllusionData { level?: number } -export interface AttackMoveResult { - move: Moves; - result: DamageResult; - damage: number; - critical: boolean; - sourceId: number; - sourceBattlerIndex: BattlerIndex; -} - export class PokemonSummonData { /** [Atk, Def, SpAtk, SpDef, Spd, Acc, Eva] */ public statStages: number[] = [0, 0, 0, 0, 0, 0, 0]; @@ -7888,5 +7875,3 @@ export type DamageResult = | HitResult.CONFUSION | HitResult.INDIRECT_KO | HitResult.INDIRECT; - - diff --git a/src/interfaces/attack-move-result.ts b/src/interfaces/attack-move-result.ts new file mode 100644 index 00000000000..dde3400ea41 --- /dev/null +++ b/src/interfaces/attack-move-result.ts @@ -0,0 +1,12 @@ +import type { BattlerIndex } from "#app/battle"; +import type { DamageResult } from "#app/field/pokemon"; +import type { Moves } from "#enums/moves"; + +export interface AttackMoveResult { + move: Moves; + result: DamageResult; + damage: number; + critical: boolean; + sourceId: number; + sourceBattlerIndex: BattlerIndex; +} diff --git a/src/phases/command-phase.ts b/src/phases/command-phase.ts index cc6e2ca4970..c65f121d20e 100644 --- a/src/phases/command-phase.ts +++ b/src/phases/command-phase.ts @@ -13,7 +13,7 @@ import { Moves } from "#app/enums/moves"; import { PokeballType } from "#enums/pokeball"; import type { PlayerPokemon } from "#app/field/pokemon"; import type { TurnMove } from "#app/interfaces/turn-move"; -import { FieldPosition } from "#app/field/pokemon"; +import { FieldPosition } from "#enums/field-position"; import { getPokemonNameWithAffix } from "#app/messages"; import { Command } from "#app/ui/command-ui-handler"; import { Mode } from "#app/ui/ui"; diff --git a/src/phases/encounter-phase.ts b/src/phases/encounter-phase.ts index 15f3d102e41..9e28de32c4a 100644 --- a/src/phases/encounter-phase.ts +++ b/src/phases/encounter-phase.ts @@ -11,7 +11,7 @@ import { TrainerSlot } from "#enums/trainer-slot"; import { getRandomWeatherType } from "#app/data/weather"; import { EncounterPhaseEvent } from "#app/events/battle-scene"; import type Pokemon from "#app/field/pokemon"; -import { FieldPosition } from "#app/field/pokemon"; +import { FieldPosition } from "#enums/field-position"; import { getPokemonNameWithAffix } from "#app/messages"; import { BoostBugSpawnModifier, IvScannerModifier, TurnHeldItemTransferModifier } from "#app/modifier/modifier"; import { ModifierPoolType, regenerateModifierPoolThresholds } from "#app/modifier/modifier-type"; diff --git a/src/phases/summon-phase.ts b/src/phases/summon-phase.ts index 7379d509e55..e053b18e4d7 100644 --- a/src/phases/summon-phase.ts +++ b/src/phases/summon-phase.ts @@ -5,7 +5,7 @@ import { TrainerSlot } from "#enums/trainer-slot"; import { PlayerGender } from "#app/enums/player-gender"; import { addPokeballOpenParticles } from "#app/field/anims"; import type Pokemon from "#app/field/pokemon"; -import { FieldPosition } from "#app/field/pokemon"; +import { FieldPosition } from "#enums/field-position"; import { getPokemonNameWithAffix } from "#app/messages"; import i18next from "i18next"; import { PartyMemberPokemonPhase } from "./party-member-pokemon-phase"; diff --git a/src/phases/toggle-double-position-phase.ts b/src/phases/toggle-double-position-phase.ts index 37f47d5cf95..c4766f888aa 100644 --- a/src/phases/toggle-double-position-phase.ts +++ b/src/phases/toggle-double-position-phase.ts @@ -1,5 +1,5 @@ import { globalScene } from "#app/global-scene"; -import { FieldPosition } from "#app/field/pokemon"; +import { FieldPosition } from "#enums/field-position"; import { BattlePhase } from "./battle-phase"; export class ToggleDoublePositionPhase extends BattlePhase {