diff --git a/src/data/ability.ts b/src/data/ability.ts index 9bb8506c42f..ef57c931bcf 100644 --- a/src/data/ability.ts +++ b/src/data/ability.ts @@ -11,7 +11,10 @@ import { BattlerTagLapseType, GroundedTag } from "./battler-tags"; import { getNonVolatileStatusEffects, getStatusEffectDescriptor, getStatusEffectHealText } from "#app/data/status-effect"; import { Gender } from "./gender"; import type Move from "./moves/move"; -import { AttackMove, MoveCategory, MoveFlags, MoveTarget, FlinchAttr, OneHitKOAttr, HitHealAttr, allMoves, StatusMove, SelfStatusMove, VariablePowerAttr, applyMoveAttrs, VariableMoveTypeAttr, RandomMovesetMoveAttr, RandomMoveAttr, NaturePowerAttr, CopyMoveAttr, NeutralDamageAgainstFlyingTypeMultiplierAttr, FixedDamageAttr } from "./moves/move"; +import { AttackMove, FlinchAttr, OneHitKOAttr, HitHealAttr, allMoves, StatusMove, SelfStatusMove, VariablePowerAttr, applyMoveAttrs, VariableMoveTypeAttr, RandomMovesetMoveAttr, RandomMoveAttr, NaturePowerAttr, CopyMoveAttr, NeutralDamageAgainstFlyingTypeMultiplierAttr, FixedDamageAttr } from "./moves/move"; +import { MoveFlags } from "#enums/MoveFlags"; +import { MoveTarget } from "#enums/MoveTarget"; +import { MoveCategory } from "#enums/MoveCategory"; import type { ArenaTrapTag, SuppressAbilitiesTag } from "./arena-tag"; import { ArenaTagSide } from "./arena-tag"; import { BerryModifier, HitHealModifier, PokemonHeldItemModifier } from "../modifier/modifier"; diff --git a/src/data/arena-tag.ts b/src/data/arena-tag.ts index a50a3c39dfe..8530926305b 100644 --- a/src/data/arena-tag.ts +++ b/src/data/arena-tag.ts @@ -2,7 +2,9 @@ import { globalScene } from "#app/global-scene"; import type { Arena } from "#app/field/arena"; import { PokemonType } from "#enums/type"; import { BooleanHolder, NumberHolder, toDmgValue } from "#app/utils"; -import { MoveCategory, allMoves, MoveTarget } from "#app/data/moves/move"; +import { allMoves } from "#app/data/moves/move"; +import { MoveTarget } from "#enums/MoveTarget"; +import { MoveCategory } from "#enums/MoveCategory"; import { getPokemonNameWithAffix } from "#app/messages"; import type Pokemon from "#app/field/pokemon"; import { HitResult, PokemonMove } from "#app/field/pokemon"; diff --git a/src/data/battle-anims.ts b/src/data/battle-anims.ts index 3970296beb3..d3c9f393209 100644 --- a/src/data/battle-anims.ts +++ b/src/data/battle-anims.ts @@ -3,10 +3,10 @@ import { AttackMove, BeakBlastHeaderAttr, DelayedAttackAttr, - MoveFlags, SelfStatusMove, allMoves, } from "./moves/move"; +import { MoveFlags } from "#enums/MoveFlags"; import type Pokemon from "../field/pokemon"; import { type nil, diff --git a/src/data/battler-tags.ts b/src/data/battler-tags.ts index 0962171edee..f345c05de0a 100644 --- a/src/data/battler-tags.ts +++ b/src/data/battler-tags.ts @@ -14,10 +14,10 @@ import { applyMoveAttrs, ConsecutiveUseDoublePowerAttr, HealOnAllyAttr, - MoveCategory, - MoveFlags, StatusCategoryOnAllyAttr } from "#app/data/moves/move"; +import { MoveFlags } from "#enums/MoveFlags"; +import { MoveCategory } from "#enums/MoveCategory"; import { SpeciesFormChangeAbilityTrigger } from "#app/data/pokemon-forms"; import { getStatusEffectHealText } from "#app/data/status-effect"; import { TerrainType } from "#app/data/terrain"; diff --git a/src/data/moves/move.ts b/src/data/moves/move.ts index 2cba82fdbfb..61664f12cb0 100644 --- a/src/data/moves/move.ts +++ b/src/data/moves/move.ts @@ -120,89 +120,11 @@ import { LoadMoveAnimPhase } from "#app/phases/load-move-anim-phase"; import { PokemonTransformPhase } from "#app/phases/pokemon-transform-phase"; import { MoveAnimPhase } from "#app/phases/move-anim-phase"; import { loggedInUser } from "#app/account"; - -export enum MoveCategory { - PHYSICAL, - SPECIAL, - STATUS -} - -export enum MoveTarget { - /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Moves_that_target_the_user Moves that target the User} */ - USER, - OTHER, - ALL_OTHERS, - NEAR_OTHER, - /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Moves_that_target_all_adjacent_Pok%C3%A9mon Moves that target all adjacent Pokemon} */ - ALL_NEAR_OTHERS, - NEAR_ENEMY, - /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Moves_that_target_all_adjacent_foes Moves that target all adjacent foes} */ - ALL_NEAR_ENEMIES, - RANDOM_NEAR_ENEMY, - ALL_ENEMIES, - /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Counterattacks Counterattacks} */ - ATTACKER, - /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Moves_that_target_one_adjacent_ally Moves that target one adjacent ally} */ - NEAR_ALLY, - ALLY, - USER_OR_NEAR_ALLY, - USER_AND_ALLIES, - /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Moves_that_target_all_Pok%C3%A9mon Moves that target all Pokemon} */ - ALL, - USER_SIDE, - /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Entry_hazard-creating_moves Entry hazard-creating moves} */ - ENEMY_SIDE, - BOTH_SIDES, - PARTY, - CURSE -} - -export enum MoveFlags { - NONE = 0, - MAKES_CONTACT = 1 << 0, - IGNORE_PROTECT = 1 << 1, - /** - * Sound-based moves have the following effects: - * - Pokemon with the {@linkcode Abilities.SOUNDPROOF Soundproof Ability} are unaffected by other Pokemon's sound-based moves. - * - Pokemon affected by {@linkcode Moves.THROAT_CHOP Throat Chop} cannot use sound-based moves for two turns. - * - Sound-based moves used by a Pokemon with {@linkcode Abilities.LIQUID_VOICE Liquid Voice} become Water-type moves. - * - Sound-based moves used by a Pokemon with {@linkcode Abilities.PUNK_ROCK Punk Rock} are boosted by 30%. Pokemon with Punk Rock also take half damage from sound-based moves. - * - All sound-based moves (except Howl) can hit Pokemon behind an active {@linkcode Moves.SUBSTITUTE Substitute}. - * - * cf https://bulbapedia.bulbagarden.net/wiki/Sound-based_move - */ - SOUND_BASED = 1 << 2, - HIDE_USER = 1 << 3, - HIDE_TARGET = 1 << 4, - BITING_MOVE = 1 << 5, - PULSE_MOVE = 1 << 6, - PUNCHING_MOVE = 1 << 7, - SLICING_MOVE = 1 << 8, - /** - * Indicates a move should be affected by {@linkcode Abilities.RECKLESS} - * @see {@linkcode Move.recklessMove()} - */ - RECKLESS_MOVE = 1 << 9, - /** Indicates a move should be affected by {@linkcode Abilities.BULLETPROOF} */ - BALLBOMB_MOVE = 1 << 10, - /** Grass types and pokemon with {@linkcode Abilities.OVERCOAT} are immune to powder moves */ - POWDER_MOVE = 1 << 11, - /** Indicates a move should trigger {@linkcode Abilities.DANCER} */ - DANCE_MOVE = 1 << 12, - /** Indicates a move should trigger {@linkcode Abilities.WIND_RIDER} */ - WIND_MOVE = 1 << 13, - /** Indicates a move should trigger {@linkcode Abilities.TRIAGE} */ - TRIAGE_MOVE = 1 << 14, - IGNORE_ABILITIES = 1 << 15, - /** Enables all hits of a multi-hit move to be accuracy checked individually */ - CHECK_ALL_HITS = 1 << 16, - /** Indicates a move is able to bypass its target's Substitute (if the target has one) */ - IGNORE_SUBSTITUTE = 1 << 17, - /** Indicates a move is able to be redirected to allies in a double battle if the attacker faints */ - REDIRECT_COUNTER = 1 << 18, - /** Indicates a move is able to be reflected by {@linkcode Abilities.MAGIC_BOUNCE} and {@linkcode Moves.MAGIC_COAT} */ - REFLECTABLE = 1 << 19, -} +import { MoveCategory } from "#enums/MoveCategory"; +import { MoveTarget } from "#enums/MoveTarget"; +import { MoveFlags } from "#enums/MoveFlags"; +import { MoveEffectTrigger } from "#enums/MoveEffectTrigger"; +import { MultiHitType } from "#enums/MultiHitType"; type MoveConditionFunc = (user: Pokemon, target: Pokemon, move: Move) => boolean; type UserMoveConditionFunc = (user: Pokemon, move: Move) => boolean; @@ -1201,14 +1123,6 @@ export abstract class MoveAttr { } } -export enum MoveEffectTrigger { - PRE_APPLY, - POST_APPLY, - HIT, - /** Triggers one time after all target effects have applied */ - POST_TARGET, -} - interface MoveEffectAttrOptions { /** * Defines when this effect should trigger in the move's effect order @@ -1920,14 +1834,6 @@ export class AddSubstituteAttr extends MoveEffectAttr { } } -export enum MultiHitType { - _2, - _2_TO_5, - _3, - _10, - BEAT_UP, -} - /** * Heals the user or target by {@linkcode healRatio} depending on the value of {@linkcode selfTarget} * @extends MoveEffectAttr diff --git a/src/data/mystery-encounters/encounters/clowning-around-encounter.ts b/src/data/mystery-encounters/encounters/clowning-around-encounter.ts index 786108722e6..944a8ca147e 100644 --- a/src/data/mystery-encounters/encounters/clowning-around-encounter.ts +++ b/src/data/mystery-encounters/encounters/clowning-around-encounter.ts @@ -31,7 +31,7 @@ import { BerryType } from "#enums/berry-type"; import { BattlerIndex } from "#app/battle"; import { Moves } from "#enums/moves"; import { EncounterBattleAnim } from "#app/data/battle-anims"; -import { MoveCategory } from "#app/data/moves/move"; +import { MoveCategory } from "#enums/MoveCategory"; import { CustomPokemonData } from "#app/data/custom-pokemon-data"; import { CLASSIC_MODE_MYSTERY_ENCOUNTER_WAVES } from "#app/game-mode"; import { EncounterAnim } from "#enums/encounter-anims"; diff --git a/src/data/mystery-encounters/encounters/field-trip-encounter.ts b/src/data/mystery-encounters/encounters/field-trip-encounter.ts index e34fe0f92b1..0e5d6ff87bc 100644 --- a/src/data/mystery-encounters/encounters/field-trip-encounter.ts +++ b/src/data/mystery-encounters/encounters/field-trip-encounter.ts @@ -1,4 +1,4 @@ -import { MoveCategory } from "#app/data/moves/move"; +import { MoveCategory } from "#enums/MoveCategory"; import { MysteryEncounterOptionBuilder } from "#app/data/mystery-encounters/mystery-encounter-option"; import { generateModifierTypeOption, leaveEncounterWithoutBattle, selectPokemonForOption, setEncounterExp, setEncounterRewards } from "#app/data/mystery-encounters/utils/encounter-phase-utils"; import type { PlayerPokemon, PokemonMove } from "#app/field/pokemon"; diff --git a/src/data/pokemon-forms.ts b/src/data/pokemon-forms.ts index 8f501ce33ff..1192f7f17c1 100644 --- a/src/data/pokemon-forms.ts +++ b/src/data/pokemon-forms.ts @@ -1,7 +1,8 @@ import { PokemonFormChangeItemModifier } from "../modifier/modifier"; import type Pokemon from "../field/pokemon"; import { StatusEffect } from "#enums/status-effect"; -import { MoveCategory, allMoves } from "./moves/move"; +import { allMoves } from "./moves/move"; +import { MoveCategory } from "#enums/MoveCategory"; import type { Constructor, nil } from "#app/utils"; import { Abilities } from "#enums/abilities"; import { Moves } from "#enums/moves"; diff --git a/src/enums/MoveCategory.ts b/src/enums/MoveCategory.ts new file mode 100644 index 00000000000..0408655e6db --- /dev/null +++ b/src/enums/MoveCategory.ts @@ -0,0 +1,5 @@ +export enum MoveCategory { + PHYSICAL, + SPECIAL, + STATUS +} diff --git a/src/enums/MoveEffectTrigger.ts b/src/enums/MoveEffectTrigger.ts new file mode 100644 index 00000000000..1e7753d94fa --- /dev/null +++ b/src/enums/MoveEffectTrigger.ts @@ -0,0 +1,7 @@ +export enum MoveEffectTrigger { + PRE_APPLY, + POST_APPLY, + HIT, + /** Triggers one time after all target effects have applied */ + POST_TARGET +} diff --git a/src/enums/MoveFlags.ts b/src/enums/MoveFlags.ts new file mode 100644 index 00000000000..0fc85fddec6 --- /dev/null +++ b/src/enums/MoveFlags.ts @@ -0,0 +1,46 @@ +export enum MoveFlags { + NONE = 0, + MAKES_CONTACT = 1 << 0, + IGNORE_PROTECT = 1 << 1, + /** + * Sound-based moves have the following effects: + * - Pokemon with the {@linkcode Abilities.SOUNDPROOF Soundproof Ability} are unaffected by other Pokemon's sound-based moves. + * - Pokemon affected by {@linkcode Moves.THROAT_CHOP Throat Chop} cannot use sound-based moves for two turns. + * - Sound-based moves used by a Pokemon with {@linkcode Abilities.LIQUID_VOICE Liquid Voice} become Water-type moves. + * - Sound-based moves used by a Pokemon with {@linkcode Abilities.PUNK_ROCK Punk Rock} are boosted by 30%. Pokemon with Punk Rock also take half damage from sound-based moves. + * - All sound-based moves (except Howl) can hit Pokemon behind an active {@linkcode Moves.SUBSTITUTE Substitute}. + * + * cf https://bulbapedia.bulbagarden.net/wiki/Sound-based_move + */ + SOUND_BASED = 1 << 2, + HIDE_USER = 1 << 3, + HIDE_TARGET = 1 << 4, + BITING_MOVE = 1 << 5, + PULSE_MOVE = 1 << 6, + PUNCHING_MOVE = 1 << 7, + SLICING_MOVE = 1 << 8, + /** + * Indicates a move should be affected by {@linkcode Abilities.RECKLESS} + * @see {@linkcode Move.recklessMove()} + */ + RECKLESS_MOVE = 1 << 9, + /** Indicates a move should be affected by {@linkcode Abilities.BULLETPROOF} */ + BALLBOMB_MOVE = 1 << 10, + /** Grass types and pokemon with {@linkcode Abilities.OVERCOAT} are immune to powder moves */ + POWDER_MOVE = 1 << 11, + /** Indicates a move should trigger {@linkcode Abilities.DANCER} */ + DANCE_MOVE = 1 << 12, + /** Indicates a move should trigger {@linkcode Abilities.WIND_RIDER} */ + WIND_MOVE = 1 << 13, + /** Indicates a move should trigger {@linkcode Abilities.TRIAGE} */ + TRIAGE_MOVE = 1 << 14, + IGNORE_ABILITIES = 1 << 15, + /** Enables all hits of a multi-hit move to be accuracy checked individually */ + CHECK_ALL_HITS = 1 << 16, + /** Indicates a move is able to bypass its target's Substitute (if the target has one) */ + IGNORE_SUBSTITUTE = 1 << 17, + /** Indicates a move is able to be redirected to allies in a double battle if the attacker faints */ + REDIRECT_COUNTER = 1 << 18, + /** Indicates a move is able to be reflected by {@linkcode Abilities.MAGIC_BOUNCE} and {@linkcode Moves.MAGIC_COAT} */ + REFLECTABLE = 1 << 19 +} diff --git a/src/enums/MoveTarget.ts b/src/enums/MoveTarget.ts new file mode 100644 index 00000000000..615628cf4e8 --- /dev/null +++ b/src/enums/MoveTarget.ts @@ -0,0 +1,29 @@ +export enum MoveTarget { + /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Moves_that_target_the_user Moves that target the User} */ + USER, + OTHER, + ALL_OTHERS, + NEAR_OTHER, + /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Moves_that_target_all_adjacent_Pok%C3%A9mon Moves that target all adjacent Pokemon} */ + ALL_NEAR_OTHERS, + NEAR_ENEMY, + /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Moves_that_target_all_adjacent_foes Moves that target all adjacent foes} */ + ALL_NEAR_ENEMIES, + RANDOM_NEAR_ENEMY, + ALL_ENEMIES, + /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Counterattacks Counterattacks} */ + ATTACKER, + /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Moves_that_target_one_adjacent_ally Moves that target one adjacent ally} */ + NEAR_ALLY, + ALLY, + USER_OR_NEAR_ALLY, + USER_AND_ALLIES, + /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Moves_that_target_all_Pok%C3%A9mon Moves that target all Pokemon} */ + ALL, + USER_SIDE, + /** {@link https://bulbapedia.bulbagarden.net/wiki/Category:Entry_hazard-creating_moves Entry hazard-creating moves} */ + ENEMY_SIDE, + BOTH_SIDES, + PARTY, + CURSE +} diff --git a/src/enums/MultiHitType.ts b/src/enums/MultiHitType.ts new file mode 100644 index 00000000000..27e8214112e --- /dev/null +++ b/src/enums/MultiHitType.ts @@ -0,0 +1,7 @@ +export enum MultiHitType { + _2, + _2_TO_5, + _3, + _10, + BEAT_UP +} diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index cea28f3fbcd..7c0c67fc767 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -15,7 +15,6 @@ import { FixedDamageAttr, VariableAtkAttr, allMoves, - MoveCategory, TypelessAttr, CritOnlyAttr, getMoveTargets, @@ -36,11 +35,12 @@ import { SacrificialAttrOnHit, OneHitKOAccuracyAttr, RespectAttackTypeImmunityAttr, - MoveTarget, CombinedPledgeStabBoostAttr, VariableMoveTypeChartAttr, HpSplitAttr } from "#app/data/moves/move"; +import { MoveTarget } from "#enums/MoveTarget"; +import { MoveCategory } from "#enums/MoveCategory"; import type { PokemonSpeciesForm } from "#app/data/pokemon-species"; import { default as PokemonSpecies, getFusedSpeciesName, getPokemonSpecies, getPokemonSpeciesForm } from "#app/data/pokemon-species"; import { getStarterValueFriendshipCap, speciesStarterCosts } from "#app/data/balance/starters"; diff --git a/src/phases/move-effect-phase.ts b/src/phases/move-effect-phase.ts index b9d9ef96cf1..fe5b21fd9dd 100644 --- a/src/phases/move-effect-phase.ts +++ b/src/phases/move-effect-phase.ts @@ -35,11 +35,7 @@ import { getMoveTargets, HitsTagAttr, MissEffectAttr, - MoveCategory, MoveEffectAttr, - MoveEffectTrigger, - MoveFlags, - MoveTarget, MultiHitAttr, NoEffectAttr, OneHitKOAttr, @@ -47,6 +43,10 @@ import { ToxicAccuracyAttr, VariableTargetAttr, } from "#app/data/moves/move"; +import { MoveEffectTrigger } from "#enums/MoveEffectTrigger"; +import { MoveFlags } from "#enums/MoveFlags"; +import { MoveTarget } from "#enums/MoveTarget"; +import { MoveCategory } from "#enums/MoveCategory"; import { SpeciesFormChangePostMoveTrigger } from "#app/data/pokemon-forms"; import { PokemonType } from "#enums/type"; import { PokemonMove } from "#app/field/pokemon"; diff --git a/src/phases/move-phase.ts b/src/phases/move-phase.ts index 04be58066e4..c17252eac39 100644 --- a/src/phases/move-phase.ts +++ b/src/phases/move-phase.ts @@ -23,10 +23,10 @@ import { DelayedAttackAttr, frenzyMissFunc, HealStatusEffectAttr, - MoveFlags, PreMoveMessageAttr, PreUseInterruptAttr, } from "#app/data/moves/move"; +import { MoveFlags } from "#enums/MoveFlags"; import { SpeciesFormChangePreMoveTrigger } from "#app/data/pokemon-forms"; import { getStatusEffectActivationText, getStatusEffectHealText } from "#app/data/status-effect"; import { PokemonType } from "#enums/type"; diff --git a/src/ui/fight-ui-handler.ts b/src/ui/fight-ui-handler.ts index 92a5a32fe9f..1f05a4bac22 100644 --- a/src/ui/fight-ui-handler.ts +++ b/src/ui/fight-ui-handler.ts @@ -7,7 +7,7 @@ import { Command } from "./command-ui-handler"; import { Mode } from "./ui"; import UiHandler from "./ui-handler"; import * as Utils from "../utils"; -import { MoveCategory } from "#app/data/moves/move"; +import { MoveCategory } from "#enums/MoveCategory"; import i18next from "i18next"; import { Button } from "#enums/buttons"; import type { PokemonMove } from "#app/field/pokemon"; diff --git a/src/ui/move-info-overlay.ts b/src/ui/move-info-overlay.ts index d15e482cc30..2d5141f1bc3 100644 --- a/src/ui/move-info-overlay.ts +++ b/src/ui/move-info-overlay.ts @@ -4,7 +4,7 @@ import { TextStyle, addTextObject } from "./text"; import { addWindow } from "./ui-theme"; import * as Utils from "../utils"; import type Move from "../data/moves/move"; -import { MoveCategory } from "../data/moves/move"; +import { MoveCategory } from "#enums/MoveCategory"; import { PokemonType } from "#enums/type"; import i18next from "i18next"; diff --git a/src/ui/summary-ui-handler.ts b/src/ui/summary-ui-handler.ts index 12b3d6b17b6..29b4634a8cb 100644 --- a/src/ui/summary-ui-handler.ts +++ b/src/ui/summary-ui-handler.ts @@ -10,7 +10,7 @@ import { getTypeRgb } from "#app/data/type"; import { PokemonType } from "#enums/type"; import { TextStyle, addBBCodeTextObject, addTextObject, getBBCodeFrag } from "#app/ui/text"; import type Move from "#app/data/moves/move"; -import { MoveCategory } from "#app/data/moves/move"; +import { MoveCategory } from "#enums/MoveCategory"; import { getPokeballAtlasKey } from "#app/data/pokeball"; import { getGenderColor, getGenderSymbol } from "#app/data/gender"; import { getLevelRelExp, getLevelTotalExp } from "#app/data/exp"; diff --git a/test/abilities/battle_bond.test.ts b/test/abilities/battle_bond.test.ts index 449173a12b5..b2ba9ceedd9 100644 --- a/test/abilities/battle_bond.test.ts +++ b/test/abilities/battle_bond.test.ts @@ -1,4 +1,5 @@ -import { allMoves, MultiHitAttr, MultiHitType } from "#app/data/moves/move"; +import { allMoves, MultiHitAttr } from "#app/data/moves/move"; +import { MultiHitType } from "#enums/MultiHitType"; import { Status } from "#app/data/status-effect"; import { Abilities } from "#enums/abilities"; import { Moves } from "#enums/moves"; diff --git a/test/abilities/friend_guard.test.ts b/test/abilities/friend_guard.test.ts index 8c506ae9bf9..8cb7b0233c2 100644 --- a/test/abilities/friend_guard.test.ts +++ b/test/abilities/friend_guard.test.ts @@ -6,7 +6,8 @@ import Phaser from "phaser"; import { afterEach, beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; import { BattlerIndex } from "#app/battle"; import { allAbilities } from "#app/data/ability"; -import { allMoves, MoveCategory } from "#app/data/moves/move"; +import { allMoves } from "#app/data/moves/move"; +import { MoveCategory } from "#enums/MoveCategory"; describe("Moves - Friend Guard", () => { let phaserGame: Phaser.Game; diff --git a/test/enemy_command.test.ts b/test/enemy_command.test.ts index ce5f36e714c..2d6a65e3edd 100644 --- a/test/enemy_command.test.ts +++ b/test/enemy_command.test.ts @@ -1,5 +1,6 @@ import type BattleScene from "#app/battle-scene"; -import { allMoves, MoveCategory } from "#app/data/moves/move"; +import { allMoves } from "#app/data/moves/move"; +import { MoveCategory } from "#enums/MoveCategory"; import { Abilities } from "#app/enums/abilities"; import { Moves } from "#app/enums/moves"; import { Species } from "#app/enums/species";